diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2019-10-24 15:41:32 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2019-10-24 15:56:49 +0200 |
commit | ea2afb21d69f5227263f6b227edcb1e9cc5b0e54 (patch) | |
tree | a1b8c7f7a8f6dd83d40c596aee7e5e7d9068a988 | |
parent | 8fac511a6e8309181f219c4b9fd2a0be578f1db3 (diff) |
configure: Introduce --disable-libsctp and error by default if libsctp not found
This way libosmocore build fails during configuring phase if expected
default behavior (building with libsctp support enabled and providing
osmo_sock_init2_multiaddr() API) fails. User is still provided with
--disable-libsctp option in case he doesn't need those features or his
environment doesn't provide required libsctp APIs.
Change-Id: I710c9cb1c6da0e5fc94b792df8bf60194a72208f
-rw-r--r-- | configure.ac | 28 | ||||
-rwxr-xr-x | contrib/jenkins_arm.sh | 1 |
2 files changed, 18 insertions, 11 deletions
diff --git a/configure.ac b/configure.ac index 2f12d861..6c54e666 100644 --- a/configure.ac +++ b/configure.ac @@ -100,17 +100,6 @@ AC_SUBST(SYMBOL_VISIBILITY) AC_CHECK_FUNCS(clock_gettime localtime_r) -old_LIBS=$LIBS -AC_SEARCH_LIBS([sctp_bindx], [sctp], [ - AC_DEFINE(HAVE_LIBSCTP, 1, [Define 1 to enable SCTP support]) - AC_SUBST(HAVE_LIBSCTP, [1]) - if test -n "$ac_lib"; then - AC_SUBST(LIBSCTP_LIBS, [-l$ac_lib]) - fi - ], [ - AC_MSG_WARN([sctp_bindx not found in searched libs])]) -LIBS=$old_LIBS - AC_DEFUN([CHECK_TM_INCLUDES_TM_GMTOFF], [ AC_CACHE_CHECK( [whether struct tm has tm_gmtoff member], @@ -171,6 +160,22 @@ then AC_DEFINE([USE_GNUTLS], [1], [Use GnuTLS as a fallback for missing getrandom()]) fi +AC_ARG_ENABLE([libsctp], [AS_HELP_STRING([--disable-libsctp], [Do not enable socket multiaddr APIs requiring libsctp])], + [ENABLE_LIBSCTP=$enableval], [ENABLE_LIBSCTP="yes"]) +AM_CONDITIONAL(ENABLE_LIBSCTP, test x"$ENABLE_LIBSCTP" = x"yes") +AS_IF([test "x$ENABLE_LIBSCTP" = "xyes"], [ + old_LIBS=$LIBS + AC_SEARCH_LIBS([sctp_bindx], [sctp], [ + AC_DEFINE(HAVE_LIBSCTP, 1, [Define 1 to enable SCTP support]) + AC_SUBST(HAVE_LIBSCTP, [1]) + if test -n "$ac_lib"; then + AC_SUBST(LIBSCTP_LIBS, [-l$ac_lib]) + fi + ], [ + AC_MSG_ERROR([sctp_bindx not found in searched libs])]) + LIBS=$old_LIBS +]) + AC_ARG_ENABLE(plugin, [AS_HELP_STRING( [--disable-plugin], @@ -279,6 +284,7 @@ then AM_CONDITIONAL(ENABLE_UTILITIES, false) AM_CONDITIONAL(ENABLE_GB, false) AM_CONDITIONAL(ENABLE_GNUTLS, false) + AM_CONDITIONAL(ENABLE_LIBSCTP, false) AM_CONDITIONAL(ENABLE_PCSC, false) AM_CONDITIONAL(ENABLE_PSEUDOTALLOC, true) AM_CONDITIONAL(ENABLE_SERCOM_STUB, true) diff --git a/contrib/jenkins_arm.sh b/contrib/jenkins_arm.sh index e3a6cd14..8ee90f03 100755 --- a/contrib/jenkins_arm.sh +++ b/contrib/jenkins_arm.sh @@ -18,6 +18,7 @@ build() { --enable-embedded \ --disable-doxygen \ --disable-shared \ + --disable-libsctp \ --enable-external-tests \ CFLAGS="-Os -ffunction-sections -fdata-sections -nostartfiles -nodefaultlibs $WERROR_FLAGS" |