@@ -438,6 +438,26 @@ t:hip5.5-radeon:
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
+t:linux-gcc-cxx-modules-ninja:
+ extends:
+ - .gcc_cxx_modules_ninja
+ - .cmake_test_linux_release
+ - .linux_x86_64_tags
+ - .run_dependent
+ - .needs_centos7_x86_64
+ variables:
+ CMAKE_CI_JOB_NIGHTLY: "true"
+
+t:linux-gcc-cxx-modules-ninja-multi:
+ - .gcc_cxx_modules_ninja_multi
t:debian10-legacy:
extends:
- .debian10_legacy
@@ -0,0 +1,3 @@
+set(CMake_TEST_MODULE_COMPILATION "named,compile_commands,collation,partitions,internal_partitions,export_bmi,install_bmi,bmionly,build_database,import_std23" CACHE STRING "")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake")
@@ -0,0 +1,9 @@
+FROM fedora:41
+MAINTAINER Ben Boeckel <[email protected]>
+# Install build dependencies for packages.
+COPY install_deps.sh /root/install_deps.sh
+RUN sh /root/install_deps.sh
+COPY install_gcc.sh /root/install_gcc.sh
+RUN sh /root/install_gcc.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+set -e
+dnf install -y --setopt=install_weak_deps=False \
+ gcc-c++ mpfr-devel libmpc-devel isl-devel flex bison file findutils diffutils git-core
+dnf clean all
@@ -0,0 +1,25 @@
+readonly revision="10e702789eeabcc88451e34c2a5c7dccb96190a5" # master as of 21 Nov 2024
+readonly tarball="git://gcc.gnu.org/git/gcc.git"
+readonly workdir="$HOME/gcc"
+readonly srcdir="$workdir/gcc"
+readonly builddir="$workdir/build"
+readonly njobs="$( nproc )"
+mkdir -p "$workdir"
+cd "$workdir"
+git clone "$tarball" "$srcdir"
+git -C "$srcdir" checkout "$revision"
+mkdir -p "$builddir"
+cd "$builddir"
+"$srcdir/configure" \
+ --disable-multilib \
+ --enable-languages=c,c++ \
+ --prefix="/opt/gcc-importstd"
+make "-j$njobs"
+make "-j$njobs" install-strip
+rm -rf "$workdir"
@@ -452,6 +452,30 @@
CMAKE_CONFIGURATION: hip5.5_nvidia
CTEST_LABELS: "HIP"
+### C++ modules
+.gcc_cxx_modules_x86_64:
+ image: "kitware/cmake:ci-gcc_cxx_modules-x86_64-2024-12-23"
+ GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"
+ CMAKE_ARCH: x86_64
+ CC: "/opt/gcc-importstd/bin/gcc"
+ CXX: "/opt/gcc-importstd/bin/g++"
+.gcc_cxx_modules_ninja:
+ extends: .gcc_cxx_modules_x86_64
+ CMAKE_CONFIGURATION: linux_gcc_cxx_modules_ninja
+.gcc_cxx_modules_ninja_multi:
+ CMAKE_CONFIGURATION: linux_gcc_cxx_modules_ninja_multi
+ CMAKE_GENERATOR: "Ninja Multi-Config"
### Debian 10 legacy packages
.debian10: