From c523de13b39a2bb128569ba5816af06e52d368d7 Mon Sep 17 00:00:00 2001 From: Patrick Storz Date: Sun, 31 Mar 2019 22:25:19 +0200 Subject: CMake: Use CMAKE_CXX_STANDARD and don't set it in three places This requires bumping cmake version requirement to 3.1 (which should long be available on supported platforms, though) TODO: We actually depend on GNU compiler extensions right now (i.e. *don't* build with -std=c++11 but require -std=gnu++11) --- CMakeScripts/ConfigEnv.cmake | 13 ++++++------- CMakeScripts/DefineDependsandFlags.cmake | 9 +-------- 2 files changed, 7 insertions(+), 15 deletions(-) (limited to 'CMakeScripts') diff --git a/CMakeScripts/ConfigEnv.cmake b/CMakeScripts/ConfigEnv.cmake index 29f2f5df8..b8809428c 100644 --- a/CMakeScripts/ConfigEnv.cmake +++ b/CMakeScripts/ConfigEnv.cmake @@ -5,20 +5,19 @@ if(WIN32) message("-- Windows build detected, setting default features") include(CMakeScripts/ConfigEnvMinGW.cmake) - + set(CMAKE_C_COMPILER "${MINGW_BIN}/gcc.exe") set(CMAKE_CXX_COMPILER "${MINGW_BIN}/g++.exe") - set(CMAKE_CXX_STANDARD 11) - + # Setup Windows resource files compiler. set(CMAKE_RC_COMPILER "${MINGW_BIN}/windres.exe") set(CMAKE_RC_COMPILER_INIT windres) enable_language(RC) set(CMAKE_RC_COMPILE_OBJECT " -O coff -i -o ") - + # These options are required for having i18n support on Windows. option(ENABLE_NLS "Compile with Native Language Support (using gettext)" ON) - + # Does not compile on Windows with these options. option(ENABLE_BINRELOC "Use AutoPackage" OFF) option(WITH_JEMALLOC "Compile with JEMALLOC support" OFF) @@ -26,7 +25,7 @@ endif() if(APPLE) message("-- Mac OS X build detected, setting default features") - + # prefer macports and/or user-installed libraries over system ones #LIST(APPEND CMAKE_PREFIX_PATH /opt/local /usr/local) set(CMAKE_FIND_FRAMEWORK "LAST") @@ -35,7 +34,7 @@ if(APPLE) if(DEFINED ENV{CMAKE_PREFIX_PATH}) message("CMAKE_PREFIX_PATH: $ENV{CMAKE_PREFIX_PATH}") endif() - + if(DEFINED ENV{GTKMM_BASEPATH}) message("GTKMM_BASEPATH: $ENV{GTKMM_BASEPATH}") endif() diff --git a/CMakeScripts/DefineDependsandFlags.cmake b/CMakeScripts/DefineDependsandFlags.cmake index 09362da7d..8099f0997 100644 --- a/CMakeScripts/DefineDependsandFlags.cmake +++ b/CMakeScripts/DefineDependsandFlags.cmake @@ -10,14 +10,6 @@ list(APPEND INKSCAPE_INCS ${PROJECT_SOURCE_DIR} ${CMAKE_BINARY_DIR}/include ) -# ---------------------------------------------------------------------------- -# Add C++11 standard compliance -# TODO: Add a proper check for compiler compliance here -# ---------------------------------------------------------------------------- -# this can be removed when cmake minimum is 3.1 -# as replaced with CMAKE_CXX_STANDARD in main CMakeLists.txt -list(APPEND INKSCAPE_CXX_FLAGS "-std=c++11") - # Errors for common mistakes list(APPEND INKSCAPE_CXX_FLAGS "-Werror=format") # e.g.: printf("%s", std::string("foo")) list(APPEND INKSCAPE_CXX_FLAGS "-Werror=format-security") # e.g.: printf(variable); @@ -29,6 +21,7 @@ if (CMAKE_COMPILER_IS_GNUCC) list(APPEND INKSCAPE_CXX_FLAGS_DEBUG "-fstack-clash-protection -fcf-protection") endif() endif() + # Define the flags for profiling if desired: if(WITH_PROFILING) set(BUILD_SHARED_LIBS off) -- cgit v1.2.3