]> git.puffer.fish Git - mirror/frr.git/commitdiff
build: non-recursive isisd
authorDavid Lamparter <equinox@opensourcerouting.org>
Thu, 3 Aug 2017 11:42:11 +0000 (13:42 +0200)
committerDavid Lamparter <equinox@opensourcerouting.org>
Fri, 4 Aug 2017 09:09:50 +0000 (11:09 +0200)
(Also fix a minor snafu in the autoconf logic)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Makefile.am
configure.ac
isisd/.gitignore
isisd/Makefile [new file with mode: 0644]
isisd/Makefile.am [deleted file]
isisd/subdir.am [new file with mode: 0644]

index 68c2dde34036d013ac59a4fb7f9a488ee46c5f37..a0c0d0ab09f2939250e9f8b1fc11770a8504a5ce 100644 (file)
@@ -34,15 +34,16 @@ include ripngd/subdir.am
 include ospfd/subdir.am
 include ospf6d/subdir.am
 include ospfclient/subdir.am
+include isisd/subdir.am
 
 SUBDIRS = . @LIBRFP@ @RFPTEST@ \
         @BGPD@ @LDPD@ \
-         @ISISD@ @PIMD@ @NHRPD@ @EIGRPD@ @BABELD@ \
+         @PIMD@ @NHRPD@ @EIGRPD@ @BABELD@ \
         @WATCHFRR@ @VTYSH@ @DOC@ \
          @SOLARIS@ tests tools
 
 DIST_SUBDIRS = . bgpd ldpd \
-         isisd watchfrr vtysh doc tests \
+         watchfrr vtysh doc tests \
          solaris pimd nhrpd eigrpd bgpd/rfp-example/librfp \
          bgpd/rfp-example/rfptest tools babeld \
          # end
index c734f9d8ef3c1b74030e5fae95b2c26903fbe4ff..a1d4f67511e352f1b4b33d5ac4edb30900980264 100755 (executable)
@@ -1063,8 +1063,11 @@ case "$host_os" in
     if test $ac_cv_header_net_bpf_h = no; then
       if test $ac_cv_header_sys_dlpi_h = no; then
         AC_MSG_RESULT(none)
+        if test "${enable_isisd}" = yes; then
+          AC_MSG_FAILURE([IS-IS support requested but no packet backend found])
+        fi
         AC_MSG_WARN([*** IS-IS support will not be built ***])
-        ISISD=""
+        enable_isisd="no"
       else
         AC_MSG_RESULT(DLPI)
       fi
@@ -1307,12 +1310,7 @@ esac
 AM_CONDITIONAL(BABELD, test "x$BABELD" = "xbabeld")
 
 AM_CONDITIONAL(OSPF6D, test "${enable_ospf6d}" != "no")
-
-case "${enable_isisd}" in
-  "no" ) ISISD="";;
-  *    ) ISISD="isisd";;
-esac
-AM_CONDITIONAL(ISISD, test "x$ISISD" = "xisisd")
+AM_CONDITIONAL(ISISD, test "${enable_isisd}" != "no")
 
 case "${enable_pimd}" in
   "no" ) PIMD="";;
