From fef12cc386a13b525e0bacbdbeeefd5cd1f2fa87 Mon Sep 17 00:00:00 2001 From: Moritz Bunkus Date: Sat, 6 Jun 2015 09:30:10 +0200 Subject: [PATCH] build system: test for -std=gnu++14/-std=gnu++11 as well For clang using gnu++14/11 results in a dummy type being defined for __float128. That, in turn, allows compilation with unmodified libstdc++ and clang. --- ac/c++11.m4 | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/ac/c++11.m4 b/ac/c++11.m4 index 81a9fe66d..d38ba326f 100644 --- a/ac/c++11.m4 +++ b/ac/c++11.m4 @@ -4,17 +4,17 @@ AC_DEFUN([AX_CXX_STD_CXX_FLAG],[ AC_LANG_PUSH(C++) CXXFLAGS_SAVED="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS_SAVED -std=c++14" - AC_TRY_COMPILE([], [true;], [ax_cv_std_cxx_flag="-std=c++14"], [ax_cv_std_cxx_flag="undecided"]) + for flag in gnu++14 c++14 gnu++11 c++11 c++0x; do + CXXFLAGS="$CXXFLAGS_SAVED -std=$flag" + AC_TRY_COMPILE([], [true;], [ax_cv_std_cxx_flag="-std=$flag"], [ax_cv_std_cxx_flag="undecided"]) + + if test x"$ax_cv_std_cxx_flag" != xundecided ; then + break + fi + done if test x"$ax_cv_std_cxx_flag" = xundecided ; then - CXXFLAGS="$CXXFLAGS_SAVED -std=c++11" - AC_TRY_COMPILE([], [true;], [ax_cv_std_cxx_flag="-std=c++11"], [ax_cv_std_cxx_flag="undecided"]) - fi - - if test x"$ax_cv_std_cxx_flag" = xundecided ; then - CXXFLAGS="$CXXFLAGS_SAVED -std=c++0x" - AC_TRY_COMPILE([], [true;], [ax_cv_std_cxx_flag="-std=c++0x"], [ax_cv_std_cxx_flag="no"]) + ax_cv_std_cxx_flag="no" fi AC_LANG_POP