Merge pull request #10032 from opensourcerouting/build-fix-20211111

build: assorted build system improvements, 2021-11 edition
This commit is contained in:
Donald Sharp 2021-11-13 10:10:59 -05:00 committed by GitHub
commit 045e023549
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 685 additions and 517 deletions

View File

@ -3,7 +3,6 @@
# #
if BABELD if BABELD
noinst_LIBRARIES += babeld/libbabel.a
sbin_PROGRAMS += babeld/babeld sbin_PROGRAMS += babeld/babeld
vtysh_scan += \ vtysh_scan += \
babeld/babel_interface.c \ babeld/babel_interface.c \
@ -13,10 +12,11 @@ vtysh_scan += \
vtysh_daemons += babeld vtysh_daemons += babeld
endif endif
babeld_libbabel_a_SOURCES = \ babeld_babeld_SOURCES = \
babeld/babel_errors.c \ babeld/babel_errors.c \
babeld/babel_filter.c \ babeld/babel_filter.c \
babeld/babel_interface.c \ babeld/babel_interface.c \
babeld/babel_main.c \
babeld/babel_zebra.c \ babeld/babel_zebra.c \
babeld/babeld.c \ babeld/babeld.c \
babeld/kernel.c \ babeld/kernel.c \
@ -48,5 +48,4 @@ noinst_HEADERS += \
babeld/xroute.h \ babeld/xroute.h \
# end # end
babeld_babeld_SOURCES = babeld/babel_main.c babeld_babeld_LDADD = lib/libfrr.la $(LIBCAP)
babeld_babeld_LDADD = babeld/libbabel.a lib/libfrr.la $(LIBCAP)

View File

@ -180,8 +180,6 @@ AM_PROG_CC_C_O
dnl remove autoconf default "-g -O2" dnl remove autoconf default "-g -O2"
CFLAGS="$orig_cflags" CFLAGS="$orig_cflags"
CXXFLAGS="$orig_cxxflags" CXXFLAGS="$orig_cxxflags"
AC_PROG_CC_C99
dnl NB: see C11 below
dnl Some special handling for ICC later on dnl Some special handling for ICC later on
if test "$CC" = "icc"; then if test "$CC" = "icc"; then
@ -254,12 +252,24 @@ if test "$cc_is_icc" = "yes"; then
AC_C_FLAG([-diag-error 10006]) AC_C_FLAG([-diag-error 10006])
fi fi
dnl AC_PROG_CC_C99 may change CC to include -std=gnu99 or something dnl autoconf 2.69 AC_PROG_CC_C99 is "state of the art"
ac_cc="$CC" dnl autoconf 2.70 AC_PROG_CC_C99 is deprecated and AC_PROC_CC tries to do C11
CC="${CC% -std=gnu99}" m4_if(m4_version_compare(m4_defn([AC_AUTOCONF_VERSION]), [2.70]), [-1], [dnl
CC="${CC% -std=c99}" dnl autoconf < 2.70
AC_PROG_CC_C99
AC_C_FLAG([-std=gnu11], [CC="$ac_cc"], [CC="$CC -std=gnu11"]) dnl AC_PROG_CC_C99 may change CC to include -std=gnu99 or something
ac_cc="$CC"
CC="${CC% -std=gnu99}"
CC="${CC% -std=c99}"
AC_C_FLAG([-std=gnu11], [CC="$ac_cc"], [CC="$CC -std=gnu11"])
], [
dnl autoconf >= 2.70
if test "$ac_cv_prog_cc_c11" = "no"; then
AC_MSG_ERROR([ISO C11 compiler support (with GNU extensions) is required.])
fi
])
dnl if the user has specified any CFLAGS, override our settings dnl if the user has specified any CFLAGS, override our settings
if test "$enable_gcov" = "yes"; then if test "$enable_gcov" = "yes"; then
@ -507,6 +517,15 @@ AC_SUBST([AC_LDFLAGS])
AC_SUBST([AC_LDFLAGS_EXEC]) AC_SUBST([AC_LDFLAGS_EXEC])
AM_CONDITIONAL([STATIC_BIN], [test "$enable_static_bin" = "yes"]) AM_CONDITIONAL([STATIC_BIN], [test "$enable_static_bin" = "yes"])
dnl libtool, the repository of all knowledge related linkers, is too stupid to
dnl correctly tell the linker how to build modules.
if test -z "$module_cmds"; then
module_cmds="`echo \"$archive_cmds\" | sed -e 's%$wl-soname $wl$soname%%'`"
fi
if test -z "$module_expsym_cmds"; then
module_expsym_cmds="`echo \"$archive_expsym_cmds\" | sed -e 's%$wl-soname $wl$soname%%'`"
fi
AC_ARG_ENABLE([rpath], AC_ARG_ENABLE([rpath],
[AS_HELP_STRING([--enable-rpath], [set hardcoded rpaths in the executable @<:@default=yes@:>@])], [AS_HELP_STRING([--enable-rpath], [set hardcoded rpaths in the executable @<:@default=yes@:>@])],
[], [],
@ -801,6 +820,8 @@ AS_IF([test "$host" = "$build"], [
AC_CHECK_HEADER([gelf.h], [], [ AC_CHECK_HEADER([gelf.h], [], [
AC_MSG_ERROR([libelf headers are required for building clippy. (Host only when cross-compiling.)]) AC_MSG_ERROR([libelf headers are required for building clippy. (Host only when cross-compiling.)])
]) ])
LIBS_save="$LIBS"
AC_CHECK_LIB([elf], [elf_memory], [], [ AC_CHECK_LIB([elf], [elf_memory], [], [
AC_MSG_ERROR([libelf is required for building clippy. (Host only when cross-compiling.)]) AC_MSG_ERROR([libelf is required for building clippy. (Host only when cross-compiling.)])
]) ])
@ -811,6 +832,8 @@ AS_IF([test "$host" = "$build"], [
AC_CHECK_LIB([elf], [gelf_getnote], [ AC_CHECK_LIB([elf], [gelf_getnote], [
AC_DEFINE([HAVE_GELF_GETNOTE], [1], [Have gelf_getnote()]) AC_DEFINE([HAVE_GELF_GETNOTE], [1], [Have gelf_getnote()])
]) ])
LIBS="$LIBS_save"
unset LIBS_save
FRR_PYTHON_DEV FRR_PYTHON_DEV
], [ ], [
@ -1567,8 +1590,17 @@ if test "$ac_cv_have_decl_TCP_MD5SIG" = "no"; then
AC_CHECK_DECLS([TCP_MD5SIG], [], [], MD5_INCLUDES)]) AC_CHECK_DECLS([TCP_MD5SIG], [], [], MD5_INCLUDES)])
fi fi
AC_CHECK_LIB([crypt], [crypt], [], LIBS_save="$LIBS"
[AC_CHECK_LIB([crypto], [DES_crypt])]) AC_CHECK_LIB([crypt], [crypt], [], [
AC_CHECK_LIB([crypto], [DES_crypt])
])
LIBCRYPT="$LIBS"
LIBCRYPT="${LIBCRYPT%$LIBS_save}"
LIBCRYPT="${LIBCRYPT#$LIBS_save}"
AC_SUBST([LIBCRYPT])
LIBS="$LIBS_save"
unset LIBS_save
AC_CHECK_LIB([resolv], [res_init]) AC_CHECK_LIB([resolv], [res_init])
dnl --------------------------- dnl ---------------------------
@ -2022,6 +2054,7 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "rtrlib/rtrlib.h"]],
dnl --------------- dnl ---------------
dnl dlopen & dlinfo dnl dlopen & dlinfo
dnl --------------- dnl ---------------
LIBS_save="$LIBS"
AC_SEARCH_LIBS([dlopen], [dl dld], [], [ AC_SEARCH_LIBS([dlopen], [dl dld], [], [
AC_MSG_ERROR([unable to find the dlopen()]) AC_MSG_ERROR([unable to find the dlopen()])
]) ])
@ -2068,6 +2101,13 @@ if test "$frr_cv_rtld_di_linkmap" = "yes"; then
AC_DEFINE([HAVE_DLINFO_LINKMAP], [1], [Have dlinfo RTLD_DI_LINKMAP]) AC_DEFINE([HAVE_DLINFO_LINKMAP], [1], [Have dlinfo RTLD_DI_LINKMAP])
fi fi
LIBDL="$LIBS"
LIBDL="${LIBDL%$LIBS_save}"
LIBDL="${LIBDL#$LIBS_save}"
AC_SUBST([LIBDL])
LIBS="$LIBS_save"
unset LIBS_save
dnl ########################################################################## dnl ##########################################################################
dnl test "$enable_clippy_only" != "yes" dnl test "$enable_clippy_only" != "yes"
fi fi
@ -2235,7 +2275,16 @@ dnl --------------------------------------
dnl checking for flex and bison dnl checking for flex and bison
dnl -------------------------------------- dnl --------------------------------------
AM_PROG_LEX dnl autoconf 2.69 AC_PROG_LEX has no parameters
dnl autoconf 2.70 AC_PROG_LEX prints a deprecation warning without params
m4_if(m4_version_compare(m4_defn([AC_AUTOCONF_VERSION]), [2.70]), [-1], [dnl
dnl autoconf < 2.70
AC_PROG_LEX
], [
dnl autoconf >= 2.70
AC_PROG_LEX([noyywrap])
])
AC_MSG_CHECKING([version of flex]) AC_MSG_CHECKING([version of flex])
frr_ac_flex_version="$(eval $LEX -V | grep flex | head -n 1)" frr_ac_flex_version="$(eval $LEX -V | grep flex | head -n 1)"
frr_ac_flex_version="${frr_ac_flex_version##* }" frr_ac_flex_version="${frr_ac_flex_version##* }"

