`configure` sets those $(*_LIBS) variables to something empty, if the dependency is not available. It's cumbersome and unnecessary to explicitly checking. Also, the order in which libraries are specified on the command line matters. Commonly we want our own libraries first (src/libminigmp.la should come pretty early). That is cumbersome to get right otherwise. Also, as "xt.c" is always built, just directly add it to the list of source files. Signed-off-by: Thomas Haller <thaller@xxxxxxxxxx> --- Makefile.am | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/Makefile.am b/Makefile.am index 94c40fc3c6a2..f06fab8e3b9f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -195,6 +195,12 @@ src_libminigmp_la_CFLAGS = \ -Wno-sign-compare \ $(NULL) +LIBMINIGMP_LIBS = src/libminigmp.la + +else + +LIBMINIGMP_LIBS = + endif ############################################################################### @@ -247,10 +253,9 @@ src_libnftables_la_SOURCES = \ src/tcpopt.c \ src/utils.c \ src/xfrm.c \ + src/xt.c \ $(NULL) -src_libnftables_la_SOURCES += src/xt.c - if BUILD_JSON src_libnftables_la_SOURCES += \ src/json.c \ @@ -264,23 +269,14 @@ src_libnftables_la_LDFLAGS = \ $(NULL) src_libnftables_la_LIBADD = \ + src/libparser.la \ + $(LIBMINIGMP_LIBS) \ $(LIBMNL_LIBS) \ $(LIBNFTNL_LIBS) \ - src/libparser.la \ + $(XTABLES_LIBS) \ + $(JANSSON_LIBS) \ $(NULL) -if BUILD_MINIGMP -src_libnftables_la_LIBADD += src/libminigmp.la -endif - -if BUILD_XTABLES -src_libnftables_la_LIBADD += $(XTABLES_LIBS) -endif - -if BUILD_JSON -src_libnftables_la_LIBADD += $(JANSSON_LIBS) -endif - ############################################################################### sbin_PROGRAMS += src/nft -- 2.41.0