Require at least gcc 4.3

This is a prerequisite for mandatory C++11 support.
I could not find a cmake gcc version check btw.
This commit is contained in:
Georg Baum 2016-06-05 15:40:00 +02:00
parent 2ba8705435
commit ad63374e26
2 changed files with 4 additions and 7 deletions

View File

@ -49,7 +49,7 @@ Requirements
First of all, you will need a recent C++ compiler, where recent means 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 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. when possible.
LyX makes great use of the C++ Standard Template Library (STL). LyX makes great use of the C++ Standard Template Library (STL).

View File

@ -194,7 +194,7 @@ AC_DEFUN([LYX_CXX_USE_REGEX],
dnl <regex> in gcc is unusable in versions less than 4.9.0 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 dnl see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53631
case $gxx_version in 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 esac
fi fi
@ -344,7 +344,8 @@ if test x$GXX = xyes; then
AM_CPPFLAGS="$AM_CPPFLAGS -Wall -Wextra" AM_CPPFLAGS="$AM_CPPFLAGS -Wall -Wextra"
fi fi
case $gxx_version in 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 esac
if test x$enable_stdlib_debug = xyes ; then if test x$enable_stdlib_debug = xyes ; then
dnl FIXME: for clang/libc++, one should define _LIBCPP_DEBUG2=0 dnl FIXME: for clang/libc++, one should define _LIBCPP_DEBUG2=0
@ -361,10 +362,6 @@ if test x$GXX = xyes; then
dnl By default, it is auto and we enable C++11 when possible dnl By default, it is auto and we enable C++11 when possible
if test x$enable_cxx11 != xno ; then if test x$enable_cxx11 != xno ; then
case $gxx_version in 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*) 4.3*|4.4*|4.5*|4.6*)
dnl Note that this will define __GXX_EXPERIMENTAL_CXX0X__. dnl Note that this will define __GXX_EXPERIMENTAL_CXX0X__.
dnl The source code relies on that. dnl The source code relies on that.