View File

@ -3,7 +3,6 @@
# #
if EIGRPD if EIGRPD
noinst_LIBRARIES += eigrpd/libeigrp.a
sbin_PROGRAMS += eigrpd/eigrpd sbin_PROGRAMS += eigrpd/eigrpd
vtysh_scan += \ vtysh_scan += \
eigrpd/eigrp_cli.c \ eigrpd/eigrp_cli.c \
@ -15,7 +14,7 @@ vtysh_daemons += eigrpd
man8 += $(MANBUILD)/frr-eigrpd.8 man8 += $(MANBUILD)/frr-eigrpd.8
endif endif
eigrpd_libeigrp_a_SOURCES = \ eigrpd_eigrpd_SOURCES = \
eigrpd/eigrp_cli.c \ eigrpd/eigrp_cli.c \
eigrpd/eigrp_dump.c \ eigrpd/eigrp_dump.c \
eigrpd/eigrp_errors.c \ eigrpd/eigrp_errors.c \
@ -23,6 +22,7 @@ eigrpd_libeigrp_a_SOURCES = \
eigrpd/eigrp_fsm.c \ eigrpd/eigrp_fsm.c \
eigrpd/eigrp_hello.c \ eigrpd/eigrp_hello.c \
eigrpd/eigrp_interface.c \ eigrpd/eigrp_interface.c \
eigrpd/eigrp_main.c \
eigrpd/eigrp_metric.c \ eigrpd/eigrp_metric.c \
eigrpd/eigrp_neighbor.c \ eigrpd/eigrp_neighbor.c \
eigrpd/eigrp_network.c \ eigrpd/eigrp_network.c \
@ -78,5 +78,4 @@ nodist_eigrpd_eigrpd_SOURCES = \
yang/frr-eigrpd.yang.c \ yang/frr-eigrpd.yang.c \
# end # end
eigrpd_eigrpd_SOURCES = eigrpd/eigrp_main.c eigrpd_eigrpd_LDADD = lib/libfrr.la $(LIBCAP)
eigrpd_eigrpd_LDADD = eigrpd/libeigrp.a lib/libfrr.la $(LIBCAP)

View File

@ -3,7 +3,7 @@
# #
lib_LTLIBRARIES += lib/libfrr.la lib_LTLIBRARIES += lib/libfrr.la
lib_libfrr_la_LDFLAGS = $(LIB_LDFLAGS) -version-info 0:0:0 -Xlinker -e_libfrr_version lib_libfrr_la_LDFLAGS = $(LIB_LDFLAGS) -version-info 0:0:0 -Xlinker -e_libfrr_version
lib_libfrr_la_LIBADD = $(LIBCAP) $(UNWIND_LIBS) $(LIBYANG_LIBS) $(LUA_LIB) $(UST_LIBS) $(LIBM) lib_libfrr_la_LIBADD = $(LIBCAP) $(UNWIND_LIBS) $(LIBYANG_LIBS) $(LUA_LIB) $(UST_LIBS) $(LIBCRYPT) $(LIBDL) $(LIBM)
lib_libfrr_la_SOURCES = \ lib_libfrr_la_SOURCES = \
lib/agg_table.c \ lib/agg_table.c \
@ -130,7 +130,6 @@ nodist_lib_libfrr_la_SOURCES = \
yang/ietf/ietf-interfaces.yang.c \ yang/ietf/ietf-interfaces.yang.c \
yang/ietf/ietf-bgp-types.yang.c \ yang/ietf/ietf-bgp-types.yang.c \
yang/frr-module-translator.yang.c \ yang/frr-module-translator.yang.c \
yang/frr-nexthop.yang.c \
# end # end
vtysh_scan += \ vtysh_scan += \

View File

@ -3,7 +3,6 @@
# #
if PIMD if PIMD
noinst_LIBRARIES += pimd/libpim.a
sbin_PROGRAMS += pimd/pimd sbin_PROGRAMS += pimd/pimd
bin_PROGRAMS += pimd/mtracebis bin_PROGRAMS += pimd/mtracebis
noinst_PROGRAMS += pimd/test_igmpv3_join noinst_PROGRAMS += pimd/test_igmpv3_join
@ -13,7 +12,7 @@ man8 += $(MANBUILD)/frr-pimd.8
man8 += $(MANBUILD)/mtracebis.8 man8 += $(MANBUILD)/mtracebis.8
endif endif
pimd_libpim_a_SOURCES = \ pimd_pimd_SOURCES = \
pimd/pim_assert.c \ pimd/pim_assert.c \
pimd/pim_bfd.c \ pimd/pim_bfd.c \
pimd/pim_br.c \ pimd/pim_br.c \
@ -33,6 +32,7 @@ pimd_libpim_a_SOURCES = \
pimd/pim_join.c \ pimd/pim_join.c \
pimd/pim_jp_agg.c \ pimd/pim_jp_agg.c \
pimd/pim_macro.c \ pimd/pim_macro.c \
pimd/pim_main.c \
pimd/pim_memory.c \ pimd/pim_memory.c \
pimd/pim_mlag.c \ pimd/pim_mlag.c \
pimd/pim_mroute.c \ pimd/pim_mroute.c \
@ -66,6 +66,9 @@ pimd_libpim_a_SOURCES = \
pimd/pim_vxlan.c \ pimd/pim_vxlan.c \
pimd/pim_zpthread.c \ pimd/pim_zpthread.c \
pimd/pimd.c \ pimd/pimd.c \
# end
nodist_pimd_pimd_SOURCES = \
yang/frr-pim.yang.c \ yang/frr-pim.yang.c \
yang/frr-pim-rp.yang.c \ yang/frr-pim-rp.yang.c \
yang/frr-igmp.yang.c \ yang/frr-igmp.yang.c \
@ -131,14 +134,7 @@ clippy_scan += \
pimd/pim_cmd.c \ pimd/pim_cmd.c \
# end # end
nodist_pimd_pimd_SOURCES = \ pimd_pimd_LDADD = lib/libfrr.la $(LIBCAP)
yang/frr-igmp.yang.c \
yang/frr-pim.yang.c \
yang/frr-pim-rp.yang.c \
# end
pimd_pimd_LDADD = pimd/libpim.a lib/libfrr.la $(LIBCAP)
pimd_pimd_SOURCES = pimd/pim_main.c
pimd_test_igmpv3_join_LDADD = lib/libfrr.la pimd_test_igmpv3_join_LDADD = lib/libfrr.la
pimd_test_igmpv3_join_SOURCES = pimd/test_igmpv3_join.c pimd_test_igmpv3_join_SOURCES = pimd/test_igmpv3_join.c

View File

