From 7152e5efbb0fade868d5f2d2c7bc10ed52b3d19d Mon Sep 17 00:00:00 2001 From: Jan Moskyto Matejka Date: Tue, 12 Apr 2016 11:14:54 +0200 Subject: Build system reworked to one global Makefile with includes and no nesting Also removed the lib-dir merging with sysdep. Updated #include's accordingly. Fixed make doc on recent Debian together with moving generated doc into objdir. Moved Makefile.in into root dir Retired all.o and birdlib.a Linking the final binaries directly from all the .o files. --- conf/Makefile | 34 ++++++++++++++++------------------ conf/conf.c | 2 +- conf/conf.h | 2 +- conf/confbase.Y | 2 +- 4 files changed, 19 insertions(+), 21 deletions(-) (limited to 'conf') diff --git a/conf/Makefile b/conf/Makefile index 5d729a42..c4121805 100644 --- a/conf/Makefile +++ b/conf/Makefile @@ -1,31 +1,29 @@ -source=cf-parse.tab.c cf-lex.c conf.c -root-rel=../ +src := cf-parse.tab.c cf-lex.c conf.c +obj := $(src-o-files) -include ../Rules - -conf-src=$(srcdir)/conf -conf-fragments=$(conf-src)/confbase.Y @CONFS@ $(addsuffix /config.Y,$(static-dir-paths)) +$(all-daemon) ifdef DEBUG BISON_DEBUG=-t #FLEX_DEBUG=-d endif -cf-parse.tab.h: cf-parse.tab.c +$(o)cf-parse.tab.h: $(o)cf-parse.tab.c -cf-parse.tab.c: cf-parse.y - $(BISON) -bcf-parse -dv -pcf_ $(BISON_DEBUG) cf-parse.y +$(o)cf-parse.tab.c: $(o)cf-parse.y + echo $< $@ $(o) + $(BISON) -b$(@:.tab.c=) -dv -pcf_ $(BISON_DEBUG) $< -cf-parse.y: $(conf-fragments) $(conf-src)/gen_parser.m4 - $(M4) -P $(conf-src)/gen_parser.m4 $(conf-fragments) >cf-parse.y +$(conf-y-targets): $(s)confbase.Y + $(M4) -P $| $^ >$@ -keywords.h: $(conf-fragments) $(conf-src)/gen_keywords.m4 - $(M4) -P $(conf-src)/gen_keywords.m4 $(conf-fragments) >keywords.h +$(o)cf-parse.y: | $(s)gen_parser.m4 +$(o)keywords.h: | $(s)gen_keywords.m4 +$(o)commands.h: | $(s)gen_commands.m4 $(srcdir)/client/cmds.m4 -commands.h: $(conf-fragments) $(conf-src)/gen_commands.m4 $(srcdir)/client/cmds.m4 - $(M4) -P $(conf-src)/gen_commands.m4 $(srcdir)/client/cmds.m4 $(conf-fragments) | sort >commands.h +$(o)cf-lex.c: $(s)cf-lex.l $(o)cf-parse.tab.h $(o)keywords.h $(o)commands.h + $(FLEX) $(FLEX_DEBUG) -s -B -8 -o$@ -Pcf_ $< -cf-lex.c: cf-lex.l - $(FLEX) $(FLEX_DEBUG) -s -B -8 -ocf-lex.c -Pcf_ cf-lex.l +$(addprefix $(o),cf-parse.tab.h cf-parse.tab.c cf-parse.y keywords.h commands.h cf-lex.c): $(objdir)/.dir-stamp -depend: keywords.h commands.h cf-parse.tab.c cf-lex.c +$(call clean,cf-parse.tab.h cf-parse.tab.c cf-parse.y keywords.h commands.h cf-lex.c cf-parse.output) diff --git a/conf/conf.c b/conf/conf.c index 3fd10ad8..8d4d28e3 100644 --- a/conf/conf.c +++ b/conf/conf.c @@ -52,7 +52,7 @@ #include "lib/resource.h" #include "lib/string.h" #include "lib/event.h" -#include "lib/timer.h" +#include "sysdep/unix/timer.h" #include "conf/conf.h" #include "filter/filter.h" diff --git a/conf/conf.h b/conf/conf.h index 8e490c7b..03fecd32 100644 --- a/conf/conf.h +++ b/conf/conf.h @@ -10,7 +10,7 @@ #define _BIRD_CONF_H_ #include "lib/resource.h" -#include "lib/timer.h" +#include "sysdep/unix/timer.h" /* Configuration structure */ diff --git a/conf/confbase.Y b/conf/confbase.Y index 22aee770..d5fd2133 100644 --- a/conf/confbase.Y +++ b/conf/confbase.Y @@ -14,7 +14,7 @@ CF_HDR #include "conf/conf.h" #include "lib/resource.h" #include "lib/socket.h" -#include "lib/timer.h" +#include "sysdep/unix/timer.h" #include "lib/string.h" #include "nest/protocol.h" #include "nest/iface.h" -- cgit v1.2.3