1
0
Fork 0
arangodb/m4/configure.boost

100 lines
3.4 KiB
Plaintext

dnl -*- mode: Autoconf; -*-
dnl -----------------------------------------------------------------------------------------
dnl check for boost headers and libraries
dnl -----------------------------------------------------------------------------------------
AC_LANG(C++)
AC_LINK_IFELSE([AC_LANG_PROGRAM()]) # workaround for a bug in older autoconf
AX_BOOST_BASE([1.33])
if test "x$succeeded" != xyes; then
AC_MSG_ERROR([Please install at least version 1.33 from http://www.boost.org/])
fi
TR_STATIC_ENABLE([boost])
dnl -----------------------------------------------------------------------------------------
dnl guess boost library suffix
dnl -----------------------------------------------------------------------------------------
BOOST_SUFFIX=""
case $target in
*-apple-darwin9*|*-apple-darwin10*)
BOOST_SUFFIX="-mt"
;;
*)
BOOST_SUFFIX=""
;;
esac
dnl -----------------------------------------------------------------------------------------
dnl save flags
dnl -----------------------------------------------------------------------------------------
SAVE_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
SAVE_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
SAVE_LIBS="$LIBS"
dnl -----------------------------------------------------------------------------------------
dnl boost_system
dnl -----------------------------------------------------------------------------------------
TR_FIND_CXX_LIBRARY([boost],
[boost_system$BOOST_SUFFIX],
[BOOST_LIBS],
[#include <boost/system/error_code.hpp>],
[boost::system::get_system_category()])
LIBS="$LIBS $BOOST_LIBS"
dnl -----------------------------------------------------------------------------------------
dnl boost_program_options
dnl -----------------------------------------------------------------------------------------
TR_FIND_CXX_LIBRARY([boost],
[boost_program_options$BOOST_SUFFIX],
[BOOST_LIBS],
[#include <boost/program_options.hpp>],
[boost::program_options::options_description d("test")])
LIBS="$LIBS $BOOST_LIBS"
dnl -----------------------------------------------------------------------------------------
dnl fix include and static libraries
dnl -----------------------------------------------------------------------------------------
TR_INCLUDE([BOOST_CPPFLAGS])
TR_STATIC_LIBRARY([boost], [BOOST_LIBS])
dnl -----------------------------------------------------------------------------------------
dnl add substitutions
dnl -----------------------------------------------------------------------------------------
AC_SUBST(BOOST_CPPFLAGS)
AC_SUBST(BOOST_LDFLAGS)
AC_SUBST(BOOST_LIBS)
dnl -----------------------------------------------------------------------------------------
dnl restore flags
dnl -----------------------------------------------------------------------------------------
LIBS="$SAVE_LIBS"
LDFLAGS="$SAVE_LDFLAGS"
CPPFLAGS="$SAVE_CPPFLAGS"
dnl -----------------------------------------------------------------------------------------
dnl informational output
dnl -----------------------------------------------------------------------------------------
FLAG_INFO="$FLAG_INFO|BOOST_CPPFLAGS: ${BOOST_CPPFLAGS}"
FLAG_INFO="$FLAG_INFO|BOOST_LDFLAGS: ${BOOST_LDFLAGS}"
FLAG_INFO="$FLAG_INFO|BOOST_LIBS: ${BOOST_LIBS}"