From c8f58ea6860b1ce2d4f0d8d039fd3a58727743a5 Mon Sep 17 00:00:00 2001 From: John Wiegley Date: Sat, 28 Apr 2012 05:23:36 -0500 Subject: Added support for building with Clang and libc++ in C++11 --- tools/configure.ac | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'tools') diff --git a/tools/configure.ac b/tools/configure.ac index f7623f62..99eb7df5 100644 --- a/tools/configure.ac +++ b/tools/configure.ac @@ -527,6 +527,34 @@ AC_CACHE_CHECK( AM_CONDITIONAL(HAVE_BOOST_TEST, test x$boost_test_avail_cv_ = xtrue) +# check for C++11 and libc++ +AC_CACHE_CHECK( + [if C++11 and libc++ are available], + [cpp11_avail_cv_], + [cpp11_save_cxxflags=$CXXFLAGS + cpp11_save_ldflags=$LDFLAGS + CXXFLAGS="-std=c++11 -stdlib=libc++ $CXXFLAGS" + LDFLAGS="-stdlib=libc++ $LDFLAGS" + AC_LANG_PUSH(C++) + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #include ]], + [[boost::regex foo_regexp("Hello, world!"); + for (auto i : "Hello, world") + std::cout << i << std::endl;]])], + [cpp11_avail_cv_=true], + [cpp11_avail_cv_=false]) + AC_LANG_POP + CXXFLAGS="$cpp11_save_cxxflags" + LDFLAGS="$cpp11_save_ldflags"]) + +if [test x$cpp11_avail_cv_ = xtrue]; then + AC_DEFINE([HAVE_CPP11], [1], [Whether C++11 and libc++ are available]) + CXXFLAGS="-std=c++11 -stdlib=libc++ $CXXFLAGS" + LDFLAGS="-stdlib=libc++ $LDFLAGS" +fi + # Checks for header files. AC_HEADER_STDC AC_HEADER_STAT -- cgit v1.2.3