From ff3dcc4ad71c1105bd8ea11afe7e07efd48c038d Mon Sep 17 00:00:00 2001 From: Vincent Bernat Date: Tue, 25 Sep 2018 10:57:49 +0200 Subject: [PATCH] build: ability to disable libbsd with --without-libbsd This is useful when user wants to ensure reproducibility of the build whatever libbsd is present or not. Signed-off-by: Trent Piepho --- configure.ac | 59 +++++++++++++++++++++++++++++++++++++++-------------------- src/marshal.h | 1 + 2 files changed, 40 insertions(+), 20 deletions(-) diff --git a/configure.ac b/configure.ac index 9b40473..589cd96 100644 --- a/configure.ac +++ b/configure.ac @@ -173,26 +173,44 @@ AC_FUNC_REALLOC AC_FUNC_FORK # Some functions can be in libbsd -PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [ - _save_CFLAGS="$CFLAGS" - _save_LIBS="$LIBS" - CFLAGS="$CFLAGS $libbsd_CFLAGS" - LIBS="$LIBS $libbsd_LIBS" - AC_MSG_CHECKING([if libbsd can be linked correctly]) - AC_TRY_LINK([ -@%:@include -@%:@include -],[], - [ - AC_MSG_RESULT(yes) - LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS" - LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS" - ],[ - AC_MSG_RESULT(no) - CFLAGS="$_save_CFLAGS" - LIBS="$_save_LIBS" - ]) -], [:]) +AC_ARG_WITH([libbsd], + AS_HELP_STRING( + [--with-libbsd], + [Use libbsd @<:@default=auto@:>@]), + [], + [with_libbsd=auto]) +if test x"$with_libbsd" != x"no"; then + PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [ + _save_CFLAGS="$CFLAGS" + _save_LIBS="$LIBS" + CFLAGS="$CFLAGS $libbsd_CFLAGS" + LIBS="$LIBS $libbsd_LIBS" + AC_MSG_CHECKING([if libbsd can be linked correctly]) + AC_TRY_LINK([ + @%:@include + @%:@include + ],[], + [ + AC_MSG_RESULT(yes) + LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS" + LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS" + with_libbsd=yes + ],[ + AC_MSG_RESULT(no) + CFLAGS="$_save_CFLAGS" + LIBS="$_save_LIBS" + if test x"$with_libbsd" = x"yes"; then + AC_MSG_FAILURE([*** no libbsd support found]) + fi + with_libbsd=no + ]) + ], [ + if test x"$with_libbsd" = x"yes"; then + AC_MSG_FAILURE([*** no libbsd support found]) + fi + with_libbsd=no + ]) +fi # setproctitle may have an _init function AC_REPLACE_FUNCS([setproctitle]) @@ -412,6 +430,7 @@ cat < +#include #include struct marshal_info; -- 2.14.4