8 # Test for Thread library from the Boost C++ libraries.
12 # AC_SUBST(BOOST_THREAD_LIB)
13 # AC_SUBST(BOOST_CXXFLAGS)
21 # Copyright (c) 2008 Thomas Porschberg <thomas@randspringer.de>
22 # Copyright (c) 2008 Michael Tindal
23 # Copyright (c) 2008 Free Software Foundation, Inc.
25 # Copying and distribution of this file, with or without modification, are
26 # permitted in any medium without royalty provided the copyright notice
27 # and this notice are preserved.
30 AC_DEFUN([AX_BOOST_THREAD],
32 AC_REQUIRE([AX_BOOST_BASE])
33 AC_REQUIRE([ACX_PTHREAD])
34 _AX_BOOST_WITH([boost_thread])
36 if test "$want_boost" = "yes"; then
37 AC_REQUIRE([AC_PROG_CC])
38 AC_REQUIRE([AC_PROG_CXX])
39 AC_REQUIRE([AC_CANONICAL_HOST])
41 CPPFLAGS_SAVED="$CPPFLAGS"
42 LDFLAGS_SAVED="$LDFLAGS"
43 CXXFLAGS_SAVED="$CXXFLAGS"
45 CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
46 LDFLAGS="$LDFLAGS $BOOST_LDFLAGS $PTHREAD_LIBS"
47 CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"
49 AC_CACHE_CHECK(whether the boost::thread includes are available,
52 AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[@%:@include <boost/thread/thread.hpp>]],
53 [[boost::thread_group thrds;
55 ax_cv_boost_thread=yes, ax_cv_boost_thread=no)
59 if test "$ax_cv_boost_thread" = "yes"; then
60 BOOST_CXXFLAGS="$PTHREAD_CFLAGS"
61 AC_SUBST(BOOST_CXXFLAGS)
62 _AX_BOOST_CHECK_LIB([boost_thread])
63 if test "$link_ok" = "yes" && test -n "$PTHREAD_LIBS"; then
64 BOOST_THREAD_LIB="$BOOST_THREAD_LIB $PTHREAD_LIBS"
68 CPPFLAGS="$CPPFLAGS_SAVED"
69 LDFLAGS="$LDFLAGS_SAVED"
70 CXXFLAGS="$CXXFLAGS_SAVED"