diff options
author | David Lamparter <equinox@opensourcerouting.org> | 2017-08-04 16:13:29 +0200 |
---|---|---|
committer | David Lamparter <equinox@opensourcerouting.org> | 2017-08-04 19:09:11 +0200 |
commit | 30237d294fcb522e3be0df3a5625178db6f47a32 (patch) | |
tree | 8447ae64a257378808081e27cca355a9694a05cd /ldpd | |
parent | doc: work around weird texinfo bug (diff) | |
download | frr-30237d294fcb522e3be0df3a5625178db6f47a32.tar.xz frr-30237d294fcb522e3be0df3a5625178db6f47a32.zip |
build: non-recursive ldpd
This also fixes a build problem where using #include
"ldpd/ldp_vty_cmds_clippy.c" results in the Makefile dependency tracking
having both
ldp_vty_cmds.c: ldp_vty_cmds_clippy.c
ldp_vty_cmds.c: ../ldpd/ldp_vty_cmds_clippy.c
(because, if it's included as "ldpd/..", it uses the "-I.." include path
in gcc, so the gcc -MD dependency output is "../ldpd/...")
... all of which causes the build to try to build it twice (at the same
time) and fail rather stupidly.
With a non-recursive build, the two paths are identical and everything
just works.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'ldpd')
-rw-r--r-- | ldpd/.gitignore | 2 | ||||
-rw-r--r-- | ldpd/Makefile | 10 | ||||
-rw-r--r-- | ldpd/Makefile.am | 30 | ||||
-rw-r--r-- | ldpd/subdir.am | 55 |
4 files changed, 66 insertions, 31 deletions
diff --git a/ldpd/.gitignore b/ldpd/.gitignore index f52b227cb..eee96c636 100644 --- a/ldpd/.gitignore +++ b/ldpd/.gitignore @@ -1,4 +1,4 @@ -Makefile +!Makefile Makefile.in *.o ldpd diff --git a/ldpd/Makefile b/ldpd/Makefile new file mode 100644 index 000000000..464e02cf5 --- /dev/null +++ b/ldpd/Makefile @@ -0,0 +1,10 @@ +all: ALWAYS + @$(MAKE) -s -C .. ldpd/ldpd +%: ALWAYS + @$(MAKE) -s -C .. ldpd/$@ + +Makefile: + #nothing +ALWAYS: +.PHONY: ALWAYS makefiles +.SUFFIXES: diff --git a/ldpd/Makefile.am b/ldpd/Makefile.am deleted file mode 100644 index de9b07ed4..000000000 --- a/ldpd/Makefile.am +++ /dev/null @@ -1,30 +0,0 @@ -## Process this file with automake to produce Makefile.in. - -include ../common.am - -AM_CPPFLAGS = -I.. -I$(top_srcdir) -I$(top_srcdir)/lib -I$(top_builddir)/lib -DEFS = @DEFS@ -DSYSCONFDIR=\"$(sysconfdir)/\" -INSTALL_SDATA=@INSTALL@ -m 600 - -AM_CFLAGS = $(WERROR) - -noinst_LIBRARIES = libldp.a -sbin_PROGRAMS = ldpd - -libldp_a_SOURCES = \ - accept.c address.c adjacency.c control.c hello.c init.c interface.c \ - keepalive.c l2vpn.c labelmapping.c lde.c lde_lib.c ldpd.c \ - ldpe.c log.c logmsg.c neighbor.c notification.c packet.c pfkey.c \ - socket.c util.c ldp_vty_cmds.c ldp_vty_conf.c ldp_vty_exec.c \ - ldp_debug.c ldp_zebra.c - -ldp_vty_cmds.o: ldp_vty_cmds_clippy.c - -noinst_HEADERS = \ - control.h lde.h ldpd.h ldpe.h ldp.h log.h ldp_debug.h ldp_vty.h - -ldpd_SOURCES = ldpd.c -ldpd_LDADD = libldp.a ../lib/libfrr.la @LIBCAP@ - -examplesdir = $(exampledir) -dist_examples_DATA = ldpd.conf.sample diff --git a/ldpd/subdir.am b/ldpd/subdir.am new file mode 100644 index 000000000..db71cee61 --- /dev/null +++ b/ldpd/subdir.am @@ -0,0 +1,55 @@ +# +# ldpd +# + +if LDPD +noinst_LIBRARIES += ldpd/libldp.a +sbin_PROGRAMS += ldpd/ldpd +dist_examples_DATA += ldpd/ldpd.conf.sample +endif + +ldpd_libldp_a_SOURCES = \ + ldpd/accept.c \ + ldpd/address.c \ + ldpd/adjacency.c \ + ldpd/control.c \ + ldpd/hello.c \ + ldpd/init.c \ + ldpd/interface.c \ + ldpd/keepalive.c \ + ldpd/l2vpn.c \ + ldpd/labelmapping.c \ + ldpd/lde.c \ + ldpd/lde_lib.c \ + ldpd/ldp_debug.c \ + ldpd/ldp_vty_cmds.c \ + ldpd/ldp_vty_conf.c \ + ldpd/ldp_vty_exec.c \ + ldpd/ldp_zebra.c \ + ldpd/ldpd.c \ + ldpd/ldpe.c \ + ldpd/log.c \ + ldpd/logmsg.c \ + ldpd/neighbor.c \ + ldpd/notification.c \ + ldpd/packet.c \ + ldpd/pfkey.c \ + ldpd/socket.c \ + ldpd/util.c \ + # end + +ldpd/ldp_vty_cmds.$(OBJEXT): ldpd/ldp_vty_cmds_clippy.c + +noinst_HEADERS += \ + ldpd/control.h \ + ldpd/lde.h \ + ldpd/ldp.h \ + ldpd/ldp_debug.h \ + ldpd/ldp_vty.h \ + ldpd/ldpd.h \ + ldpd/ldpe.h \ + ldpd/log.h \ + # end + +ldpd_ldpd_SOURCES = ldpd/ldpd.c +ldpd_ldpd_LDADD = ldpd/libldp.a lib/libfrr.la @LIBCAP@ |