build: non-recursive isisd

(Also fix a minor snafu in the autoconf logic)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
This commit is contained in:
David Lamparter 2017-08-03 13:42:11 +02:00
parent afca06902e
commit 86e463cf9b
6 changed files with 91 additions and 50 deletions

View 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

View File

@ -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

2
isisd/.gitignore vendored
View File

@ -1,4 +1,4 @@
Makefile
!Makefile
Makefile.in
*.o
isisd

10
isisd/Makefile Normal file
View File

@ -0,0 +1,10 @@
all: ALWAYS
@$(MAKE) -s -C .. isisd/isisd
%: ALWAYS
@$(MAKE) -s -C .. isisd/$@
Makefile:
#nothing
ALWAYS:
.PHONY: ALWAYS makefiles
.SUFFIXES:

View File

@ -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

71
isisd/subdir.am Normal file
View File

@ -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