First of all, you will need a recent C++ compiler, where recent means
that the compilers are close to C++ standard conforming like gcc (at
-least 4.x) or clang. Note that the compiler will be used in C++11 mode
+least 4.3) or clang. Note that the compiler will be used in C++11 mode
when possible.
LyX makes great use of the C++ Standard Template Library (STL).
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.0*|4.1*|4.2*|4.3*|4.4*|4.5*|4.6*|4.7*|4.8*) lyx_std_regex=no ;;
+ 4.3*|4.4*|4.5*|4.6*|4.7*|4.8*) lyx_std_regex=no ;;
*) ;;
esac
fi
AM_CPPFLAGS="$AM_CPPFLAGS -Wall -Wextra"
fi
case $gxx_version in
- 2.*|3.*) AC_ERROR([gcc 4.x is required]);;
+ 2.*|3.*) AC_ERROR([gcc >= 4.3 is required]);;
+ 4.0*|4.1*|4.2*) AC_ERROR([gcc >= 4.3 is required]);;
esac
if test x$enable_stdlib_debug = xyes ; then
dnl FIXME: for clang/libc++, one should define _LIBCPP_DEBUG2=0
dnl By default, it is auto and we enable C++11 when possible
if test x$enable_cxx11 != xno ; then
case $gxx_version in
- 4.0*|4.1*|4.2*)
- if test x$enable_cxx11 = xyes; then
- AC_ERROR([There is no C++11 support in gcc 4.2 or older])
- fi;;
4.3*|4.4*|4.5*|4.6*)
dnl Note that this will define __GXX_EXPERIMENTAL_CXX0X__.
dnl The source code relies on that.