@ -3,7 +3,6 @@
# #
if RIPD if RIPD
noinst_LIBRARIES += ripd/librip.a
sbin_PROGRAMS += ripd/ripd sbin_PROGRAMS += ripd/ripd
vtysh_scan += \ vtysh_scan += \
ripd/rip_cli.c \ ripd/rip_cli.c \
@ -18,12 +17,13 @@ endif
man8 += $(MANBUILD)/frr-ripd.8 man8 += $(MANBUILD)/frr-ripd.8
endif endif
ripd_librip_a_SOURCES = \ ripd_ripd_SOURCES = \
ripd/rip_cli.c \ ripd/rip_cli.c \
ripd/rip_debug.c \ ripd/rip_debug.c \
ripd/rip_errors.c \ ripd/rip_errors.c \
ripd/rip_interface.c \ ripd/rip_interface.c \
ripd/rip_offset.c \ ripd/rip_offset.c \
ripd/rip_main.c \
ripd/rip_nb.c \ ripd/rip_nb.c \
ripd/rip_nb_config.c \ ripd/rip_nb_config.c \
ripd/rip_nb_rpcs.c \ ripd/rip_nb_rpcs.c \
@ -47,10 +47,7 @@ noinst_HEADERS += \
ripd/ripd.h \ ripd/ripd.h \
# end # end
ripd_ripd_LDADD = ripd/librip.a lib/libfrr.la $(LIBCAP) ripd_ripd_LDADD = lib/libfrr.la $(LIBCAP)
ripd_ripd_SOURCES = \
ripd/rip_main.c \
# end
nodist_ripd_ripd_SOURCES = \ nodist_ripd_ripd_SOURCES = \
yang/frr-ripd.yang.c \ yang/frr-ripd.yang.c \
# end # end

View File

@ -3,7 +3,6 @@
# #
if RIPNGD if RIPNGD
noinst_LIBRARIES += ripngd/libripng.a
sbin_PROGRAMS += ripngd/ripngd sbin_PROGRAMS += ripngd/ripngd
vtysh_scan += \ vtysh_scan += \
ripngd/ripng_cli.c \ ripngd/ripng_cli.c \
@ -14,12 +13,13 @@ vtysh_daemons += ripngd
man8 += $(MANBUILD)/frr-ripngd.8 man8 += $(MANBUILD)/frr-ripngd.8
endif endif
ripngd_libripng_a_SOURCES = \ ripngd_ripngd_SOURCES = \
ripngd/ripng_cli.c \ ripngd/ripng_cli.c \
ripngd/ripng_debug.c \ ripngd/ripng_debug.c \
ripngd/ripng_interface.c \ ripngd/ripng_interface.c \
ripngd/ripng_nexthop.c \ ripngd/ripng_nexthop.c \
ripngd/ripng_offset.c \ ripngd/ripng_offset.c \
ripngd/ripng_main.c \
ripngd/ripng_nb.c \ ripngd/ripng_nb.c \
ripngd/ripng_nb_config.c \ ripngd/ripng_nb_config.c \
ripngd/ripng_nb_rpcs.c \ ripngd/ripng_nb_rpcs.c \
@ -43,10 +43,7 @@ noinst_HEADERS += \
ripngd/ripngd.h \ ripngd/ripngd.h \
# end # end
ripngd_ripngd_LDADD = ripngd/libripng.a lib/libfrr.la $(LIBCAP) ripngd_ripngd_LDADD = lib/libfrr.la $(LIBCAP)
ripngd_ripngd_SOURCES = \
ripngd/ripng_main.c \
# end
nodist_ripngd_ripngd_SOURCES = \ nodist_ripngd_ripngd_SOURCES = \
yang/frr-ripngd.yang.c \ yang/frr-ripngd.yang.c \
# end # end

82
tests/bgpd/subdir.am Normal file
View File

@ -0,0 +1,82 @@
if !BGPD
PYTEST_IGNORE += --ignore=bgpd/
endif
BGP_TEST_LDADD = bgpd/libbgp.a $(RFPLDADD) $(ALL_TESTS_LDADD) $(LIBYANG_LIBS) $(UST_LIBS) -lm
if BGPD
check_PROGRAMS += tests/bgpd/test_aspath
endif
tests_bgpd_test_aspath_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_aspath_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_aspath_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_aspath_SOURCES = tests/bgpd/test_aspath.c
EXTRA_DIST += tests/bgpd/test_aspath.py
if BGPD
check_PROGRAMS += tests/bgpd/test_bgp_table
endif
tests_bgpd_test_bgp_table_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_bgp_table_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_bgp_table_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_bgp_table_SOURCES = tests/bgpd/test_bgp_table.c
if BGPD
check_PROGRAMS += tests/bgpd/test_capability
endif
tests_bgpd_test_capability_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_capability_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_capability_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_capability_SOURCES = tests/bgpd/test_capability.c
EXTRA_DIST += tests/bgpd/test_capability.py
if BGPD
check_PROGRAMS += tests/bgpd/test_ecommunity
endif
tests_bgpd_test_ecommunity_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_ecommunity_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_ecommunity_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_ecommunity_SOURCES = tests/bgpd/test_ecommunity.c
EXTRA_DIST += tests/bgpd/test_ecommunity.py
if BGPD
check_PROGRAMS += tests/bgpd/test_mp_attr
endif
tests_bgpd_test_mp_attr_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_mp_attr_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_mp_attr_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_mp_attr_SOURCES = tests/bgpd/test_mp_attr.c
EXTRA_DIST += tests/bgpd/test_mp_attr.py
if BGPD
check_PROGRAMS += tests/bgpd/test_mpath
endif
tests_bgpd_test_mpath_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_mpath_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_mpath_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_mpath_SOURCES = tests/bgpd/test_mpath.c
EXTRA_DIST += tests/bgpd/test_mpath.py
if BGPD
check_PROGRAMS += tests/bgpd/test_packet
endif
tests_bgpd_test_packet_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_packet_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_packet_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_packet_SOURCES = tests/bgpd/test_packet.c
if BGPD
check_PROGRAMS += tests/bgpd/test_peer_attr
endif
tests_bgpd_test_peer_attr_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_peer_attr_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_peer_attr_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_peer_attr_SOURCES = tests/bgpd/test_peer_attr.c
EXTRA_DIST += tests/bgpd/test_peer_attr.py

66
tests/isisd/subdir.am Normal file
View File

@ -0,0 +1,66 @@
if !ISISD
PYTEST_IGNORE += --ignore=isisd/
endif
ISISD_TEST_LDADD = isisd/libisis.a $(ALL_TESTS_LDADD)
noinst_HEADERS += \
tests/isisd/test_common.h \
# end
if ISISD
check_PROGRAMS += tests/isisd/test_fuzz_isis_tlv
endif
tests_isisd_test_fuzz_isis_tlv_CFLAGS = $(TESTS_CFLAGS) -I$(top_builddir)/tests/isisd
tests_isisd_test_fuzz_isis_tlv_CPPFLAGS = $(TESTS_CPPFLAGS) -I$(top_builddir)/tests/isisd
tests_isisd_test_fuzz_isis_tlv_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_fuzz_isis_tlv_SOURCES = tests/isisd/test_fuzz_isis_tlv.c tests/isisd/test_common.c
nodist_tests_isisd_test_fuzz_isis_tlv_SOURCES = tests/isisd/test_fuzz_isis_tlv_tests.h
EXTRA_DIST += \
tests/isisd/test_fuzz_isis_tlv.py \
tests/isisd/test_fuzz_isis_tlv_tests.h.gz \
# end
tests/isisd/test_fuzz_isis_tlv_tests.h: $(top_srcdir)/tests/isisd/test_fuzz_isis_tlv_tests.h.gz
@mkdir -p tests/isisd
$(AM_V_GEN)gzip -d < $(top_srcdir)/tests/isisd/test_fuzz_isis_tlv_tests.h.gz > "$@"
CLEANFILES += tests/isisd/test_fuzz_isis_tlv_tests.h
tests/isisd/tests_isisd_test_fuzz_isis_tlv-test_fuzz_isis_tlv.$(OBJEXT): \
tests/isisd/test_fuzz_isis_tlv_tests.h
tests/isisd/test_fuzz_isis_tlv-test_fuzz_isis_tlv.$(OBJEXT): \
tests/isisd/test_fuzz_isis_tlv_tests.h
if ISISD
check_PROGRAMS += tests/isisd/test_isis_lspdb
endif
tests_isisd_test_isis_lspdb_CFLAGS = $(TESTS_CFLAGS)
tests_isisd_test_isis_lspdb_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_isisd_test_isis_lspdb_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_isis_lspdb_SOURCES = tests/isisd/test_isis_lspdb.c tests/isisd/test_common.c
EXTRA_DIST += tests/isisd/test_isis_lspdb.py
if ISISD
check_PROGRAMS += tests/isisd/test_isis_spf
endif
tests_isisd_test_isis_spf_CFLAGS = $(TESTS_CFLAGS)
tests_isisd_test_isis_spf_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_isisd_test_isis_spf_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_isis_spf_SOURCES = tests/isisd/test_isis_spf.c tests/isisd/test_common.c tests/isisd/test_topologies.c
nodist_tests_isisd_test_isis_spf_SOURCES = yang/frr-isisd.yang.c
EXTRA_DIST += \
tests/isisd/test_isis_spf.py \
tests/isisd/test_isis_spf.in \
tests/isisd/test_isis_spf.refout \
# end
if ISISD
check_PROGRAMS += tests/isisd/test_isis_vertex_queue
endif
tests_isisd_test_isis_vertex_queue_CFLAGS = $(TESTS_CFLAGS)
tests_isisd_test_isis_vertex_queue_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_isisd_test_isis_vertex_queue_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_isis_vertex_queue_SOURCES = tests/isisd/test_isis_vertex_queue.c tests/isisd/test_common.c
EXTRA_DIST += tests/isisd/test_isis_vertex_queue.py

