Browse Source

ci: Rebuild Fedora 41 image with updates

In particular, get:

* flang-19.1.0-2.fc41 to restore OpenMP support
* IWYU 0.23 for LLVM/Clang 19 support
Brad King 1 year ago
parent
commit
fff8e3f6f3

+ 1 - 1
.gitlab/ci/configure_fedora41_common_clang.cmake

@@ -11,7 +11,7 @@ set(CMake_TEST_FindOpenACC_CXX "ON" CACHE BOOL "")
 set(CMake_TEST_FindOpenACC_Fortran "OFF" CACHE BOOL "") # flang-new fails producing LLVM IR
 set(CMake_TEST_FindOpenMP_C "ON" CACHE BOOL "")
 set(CMake_TEST_FindOpenMP_CXX "ON" CACHE BOOL "")
-set(CMake_TEST_FindOpenMP_Fortran "OFF" CACHE BOOL "") # https://bugzilla.redhat.com/show_bug.cgi?id=2321571
+set(CMake_TEST_FindOpenMP_Fortran "ON" CACHE BOOL "")
 set(CMake_TEST_FindOpenMP "ON" CACHE BOOL "")
 
 include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake")

+ 1 - 1
.gitlab/ci/docker/fedora41/deps_packages.lst

@@ -10,7 +10,7 @@ clang-devel
 clang-tools-extra
 clang-tools-extra-devel
 compiler-rt
-flang
+flang-19.1.0-2.fc41
 gcc-c++
 git-core
 lfortran

+ 4 - 18
.gitlab/ci/docker/fedora41/install_iwyu.sh

@@ -15,29 +15,15 @@ git clone "https://github.com/include-what-you-use/include-what-you-use.git"
 cd include-what-you-use
 readonly llvm_full_version="$( clang --version | head -n1 | cut -d' ' -f3 )"
 readonly llvm_version="$( echo "$llvm_full_version" | cut -d. -f-1 )"
-#FIXME(IWYU): Create clang_19 branch.
-#git checkout "clang_$llvm_version"
-git checkout d2d092919f2774b5463e236e1ee9d56fb46ceb60 # 2024-10-05
-git apply <<EOF
-diff --git a/iwyu_driver.cc b/iwyu_driver.cc
-index dd4b046..cfd568a 100644
---- a/iwyu_driver.cc
-+++ b/iwyu_driver.cc
-@@ -249,6 +249,7 @@ bool ExecuteAction(int argc, const char** argv,
-                                           /*CodeGenOpts=*/nullptr);
-
-   Driver driver(path, getDefaultTargetTriple(), *diagnostics);
-+  driver.ResourceDir = "/usr/lib64/clang/$llvm_full_version";
-   driver.setTitle("include what you use");
-
-   // Expand out any response files passed on the command line
-EOF
+git checkout "clang_$llvm_version"
 mkdir build
 cd build
 
 cmake -GNinja \
     -DCMAKE_BUILD_TYPE=Release \
-    "-DCMAKE_INSTALL_PREFIX=/usr/local/lib64/llvm-$llvm_version" \
+    "-DIWYU_RESOURCE_RELATIVE_TO=clang" \
+    "-DIWYU_RESOURCE_DIR=../lib/clang/$llvm_version" \
+    "-DCMAKE_INSTALL_PREFIX=/usr/local/lib/llvm-$llvm_version" \
     ..
 ninja
 DESTDIR=/root/iwyu-destdir ninja install

+ 1 - 1
.gitlab/os-linux.yml

@@ -65,7 +65,7 @@
 ### Fedora
 
 .fedora41:
-    image: "kitware/cmake:ci-fedora41-x86_64-2024-10-23"
+    image: "kitware/cmake:ci-fedora41-x86_64-2024-11-11"
 
     variables:
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci/long file name for testing purposes"