[C++11] Replace autoconf --enable-cxx11 with --enable-cxx1y. The

baseline is now C++11, and we unconditionally add -std=c++11 to the
flags.

This has the dim potential to break some non-GNU-compatible compiler (in
terms of -std flags) using the makefiles, but those makefiles are
littered with GNU-style compile flags so it would be very surprising to
me for it to actually happen in practice. As always, do let me know if
there is a toolchain you're using where this doesn't work, and I'll be
watching the bots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202569 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chandler Carruth 2014-03-01 03:33:08 +00:00
parent b23750a8ae
commit f38b536b3d
4 changed files with 26 additions and 23 deletions

View File

@ -244,8 +244,9 @@ RDYNAMIC := @RDYNAMIC@
#ENABLE_LIBCPP = 0
ENABLE_LIBCPP = @ENABLE_LIBCPP@
# When ENABLE_CXX11 is enabled, LLVM uses c++11 mode by default to build.
ENABLE_CXX11 = @ENABLE_CXX11@
# When ENABLE_CXX1Y is enabled, LLVM uses c++1y mode by default to build.
# Otherwise it uses the baseline c++11.
ENABLE_CXX1Y = @ENABLE_CXX1Y@
# When ENABLE_SPLIT_DWARF is enabled, LLVM uses -gfission to build in debug mode.
ENABLE_SPLIT_DWARF = @ENABLE_SPLIT_DWARF@

View File

@ -319,8 +319,10 @@ ifeq ($(ENABLE_LIBCPP),1)
LD.Flags += -stdlib=libc++
endif
ifeq ($(ENABLE_CXX11),1)
CXX.Flags += -std=c++11
ifeq ($(ENABLE_CXX1Y),1)
CXX.Flags += -std=c++1y
else
CXX.Flags += -std=c++11
endif
ifeq ($(ENABLE_WERROR),1)

View File

@ -589,16 +589,16 @@ bypass these sanity checks.])])
;;
esac
dnl --enable-cxx11 : check whether or not to use -std=c++11 on the command line
AC_ARG_ENABLE(cxx11,
AS_HELP_STRING([--enable-cxx11],
[Use c++11 if available (default is YES)]),,
dnl --enable-cxx1y : check whether or not to use -std=c++1y on the command line
AC_ARG_ENABLE(cxx1y,
AS_HELP_STRING([--enable-cxx1y],
[Use c++1y if available (default is NO)]),,
enableval=default)
case "$enableval" in
yes) AC_SUBST(ENABLE_CXX11,[1]) ;;
no) AC_SUBST(ENABLE_CXX11,[0]) ;;
default) AC_SUBST(ENABLE_CXX11,[1]);;
*) AC_MSG_ERROR([Invalid setting for --enable-cxx11. Use "yes" or "no"]) ;;
yes) AC_SUBST(ENABLE_CXX1Y,[1]) ;;
no) AC_SUBST(ENABLE_CXX1Y,[0]) ;;
default) AC_SUBST(ENABLE_CXX1Y,[0]);;
*) AC_MSG_ERROR([Invalid setting for --enable-cxx1y. Use "yes" or "no"]) ;;
esac
dnl --enable-fission : check whether or not to use -gsplit-dwarf on the command

22
configure vendored
View File

@ -684,7 +684,7 @@ BUILD_EXEEXT
BUILD_CXX
CVSBUILD
ENABLE_LIBCPP
ENABLE_CXX11
ENABLE_CXX1Y
ENABLE_SPLIT_DWARF
ENABLE_CLANG_ARCMT
ENABLE_CLANG_STATIC_ANALYZER
@ -1402,7 +1402,7 @@ Optional Features:
--enable-compiler-version-checks
Check the version of the host compiler (default is
YES)
--enable-cxx11 Use c++11 if available (default is YES)
--enable-cxx1y Use c++1y if available (default is NO)
--enable-split-dwarf Use split-dwarf if available (default is NO)
--enable-clang-arcmt Enable building of clang ARCMT (default is YES)
--enable-clang-static-analyzer
@ -4804,22 +4804,22 @@ echo "$as_me: error: Invalid setting for --enable-compiler-version-checks. Use \
;;
esac
# Check whether --enable-cxx11 was given.
if test "${enable_cxx11+set}" = set; then
enableval=$enable_cxx11;
# Check whether --enable-cxx1y was given.
if test "${enable_cxx1y+set}" = set; then
enableval=$enable_cxx1y;
else
enableval=default
fi
case "$enableval" in
yes) ENABLE_CXX11=1
yes) ENABLE_CXX1Y=1
;;
no) ENABLE_CXX11=0
no) ENABLE_CXX1Y=0
;;
default) ENABLE_CXX11=1
default) ENABLE_CXX1Y=0
;;
*) { { echo "$as_me:$LINENO: error: Invalid setting for --enable-cxx11. Use \"yes\" or \"no\"" >&5
echo "$as_me: error: Invalid setting for --enable-cxx11. Use \"yes\" or \"no\"" >&2;}
*) { { echo "$as_me:$LINENO: error: Invalid setting for --enable-cxx1y. Use \"yes\" or \"no\"" >&5
echo "$as_me: error: Invalid setting for --enable-cxx1y. Use \"yes\" or \"no\"" >&2;}
{ (exit 1); exit 1; }; } ;;
esac
@ -20165,7 +20165,7 @@ BUILD_EXEEXT!$BUILD_EXEEXT$ac_delim
BUILD_CXX!$BUILD_CXX$ac_delim
CVSBUILD!$CVSBUILD$ac_delim
ENABLE_LIBCPP!$ENABLE_LIBCPP$ac_delim
ENABLE_CXX11!$ENABLE_CXX11$ac_delim
ENABLE_CXX1Y!$ENABLE_CXX1Y$ac_delim
ENABLE_SPLIT_DWARF!$ENABLE_SPLIT_DWARF$ac_delim
ENABLE_CLANG_ARCMT!$ENABLE_CLANG_ARCMT$ac_delim
ENABLE_CLANG_STATIC_ANALYZER!$ENABLE_CLANG_STATIC_ANALYZER$ac_delim