364
tests/lib/subdir.am Normal file
View File

@ -0,0 +1,364 @@
##############################################################################
if SCRIPTING
check_PROGRAMS += tests/lib/test_frrlua
endif
tests_lib_test_frrlua_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_frrlua_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_frrlua_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_frrlua_SOURCES = tests/lib/test_frrlua.c
EXTRA_DIST += tests/lib/test_frrlua.py
if SCRIPTING
check_PROGRAMS += tests/lib/test_frrscript
endif
tests_lib_test_frrscript_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_frrscript_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_frrscript_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_frrscript_SOURCES = tests/lib/test_frrscript.c
EXTRA_DIST += tests/lib/test_frrscript.py
##############################################################################
GRPC_TESTS_LDADD = staticd/libstatic.a grpc/libfrrgrpc_pb.la -lgrpc++ -lprotobuf $(ALL_TESTS_LDADD) $(LIBYANG_LIBS) -lm
if GRPC
check_PROGRAMS += tests/lib/test_grpc
endif
tests_lib_test_grpc_CXXFLAGS = $(WERROR) $(TESTS_CXXFLAGS)
tests_lib_test_grpc_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_grpc_LDADD = $(GRPC_TESTS_LDADD)
tests_lib_test_grpc_SOURCES = tests/lib/test_grpc.cpp
##############################################################################
if ZEROMQ
check_PROGRAMS += tests/lib/test_zmq
endif
tests_lib_test_zmq_CFLAGS = $(TESTS_CFLAGS) $(ZEROMQ_CFLAGS)
tests_lib_test_zmq_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_zmq_LDADD = lib/libfrrzmq.la $(ALL_TESTS_LDADD) $(ZEROMQ_LIBS)
tests_lib_test_zmq_SOURCES = tests/lib/test_zmq.c
##############################################################################
if CARES
check_PROGRAMS += tests/lib/test_resolver
endif
tests_lib_test_resolver_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_resolver_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_resolver_LDADD = $(ALL_TESTS_LDADD) lib/libfrrcares.la
tests_lib_test_resolver_SOURCES = tests/lib/test_resolver.c tests/lib/cli/common_cli.c
##############################################################################
noinst_HEADERS += \
tests/helpers/c/prng.h \
tests/helpers/c/tests.h \
tests/lib/cli/common_cli.h \
# end
check_PROGRAMS += tests/lib/cxxcompat
tests_lib_cxxcompat_CFLAGS = $(TESTS_CFLAGS) $(CXX_COMPAT_CFLAGS) $(WERROR)
tests_lib_cxxcompat_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_cxxcompat_SOURCES = tests/lib/cxxcompat.c
tests_lib_cxxcompat_LDADD = $(ALL_TESTS_LDADD)
check_PROGRAMS += tests/lib/cli/test_cli
tests_lib_cli_test_cli_CFLAGS = $(TESTS_CFLAGS)
tests_lib_cli_test_cli_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_cli_test_cli_LDADD = $(ALL_TESTS_LDADD)
tests_lib_cli_test_cli_SOURCES = tests/lib/cli/test_cli.c tests/lib/cli/common_cli.c
clippy_scan += tests/lib/cli/test_cli.c
EXTRA_DIST += \
tests/lib/cli/test_cli.in \
tests/lib/cli/test_cli.py \
tests/lib/cli/test_cli.refout \
# end
check_PROGRAMS += tests/lib/cli/test_commands
tests_lib_cli_test_commands_CFLAGS = $(TESTS_CFLAGS)
tests_lib_cli_test_commands_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_cli_test_commands_LDADD = $(ALL_TESTS_LDADD)
nodist_tests_lib_cli_test_commands_SOURCES = tests/lib/cli/test_commands_defun.c
tests_lib_cli_test_commands_SOURCES = tests/lib/cli/test_commands.c tests/helpers/c/prng.c
tests/lib/cli/test_commands_defun.c: vtysh/vtysh_cmd.c
@mkdir -p tests/lib/cli
$(AM_V_GEN)sed \
-e 's%"vtysh/vtysh\.h"%"tests/helpers/c/tests.h"%' \
-e 's/vtysh_init_cmd/test_init_cmd/' \
-e 's/VTYSH_[A-Z][A-Z_0-9]*/0/g' \
< vtysh/vtysh_cmd.c \
> "$@"
CLEANFILES += tests/lib/cli/test_commands_defun.c
EXTRA_DIST += \
tests/lib/cli/test_commands.in \
tests/lib/cli/test_commands.py \
tests/lib/cli/test_commands.refout \
# end
check_PROGRAMS += tests/lib/northbound/test_oper_data
tests_lib_northbound_test_oper_data_CFLAGS = $(TESTS_CFLAGS)
tests_lib_northbound_test_oper_data_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_northbound_test_oper_data_LDADD = $(ALL_TESTS_LDADD)
tests_lib_northbound_test_oper_data_SOURCES = tests/lib/northbound/test_oper_data.c
nodist_tests_lib_northbound_test_oper_data_SOURCES = yang/frr-test-module.yang.c
EXTRA_DIST += \
tests/lib/northbound/test_oper_data.in \
tests/lib/northbound/test_oper_data.py \
tests/lib/northbound/test_oper_data.refout \
# end
check_PROGRAMS += tests/lib/test_assert
tests_lib_test_assert_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_assert_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_assert_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_assert_SOURCES = tests/lib/test_assert.c
EXTRA_DIST += tests/lib/test_assert.py
check_PROGRAMS += tests/lib/test_atomlist
tests_lib_test_atomlist_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_atomlist_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_atomlist_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_atomlist_SOURCES = tests/lib/test_atomlist.c
EXTRA_DIST += tests/lib/test_atomlist.py
check_PROGRAMS += tests/lib/test_buffer
tests_lib_test_buffer_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_buffer_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_buffer_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_buffer_SOURCES = tests/lib/test_buffer.c
check_PROGRAMS += tests/lib/test_checksum
tests_lib_test_checksum_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_checksum_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_checksum_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_checksum_SOURCES = tests/lib/test_checksum.c
check_PROGRAMS += tests/lib/test_graph
tests_lib_test_graph_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_graph_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_graph_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_graph_SOURCES = tests/lib/test_graph.c
EXTRA_DIST += \
tests/lib/test_graph.py \
tests/lib/test_graph.refout \
# end
check_PROGRAMS += tests/lib/test_heavy
tests_lib_test_heavy_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_heavy_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_heavy_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_heavy_SOURCES = tests/lib/test_heavy.c tests/helpers/c/main.c
check_PROGRAMS += tests/lib/test_heavy_thread
tests_lib_test_heavy_thread_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_heavy_thread_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_heavy_thread_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_heavy_thread_SOURCES = tests/lib/test_heavy_thread.c tests/helpers/c/main.c
check_PROGRAMS += tests/lib/test_heavy_wq
tests_lib_test_heavy_wq_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_heavy_wq_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_heavy_wq_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_heavy_wq_SOURCES = tests/lib/test_heavy_wq.c tests/helpers/c/main.c
check_PROGRAMS += tests/lib/test_idalloc
tests_lib_test_idalloc_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_idalloc_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_idalloc_SOURCES = tests/lib/test_idalloc.c
check_PROGRAMS += tests/lib/test_memory
tests_lib_test_memory_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_memory_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_memory_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_memory_SOURCES = tests/lib/test_memory.c
check_PROGRAMS += tests/lib/test_nexthop_iter
tests_lib_test_nexthop_iter_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_nexthop_iter_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_nexthop_iter_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_nexthop_iter_SOURCES = tests/lib/test_nexthop_iter.c tests/helpers/c/prng.c
EXTRA_DIST += tests/lib/test_nexthop_iter.py
check_PROGRAMS += tests/lib/test_nexthop
tests_lib_test_nexthop_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_nexthop_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_nexthop_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_nexthop_SOURCES = tests/lib/test_nexthop.c
EXTRA_DIST += tests/lib/test_nexthop.py
check_PROGRAMS += tests/lib/test_ntop
tests_lib_test_ntop_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_ntop_CPPFLAGS = $(CPPFLAGS_BASE) # no assert override
tests_lib_test_ntop_LDADD = # none
tests_lib_test_ntop_SOURCES = tests/lib/test_ntop.c tests/helpers/c/prng.c
EXTRA_DIST += tests/lib/test_ntop.py
check_PROGRAMS += tests/lib/test_plist
tests_lib_test_plist_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_plist_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_plist_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_plist_SOURCES = tests/lib/test_plist.c tests/lib/cli/common_cli.c
check_PROGRAMS += tests/lib/test_prefix2str
tests_lib_test_prefix2str_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_prefix2str_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_prefix2str_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_prefix2str_SOURCES = tests/lib/test_prefix2str.c tests/helpers/c/prng.c
EXTRA_DIST += tests/lib/test_prefix2str.py
check_PROGRAMS += tests/lib/test_printfrr
tests_lib_test_printfrr_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_printfrr_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_printfrr_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_printfrr_SOURCES = tests/lib/test_printfrr.c
EXTRA_DIST += tests/lib/test_printfrr.py
check_PROGRAMS += tests/lib/test_privs
tests_lib_test_privs_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_privs_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_privs_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_privs_SOURCES = tests/lib/test_privs.c
check_PROGRAMS += tests/lib/test_ringbuf
tests_lib_test_ringbuf_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_ringbuf_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_ringbuf_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_ringbuf_SOURCES = tests/lib/test_ringbuf.c
EXTRA_DIST += tests/lib/test_ringbuf.py
check_PROGRAMS += tests/lib/test_segv
tests_lib_test_segv_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_segv_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_segv_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_segv_SOURCES = tests/lib/test_segv.c
check_PROGRAMS += tests/lib/test_seqlock
tests_lib_test_seqlock_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_seqlock_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_seqlock_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_seqlock_SOURCES = tests/lib/test_seqlock.c
check_PROGRAMS += tests/lib/test_sig
tests_lib_test_sig_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_sig_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_sig_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_sig_SOURCES = tests/lib/test_sig.c
check_PROGRAMS += tests/lib/test_skiplist
tests_lib_test_skiplist_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_skiplist_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_skiplist_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_skiplist_SOURCES = tests/lib/test_skiplist.c
check_PROGRAMS += tests/lib/test_srcdest_table
tests_lib_test_srcdest_table_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_srcdest_table_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_srcdest_table_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_srcdest_table_SOURCES = tests/lib/test_srcdest_table.c tests/helpers/c/prng.c
EXTRA_DIST += tests/lib/test_srcdest_table.py
check_PROGRAMS += tests/lib/test_stream
tests_lib_test_stream_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_stream_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_stream_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_stream_SOURCES = tests/lib/test_stream.c
EXTRA_DIST += \
tests/lib/test_stream.py \
tests/lib/test_stream.refout \
# end
check_PROGRAMS += tests/lib/test_table
tests_lib_test_table_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_table_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_table_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_table_SOURCES = tests/lib/test_table.c
EXTRA_DIST += tests/lib/test_table.py
check_PROGRAMS += tests/lib/test_timer_correctness
tests_lib_test_timer_correctness_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_timer_correctness_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_timer_correctness_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_timer_correctness_SOURCES = tests/lib/test_timer_correctness.c tests/helpers/c/prng.c
EXTRA_DIST += tests/lib/test_timer_correctness.py
check_PROGRAMS += tests/lib/test_timer_performance
tests_lib_test_timer_performance_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_timer_performance_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_timer_performance_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_timer_performance_SOURCES = tests/lib/test_timer_performance.c tests/helpers/c/prng.c
check_PROGRAMS += tests/lib/test_ttable
tests_lib_test_ttable_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_ttable_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_ttable_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_ttable_SOURCES = tests/lib/test_ttable.c
EXTRA_DIST += \
tests/lib/test_ttable.py \
tests/lib/test_ttable.refout \
# end
check_PROGRAMS += tests/lib/test_typelist
tests_lib_test_typelist_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_typelist_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_typelist_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_typelist_SOURCES = tests/lib/test_typelist.c tests/helpers/c/prng.c
noinst_HEADERS += tests/lib/test_typelist.h
EXTRA_DIST += tests/lib/test_typelist.py
check_PROGRAMS += tests/lib/test_versioncmp
tests_lib_test_versioncmp_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_versioncmp_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_versioncmp_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_versioncmp_SOURCES = tests/lib/test_versioncmp.c
EXTRA_DIST += tests/lib/test_versioncmp.py
check_PROGRAMS += tests/lib/test_xref
tests_lib_test_xref_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_xref_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_xref_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_xref_SOURCES = tests/lib/test_xref.c
EXTRA_DIST += tests/lib/test_xref.py
check_PROGRAMS += tests/lib/test_zlog
tests_lib_test_zlog_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_zlog_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_zlog_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_zlog_SOURCES = tests/lib/test_zlog.c
EXTRA_DIST += tests/lib/test_zlog.py

