diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a9bd5b95255ed53dd50cebcd04465561f36af087..758ca3a8d5786bb637fc2f3fbddee49b17c2edec 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -38,7 +38,7 @@ clang-buster: gcc-stretch: stage: Build - script: "CI/ci-linux.sh gcc" + script: "CI/ci-linux.sh gcc C++14" variables: GIT_SUBMODULE_STRATEGY: recursive tags: @@ -47,7 +47,7 @@ gcc-stretch: clang-stretch: stage: Build - script: "CI/ci-linux.sh clang" + script: "CI/ci-linux.sh clang C++14" variables: GIT_SUBMODULE_STRATEGY: recursive tags: diff --git a/CI/ci-linux.sh b/CI/ci-linux.sh index ed525092ee48057f68da976de539bd79c69c5daf..71d81bc09582801e491fd445276712b4a6c53076 100755 --- a/CI/ci-linux.sh +++ b/CI/ci-linux.sh @@ -26,16 +26,9 @@ elif [ "$COMPILER" == "clang" ]; then BUILDPATH="clang" fi -if [ "$LANGUAGE" == "C++98" ]; then - echo "Building with C++98"; - BUILDPATH="$BUILDPATH-cpp98" -elif [ "$LANGUAGE" == "C++11" ]; then - echo "Building with C++11"; - OPTIONS="$OPTIONS -DCMAKE_CXX_FLAGS='-std=c++11' " - BUILDPATH="$BUILDPATH-cpp11" -elif [ "$LANGUAGE" == "C++14" ]; then +if [ "$LANGUAGE" == "C++14" ]; then echo "Building with C++14"; - OPTIONS="$OPTIONS -DCMAKE_CXX_FLAGS='-std=c++14' " + OPTIONS="$OPTIONS -DPM_FORCE_CPP14=ON " BUILDPATH="$BUILDPATH-cpp14" fi diff --git a/CMakeLists.txt b/CMakeLists.txt index 70affe43dbd09e9e1db946181d2dfa17e7f7d041..fc6cabbbb9a0dd00119f909396f8e34c7e907113 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,6 +12,12 @@ set_property(GLOBAL PROPERTY USE_FOLDERS ON) option(PM_BUILD_TESTS "Build polymesh tests" OFF) +option(PM_FORCE_CPP14 "Build samples and tests with C++14" OFF) + +if (PM_FORCE_CPP14) + set(CMAKE_CXX_STANDARD 14) +endif() + # ============================================================================== # Set bin dir if(MSVC) diff --git a/extern/typed-geometry b/extern/typed-geometry index 43a260233fafd9c92d49b27242311989dc1a78c1..5fa82f7024ea8f590893cccbb00ed3243eb26926 160000 --- a/extern/typed-geometry +++ b/extern/typed-geometry @@ -1 +1 @@ -Subproject commit 43a260233fafd9c92d49b27242311989dc1a78c1 +Subproject commit 5fa82f7024ea8f590893cccbb00ed3243eb26926 diff --git a/tests/objects/cube-test.cc b/tests/objects/cube-test.cc index 701d36f788e2dd36c6ec4dfec520dc45133b03a7..06c54c8ada52d04caa3e868f66e8b446de5f7b94 100644 --- a/tests/objects/cube-test.cc +++ b/tests/objects/cube-test.cc @@ -1,3 +1,5 @@ +#ifdef TG_SUPPORT_CXX17 + #include <doctest.hh> #include <glm/glm.hpp> @@ -178,3 +180,5 @@ TEST_CASE("Objects.CubePropertiesGlm") m2.assert_consistency(); } } + +#endif