summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2023-08-16 14:03:12 (GMT)
committerKitware Robot <kwrobot@kitware.com>2023-08-16 14:03:12 (GMT)
commitae23cf0f29a2a626a7fd7ac2f6ca527fb19ad600 (patch)
tree6083ccb31a0bd9575f2bd12f72bbe19a9a381733
parent0386f0d098c243708700c8d02c6a6f5da5ce5ab8 (diff)
parent6d359ce7a0dd55c1935eed7d25c381e3794ebb48 (diff)
downloadCMake-ae23cf0f29a2a626a7fd7ac2f6ca527fb19ad600.zip
CMake-ae23cf0f29a2a626a7fd7ac2f6ca527fb19ad600.tar.gz
CMake-ae23cf0f29a2a626a7fd7ac2f6ca527fb19ad600.tar.bz2
Merge topic 'ci-gcc-p1689r5-v7'
6d359ce7a0 gitlab-ci: use the new GCC C++ modules build container 0d837ba0f0 ci: update gcc module rules file for new flag spellings 945c4b1771 ci: update to Fedora 38 for GCC C++ module container 38251e00e1 ci: update to v7 of the GCC p1689r5 patches Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8710
-rw-r--r--.gitlab/ci/cxx_modules_rules_gcc.cmake14
-rw-r--r--.gitlab/ci/docker/gcc_cxx_modules/Dockerfile2
-rwxr-xr-x.gitlab/ci/docker/gcc_cxx_modules/install_gcc.sh2
-rw-r--r--.gitlab/os-linux.yml2
4 files changed, 15 insertions, 5 deletions
diff --git a/.gitlab/ci/cxx_modules_rules_gcc.cmake b/.gitlab/ci/cxx_modules_rules_gcc.cmake
index 3777506..3726f6d 100644
--- a/.gitlab/ci/cxx_modules_rules_gcc.cmake
+++ b/.gitlab/ci/cxx_modules_rules_gcc.cmake
@@ -3,7 +3,17 @@ set(CMake_TEST_CXXModules_UUID "a246741c-d067-4019-a8fb-3d16b0c9d1d3")
string(CONCAT CMAKE_EXPERIMENTAL_CXX_SCANDEP_SOURCE
"<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -E -x c++ <SOURCE>"
" -MT <DYNDEP_FILE> -MD -MF <DEP_FILE>"
- " -fmodules-ts -fdep-file=<DYNDEP_FILE> -fdep-output=<OBJECT> -fdep-format=trtbd"
+ " -fmodules-ts -fdeps-file=<DYNDEP_FILE> -fdeps-target=<OBJECT> -fdeps-format=p1689r5"
" -o <PREPROCESSED_SOURCE>")
set(CMAKE_EXPERIMENTAL_CXX_MODULE_MAP_FORMAT "gcc")
-set(CMAKE_EXPERIMENTAL_CXX_MODULE_MAP_FLAG "-fmodules-ts -fmodule-mapper=<MODULE_MAP_FILE> -fdep-format=trtbd -x c++")
+string(CONCAT CMAKE_EXPERIMENTAL_CXX_MODULE_MAP_FLAG
+ # Turn on modules.
+ "-fmodules-ts"
+ # Read the module mapper file.
+ " -fmodule-mapper=<MODULE_MAP_FILE>"
+ # Make sure dependency tracking is enabled (missing from `try_*`).
+ " -MD"
+ # Suppress `CXX_MODULES +=` from generated depfile snippets.
+ " -fdeps-format=p1689r5"
+ # Force C++ as a language.
+ " -x c++")
diff --git a/.gitlab/ci/docker/gcc_cxx_modules/Dockerfile b/.gitlab/ci/docker/gcc_cxx_modules/Dockerfile
index e0af0b9..d8e8238 100644
--- a/.gitlab/ci/docker/gcc_cxx_modules/Dockerfile
+++ b/.gitlab/ci/docker/gcc_cxx_modules/Dockerfile
@@ -1,4 +1,4 @@
-FROM fedora:36
+FROM fedora:38
MAINTAINER Ben Boeckel <ben.boeckel@kitware.com>
# Install build dependencies for packages.
diff --git a/.gitlab/ci/docker/gcc_cxx_modules/install_gcc.sh b/.gitlab/ci/docker/gcc_cxx_modules/install_gcc.sh
index 20ea35f..529626e 100755
--- a/.gitlab/ci/docker/gcc_cxx_modules/install_gcc.sh
+++ b/.gitlab/ci/docker/gcc_cxx_modules/install_gcc.sh
@@ -2,7 +2,7 @@
set -e
-readonly revision="p1689r5-cmake-ci-20220614" # 3075e510e3d29583f8886b95aff044c0474c84a5
+readonly revision="p1689r5-cmake-ci-20230814" # 9fd54ccc390ab4eb3c48186b7bf15e02632cc76c
readonly tarball="https://github.com/mathstuf/gcc/archive/$revision.tar.gz"
readonly workdir="$HOME/gcc"
diff --git a/.gitlab/os-linux.yml b/.gitlab/os-linux.yml
index 3b2a494..a6d35e1 100644
--- a/.gitlab/os-linux.yml
+++ b/.gitlab/os-linux.yml
@@ -376,7 +376,7 @@
### C++ modules
.gcc_cxx_modules_x86_64:
- image: "kitware/cmake:ci-gcc_cxx_modules-x86_64-2022-06-21"
+ image: "kitware/cmake:ci-gcc_cxx_modules-x86_64-2023-08-15"
variables:
GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"