View File

@ -259,8 +259,8 @@ int main(int argc, char **argv)
* *
* gateway addresses only for now: interfaces require more setup * gateway addresses only for now: interfaces require more setup
*/ */
printchk("(null)", "%pNHcg", NULL); printchk("(null)", "%pNHcg", (struct nexthop *)NULL);
printchk("(null)", "%pNHci", NULL); printchk("(null)", "%pNHci", (struct nexthop *)NULL);
struct nexthop nh; struct nexthop nh;

19
tests/ospf6d/subdir.am Normal file
View File

@ -0,0 +1,19 @@
if !OSPF6D
PYTEST_IGNORE += --ignore=ospf6d/
endif
OSPF6_TEST_LDADD = ospf6d/libospf6.a $(ALL_TESTS_LDADD)
if OSPF6D
check_PROGRAMS += tests/ospf6d/test_lsdb
endif
tests_ospf6d_test_lsdb_CFLAGS = $(TESTS_CFLAGS)
tests_ospf6d_test_lsdb_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_ospf6d_test_lsdb_LDADD = $(OSPF6_TEST_LDADD)
tests_ospf6d_test_lsdb_SOURCES = tests/ospf6d/test_lsdb.c tests/lib/cli/common_cli.c
clippy_scan += tests/ospf6d/test_lsdb.c
EXTRA_DIST += \
tests/ospf6d/test_lsdb.py \
tests/ospf6d/test_lsdb.in \
tests/ospf6d/test_lsdb.refout \
# end

21
tests/ospfd/subdir.am Normal file
View File

@ -0,0 +1,21 @@
if !OSPFD
PYTEST_IGNORE += --ignore=ospfd/
endif
OSPFD_TEST_LDADD = ospfd/libfrrospf.a $(ALL_TESTS_LDADD)
noinst_HEADERS += \
tests/ospfd/common.h \
# end
if OSPFD
check_PROGRAMS += tests/ospfd/test_ospf_spf
endif
tests_ospfd_test_ospf_spf_CFLAGS = $(TESTS_CFLAGS)
tests_ospfd_test_ospf_spf_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_ospfd_test_ospf_spf_LDADD = $(OSPFD_TEST_LDADD)
tests_ospfd_test_ospf_spf_SOURCES = tests/ospfd/test_ospf_spf.c tests/ospfd/common.c tests/ospfd/topologies.c
EXTRA_DIST += \
tests/ospfd/test_ospf_spf.py \
tests/ospfd/test_ospf_spf.in \
tests/ospfd/test_ospf_spf.refout \
# end

View File

