9fac310d1a
(the current version UNIX-specific) anyway, so it's useless to try splitting it to sysdep and generic part. Instead of this, configure script decides (based on system type and user's wish) what (if any) client should be built and what autoconfiguration it requires. Also, the client provides its own die/bug/... functions.
43 lines
1.2 KiB
Makefile
43 lines
1.2 KiB
Makefile
# Makefile for the BIRD Internet Routing Daemon
|
|
# (c) 1999--2000 Martin Mares <mj@ucw.cz>
|
|
|
|
include Rules
|
|
|
|
srcdir_abs := $(shell cd $(srcdir) ; pwd)
|
|
|
|
.PHONY: all daemon client subdir depend clean distclean tags
|
|
|
|
all: .dep-stamp subdir daemon @CLIENT@
|
|
|
|
daemon: $(exedir)/bird
|
|
|
|
client: $(exedir)/birdc
|
|
|
|
subdir depend: .dir-stamp
|
|
set -e ; for a in $(dynamic-dirs) ; do $(MAKE) -C $$a $@ ; done
|
|
set -e ; for a in $(static-dirs) $(client-dirs) ; do $(MAKE) -C $$a -f $(srcdir_abs)/$$a/Makefile $@ ; done
|
|
|
|
$(exedir)/bird: $(addsuffix /all.o, $(static-dirs)) conf/all.o lib/birdlib.a
|
|
$(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
|
|
|
|
$(exedir)/birdc: client/all.o lib/birdlib.a
|
|
$(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
|
|
|
|
.dir-stamp:
|
|
mkdir -p $(static-dirs) $(client-dirs)
|
|
touch .dir-stamp
|
|
|
|
.dep-stamp:
|
|
$(MAKE) depend
|
|
touch .dep-stamp
|
|
|
|
tags:
|
|
cd $(srcdir) ; etags -lc `find $(static-dirs) $(addprefix $(objdir)/,$(dynamic-dirs)) $(client-dirs) -name *.[chY]`
|
|
|
|
clean:
|
|
find . -name "*.[oa]" -or -name core -or -name depend | xargs rm -f
|
|
rm -f $(exedir)/bird $(exedir)/birdc $(exedir)/bird.ctl .dep-stamp
|
|
|
|
distclean: clean
|
|
rm -f config.* configure sysdep/autoconf.h Makefile Rules
|
|
rm -rf .dir-stamp $(clean-dirs)
|