aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2014-01-16 11:55:54 +0100
committerWladimir J. van der Laan <laanwj@gmail.com>2014-01-16 11:58:36 +0100
commite4b991e56d2e1984fb66792254e8fbaa384ff789 (patch)
treee77950e63feb73c80d443271643ddec72aebd883
parent417aad4a38df25deea52881aa1881f0dbd3e51d3 (diff)
build: Auto-detect whether -DBOOST_TEST_DYN_LINK is needed
Use AC_LINK_IFELSE to auto-detect whether boost test is linked dynamically, instead of assuming based on target.
-rw-r--r--configure.ac20
1 files changed, 18 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac
index ba45d84bba..2261addaef 100644
--- a/configure.ac
+++ b/configure.ac
@@ -207,10 +207,8 @@ case $host in
fi
CPPFLAGS="$CPPFLAGS -DMAC_OSX"
- TESTDEFS="-DBOOST_TEST_DYN_LINK"
;;
*)
- TESTDEFS="-DBOOST_TEST_DYN_LINK"
;;
esac
@@ -345,6 +343,24 @@ if test x$use_tests = xyes; then
AX_BOOST_UNIT_TEST_FRAMEWORK
+
+ dnl Determine if -DBOOST_TEST_DYN_LINK is needed
+ AC_MSG_CHECKING([for dynamic linked boost test])
+ TEMP_LIBS="$LIBS"
+ LIBS="$LIBS $BOOST_UNIT_TEST_FRAMEWORK_LIB"
+ TEMP_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+ #define BOOST_TEST_DYN_LINK
+ #define BOOST_TEST_MAIN
+ #include <boost/test/unit_test.hpp>
+
+ ])],
+ [AC_MSG_RESULT(yes)]
+ [TESTDEFS="$TESTDEFS -DBOOST_TEST_DYN_LINK"],
+ [AC_MSG_RESULT(no)])
+ LIBS="$TEMP_LIBS"
+ CPPFLAGS="$TEMP_CPPFLAGS"
fi
BOOST_LIBS="$BOOST_LDFLAGS $BOOST_SYSTEM_LIB $BOOST_FILESYSTEM_LIB $BOOST_PROGRAM_OPTIONS_LIB $BOOST_THREAD_LIB"