Browse Source

updated all ax_boost* detection scripts from upstream

miguelfreitas
Miguel Freitas 11 years ago
parent
commit
ed68411ed1
  1. 8
      m4/ax_boost_base.m4
  2. 5
      m4/ax_boost_locale.m4
  3. 56
      m4/ax_boost_python.m4
  4. 32
      m4/ax_boost_system.m4

8
m4/ax_boost_base.m4

@ -33,7 +33,7 @@
# and this notice are preserved. This file is offered as-is, without any # and this notice are preserved. This file is offered as-is, without any
# warranty. # warranty.
#serial 22 #serial 23
AC_DEFUN([AX_BOOST_BASE], AC_DEFUN([AX_BOOST_BASE],
[ [
@ -103,6 +103,12 @@ if test "x$want_boost" = "xyes"; then
AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([AC_CANONICAL_HOST])
libsubdirs="lib/${host_cpu}-${host_os} $libsubdirs" libsubdirs="lib/${host_cpu}-${host_os} $libsubdirs"
case ${host_cpu} in
i?86)
libsubdirs="lib/i386-${host_os} $libsubdirs"
;;
esac
dnl first we check the system location for boost libraries dnl first we check the system location for boost libraries
dnl this location ist chosen if boost libraries are installed with the --layout=system option dnl this location ist chosen if boost libraries are installed with the --layout=system option
dnl or if you install boost with RPM dnl or if you install boost with RPM

5
m4/ax_boost_locale.m4

@ -67,8 +67,9 @@ AC_DEFUN([AX_BOOST_LOCALE],
[AC_LANG_PUSH([C++]) [AC_LANG_PUSH([C++])
CXXFLAGS_SAVE=$CXXFLAGS CXXFLAGS_SAVE=$CXXFLAGS
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <boost/locale/generator.hpp>]], AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <boost/locale.hpp>]],
[[boost::locale::generator gen;]])], [[boost::locale::generator gen;
std::locale::global(gen(""));]])],
ax_cv_boost_locale=yes, ax_cv_boost_locale=no) ax_cv_boost_locale=yes, ax_cv_boost_locale=no)
CXXFLAGS=$CXXFLAGS_SAVE CXXFLAGS=$CXXFLAGS_SAVE
AC_LANG_POP([C++]) AC_LANG_POP([C++])

56
m4/ax_boost_python.m4

