Mercurial > hg > sonic-visualiser
diff configure.ac @ 1976:810a0b8f5472 c++14
Requiring c++14 is not going to work for Travis (because we want to support a Qt version too old to know about the c++14 config flag) or for our AppImage build (because we want to run on distros to old to support the relevant gcc ABI). So instead we try to confine the C++ standard selection to one place (config/noconfig) and revert to c++11 if the compiler is too old to know about c++14. All of the actual SV code remains c++11, and we assume we build against an older version of capnproto when we want to perform a c++11 build.
author | Chris Cannam |
---|---|
date | Fri, 31 Aug 2018 13:41:27 +0100 |
parents | 714f8dad57bc |
children | 5ffcb4e10e1b |
line wrap: on
line diff
--- a/configure.ac Fri Aug 31 12:16:59 2018 +0100 +++ b/configure.ac Fri Aug 31 13:41:27 2018 +0100 @@ -51,13 +51,16 @@ CXXFLAGS_DEBUG="$AUTOCONF_CXXFLAGS" CXXFLAGS_RELEASE="$AUTOCONF_CXXFLAGS" CXXFLAGS_MINIMAL="$AUTOCONF_CXXFLAGS" +CXXSTANDARD=c++14 if test "x$GCC" = "xyes"; then CXXFLAGS_ANY="-fpic -Wall -Wextra -Woverloaded-virtual -Wformat-nonliteral -Wformat-security -Winit-self -Wswitch-enum -Wconversion -pipe" CXXFLAGS_DEBUG="$CXXFLAGS_ANY -g -O2 -Werror" CXXFLAGS_RELEASE="$CXXFLAGS_ANY -g0 -O3 -ffast-math" CXXFLAGS_MINIMAL="$CXXFLAGS_ANY -g0 -O0" - LIBS_DEBUG="$LIBS -lubsan" + LIBS_DEBUG="$LIBS" + AX_CHECK_COMPILE_FLAG(--std=$CXXSTANDARD, [], [AC_MSG_NOTICE([Compiler does not appear to support $CXXSTANDARD, falling back to c++11]) + CXXSTANDARD=c++11]) fi CXXFLAGS_BUILD="$CXXFLAGS_RELEASE" @@ -128,6 +131,7 @@ AC_SUBST(CFLAGS) AC_SUBST(CXXFLAGS) AC_SUBST(CXXFLAGS_MINIMAL) +AC_SUBST(CXXSTANDARD) AC_SUBST(LDFLAGS) AC_SUBST(HAVES) AC_SUBST(LIBS)