@@ -1807,7 +1805,7 @@ AC_MSG_RESULT($ac_cv_htonl_works)
 
 AC_CONFIG_FILES([Makefile
          bgpd/Makefile watchfrr/Makefile
-         ldpd/Makefile isisd/Makefile vtysh/Makefile
+         ldpd/Makefile vtysh/Makefile
          doc/Makefile tests/Makefile
          bgpd/rfp-example/rfptest/Makefile bgpd/rfp-example/librfp/Makefile
          babeld/Makefile
index 5e8028c2a63b5bbaccc9797f98942a5b2106ad9c..a882bbf675443d4213f538474e8cceb722719a30 100644 (file)
@@ -1,4 +1,4 @@
-Makefile
+!Makefile
 Makefile.in
 *.o
 isisd
diff --git a/isisd/Makefile b/isisd/Makefile
new file mode 100644 (file)
index 0000000..db3b70e
--- /dev/null
@@ -0,0 +1,10 @@
+all: ALWAYS
+       @$(MAKE) -s -C .. isisd/isisd
+%: ALWAYS
+       @$(MAKE) -s -C .. isisd/$@
+
+Makefile:
+       #nothing
+ALWAYS:
+.PHONY: ALWAYS makefiles
+.SUFFIXES:
diff --git a/isisd/Makefile.am b/isisd/Makefile.am
deleted file mode 100644 (file)
index dc3d368..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-## Process this file with automake to produce Makefile.in.
-
-AM_CPPFLAGS = -I.. -I$(top_srcdir) -I$(top_srcdir)/lib -I$(top_builddir)/lib
-DEFS = @DEFS@ -DSYSCONFDIR=\"$(sysconfdir)/\"
-INSTALL_SDATA=@INSTALL@ -m 600
-LIBS = @LIBS@ 
-
-AM_CFLAGS = $(WERROR)
-
-noinst_LIBRARIES = libisis.a
-sbin_PROGRAMS = isisd
-
-libisis_a_SOURCES = \
-       isis_memory.c \
-       isis_adjacency.c isis_lsp.c dict.c isis_circuit.c isis_pdu.c \
-       isisd.c isis_misc.c isis_zebra.c isis_dr.c \
-       isis_flags.c isis_dynhn.c iso_checksum.c isis_csm.c isis_events.c \
-       isis_spf.c isis_redist.c isis_route.c isis_routemap.c isis_te.c \
-       isis_vty.c isis_mt.c \
-       isis_tlvs.c
-
-
-noinst_HEADERS = \
-       isis_memory.h \
-       isisd.h isis_pdu.h isis_adjacency.h isis_constants.h \
-       isis_lsp.h dict.h isis_circuit.h isis_misc.h isis_network.h \
-       isis_zebra.h isis_dr.h isis_flags.h isis_dynhn.h isis_common.h \
-       iso_checksum.h isis_csm.h isis_events.h isis_spf.h isis_redist.h \
-       isis_route.h isis_routemap.h isis_te.h isis_mt.h \
-       isis_tlvs.h
-
-isisd_SOURCES = \
-       isis_main.c $(libisis_a_SOURCES) \
-       isis_bpf.c isis_dlpi.c isis_pfpacket.c
-
-isisd_LDADD = ../lib/libfrr.la @LIBCAP@
-
-examplesdir = $(exampledir)
-dist_examples_DATA = isisd.conf.sample
diff --git a/isisd/subdir.am b/isisd/subdir.am
new file mode 100644 (file)
index 0000000..6e49d4e
--- /dev/null
@@ -0,0 +1,71 @@
+#
+# isisd
+#
+
+if ISISD
+noinst_LIBRARIES += isisd/libisis.a
+sbin_PROGRAMS += isisd/isisd
+dist_examples_DATA += isisd/isisd.conf.sample
+endif
+
+isisd_libisis_a_SOURCES = \
+       isisd/dict.c \
+       isisd/isis_adjacency.c \
+       isisd/isis_circuit.c \
+       isisd/isis_csm.c \
+       isisd/isis_dr.c \
+       isisd/isis_dynhn.c \
+       isisd/isis_events.c \
+       isisd/isis_flags.c \
+       isisd/isis_lsp.c \
+       isisd/isis_memory.c \
+       isisd/isis_misc.c \
+       isisd/isis_mt.c \
+       isisd/isis_pdu.c \
+       isisd/isis_redist.c \
+       isisd/isis_route.c \
+       isisd/isis_routemap.c \
+       isisd/isis_spf.c \
+       isisd/isis_te.c \
+       isisd/isis_tlvs.c \
+       isisd/isis_vty.c \
+       isisd/isis_zebra.c \
+       isisd/isisd.c \
+       isisd/iso_checksum.c \
+       # end
+
+noinst_HEADERS += \
+       isisd/dict.h \
+       isisd/isis_adjacency.h \
+       isisd/isis_circuit.h \
+       isisd/isis_common.h \
+       isisd/isis_constants.h \
+       isisd/isis_csm.h \
+       isisd/isis_dr.h \
+       isisd/isis_dynhn.h \
+       isisd/isis_events.h \
+       isisd/isis_flags.h \
+       isisd/isis_lsp.h \
+       isisd/isis_memory.h \
+       isisd/isis_misc.h \
+       isisd/isis_mt.h \
+       isisd/isis_network.h \
+       isisd/isis_pdu.h \
+       isisd/isis_redist.h \
+       isisd/isis_route.h \
+       isisd/isis_routemap.h \
+       isisd/isis_spf.h \
+       isisd/isis_te.h \
+       isisd/isis_tlvs.h \
+       isisd/isis_zebra.h \
+       isisd/isisd.h \
+       isisd/iso_checksum.h \
+       # end
+
+isisd_isisd_LDADD = isisd/libisis.a lib/libfrr.la @LIBCAP@
+isisd_isisd_SOURCES = \
+       isisd/isis_bpf.c \
+       isisd/isis_dlpi.c \
+       isisd/isis_main.c \
+       isisd/isis_pfpacket.c \
+       # end