@ -1,5 +1,5 @@
# =========================================================================== # ===========================================================================
# http://www.nongnu.org/autoconf-archive/ax_boost_python.html # http://www.gnu.org/software/autoconf-archive/ax_boost_python.html
# =========================================================================== # ===========================================================================
# #
# SYNOPSIS # SYNOPSIS
@ -9,7 +9,7 @@
# DESCRIPTION # DESCRIPTION
# #
# This macro checks to see if the Boost.Python library is installed. It # This macro checks to see if the Boost.Python library is installed. It
# also attempts to guess the currect library name using several attempts. # also attempts to guess the correct library name using several attempts.
# It tries to build the library name using a user supplied name or suffix # It tries to build the library name using a user supplied name or suffix
# and then just the raw library. # and then just the raw library.
# #
@ -18,20 +18,14 @@
# #
# This macro calls AC_SUBST(BOOST_PYTHON_LIB). # This macro calls AC_SUBST(BOOST_PYTHON_LIB).
# #
# In order to ensure that the Python headers are specified on the include # In order to ensure that the Python headers and the Boost libraries are
# path, this macro requires AX_PYTHON to be called. # specified on the include path, this macro requires AX_PYTHON_DEVEL and
# # AX_BOOST_BASE to be called.
# EDIT:
# 2009-09-14 Cristian Greco <cristian.debian@gmail.com>
# - Require AX_PYTHON_DEVEL to be called before this macro to properly
# detect python include path, instead of AX_PYTHON.
# 2009-09-07 Cristian Greco <cristian.debian@gmail.com>
# - Prefix BOOST_PYTHON_LIB with a `-l` for consistency with other
# ax_boost_libname.m4 scripts.
# #
# LICENSE # LICENSE
# #
# Copyright (c) 2008 Michael Tindal # Copyright (c) 2008 Michael Tindal
# Copyright (c) 2013 Daniel Mullner <muellner@math.stanford.edu>
# #
# This program is free software; you can redistribute it and/or modify it # This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the # under the terms of the GNU General Public License as published by the
@ -59,45 +53,39 @@
# modified version of the Autoconf Macro, you may extend this special # modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well. # exception to the GPL to apply to your modified version as well.
#serial 18
AC_DEFUN([AX_BOOST_PYTHON], AC_DEFUN([AX_BOOST_PYTHON],
[AC_REQUIRE([AX_PYTHON_DEVEL])dnl [AC_REQUIRE([AX_PYTHON_DEVEL])dnl
AC_CACHE_CHECK(whether the Boost::Python library is available, AC_CACHE_CHECK(whether the Boost::Python library is available,
ac_cv_boost_python, ac_cv_boost_python,
[AC_LANG_SAVE [AC_LANG_SAVE
AC_LANG_CPLUSPLUS AC_LANG_CPLUSPLUS
CPPFLAGS_SAVE=$CPPFLAGS CPPFLAGS_SAVE="$CPPFLAGS"
if test "x$PYTHON_CPPFLAGS" != "x"; then if test x$PYTHON_CPPFLAGS != x; then
CPPFLAGS="$PYTHON_CPPFLAGS $CPPFLAGS" CPPFLAGS="$PYTHON_CPPFLAGS $CPPFLAGS"
fi fi
AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
#include <boost/python/module.hpp> #include <boost/python/module.hpp>
using namespace boost::python; using namespace boost::python;
BOOST_PYTHON_MODULE(test) { throw "Boost::Python test."; }]], BOOST_PYTHON_MODULE(test) { throw "Boost::Python test."; }]],
[[return 0;]]), [[return 0;]])],
ac_cv_boost_python=yes, ac_cv_boost_python=no) ac_cv_boost_python=yes, ac_cv_boost_python=no)
AC_LANG_RESTORE AC_LANG_RESTORE
CPPFLAGS=$CPPFLAGS_SAVE CPPFLAGS="$CPPFLAGS_SAVE"
]) ])
if test "x$ac_cv_boost_python" = "xyes"; then if test "$ac_cv_boost_python" = "yes"; then
AC_DEFINE(HAVE_BOOST_PYTHON,[1],[define if the Boost::Python library is available]) AC_DEFINE(HAVE_BOOST_PYTHON,,[define if the Boost::Python library is available])
dnl
LDFLAGS_SAVE=$LDFLAGS
if test "x$PYTHON_LDFLAGS" != "x"; then
LDFLAGS="$LDFLAGS $PYTHON_LDFLAGS"
fi
dnl
ax_python_lib=boost_python ax_python_lib=boost_python
AC_ARG_WITH([boost-python],AS_HELP_STRING([--with-boost-python],[specify the boost python library or suffix to use]), AC_ARG_WITH([boost-python],AS_HELP_STRING([--with-boost-python],[specify yes/no or the boost python library or suffix to use]),
[if test "x$with_boost_python" != "xno"; then [if test "x$with_boost_python" != "xno"; then
ax_python_lib="$with_boost_python" ax_python_lib=$with_boost_python
ax_boost_python_lib="boost_python-$with_boost_python" ax_boost_python_lib=boost_python-$with_boost_python
fi]) fi])
for ax_lib in $ax_python_lib $ax_boost_python_lib boost_python; do BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
AC_CHECK_LIB($ax_lib, main, [BOOST_PYTHON_LIB=-l$ax_lib break]) for ax_lib in `ls $BOOSTLIBDIR/libboost_python*.so* $BOOSTLIBDIR/libboost_python*.dylib* $BOOSTLIBDIR/libboost_python*.a* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^lib\(boost_python.*\)\.so.*$;\1;' -e 's;^lib\(boost_python.*\)\.dylib.*$;\1;' -e 's;^lib\(boost_python.*\)\.a.*$;\1;' ` $ax_python_lib $ax_boost_python_lib boost_python; do
AC_CHECK_LIB($ax_lib, exit, [BOOST_PYTHON_LIB=$ax_lib break], , [$PYTHON_LDFLAGS])
done done
dnl
LDFLAGS=$LDFLAGS_SAVE
dnl
AC_SUBST(BOOST_PYTHON_LIB) AC_SUBST(BOOST_PYTHON_LIB)
fi fi
])dnl ])dnl

32
m4/ax_boost_system.m4

