]> git.lyx.org Git - lyx.git/blobdiff - config/lyxinclude.m4
Fix wrong listings preamble encoding (bug #9382)
[lyx.git] / config / lyxinclude.m4
index f8f01c0a7d0fecfaa277943731398160d55abfd2..0bcf731dc2cc0b8ee51acb208d42a5a2e4afeb88 100644 (file)
@@ -272,6 +272,7 @@ if test "x$enable_assertions" = xyes ; then
 fi
 
 # set the compiler options correctly.
+lyx_std_regex=no
 if test x$GXX = xyes; then
   dnl clang++ pretends to be g++ 4.2.1; this is not useful
   if test x$CLANG = xno; then
@@ -354,13 +355,31 @@ if test x$GXX = xyes; then
              lyx_flags="$lyx_flags c++11-mode"
              CXXFLAGS="-std=gnu++0x $CXXFLAGS"
              ;;
-         4.7*|4.8*)
+         4.7*|4.8*|4.9*)
              lyx_flags="$lyx_flags c++11-mode"
              CXXFLAGS="-std=gnu++11 $CXXFLAGS"
              ;;
       esac
+      if test x$CLANG = xno || test $lyx_cv_lib_stdcxx = yes; then
+        dnl <regex> in gcc is unusable in versions less than 4.9.0
+        dnl see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53631
+        case $gxx_version in
+       4.9*)
+          lyx_flags="$lyx_flags stdregex"
+          lyx_std_regex=yes
+          ;;
+        esac
+      else
+          lyx_flags="$lyx_flags stdregex"
+          lyx_std_regex=yes
+      fi
+
+      if test $lyx_std_regex = yes ; then
+        AC_DEFINE([LYX_USE_STD_REGEX], 1, [define to 1 if std::regex should be preferred to boost::regex])
+      fi
   fi
 fi
+AM_CONDITIONAL([LYX_USE_STD_REGEX], test $lyx_std_regex = yes)
 test "$lyx_pch_comp" = yes && lyx_flags="$lyx_flags pch"
 AM_CONDITIONAL(LYX_BUILD_PCH, test "$lyx_pch_comp" = yes)
 ])dnl
@@ -404,7 +423,11 @@ AC_DEFUN([LYX_USE_INCLUDED_BOOST],[
            LIBS=$save_LIBS
            AC_LANG_POP(C++)
            BOOST_INCLUDES=
-           BOOST_LIBS="-lboost_regex${BOOST_MT} -lboost_signals${BOOST_MT}"
+           if test $lyx_std_regex = yes ; then
+             BOOST_LIBS="-lboost_signals${BOOST_MT}"
+           else
+             BOOST_LIBS="-lboost_regex${BOOST_MT} -lboost_signals${BOOST_MT}"
+           fi
        fi
        AC_SUBST(BOOST_INCLUDES)
        AC_SUBST(BOOST_LIBS)