summaryrefslogtreecommitdiffstats
path: root/.gitlab/ci
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab/ci')
-rw-r--r--.gitlab/ci/configure_fedora38_clang_analyzer.cmake3
-rw-r--r--.gitlab/ci/configure_fedora38_ninja_clang.cmake4
-rw-r--r--.gitlab/ci/configure_fedora38_ninja_multi_clang.cmake4
-rw-r--r--.gitlab/ci/configure_fedora39_asan.cmake (renamed from .gitlab/ci/configure_fedora38_asan.cmake)2
-rw-r--r--.gitlab/ci/configure_fedora39_clang_analyzer.cmake3
-rw-r--r--.gitlab/ci/configure_fedora39_common.cmake (renamed from .gitlab/ci/configure_fedora38_common.cmake)0
-rw-r--r--.gitlab/ci/configure_fedora39_common_clang.cmake (renamed from .gitlab/ci/configure_fedora38_common_clang.cmake)1
-rw-r--r--.gitlab/ci/configure_fedora39_extdeps.cmake (renamed from .gitlab/ci/configure_fedora38_extdeps.cmake)0
-rw-r--r--.gitlab/ci/configure_fedora39_hip_radeon.cmake (renamed from .gitlab/ci/configure_fedora38_hip_radeon.cmake)0
-rw-r--r--.gitlab/ci/configure_fedora39_makefiles.cmake (renamed from .gitlab/ci/configure_fedora38_makefiles.cmake)2
-rw-r--r--.gitlab/ci/configure_fedora39_makefiles_clang.cmake (renamed from .gitlab/ci/configure_fedora38_makefiles_clang.cmake)2
-rw-r--r--.gitlab/ci/configure_fedora39_makefiles_symlinked.cmake (renamed from .gitlab/ci/configure_fedora38_makefiles_symlinked.cmake)2
-rw-r--r--.gitlab/ci/configure_fedora39_ninja.cmake (renamed from .gitlab/ci/configure_fedora38_ninja.cmake)2
-rw-r--r--.gitlab/ci/configure_fedora39_ninja_clang.cmake3
-rw-r--r--.gitlab/ci/configure_fedora39_ninja_multi.cmake (renamed from .gitlab/ci/configure_fedora38_ninja_multi.cmake)0
-rw-r--r--.gitlab/ci/configure_fedora39_ninja_multi_clang.cmake3
-rw-r--r--.gitlab/ci/configure_fedora39_sphinx.cmake (renamed from .gitlab/ci/configure_fedora38_sphinx.cmake)0
-rw-r--r--.gitlab/ci/configure_fedora39_sphinx_package.cmake (renamed from .gitlab/ci/configure_fedora38_sphinx_package.cmake)0
-rw-r--r--.gitlab/ci/configure_fedora39_tidy.cmake (renamed from .gitlab/ci/configure_fedora38_tidy.cmake)2
-rw-r--r--.gitlab/ci/configure_windows_clang_ninja.cmake1
-rw-r--r--.gitlab/ci/ctest_exclusions.cmake9
-rw-r--r--.gitlab/ci/ctest_memcheck_fedora39_asan.lsan.supp (renamed from .gitlab/ci/ctest_memcheck_fedora38_asan.lsan.supp)0
-rw-r--r--.gitlab/ci/cxx_modules_rules_clang.cmake3
-rw-r--r--.gitlab/ci/docker/fedora39/Dockerfile (renamed from .gitlab/ci/docker/fedora38/Dockerfile)2
-rw-r--r--.gitlab/ci/docker/fedora39/deps_packages.lst (renamed from .gitlab/ci/docker/fedora38/deps_packages.lst)2
-rwxr-xr-x.gitlab/ci/docker/fedora39/install_deps.sh (renamed from .gitlab/ci/docker/fedora38/install_deps.sh)4
-rwxr-xr-x.gitlab/ci/docker/fedora39/install_iwyu.sh (renamed from .gitlab/ci/docker/fedora38/install_iwyu.sh)0
-rwxr-xr-x.gitlab/ci/docker/fedora39/install_rvm.sh (renamed from .gitlab/ci/docker/fedora38/install_rvm.sh)0
-rw-r--r--.gitlab/ci/docker/fedora39/iwyu_packages.lst (renamed from .gitlab/ci/docker/fedora38/iwyu_packages.lst)0
-rw-r--r--.gitlab/ci/docker/fedora39/rvm_packages.lst (renamed from .gitlab/ci/docker/fedora38/rvm_packages.lst)0
-rw-r--r--.gitlab/ci/env_fedora38_common_clang.sh4
-rw-r--r--.gitlab/ci/env_fedora38_hip_radeon.sh1
-rw-r--r--.gitlab/ci/env_fedora38_makefiles_clang.sh1
-rw-r--r--.gitlab/ci/env_fedora38_makefiles_symlinked.cmake1
-rw-r--r--.gitlab/ci/env_fedora38_makefiles_symlinked.sh1
-rw-r--r--.gitlab/ci/env_fedora38_ninja_clang.sh1
-rw-r--r--.gitlab/ci/env_fedora38_ninja_multi_clang.sh1
-rw-r--r--.gitlab/ci/env_fedora39_asan.sh (renamed from .gitlab/ci/env_fedora38_asan.sh)0
-rw-r--r--.gitlab/ci/env_fedora39_clang_analyzer.sh (renamed from .gitlab/ci/env_fedora38_clang_analyzer.sh)0
-rw-r--r--.gitlab/ci/env_fedora39_common_clang.sh3
-rw-r--r--.gitlab/ci/env_fedora39_extdeps.sh (renamed from .gitlab/ci/env_fedora38_extdeps.sh)0
-rw-r--r--.gitlab/ci/env_fedora39_hip_radeon.sh1
-rw-r--r--.gitlab/ci/env_fedora39_makefiles.cmake (renamed from .gitlab/ci/env_fedora38_makefiles.cmake)0
-rw-r--r--.gitlab/ci/env_fedora39_makefiles.sh (renamed from .gitlab/ci/env_fedora38_makefiles.sh)0
-rw-r--r--.gitlab/ci/env_fedora39_makefiles_clang.sh1
-rw-r--r--.gitlab/ci/env_fedora39_makefiles_symlinked.cmake1
-rw-r--r--.gitlab/ci/env_fedora39_makefiles_symlinked.sh1
-rw-r--r--.gitlab/ci/env_fedora39_ninja.sh (renamed from .gitlab/ci/env_fedora38_ninja_multi.sh)0
-rw-r--r--.gitlab/ci/env_fedora39_ninja_clang.sh1
-rw-r--r--.gitlab/ci/env_fedora39_ninja_multi.sh (renamed from .gitlab/ci/env_fedora38_ninja.sh)0
-rw-r--r--.gitlab/ci/env_fedora39_ninja_multi_clang.sh1
-rw-r--r--.gitlab/ci/pre_build_fedora39_tidy.sh (renamed from .gitlab/ci/pre_build_fedora38_tidy.sh)0
52 files changed, 38 insertions, 35 deletions
diff --git a/.gitlab/ci/configure_fedora38_clang_analyzer.cmake b/.gitlab/ci/configure_fedora38_clang_analyzer.cmake
deleted file mode 100644
index c11eef1..0000000
--- a/.gitlab/ci/configure_fedora38_clang_analyzer.cmake
+++ /dev/null
@@ -1,3 +0,0 @@
-set(configure_no_sccache 1)
-
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common.cmake")
diff --git a/.gitlab/ci/configure_fedora38_ninja_clang.cmake b/.gitlab/ci/configure_fedora38_ninja_clang.cmake
deleted file mode 100644
index 848c5b6..0000000
--- a/.gitlab/ci/configure_fedora38_ninja_clang.cmake
+++ /dev/null
@@ -1,4 +0,0 @@
-set(CMake_TEST_MODULE_COMPILATION "named,compile_commands,collation,partitions,internal_partitions,export_bmi,install_bmi,shared,bmionly" CACHE STRING "")
-set(CMake_TEST_MODULE_COMPILATION_RULES "${CMAKE_CURRENT_LIST_DIR}/cxx_modules_rules_clang.cmake" CACHE STRING "")
-
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common_clang.cmake")
diff --git a/.gitlab/ci/configure_fedora38_ninja_multi_clang.cmake b/.gitlab/ci/configure_fedora38_ninja_multi_clang.cmake
deleted file mode 100644
index 848c5b6..0000000
--- a/.gitlab/ci/configure_fedora38_ninja_multi_clang.cmake
+++ /dev/null
@@ -1,4 +0,0 @@
-set(CMake_TEST_MODULE_COMPILATION "named,compile_commands,collation,partitions,internal_partitions,export_bmi,install_bmi,shared,bmionly" CACHE STRING "")
-set(CMake_TEST_MODULE_COMPILATION_RULES "${CMAKE_CURRENT_LIST_DIR}/cxx_modules_rules_clang.cmake" CACHE STRING "")
-
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common_clang.cmake")
diff --git a/.gitlab/ci/configure_fedora38_asan.cmake b/.gitlab/ci/configure_fedora39_asan.cmake
index 8eae500..872517c 100644
--- a/.gitlab/ci/configure_fedora38_asan.cmake
+++ b/.gitlab/ci/configure_fedora39_asan.cmake
@@ -1,4 +1,4 @@
set(CMAKE_C_FLAGS "-fsanitize=address" CACHE STRING "")
set(CMAKE_CXX_FLAGS "-fsanitize=address" CACHE STRING "")
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39_common.cmake")
diff --git a/.gitlab/ci/configure_fedora39_clang_analyzer.cmake b/.gitlab/ci/configure_fedora39_clang_analyzer.cmake
new file mode 100644
index 0000000..1bfb3fb
--- /dev/null
+++ b/.gitlab/ci/configure_fedora39_clang_analyzer.cmake
@@ -0,0 +1,3 @@
+set(configure_no_sccache 1)
+
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39_common.cmake")
diff --git a/.gitlab/ci/configure_fedora38_common.cmake b/.gitlab/ci/configure_fedora39_common.cmake
index 4484e26..4484e26 100644
--- a/.gitlab/ci/configure_fedora38_common.cmake
+++ b/.gitlab/ci/configure_fedora39_common.cmake
diff --git a/.gitlab/ci/configure_fedora38_common_clang.cmake b/.gitlab/ci/configure_fedora39_common_clang.cmake
index 70c9df9..1b3835a 100644
--- a/.gitlab/ci/configure_fedora38_common_clang.cmake
+++ b/.gitlab/ci/configure_fedora39_common_clang.cmake
@@ -1,6 +1,5 @@
set(CMAKE_Fortran_COMPILER "/usr/bin/flang-new" CACHE FILEPATH "")
set(CMAKE_Fortran_COMPILER_ID "LLVMFlang" CACHE STRING "")
set(CMAKE_Fortran_COMPILER_SUPPORTS_F90 "1" CACHE BOOL "")
-set(CMAKE_Fortran_FLAGS "-flang-experimental-exec" CACHE STRING "")
include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake")
diff --git a/.gitlab/ci/configure_fedora38_extdeps.cmake b/.gitlab/ci/configure_fedora39_extdeps.cmake
index 8e545f5..8e545f5 100644
--- a/.gitlab/ci/configure_fedora38_extdeps.cmake
+++ b/.gitlab/ci/configure_fedora39_extdeps.cmake
diff --git a/.gitlab/ci/configure_fedora38_hip_radeon.cmake b/.gitlab/ci/configure_fedora39_hip_radeon.cmake
index c7d7004..c7d7004 100644
--- a/.gitlab/ci/configure_fedora38_hip_radeon.cmake
+++ b/.gitlab/ci/configure_fedora39_hip_radeon.cmake
diff --git a/.gitlab/ci/configure_fedora38_makefiles.cmake b/.gitlab/ci/configure_fedora39_makefiles.cmake
index a3881cf..953b2a8 100644
--- a/.gitlab/ci/configure_fedora38_makefiles.cmake
+++ b/.gitlab/ci/configure_fedora39_makefiles.cmake
@@ -57,7 +57,7 @@ set(CMake_TEST_FindLibXslt "ON" CACHE BOOL "")
set(CMake_TEST_FindMPI_C "ON" CACHE BOOL "")
set(CMake_TEST_FindMPI_CXX "ON" CACHE BOOL "")
set(CMake_TEST_FindMPI_Fortran "ON" CACHE BOOL "")
-set(CMake_TEST_FindMPI_ENVMOD "PATH=path_list_prepend:/usr/lib64/mpich/bin;LD_LIBRARY_PATH=path_list_prepend:/usr/lib64/mpich/lib" CACHE STRING "")
+set(CMake_TEST_FindMPI_ENVMOD "PATH=path_list_prepend:/usr/lib64/mpich/bin;LD_LIBRARY_PATH=path_list_prepend:/usr/lib64/mpich/lib;FI_PROVIDER=set:tcp" CACHE STRING "")
set(CMake_TEST_FindMPI "ON" CACHE BOOL "")
set(CMake_TEST_FindODBC "ON" CACHE BOOL "")
set(CMake_TEST_FindOpenACC "ON" CACHE BOOL "")
diff --git a/.gitlab/ci/configure_fedora38_makefiles_clang.cmake b/.gitlab/ci/configure_fedora39_makefiles_clang.cmake
index 3ac23be..a85ae70 100644
--- a/.gitlab/ci/configure_fedora38_makefiles_clang.cmake
+++ b/.gitlab/ci/configure_fedora39_makefiles_clang.cmake
@@ -2,4 +2,4 @@ if (NOT "$ENV{CMAKE_CI_NIGHTLY}" STREQUAL "")
set(CMAKE_TESTS_CDASH_SERVER "https://open.cdash.org" CACHE STRING "")
endif()
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common_clang.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39_common_clang.cmake")
diff --git a/.gitlab/ci/configure_fedora38_makefiles_symlinked.cmake b/.gitlab/ci/configure_fedora39_makefiles_symlinked.cmake
index 177bbcf..b53ab66 100644
--- a/.gitlab/ci/configure_fedora38_makefiles_symlinked.cmake
+++ b/.gitlab/ci/configure_fedora39_makefiles_symlinked.cmake
@@ -1,2 +1,2 @@
include("${CMAKE_CURRENT_LIST_DIR}/configure_symlinked_common.cmake")
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39_common.cmake")
diff --git a/.gitlab/ci/configure_fedora38_ninja.cmake b/.gitlab/ci/configure_fedora39_ninja.cmake
index ac6b9f6..ff233a3 100644
--- a/.gitlab/ci/configure_fedora38_ninja.cmake
+++ b/.gitlab/ci/configure_fedora39_ninja.cmake
@@ -11,4 +11,4 @@ set(CMAKE_CXX_FLAGS_RELEASE "-O3" CACHE STRING "")
# Cover compilation with C++11 only and not higher standards.
set(CMAKE_CXX_STANDARD "11" CACHE STRING "")
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39_common.cmake")
diff --git a/.gitlab/ci/configure_fedora39_ninja_clang.cmake b/.gitlab/ci/configure_fedora39_ninja_clang.cmake
new file mode 100644
index 0000000..79d3eaa
--- /dev/null
+++ b/.gitlab/ci/configure_fedora39_ninja_clang.cmake
@@ -0,0 +1,3 @@
+set(CMake_TEST_MODULE_COMPILATION "named,compile_commands,collation,partitions,internal_partitions,export_bmi,install_bmi,shared,bmionly" CACHE STRING "")
+
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39_common_clang.cmake")
diff --git a/.gitlab/ci/configure_fedora38_ninja_multi.cmake b/.gitlab/ci/configure_fedora39_ninja_multi.cmake
index 94af721..94af721 100644
--- a/.gitlab/ci/configure_fedora38_ninja_multi.cmake
+++ b/.gitlab/ci/configure_fedora39_ninja_multi.cmake
diff --git a/.gitlab/ci/configure_fedora39_ninja_multi_clang.cmake b/.gitlab/ci/configure_fedora39_ninja_multi_clang.cmake
new file mode 100644
index 0000000..79d3eaa
--- /dev/null
+++ b/.gitlab/ci/configure_fedora39_ninja_multi_clang.cmake
@@ -0,0 +1,3 @@
+set(CMake_TEST_MODULE_COMPILATION "named,compile_commands,collation,partitions,internal_partitions,export_bmi,install_bmi,shared,bmionly" CACHE STRING "")
+
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39_common_clang.cmake")
diff --git a/.gitlab/ci/configure_fedora38_sphinx.cmake b/.gitlab/ci/configure_fedora39_sphinx.cmake
index 90d159b..90d159b 100644
--- a/.gitlab/ci/configure_fedora38_sphinx.cmake
+++ b/.gitlab/ci/configure_fedora39_sphinx.cmake
diff --git a/.gitlab/ci/configure_fedora38_sphinx_package.cmake b/.gitlab/ci/configure_fedora39_sphinx_package.cmake
index e839de8..e839de8 100644
--- a/.gitlab/ci/configure_fedora38_sphinx_package.cmake
+++ b/.gitlab/ci/configure_fedora39_sphinx_package.cmake
diff --git a/.gitlab/ci/configure_fedora38_tidy.cmake b/.gitlab/ci/configure_fedora39_tidy.cmake
index 5b062da..4ed1eb3 100644
--- a/.gitlab/ci/configure_fedora38_tidy.cmake
+++ b/.gitlab/ci/configure_fedora39_tidy.cmake
@@ -2,4 +2,4 @@ set(CMake_RUN_CLANG_TIDY ON CACHE BOOL "")
set(CMake_USE_CLANG_TIDY_MODULE ON CACHE BOOL "")
set(CMake_CLANG_TIDY_MODULE "$ENV{CI_PROJECT_DIR}/Utilities/ClangTidyModule/build/libcmake-clang-tidy-module.so" CACHE FILEPATH "")
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39_common.cmake")
diff --git a/.gitlab/ci/configure_windows_clang_ninja.cmake b/.gitlab/ci/configure_windows_clang_ninja.cmake
index 8a65eef..fcb2d46 100644
--- a/.gitlab/ci/configure_windows_clang_ninja.cmake
+++ b/.gitlab/ci/configure_windows_clang_ninja.cmake
@@ -1,5 +1,4 @@
if("$ENV{CMAKE_CI_BUILD_NAME}" MATCHES "(^|_)gnu(_|$)")
set(CMake_TEST_MODULE_COMPILATION "named,compile_commands,collation,partitions,internal_partitions,export_bmi,install_bmi,shared,bmionly" CACHE STRING "")
- set(CMake_TEST_MODULE_COMPILATION_RULES "${CMAKE_CURRENT_LIST_DIR}/cxx_modules_rules_clang.cmake" CACHE STRING "")
endif()
include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_clang_common.cmake")
diff --git a/.gitlab/ci/ctest_exclusions.cmake b/.gitlab/ci/ctest_exclusions.cmake
index a2789c3..159c1c8 100644
--- a/.gitlab/ci/ctest_exclusions.cmake
+++ b/.gitlab/ci/ctest_exclusions.cmake
@@ -34,6 +34,15 @@ if ("$ENV{CMAKE_CONFIGURATION}" MATCHES "nvhpc_")
)
endif()
+if ("$ENV{CMAKE_CONFIGURATION}" MATCHES "fedora39_makefiles")
+ list(APPEND test_exclusions
+ # FIXME(#25421): CPack/RPM needs an update for Fedora 39.
+ "^CPackComponentsForAll-RPM-default$"
+ "^CPackComponentsForAll-RPM-AllInOne$"
+ "^CPackComponentsForAll-RPM-OnePackPerGroup$"
+ )
+endif()
+
string(REPLACE ";" "|" test_exclusions "${test_exclusions}")
if (test_exclusions)
set(test_exclusions "(${test_exclusions})")
diff --git a/.gitlab/ci/ctest_memcheck_fedora38_asan.lsan.supp b/.gitlab/ci/ctest_memcheck_fedora39_asan.lsan.supp
index 8ec1a03..8ec1a03 100644
--- a/.gitlab/ci/ctest_memcheck_fedora38_asan.lsan.supp
+++ b/.gitlab/ci/ctest_memcheck_fedora39_asan.lsan.supp
diff --git a/.gitlab/ci/cxx_modules_rules_clang.cmake b/.gitlab/ci/cxx_modules_rules_clang.cmake
deleted file mode 100644
index 1268244..0000000
--- a/.gitlab/ci/cxx_modules_rules_clang.cmake
+++ /dev/null
@@ -1,3 +0,0 @@
-# Default to C++ extensions being off. Clang's modules support have trouble
-# with extensions right now.
-set(CMAKE_CXX_EXTENSIONS OFF)
diff --git a/.gitlab/ci/docker/fedora38/Dockerfile b/.gitlab/ci/docker/fedora39/Dockerfile
index 4918693..f14e017 100644
--- a/.gitlab/ci/docker/fedora38/Dockerfile
+++ b/.gitlab/ci/docker/fedora39/Dockerfile
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1
-ARG BASE_IMAGE=fedora:38
+ARG BASE_IMAGE=fedora:39
FROM ${BASE_IMAGE} AS dnf-cache
# Populate DNF cache w/ the fresh metadata and prefetch packages.
diff --git a/.gitlab/ci/docker/fedora38/deps_packages.lst b/.gitlab/ci/docker/fedora39/deps_packages.lst
index da050d9..7656cbc 100644
--- a/.gitlab/ci/docker/fedora38/deps_packages.lst
+++ b/.gitlab/ci/docker/fedora39/deps_packages.lst
@@ -6,6 +6,7 @@ qt6-qtbase-devel
# Install development tools.
clang
+clang-devel
clang-tools-extra
clang-tools-extra-devel
compiler-rt
@@ -13,6 +14,7 @@ flang
flang-devel
gcc-c++
git-core
+llvm-devel
make
# Install optional external build dependencies.
diff --git a/.gitlab/ci/docker/fedora38/install_deps.sh b/.gitlab/ci/docker/fedora39/install_deps.sh
index cd2701e..70e2293 100755
--- a/.gitlab/ci/docker/fedora38/install_deps.sh
+++ b/.gitlab/ci/docker/fedora39/install_deps.sh
@@ -19,12 +19,12 @@ for p in Demo test; do
done
# Remove tests for numpy
-for v in 2.7 3.11; do
+for v in 2.7 3.12; do
find /usr/lib64/python${v}/site-packages/numpy -type d -a -name tests -exec rm -rf {} +
done
# Remove some other packages tests
-find /usr/lib64/python3.11/site-packages/breezy -type d -a -name tests -exec rm -rf {} +
+find /usr/lib64/python3.12/site-packages/breezy -type d -a -name tests -exec rm -rf {} +
# Perforce
curl -L https://www.perforce.com/downloads/perforce/r21.2/bin.linux26x86_64/helix-core-server.tgz -o - \
diff --git a/.gitlab/ci/docker/fedora38/install_iwyu.sh b/.gitlab/ci/docker/fedora39/install_iwyu.sh
index 684e355..684e355 100755
--- a/.gitlab/ci/docker/fedora38/install_iwyu.sh
+++ b/.gitlab/ci/docker/fedora39/install_iwyu.sh
diff --git a/.gitlab/ci/docker/fedora38/install_rvm.sh b/.gitlab/ci/docker/fedora39/install_rvm.sh
index 10e7545..10e7545 100755
--- a/.gitlab/ci/docker/fedora38/install_rvm.sh
+++ b/.gitlab/ci/docker/fedora39/install_rvm.sh
diff --git a/.gitlab/ci/docker/fedora38/iwyu_packages.lst b/.gitlab/ci/docker/fedora39/iwyu_packages.lst
index e3551bd..e3551bd 100644
--- a/.gitlab/ci/docker/fedora38/iwyu_packages.lst
+++ b/.gitlab/ci/docker/fedora39/iwyu_packages.lst
diff --git a/.gitlab/ci/docker/fedora38/rvm_packages.lst b/.gitlab/ci/docker/fedora39/rvm_packages.lst
index 1dc852e..1dc852e 100644
--- a/.gitlab/ci/docker/fedora38/rvm_packages.lst
+++ b/.gitlab/ci/docker/fedora39/rvm_packages.lst
diff --git a/.gitlab/ci/env_fedora38_common_clang.sh b/.gitlab/ci/env_fedora38_common_clang.sh
deleted file mode 100644
index fc9c041..0000000
--- a/.gitlab/ci/env_fedora38_common_clang.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-export CC=/usr/bin/clang-16
-export CXX=/usr/bin/clang++-16
-export FC=/usr/bin/flang-new
-export FFLAGS=-flang-experimental-exec
diff --git a/.gitlab/ci/env_fedora38_hip_radeon.sh b/.gitlab/ci/env_fedora38_hip_radeon.sh
deleted file mode 100644
index 812ef5a..0000000
--- a/.gitlab/ci/env_fedora38_hip_radeon.sh
+++ /dev/null
@@ -1 +0,0 @@
-export HIPCXX=/usr/bin/clang++-16
diff --git a/.gitlab/ci/env_fedora38_makefiles_clang.sh b/.gitlab/ci/env_fedora38_makefiles_clang.sh
deleted file mode 100644
index 9f3edde..0000000
--- a/.gitlab/ci/env_fedora38_makefiles_clang.sh
+++ /dev/null
@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora38_common_clang.sh
diff --git a/.gitlab/ci/env_fedora38_makefiles_symlinked.cmake b/.gitlab/ci/env_fedora38_makefiles_symlinked.cmake
deleted file mode 100644
index 2accabf..0000000
--- a/.gitlab/ci/env_fedora38_makefiles_symlinked.cmake
+++ /dev/null
@@ -1 +0,0 @@
-include("${CMAKE_CURRENT_LIST_DIR}/env_fedora38_makefiles.cmake")
diff --git a/.gitlab/ci/env_fedora38_makefiles_symlinked.sh b/.gitlab/ci/env_fedora38_makefiles_symlinked.sh
deleted file mode 100644
index 452d3785..0000000
--- a/.gitlab/ci/env_fedora38_makefiles_symlinked.sh
+++ /dev/null
@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora38_makefiles.sh
diff --git a/.gitlab/ci/env_fedora38_ninja_clang.sh b/.gitlab/ci/env_fedora38_ninja_clang.sh
deleted file mode 100644
index 9f3edde..0000000
--- a/.gitlab/ci/env_fedora38_ninja_clang.sh
+++ /dev/null
@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora38_common_clang.sh
diff --git a/.gitlab/ci/env_fedora38_ninja_multi_clang.sh b/.gitlab/ci/env_fedora38_ninja_multi_clang.sh
deleted file mode 100644
index 9f3edde..0000000
--- a/.gitlab/ci/env_fedora38_ninja_multi_clang.sh
+++ /dev/null
@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora38_common_clang.sh
diff --git a/.gitlab/ci/env_fedora38_asan.sh b/.gitlab/ci/env_fedora39_asan.sh
index e976486..e976486 100644
--- a/.gitlab/ci/env_fedora38_asan.sh
+++ b/.gitlab/ci/env_fedora39_asan.sh
diff --git a/.gitlab/ci/env_fedora38_clang_analyzer.sh b/.gitlab/ci/env_fedora39_clang_analyzer.sh
index d732c0b..d732c0b 100644
--- a/.gitlab/ci/env_fedora38_clang_analyzer.sh
+++ b/.gitlab/ci/env_fedora39_clang_analyzer.sh
diff --git a/.gitlab/ci/env_fedora39_common_clang.sh b/.gitlab/ci/env_fedora39_common_clang.sh
new file mode 100644
index 0000000..076669b
--- /dev/null
+++ b/.gitlab/ci/env_fedora39_common_clang.sh
@@ -0,0 +1,3 @@
+export CC=/usr/bin/clang-17
+export CXX=/usr/bin/clang++-17
+export FC=/usr/bin/flang-new
diff --git a/.gitlab/ci/env_fedora38_extdeps.sh b/.gitlab/ci/env_fedora39_extdeps.sh
index 7076e18..7076e18 100644
--- a/.gitlab/ci/env_fedora38_extdeps.sh
+++ b/.gitlab/ci/env_fedora39_extdeps.sh
diff --git a/.gitlab/ci/env_fedora39_hip_radeon.sh b/.gitlab/ci/env_fedora39_hip_radeon.sh
new file mode 100644
index 0000000..0f7df8d
--- /dev/null
+++ b/.gitlab/ci/env_fedora39_hip_radeon.sh
@@ -0,0 +1 @@
+export HIPCXX=/usr/bin/clang++-17
diff --git a/.gitlab/ci/env_fedora38_makefiles.cmake b/.gitlab/ci/env_fedora39_makefiles.cmake
index ef13cda..ef13cda 100644
--- a/.gitlab/ci/env_fedora38_makefiles.cmake
+++ b/.gitlab/ci/env_fedora39_makefiles.cmake
diff --git a/.gitlab/ci/env_fedora38_makefiles.sh b/.gitlab/ci/env_fedora39_makefiles.sh
index c482642..c482642 100644
--- a/.gitlab/ci/env_fedora38_makefiles.sh
+++ b/.gitlab/ci/env_fedora39_makefiles.sh
diff --git a/.gitlab/ci/env_fedora39_makefiles_clang.sh b/.gitlab/ci/env_fedora39_makefiles_clang.sh
new file mode 100644
index 0000000..6200f82
--- /dev/null
+++ b/.gitlab/ci/env_fedora39_makefiles_clang.sh
@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora39_common_clang.sh
diff --git a/.gitlab/ci/env_fedora39_makefiles_symlinked.cmake b/.gitlab/ci/env_fedora39_makefiles_symlinked.cmake
new file mode 100644
index 0000000..052e9a7
--- /dev/null
+++ b/.gitlab/ci/env_fedora39_makefiles_symlinked.cmake
@@ -0,0 +1 @@
+include("${CMAKE_CURRENT_LIST_DIR}/env_fedora39_makefiles.cmake")
diff --git a/.gitlab/ci/env_fedora39_makefiles_symlinked.sh b/.gitlab/ci/env_fedora39_makefiles_symlinked.sh
new file mode 100644
index 0000000..39ac189
--- /dev/null
+++ b/.gitlab/ci/env_fedora39_makefiles_symlinked.sh
@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora39_makefiles.sh
diff --git a/.gitlab/ci/env_fedora38_ninja_multi.sh b/.gitlab/ci/env_fedora39_ninja.sh
index 217ff30..217ff30 100644
--- a/.gitlab/ci/env_fedora38_ninja_multi.sh
+++ b/.gitlab/ci/env_fedora39_ninja.sh
diff --git a/.gitlab/ci/env_fedora39_ninja_clang.sh b/.gitlab/ci/env_fedora39_ninja_clang.sh
new file mode 100644
index 0000000..6200f82
--- /dev/null
+++ b/.gitlab/ci/env_fedora39_ninja_clang.sh
@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora39_common_clang.sh
diff --git a/.gitlab/ci/env_fedora38_ninja.sh b/.gitlab/ci/env_fedora39_ninja_multi.sh
index 217ff30..217ff30 100644
--- a/.gitlab/ci/env_fedora38_ninja.sh
+++ b/.gitlab/ci/env_fedora39_ninja_multi.sh
diff --git a/.gitlab/ci/env_fedora39_ninja_multi_clang.sh b/.gitlab/ci/env_fedora39_ninja_multi_clang.sh
new file mode 100644
index 0000000..6200f82
--- /dev/null
+++ b/.gitlab/ci/env_fedora39_ninja_multi_clang.sh
@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora39_common_clang.sh
diff --git a/.gitlab/ci/pre_build_fedora38_tidy.sh b/.gitlab/ci/pre_build_fedora39_tidy.sh
index 7580ef1..7580ef1 100644
--- a/.gitlab/ci/pre_build_fedora38_tidy.sh
+++ b/.gitlab/ci/pre_build_fedora39_tidy.sh