@ -1,5 +1,5 @@
# =========================================================================== # ===========================================================================
# http://www.nongnu.org/autoconf-archive/ax_boost_system.html # http://www.gnu.org/software/autoconf-archive/ax_boost_system.html
# =========================================================================== # ===========================================================================
# #
# SYNOPSIS # SYNOPSIS
@ -28,7 +28,10 @@
# #
# Copying and distribution of this file, with or without modification, are # Copying and distribution of this file, with or without modification, are
# permitted in any medium without royalty provided the copyright notice # permitted in any medium without royalty provided the copyright notice
# and this notice are preserved. # and this notice are preserved. This file is offered as-is, without any
# warranty.
#serial 17
AC_DEFUN([AX_BOOST_SYSTEM], AC_DEFUN([AX_BOOST_SYSTEM],
[ [
@ -37,14 +40,14 @@ AC_DEFUN([AX_BOOST_SYSTEM],
[use the System library from boost - it is possible to specify a certain library for the linker [use the System library from boost - it is possible to specify a certain library for the linker
e.g. --with-boost-system=boost_system-gcc-mt ]), e.g. --with-boost-system=boost_system-gcc-mt ]),
[ [
if test "x$withval" = "xno"; then if test "$withval" = "no"; then
want_boost="no" want_boost="no"
elif test "x$withval" = "xyes"; then elif test "$withval" = "yes"; then
want_boost="yes" want_boost="yes"
ax_boost_user_system_lib="" ax_boost_user_system_lib=""
else else
want_boost="yes" want_boost="yes"
ax_boost_user_system_lib="$withval" ax_boost_user_system_lib="$withval"
fi fi
], ],
[want_boost="yes"] [want_boost="yes"]
@ -66,8 +69,8 @@ AC_DEFUN([AX_BOOST_SYSTEM],
[AC_LANG_PUSH([C++]) [AC_LANG_PUSH([C++])
CXXFLAGS_SAVE=$CXXFLAGS CXXFLAGS_SAVE=$CXXFLAGS
AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[@%:@include <boost/system/error_code.hpp>]], AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <boost/system/error_code.hpp>]],
[[boost::system::system_category]]), [[boost::system::system_category]])],
ax_cv_boost_system=yes, ax_cv_boost_system=no) ax_cv_boost_system=yes, ax_cv_boost_system=no)
CXXFLAGS=$CXXFLAGS_SAVE CXXFLAGS=$CXXFLAGS_SAVE
AC_LANG_POP([C++]) AC_LANG_POP([C++])
@ -75,24 +78,24 @@ AC_DEFUN([AX_BOOST_SYSTEM],
if test "x$ax_cv_boost_system" = "xyes"; then if test "x$ax_cv_boost_system" = "xyes"; then
AC_SUBST(BOOST_CPPFLAGS) AC_SUBST(BOOST_CPPFLAGS)
AC_DEFINE(HAVE_BOOST_SYSTEM,[1],[define if the Boost::System library is available]) AC_DEFINE(HAVE_BOOST_SYSTEM,,[define if the Boost::System library is available])
BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'` BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
LDFLAGS_SAVE=$LDFLAGS LDFLAGS_SAVE=$LDFLAGS
if test "x$ax_boost_user_system_lib" = "x"; then if test "x$ax_boost_user_system_lib" = "x"; then
for libextension in `ls $BOOSTLIBDIR/libboost_system*.{so,dylib,a}* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^lib\(boost_system.*\)\.so.*$;\1;' -e 's;^lib\(boost_system.*\)\.a*$;\1;' -e 's;^lib\(boost_system.*\)\.dylib$;\1;'` ; do for libextension in `ls -r $BOOSTLIBDIR/libboost_system* 2>/dev/null | sed 's,.*/lib,,' | sed 's,\..*,,'` ; do
ax_lib=${libextension} ax_lib=${libextension}
AC_CHECK_LIB($ax_lib, exit, AC_CHECK_LIB($ax_lib, exit,
[BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break], [BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break],
[link_system="no"]) [link_system="no"])
done done
if test "x$link_system" != "xyes"; then if test "x$link_system" != "xyes"; then
for libextension in `ls $BOOSTLIBDIR/boost_system*.{dll,a}* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^\(boost_system.*\)\.dll.*$;\1;' -e 's;^\(boost_system.*\)\.a*$;\1;'` ; do for libextension in `ls -r $BOOSTLIBDIR/boost_system* 2>/dev/null | sed 's,.*/,,' | sed -e 's,\..*,,'` ; do
ax_lib=${libextension} ax_lib=${libextension}
AC_CHECK_LIB($ax_lib, exit, AC_CHECK_LIB($ax_lib, exit,
[BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break], [BOOST_SYSTEM_LIB="-l$ax_lib"; AC_SUBST(BOOST_SYSTEM_LIB) link_system="yes"; break],
[link_system="no"]) [link_system="no"])
done done
fi fi
else else
@ -102,6 +105,9 @@ AC_DEFUN([AX_BOOST_SYSTEM],
[link_system="no"]) [link_system="no"])
done done
fi
if test "x$ax_lib" = "x"; then
AC_MSG_ERROR(Could not find a version of the library!)
fi fi
if test "x$link_system" = "xno"; then if test "x$link_system" = "xno"; then
AC_MSG_ERROR(Could not link against $ax_lib !) AC_MSG_ERROR(Could not link against $ax_lib !)
@ -109,6 +115,6 @@ AC_DEFUN([AX_BOOST_SYSTEM],
fi fi
CPPFLAGS="$CPPFLAGS_SAVED" CPPFLAGS="$CPPFLAGS_SAVED"
LDFLAGS="$LDFLAGS_SAVED" LDFLAGS="$LDFLAGS_SAVED"
fi fi
]) ])

Loading…
Cancel
Save