@ -2,171 +2,6 @@
# tests # tests
# #
if BGPD
TESTS_BGPD = \
tests/bgpd/test_aspath \
tests/bgpd/test_capability \
tests/bgpd/test_packet \
tests/bgpd/test_peer_attr \
tests/bgpd/test_ecommunity \
tests/bgpd/test_mp_attr \
tests/bgpd/test_mpath \
tests/bgpd/test_bgp_table
IGNORE_BGPD =
else
TESTS_BGPD =
IGNORE_BGPD = --ignore=bgpd/
endif
if ISISD
TESTS_ISISD = \
tests/isisd/test_fuzz_isis_tlv \
tests/isisd/test_isis_lspdb \
tests/isisd/test_isis_spf \
tests/isisd/test_isis_vertex_queue \
# end
IGNORE_ISISD =
else
TESTS_ISISD =
IGNORE_ISISD = --ignore=isisd/
endif
if OSPFD
TESTS_OSPFD = \
tests/ospfd/test_ospf_spf \
# end
IGNORE_OSPFD =
else
TESTS_OSPFD =
IGNORE_OSPFD = --ignore=ospfd/
endif
if OSPF6D
TESTS_OSPF6D = \
tests/ospf6d/test_lsdb \
# end
IGNORE_OSPF6D =
else
TESTS_OSPF6D =
IGNORE_OSPF6D = --ignore=ospf6d/
endif
if ZEBRA
TESTS_ZEBRA = \
tests/zebra/test_lm_plugin \
#end
IGNORE_ZEBRA =
else
TESTS_ZEBRA =
IGNORE_ZEBRA = --ignore=zebra/
endif
if SCRIPTING
TESTS_SCRIPTING = \
tests/lib/test_frrlua \
tests/lib/test_frrscript \
#end
else
TESTS_SCRIPTING =
endif
clippy_scan += \
tests/lib/cli/test_cli.c \
tests/ospf6d/test_lsdb.c \
# end
check_PROGRAMS = \
tests/lib/cxxcompat \
tests/lib/test_assert \
tests/lib/test_atomlist \
tests/lib/test_buffer \
tests/lib/test_checksum \
tests/lib/test_heavy_thread \
tests/lib/test_heavy_wq \
tests/lib/test_heavy \
tests/lib/test_idalloc \
tests/lib/test_memory \
tests/lib/test_nexthop_iter \
tests/lib/test_nexthop \
tests/lib/test_ntop \
tests/lib/test_plist \
tests/lib/test_prefix2str \
tests/lib/test_printfrr \
tests/lib/test_privs \
tests/lib/test_ringbuf \
tests/lib/test_srcdest_table \
tests/lib/test_segv \
tests/lib/test_seqlock \
tests/lib/test_sig \
tests/lib/test_skiplist \
tests/lib/test_stream \
tests/lib/test_table \
tests/lib/test_timer_correctness \
tests/lib/test_timer_performance \
tests/lib/test_ttable \
tests/lib/test_typelist \
tests/lib/test_versioncmp \
tests/lib/test_xref \
tests/lib/test_zlog \
tests/lib/test_graph \
tests/lib/cli/test_cli \
tests/lib/cli/test_commands \
tests/lib/northbound/test_oper_data \
$(TESTS_BGPD) \
$(TESTS_ISISD) \
$(TESTS_OSPFD) \
$(TESTS_OSPF6D) \
$(TESTS_ZEBRA) \
$(TESTS_SCRIPTING) \
# end
if GRPC
check_PROGRAMS += \
tests/lib/test_grpc \
#end
endif
if ZEROMQ
check_PROGRAMS += \
tests/lib/test_zmq \
# end
endif
if CARES
check_PROGRAMS += \
tests/lib/test_resolver \
# end
endif
tests/lib/cli/test_commands_defun.c: vtysh/vtysh_cmd.c
mkdir -p tests/lib/cli
sed \
-e 's%"vtysh/vtysh\.h"%"tests/helpers/c/tests.h"%' \
-e 's/vtysh_init_cmd/test_init_cmd/' \
-e 's/VTYSH_[A-Z][A-Z_0-9]*/0/g' \
< vtysh/vtysh_cmd.c \
> "$@"
CLEANFILES += tests/lib/cli/test_commands_defun.c
tests/isisd/test_fuzz_isis_tlv_tests.h: $(top_srcdir)/tests/isisd/test_fuzz_isis_tlv_tests.h.gz
mkdir -p tests/isisd
gzip -d < $(top_srcdir)/tests/isisd/test_fuzz_isis_tlv_tests.h.gz > "$@"
CLEANFILES += tests/isisd/test_fuzz_isis_tlv_tests.h
tests/isisd/tests_isisd_test_fuzz_isis_tlv-test_fuzz_isis_tlv.$(OBJEXT): \
tests/isisd/test_fuzz_isis_tlv_tests.h
tests/isisd/test_fuzz_isis_tlv-test_fuzz_isis_tlv.$(OBJEXT): \
tests/isisd/test_fuzz_isis_tlv_tests.h
noinst_HEADERS += \
tests/helpers/c/prng.h \
tests/helpers/c/tests.h \
tests/lib/cli/common_cli.h \
tests/lib/test_typelist.h \
tests/isisd/test_common.h \
tests/ospfd/common.h \
# end
# #
# *sigh* - there is no way to get CPPFLAGS or CFLAGS for a group of files :( # *sigh* - there is no way to get CPPFLAGS or CFLAGS for a group of files :(
# #
@ -190,323 +25,52 @@ TESTS_CXXFLAGS = \
# note no -Werror # note no -Werror
ALL_TESTS_LDADD = lib/libfrr.la $(LIBCAP) ALL_TESTS_LDADD = lib/libfrr.la $(LIBCAP)
BGP_TEST_LDADD = bgpd/libbgp.a $(RFPLDADD) $(ALL_TESTS_LDADD) $(LIBYANG_LIBS) $(UST_LIBS) -lm
ISISD_TEST_LDADD = isisd/libisis.a $(ALL_TESTS_LDADD)
if GRPC
GRPC_TESTS_LDADD = staticd/libstatic.a grpc/libfrrgrpc_pb.la -lgrpc++ -lprotobuf $(ALL_TESTS_LDADD) $(LIBYANG_LIBS) -lm
endif
OSPFD_TEST_LDADD = ospfd/libfrrospf.a $(ALL_TESTS_LDADD)
OSPF6_TEST_LDADD = ospf6d/libospf6.a $(ALL_TESTS_LDADD)
ZEBRA_TEST_LDADD = zebra/label_manager.o $(ALL_TESTS_LDADD)
tests_bgpd_test_aspath_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_aspath_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_aspath_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_aspath_SOURCES = tests/bgpd/test_aspath.c
tests_bgpd_test_bgp_table_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_bgp_table_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_bgp_table_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_bgp_table_SOURCES = tests/bgpd/test_bgp_table.c
tests_bgpd_test_capability_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_capability_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_capability_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_capability_SOURCES = tests/bgpd/test_capability.c
tests_bgpd_test_ecommunity_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_ecommunity_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_ecommunity_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_ecommunity_SOURCES = tests/bgpd/test_ecommunity.c
tests_bgpd_test_mp_attr_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_mp_attr_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_mp_attr_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_mp_attr_SOURCES = tests/bgpd/test_mp_attr.c
tests_bgpd_test_mpath_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_mpath_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_mpath_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_mpath_SOURCES = tests/bgpd/test_mpath.c
tests_bgpd_test_packet_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_packet_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_packet_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_packet_SOURCES = tests/bgpd/test_packet.c
tests_bgpd_test_peer_attr_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_peer_attr_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_peer_attr_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_peer_attr_SOURCES = tests/bgpd/test_peer_attr.c
tests_isisd_test_fuzz_isis_tlv_CFLAGS = $(TESTS_CFLAGS) -I$(top_builddir)/tests/isisd
tests_isisd_test_fuzz_isis_tlv_CPPFLAGS = $(TESTS_CPPFLAGS) -I$(top_builddir)/tests/isisd
tests_isisd_test_fuzz_isis_tlv_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_fuzz_isis_tlv_SOURCES = tests/isisd/test_fuzz_isis_tlv.c tests/isisd/test_common.c
nodist_tests_isisd_test_fuzz_isis_tlv_SOURCES = tests/isisd/test_fuzz_isis_tlv_tests.h
tests_isisd_test_isis_lspdb_CFLAGS = $(TESTS_CFLAGS)
tests_isisd_test_isis_lspdb_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_isisd_test_isis_lspdb_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_isis_lspdb_SOURCES = tests/isisd/test_isis_lspdb.c tests/isisd/test_common.c
tests_isisd_test_isis_spf_CFLAGS = $(TESTS_CFLAGS)
tests_isisd_test_isis_spf_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_isisd_test_isis_spf_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_isis_spf_SOURCES = tests/isisd/test_isis_spf.c tests/isisd/test_common.c tests/isisd/test_topologies.c
nodist_tests_isisd_test_isis_spf_SOURCES = yang/frr-isisd.yang.c
tests_isisd_test_isis_vertex_queue_CFLAGS = $(TESTS_CFLAGS)
tests_isisd_test_isis_vertex_queue_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_isisd_test_isis_vertex_queue_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_isis_vertex_queue_SOURCES = tests/isisd/test_isis_vertex_queue.c tests/isisd/test_common.c
tests_ospfd_test_ospf_spf_CFLAGS = $(TESTS_CFLAGS)
tests_ospfd_test_ospf_spf_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_ospfd_test_ospf_spf_LDADD = $(OSPFD_TEST_LDADD)
tests_ospfd_test_ospf_spf_SOURCES = tests/ospfd/test_ospf_spf.c tests/ospfd/common.c tests/ospfd/topologies.c
tests_lib_cxxcompat_CFLAGS = $(TESTS_CFLAGS) $(CXX_COMPAT_CFLAGS) $(WERROR)
tests_lib_cxxcompat_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_cxxcompat_SOURCES = tests/lib/cxxcompat.c
tests_lib_cxxcompat_LDADD = $(ALL_TESTS_LDADD)
tests_lib_cli_test_cli_CFLAGS = $(TESTS_CFLAGS)
tests_lib_cli_test_cli_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_cli_test_cli_LDADD = $(ALL_TESTS_LDADD)
tests_lib_cli_test_cli_SOURCES = tests/lib/cli/test_cli.c tests/lib/cli/common_cli.c
tests_lib_cli_test_commands_CFLAGS = $(TESTS_CFLAGS)
tests_lib_cli_test_commands_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_cli_test_commands_LDADD = $(ALL_TESTS_LDADD)
nodist_tests_lib_cli_test_commands_SOURCES = tests/lib/cli/test_commands_defun.c
tests_lib_cli_test_commands_SOURCES = tests/lib/cli/test_commands.c tests/helpers/c/prng.c
tests_lib_northbound_test_oper_data_CFLAGS = $(TESTS_CFLAGS)
tests_lib_northbound_test_oper_data_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_northbound_test_oper_data_LDADD = $(ALL_TESTS_LDADD)
tests_lib_northbound_test_oper_data_SOURCES = tests/lib/northbound/test_oper_data.c
nodist_tests_lib_northbound_test_oper_data_SOURCES = yang/frr-test-module.yang.c
if GRPC
tests_lib_test_grpc_CXXFLAGS = $(WERROR) $(TESTS_CXXFLAGS)
tests_lib_test_grpc_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_grpc_LDADD = $(GRPC_TESTS_LDADD)
tests_lib_test_grpc_SOURCES = tests/lib/test_grpc.cpp
endif
tests_lib_test_assert_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_assert_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_assert_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_assert_SOURCES = tests/lib/test_assert.c
tests_lib_test_atomlist_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_atomlist_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_atomlist_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_atomlist_SOURCES = tests/lib/test_atomlist.c
tests_lib_test_buffer_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_buffer_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_buffer_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_buffer_SOURCES = tests/lib/test_buffer.c
tests_lib_test_checksum_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_checksum_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_checksum_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_checksum_SOURCES = tests/lib/test_checksum.c
if SCRIPTING
tests_lib_test_frrlua_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_frrlua_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_frrlua_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_frrlua_SOURCES = tests/lib/test_frrlua.c
tests_lib_test_frrscript_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_frrscript_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_frrscript_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_frrscript_SOURCES = tests/lib/test_frrscript.c
endif
tests_lib_test_graph_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_graph_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_graph_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_graph_SOURCES = tests/lib/test_graph.c
tests_lib_test_heavy_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_heavy_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_heavy_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_heavy_SOURCES = tests/lib/test_heavy.c tests/helpers/c/main.c
tests_lib_test_heavy_thread_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_heavy_thread_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_heavy_thread_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_heavy_thread_SOURCES = tests/lib/test_heavy_thread.c tests/helpers/c/main.c
tests_lib_test_heavy_wq_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_heavy_wq_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_heavy_wq_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_heavy_wq_SOURCES = tests/lib/test_heavy_wq.c tests/helpers/c/main.c
tests_lib_test_idalloc_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_idalloc_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_idalloc_SOURCES = tests/lib/test_idalloc.c
tests_lib_test_memory_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_memory_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_memory_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_memory_SOURCES = tests/lib/test_memory.c
tests_lib_test_nexthop_iter_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_nexthop_iter_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_nexthop_iter_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_nexthop_iter_SOURCES = tests/lib/test_nexthop_iter.c tests/helpers/c/prng.c
tests_lib_test_nexthop_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_nexthop_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_nexthop_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_nexthop_SOURCES = tests/lib/test_nexthop.c
tests_lib_test_ntop_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_ntop_CPPFLAGS = $(CPPFLAGS_BASE) # no assert override
tests_lib_test_ntop_LDADD = # none
tests_lib_test_ntop_SOURCES = tests/lib/test_ntop.c tests/helpers/c/prng.c
tests_lib_test_plist_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_plist_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_plist_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_plist_SOURCES = tests/lib/test_plist.c tests/lib/cli/common_cli.c
tests_lib_test_prefix2str_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_prefix2str_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_prefix2str_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_prefix2str_SOURCES = tests/lib/test_prefix2str.c tests/helpers/c/prng.c
tests_lib_test_printfrr_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_printfrr_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_printfrr_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_printfrr_SOURCES = tests/lib/test_printfrr.c
tests_lib_test_privs_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_privs_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_privs_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_privs_SOURCES = tests/lib/test_privs.c
tests_lib_test_resolver_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_resolver_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_resolver_LDADD = $(ALL_TESTS_LDADD) lib/libfrrcares.la
tests_lib_test_resolver_SOURCES = tests/lib/test_resolver.c tests/lib/cli/common_cli.c
tests_lib_test_ringbuf_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_ringbuf_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_ringbuf_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_ringbuf_SOURCES = tests/lib/test_ringbuf.c
tests_lib_test_segv_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_segv_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_segv_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_segv_SOURCES = tests/lib/test_segv.c
tests_lib_test_seqlock_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_seqlock_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_seqlock_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_seqlock_SOURCES = tests/lib/test_seqlock.c
tests_lib_test_sig_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_sig_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_sig_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_sig_SOURCES = tests/lib/test_sig.c
tests_lib_test_skiplist_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_skiplist_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_skiplist_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_skiplist_SOURCES = tests/lib/test_skiplist.c
tests_lib_test_srcdest_table_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_srcdest_table_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_srcdest_table_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_srcdest_table_SOURCES = tests/lib/test_srcdest_table.c tests/helpers/c/prng.c
tests_lib_test_stream_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_stream_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_stream_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_stream_SOURCES = tests/lib/test_stream.c
tests_lib_test_table_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_table_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_table_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_table_SOURCES = tests/lib/test_table.c
tests_lib_test_timer_correctness_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_timer_correctness_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_timer_correctness_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_timer_correctness_SOURCES = tests/lib/test_timer_correctness.c tests/helpers/c/prng.c
tests_lib_test_timer_performance_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_timer_performance_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_timer_performance_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_timer_performance_SOURCES = tests/lib/test_timer_performance.c tests/helpers/c/prng.c
tests_lib_test_ttable_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_ttable_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_ttable_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_ttable_SOURCES = tests/lib/test_ttable.c
tests_lib_test_typelist_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_typelist_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_typelist_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_typelist_SOURCES = tests/lib/test_typelist.c tests/helpers/c/prng.c
tests_lib_test_versioncmp_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_versioncmp_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_versioncmp_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_versioncmp_SOURCES = tests/lib/test_versioncmp.c
tests_lib_test_xref_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_xref_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_xref_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_xref_SOURCES = tests/lib/test_xref.c
tests_lib_test_zlog_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_zlog_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_zlog_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_zlog_SOURCES = tests/lib/test_zlog.c
tests_lib_test_zmq_CFLAGS = $(TESTS_CFLAGS) $(ZEROMQ_CFLAGS)
tests_lib_test_zmq_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_zmq_LDADD = lib/libfrrzmq.la $(ALL_TESTS_LDADD) $(ZEROMQ_LIBS)
tests_lib_test_zmq_SOURCES = tests/lib/test_zmq.c
tests_ospf6d_test_lsdb_CFLAGS = $(TESTS_CFLAGS)
tests_ospf6d_test_lsdb_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_ospf6d_test_lsdb_LDADD = $(OSPF6_TEST_LDADD)
tests_ospf6d_test_lsdb_SOURCES = tests/ospf6d/test_lsdb.c tests/lib/cli/common_cli.c
tests_zebra_test_lm_plugin_CFLAGS = $(TESTS_CFLAGS)
tests_zebra_test_lm_plugin_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_zebra_test_lm_plugin_LDADD = $(ZEBRA_TEST_LDADD)
tests_zebra_test_lm_plugin_SOURCES = tests/zebra/test_lm_plugin.c
EXTRA_DIST += \ EXTRA_DIST += \
tests/runtests.py \ tests/runtests.py \
tests/bgpd/test_aspath.py \
tests/bgpd/test_capability.py \
tests/bgpd/test_ecommunity.py \
tests/bgpd/test_mp_attr.py \
tests/bgpd/test_mpath.py \
tests/bgpd/test_peer_attr.py \
tests/helpers/python/frrsix.py \ tests/helpers/python/frrsix.py \
tests/helpers/python/frrtest.py \ tests/helpers/python/frrtest.py \
tests/isisd/test_fuzz_isis_tlv.py \
tests/isisd/test_fuzz_isis_tlv_tests.h.gz \
tests/isisd/test_isis_lspdb.py \
tests/isisd/test_isis_spf.py \
tests/isisd/test_isis_spf.in \
tests/isisd/test_isis_spf.refout \
tests/isisd/test_isis_vertex_queue.py \
tests/ospfd/test_ospf_spf.py \
tests/ospfd/test_ospf_spf.in \
tests/ospfd/test_ospf_spf.refout \
tests/lib/cli/test_commands.in \
tests/lib/cli/test_commands.py \
tests/lib/cli/test_commands.refout \
tests/lib/cli/test_cli.in \
tests/lib/cli/test_cli.py \
tests/lib/cli/test_cli.refout \
tests/lib/northbound/test_oper_data.in \
tests/lib/northbound/test_oper_data.py \
tests/lib/northbound/test_oper_data.refout \
tests/lib/test_assert.py \
tests/lib/test_atomlist.py \
tests/lib/test_nexthop_iter.py \
tests/lib/test_nexthop.py \
tests/lib/test_ntop.py \
tests/lib/test_prefix2str.py \
tests/lib/test_printfrr.py \
tests/lib/test_ringbuf.py \
tests/lib/test_srcdest_table.py \
tests/lib/test_stream.py \
tests/lib/test_stream.refout \
tests/lib/test_table.py \
tests/lib/test_timer_correctness.py \
tests/lib/test_ttable.py \
tests/lib/test_ttable.refout \
tests/lib/test_typelist.py \
tests/lib/test_versioncmp.py \
tests/lib/test_xref.py \
tests/lib/test_zlog.py \
tests/lib/test_graph.py \
tests/lib/test_graph.refout \
tests/ospf6d/test_lsdb.py \
tests/ospf6d/test_lsdb.in \
tests/ospf6d/test_lsdb.refout \
tests/zebra/test_lm_plugin.py \
tests/zebra/test_lm_plugin.refout \
# end # end
check_PROGRAMS =
if SCRIPTING PYTEST_IGNORE =
EXTRA_DIST += \
tests/lib/test_frrscript.py \
tests/lib/test_frrlua.py \
#end
endif
.PHONY: tests/tests.xml .PHONY: tests/tests.xml
tests/tests.xml: $(check_PROGRAMS) tests/tests.xml: $(check_PROGRAMS)
( cd tests; $(PYTHON) ../$(srcdir)/tests/runtests.py --junitxml=tests.xml -v ../$(srcdir)/tests $(IGNORE_BGPD) $(IGNORE_ISISD) $(IGNORE_OSPFD) $(IGNORE_OSPF6D); ) ( cd tests; $(PYTHON) ../$(srcdir)/tests/runtests.py --junitxml=tests.xml -v ../$(srcdir)/tests $(PYTEST_IGNORE); )
check: tests/tests.xml check: tests/tests.xml
clean-local: clean-tests clean-local: clean-tests
.PHONY: clean-tests .PHONY: clean-tests
clean-tests: clean-tests:
-rm -f tests/tests.xml -rm -f tests/tests.xml
# CHEAT SHEET:
#
### conditional (if needed) - ONLY for "check_PROGRAMS +=" line!
# if DAEMON
# check_PROGRAMS += tests/daemon/test_foo
# endif
### CFLAGS/CPPFLAGS/LDADD as usual, extend on top of TESTS_XYZFLAGS
# tests_daemon_test_foo_CFLAGS = $(TESTS_CFLAGS)
# tests_daemon_test_foo_CPPFLAGS = $(TESTS_CPPFLAGS)
# tests_daemon_test_foo_LDADD = $(ALL_TESTS_LDADD)
# tests_daemon_test_foo_SOURCES = tests/daemon/test_foo.c
### don't forget "nodist_" for autogenerated source files, & add to CLEANFILES
# nodist_tests_daemon_test_foo_SOURCES = tests/daemon/test_foo_autogen.c
# CLEANFILES += tests/daemon/test_foo_autogen.c
### clippy_scan works normally
# clippy_scan += tests/daemon/test_foo.c
### header files for tests go into "noinst_HEADERS"
# noinst_HEADERS += tests/daemon/foo.h
### all python scripts & auxiliary files are added into EXTRA_DIST
# EXTRA_DIST += tests/daemon/test_foo.py
#
include tests/bgpd/subdir.am
include tests/isisd/subdir.am
include tests/ospfd/subdir.am
include tests/ospf6d/subdir.am
include tests/zebra/subdir.am
include tests/lib/subdir.am

