BOOST_CPPFLAGS=""
BOOST_LIB=""
else
- BOOST_LIB="-L${with_boost}/lib"
+ for b in ${with_boost}/lib ${with_boost}/lib64; do
+ if test -d "$b"; then
+ BOOST_LIB="-L$b"
+ fi
+ done
BOOST_CPPFLAGS="-I${with_boost}/include"
if test ! -f "${with_boost}/include/boost/version.hpp"; then
for b in ${with_boost}/include/boost-*; do
AC_LANG_CONFTEST(
[AC_LANG_SOURCE([[
#include <boost/version.hpp>
-version_is:BOOST_VERSION
+BOOST_VERSION
]])])
- BOOST_GOT_VERSION=`(eval "$ac_cpp conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD | $EGREP version_is 2>/dev/null | cut -d ":" -f2`
- if test "$BOOST_GOT_VERSION" = "BOOST_VERSION"; then
+ BOOST_GOT_VERSION=`(eval "$ac_cpp conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD | grep -v '#' | grep -v '^$' 2>/dev/null`
+ if test -z "$BOOST_GOT_VERSION" -o \
+ "$BOOST_GOT_VERSION" = "BOOST_VERSION"; then
AC_MSG_RESULT([no])
AC_MSG_ERROR([Boost development libraries required])
fi
fi
for c in $1; do
case $c in
+ system)
+ AC_SUBST([BOOST_SYSTEM_LIB])
+ BOOST_SYSTEM_LIB=""
+ if test "$BOOST_GOT_VERSION" -ge 104100; then
+ AC_MSG_CHECKING([Boost system])
+ saveLIBS="${LIBS}"
+ for l in "${BOOST_TOOLSET}" "${BOOST_TOOLSET}-mt"; do
+ trylib="-lboost_system${l}"
+ LIBS="${saveLIBS} ${trylib}"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+#include <boost/version.hpp>
+#include <boost/system/error_code.hpp>
+]],[[
+int x = BOOST_VERSION;
+]])],[
+ BOOST_SYSTEM_LIB="${trylib}"
+ break],[])
+ done
+ if test "${BOOST_SYSTEM_LIB}"; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ LIBS="${saveLIBS}"
+ fi
+ fi
+ ;;
thread)
AC_MSG_CHECKING([Boost threads])
AC_SUBST([BOOST_THREAD_LIB])
saveLIBS="${LIBS}"
BOOST_THREAD_LIB=""
- for l in boost_thread${BOOST_TOOLSET}-mt boost_thread${BOOST_TOOLSET}; do
- LIBS="${saveLIBS} -l${l}"
+ for l in "${BOOST_TOOLSET}" "${BOOST_TOOLSET}-mt"; do
+ trylib="-lboost_thread${l}"
+ LIBS="${saveLIBS} ${trylib}"
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
#include <boost/version.hpp>
#include <boost/thread/thread.hpp>
]],[[
int x = BOOST_VERSION;
]])],[
- BOOST_THREAD_LIB="-l${l}"
+ BOOST_THREAD_LIB="${trylib}"
break],[])
done
if test "${BOOST_THREAD_LIB}"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
+ LIBS="${saveLIBS}"
fi
;;
test)
saveLIBS="${LIBS}"
AC_SUBST([BOOST_TEST_LIB])
BOOST_TEST_LIB=""
- for l in boost_unit_test_framework${BOOST_TOOLSET}-mt boost_unit_test_framework${BOOST_TOOLSET}; do
+ for l in boost_unit_test_framework${BOOST_TOOLSET} boost_unit_test_framework${BOOST_TOOLSET}-mt; do
LIBS="${saveLIBS} -l${l}"
AC_LINK_IFELSE([AC_LANG_SOURCE([[
#define BOOST_TEST_DYN_LINK
#define BOOST_AUTO_TEST_MAIN
+#define BOOST_TEST_MODULE configure
#include <boost/test/auto_unit_test.hpp>
BOOST_AUTO_TEST_CASE( t )
{
fi
LIBS="${saveLIBS}"
;;
+ regex)
+ AC_MSG_CHECKING([Boost regex])
+ AC_SUBST([BOOST_REGEX_LIB])
+ saveLIBS="${LIBS}"
+ BOOST_REGEX_LIB=""
+ for l in boost_regex${BOOST_TOOLSET} boost_regex${BOOST_TOOLSET}-mt; do
+ LIBS="${saveLIBS} -l${l}"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+#include <boost/version.hpp>
+#include <boost/regex.hpp>
+]],[[
+int x = BOOST_VERSION;
+]])],[
+ BOOST_REGEX_LIB="-l${l}"
+ break],[])
+ done
+ if test "${BOOST_REGEX_LIB}"; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ LIBS="${saveLIBS}"
+ fi
+ ;;
esac
done
fi