From 5178ba4cf2bf2a69b187dd4af23ef2cdf2169281 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20K=C4=99pie=C5=84?= Date: Tue, 12 Oct 2021 10:44:30 +0200 Subject: [PATCH] Properly handle JEMALLOC_* Autoconf variables The AX_CHECK_JEMALLOC() m4 macro sets the JEMALLOC_CFLAGS variable, not JEMALLOC_CPPFLAGS. Furthermore, the JEMALLOC_CFLAGS and JEMALLOC_LIBS variables should only be included in the build flags if jemalloc was successfully configured. Tweak lib/isc/Makefile.am accordingly. --- configure.ac | 2 ++ lib/isc/Makefile.am | 26 ++++++++++++++++---------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/configure.ac b/configure.ac index e68e78b1cc..543ed9ba19 100644 --- a/configure.ac +++ b/configure.ac @@ -1338,6 +1338,8 @@ AS_CASE([$with_jemalloc], AS_IF([test "$with_jemalloc" = "no"], [AC_CHECK_FUNCS([malloc_size malloc_usable_size])]) +AM_CONDITIONAL([HAVE_JEMALLOC], [test "$with_jemalloc" = "yes"]) + # # was --with-tuning specified? # diff --git a/lib/isc/Makefile.am b/lib/isc/Makefile.am index 521ed9e266..3ee7cc2fa9 100644 --- a/lib/isc/Makefile.am +++ b/lib/isc/Makefile.am @@ -212,7 +212,6 @@ libisc_la_SOURCES = \ libisc_la_CPPFLAGS = \ $(AM_CPPFLAGS) \ - $(JEMALLOC_CPPFLAGS) \ $(LIBISC_CFLAGS) \ $(LIBUV_CFLAGS) \ $(OPENSSL_CFLAGS) \ @@ -223,11 +222,26 @@ libisc_la_LDFLAGS = \ -release "$(PACKAGE_VERSION)" libisc_la_LIBADD = \ - $(JEMALLOC_LIBS) \ $(LIBUV_LIBS) \ $(OPENSSL_LIBS) \ $(ZLIB_LIBS) +if HAVE_JEMALLOC +libisc_la_CPPFLAGS += \ + $(JEMALLOC_CFLAGS) + +libisc_la_LIBADD += \ + $(JEMALLOC_LIBS) +endif HAVE_JEMALLOC + +if HAVE_JSON_C +libisc_la_CPPFLAGS += \ + $(JSON_C_CFLAGS) + +libisc_la_LIBADD += \ + $(JSON_C_LIBS) +endif HAVE_JSON_C + if HAVE_LIBNGHTTP2 libisc_la_SOURCES += \ netmgr/http.c \ @@ -240,14 +254,6 @@ libisc_la_LIBADD += \ $(LIBNGHTTP2_LIBS) endif -if HAVE_JSON_C -libisc_la_CPPFLAGS += \ - $(JSON_C_CFLAGS) - -libisc_la_LIBADD += \ - $(JSON_C_LIBS) -endif HAVE_JSON_C - if HAVE_LIBXML2 libisc_la_CPPFLAGS += \ $(LIBXML2_CFLAGS)