17
tests/zebra/subdir.am Normal file
View File

@ -0,0 +1,17 @@
if !ZEBRA
PYTEST_IGNORE += --ignore=zebra/
endif
ZEBRA_TEST_LDADD = zebra/label_manager.o $(ALL_TESTS_LDADD)
if ZEBRA
check_PROGRAMS += tests/zebra/test_lm_plugin
endif
tests_zebra_test_lm_plugin_CFLAGS = $(TESTS_CFLAGS)
tests_zebra_test_lm_plugin_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_zebra_test_lm_plugin_LDADD = $(ZEBRA_TEST_LDADD)
tests_zebra_test_lm_plugin_SOURCES = tests/zebra/test_lm_plugin.c
EXTRA_DIST += \
tests/zebra/test_lm_plugin.py \
tests/zebra/test_lm_plugin.refout \
# end

View File

@ -3,17 +3,17 @@
# #
if VRRPD if VRRPD
noinst_LIBRARIES += vrrpd/libvrrp.a
sbin_PROGRAMS += vrrpd/vrrpd sbin_PROGRAMS += vrrpd/vrrpd
vtysh_scan += vrrpd/vrrp_vty.c vtysh_scan += vrrpd/vrrp_vty.c
vtysh_daemons += vrrpd vtysh_daemons += vrrpd
man8 += $(MANBUILD)/frr-vrrpd.8 man8 += $(MANBUILD)/frr-vrrpd.8
endif endif
vrrpd_libvrrp_a_SOURCES = \ vrrpd_vrrpd_SOURCES = \
vrrpd/vrrp.c \ vrrpd/vrrp.c \
vrrpd/vrrp_arp.c \ vrrpd/vrrp_arp.c \
vrrpd/vrrp_debug.c \ vrrpd/vrrp_debug.c \
vrrpd/vrrp_main.c \
vrrpd/vrrp_ndisc.c \ vrrpd/vrrp_ndisc.c \
vrrpd/vrrp_northbound.c \ vrrpd/vrrp_northbound.c \
vrrpd/vrrp_packet.c \ vrrpd/vrrp_packet.c \
@ -35,8 +35,7 @@ clippy_scan += \
vrrpd/vrrp_vty.c \ vrrpd/vrrp_vty.c \
# end # end
vrrpd_vrrpd_SOURCES = vrrpd/vrrp_main.c vrrpd_vrrpd_LDADD = lib/libfrr.la @LIBCAP@
vrrpd_vrrpd_LDADD = vrrpd/libvrrp.a lib/libfrr.la @LIBCAP@
nodist_vrrpd_vrrpd_SOURCES = \ nodist_vrrpd_vrrpd_SOURCES = \
yang/frr-vrrpd.yang.c \ yang/frr-vrrpd.yang.c \
# end # end