summaryrefslogtreecommitdiffstats
path: root/tools/Makefile.in
blob: 5eb71835d9d187d34e52953d1344fba8c0a0df32 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# Makefile for the BIRD Internet Routing Daemon
# (c) 1999--2000 Martin Mares <mj@ucw.cz>

include Rules

.PHONY: all daemon client subdir depend clean distclean tags docs userdocs progdocs

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) $(CLIENT_LIBS)

.dir-stamp:
	mkdir -p $(static-dirs) $(client-dirs) $(doc-dirs)
	touch .dir-stamp

.dep-stamp:
	$(MAKE) depend
	touch .dep-stamp

docs: userdocs progdocs

userdocs progdocs: .dir-stamp
	$(MAKE) -C doc -f $(srcdir_abs)/doc/Makefile $@

tags:
	cd $(srcdir) ; etags -lc `find $(static-dirs) $(addprefix $(objdir)/,$(dynamic-dirs)) $(client-dirs) -name *.[chY]`

clean:
	find . -name "*.[oa]" -o -name core -o -name depend -o -name "*.html" | 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)