diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index efb14d78be46..b8d0a90c85b1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -113,21 +113,21 @@ jobs: - name: windows_cl-2022_debug_analysis os: windows-2022 env: {ALPAKA_CI_CXX: cl.exe, ALPAKA_CI_CL_VER: 2022, CMAKE_BUILD_TYPE: Debug, ALPAKA_BOOST_VERSION: 1.78.0, ALPAKA_CI_CMAKE_VER: 3.25.3, ALPAKA_CI_ANALYSIS: ON, alpaka_DEBUG: 2} - - name: macos_xcode-14.2_debug_analysis - os: macos-12 - env: {ALPAKA_CI_CXX: clang++, ALPAKA_CI_XCODE_VER: 14.2, CMAKE_BUILD_TYPE: Debug, ALPAKA_BOOST_VERSION: 1.81.0, ALPAKA_CI_ANALYSIS: ON, alpaka_DEBUG: 2, alpaka_ACC_CPU_B_OMP2_T_SEQ_ENABLE: ON, alpaka_ACC_CPU_B_SEQ_T_OMP2_ENABLE: ON, ALPAKA_CI_BUILD_JOBS: 3} + - name: macos_xcode-15.4_debug_analysis + os: macos-14 + env: {ALPAKA_CI_CXX: clang++, ALPAKA_CI_XCODE_VER: 15.4, CMAKE_BUILD_TYPE: Debug, ALPAKA_BOOST_VERSION: 1.81.0, ALPAKA_CI_ANALYSIS: ON, alpaka_DEBUG: 2, alpaka_ACC_CPU_B_OMP2_T_SEQ_ENABLE: ON, alpaka_ACC_CPU_B_SEQ_T_OMP2_ENABLE: ON, ALPAKA_CI_BUILD_JOBS: 3} - name: linux_gcc-12_debug_analysis os: ubuntu-22.04 env: {ALPAKA_CI_CXX: g++, ALPAKA_CI_GCC_VER: 12, ALPAKA_CI_STDLIB: libstdc++, CMAKE_BUILD_TYPE: Debug, ALPAKA_BOOST_VERSION: 1.80.0, ALPAKA_CI_CMAKE_VER: 3.25.3, OMP_NUM_THREADS: 4, ALPAKA_CI_ANALYSIS: ON, alpaka_DEBUG: 2} container: ubuntu:22.04 ### macOS - - name: macos_xcode-14.2_release - os: macos-12 - env: {ALPAKA_CI_CXX: clang++, ALPAKA_CI_XCODE_VER: 14.2, CMAKE_BUILD_TYPE: Release, ALPAKA_BOOST_VERSION: 1.81.0, alpaka_ACC_CPU_B_OMP2_T_SEQ_ENABLE: ON, alpaka_ACC_CPU_B_SEQ_T_OMP2_ENABLE: ON, ALPAKA_CI_BUILD_JOBS: 3} - - name: macos_xcode-14.3.1_debug - os: macos-13 - env: {ALPAKA_CI_CXX: clang++, ALPAKA_CI_XCODE_VER: 14.3.1, CMAKE_BUILD_TYPE: Debug, ALPAKA_BOOST_VERSION: 1.82.0, alpaka_ACC_CPU_B_OMP2_T_SEQ_ENABLE: ON, alpaka_ACC_CPU_B_SEQ_T_OMP2_ENABLE: ON, ALPAKA_CI_BUILD_JOBS: 3} + - name: macos_xcode-15.4_release + os: macos-14 + env: {ALPAKA_CI_CXX: clang++, ALPAKA_CI_XCODE_VER: 15.4, CMAKE_BUILD_TYPE: Release, ALPAKA_BOOST_VERSION: 1.81.0, alpaka_ACC_CPU_B_OMP2_T_SEQ_ENABLE: ON, alpaka_ACC_CPU_B_SEQ_T_OMP2_ENABLE: ON, ALPAKA_CI_BUILD_JOBS: 3} + - name: macos_xcode-16.1_debug + os: macos-15 + env: {ALPAKA_CI_CXX: clang++, ALPAKA_CI_XCODE_VER: 16.1, CMAKE_BUILD_TYPE: Debug, ALPAKA_BOOST_VERSION: 1.82.0, alpaka_ACC_CPU_B_OMP2_T_SEQ_ENABLE: ON, alpaka_ACC_CPU_B_SEQ_T_OMP2_ENABLE: ON, ALPAKA_CI_BUILD_JOBS: 3} ### Windows - name: windows_cl-2022_release diff --git a/README.md b/README.md index 8b092720d504..514009ca3863 100644 --- a/README.md +++ b/README.md @@ -65,17 +65,17 @@ Supported Compilers This library uses C++20 (or newer when available). -| Accelerator Back-end | gcc 10.4 / 11.1 (Linux) | gcc 12.3 (Linux) | gcc 13.1 (Linux) | clang 10/11 (Linux) | clang 12 (Linux) | clang 13 (Linux) | clang 14 (Linux) | clang 15 (Linux) | clang 16 (Linux) | clang 17 (Linux) | clang 18 (Linux) | clang 19 (Linux) | icpx 2024.2 (Linux) | Xcode 13.2.1 / 14.2 / 14.3.1 (macOS) | Visual Studio 2022 (Windows) | -|----------------------|--------------------------------|---------------------------------------|---------------------------------------|--------------------------------|--------------------------------|--------------------------------|--------------------------------|--------------------------------|--------------------------------|---------------------------------------|---------------------------------------|--------------------|-------------------------|--------------------------------------|------------------------------| -| Serial | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | -| OpenMP 2.0+ blocks | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: [^1] | :white_check_mark: | :white_check_mark: | -| OpenMP 2.0+ threads | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: [^1] | :white_check_mark: | :white_check_mark: | -| std::thread | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | -| TBB | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | -| CUDA (nvcc) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.0 - 12.5) | :white_check_mark: (CUDA 12.4 - 12.5) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.2) | :white_check_mark: (CUDA 12.3) | :white_check_mark: (CUDA 12.4 - 12.5) | :white_check_mark: (CUDA 12.4 - 12.5) | :x: | :x: | - | :x: | -| CUDA (clang) | - | - | - | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | - | - | -| HIP (clang) | - | - | - | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: (HIP 6.0 - 6.1) | :white_check_mark: (HIP 6.2) | :x: | :x: | - | - | -| SYCL | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: [^2] | - | :x: | +| Accelerator Back-end | gcc 10.4 / 11.1 (Linux) | gcc 12.3 (Linux) | gcc 13.1 (Linux) | clang 10/11 (Linux) | clang 12 (Linux) | clang 13 (Linux) | clang 14 (Linux) | clang 15 (Linux) | clang 16 (Linux) | clang 17 (Linux) | clang 18 (Linux) | clang 19 (Linux) | icpx 2024.2 (Linux) | Xcode 15.4 / 16.1 (macOS) | Visual Studio 2022 (Windows) | +|----------------------|--------------------------------|---------------------------------------|---------------------------------------|--------------------------------|--------------------------------|--------------------------------|--------------------------------|--------------------------------|--------------------------------|---------------------------------------|---------------------------------------|--------------------|-------------------------|---------------------------|------------------------------| +| Serial | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | +| OpenMP 2.0+ blocks | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: [^1] | :white_check_mark: | :white_check_mark: | +| OpenMP 2.0+ threads | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: [^1] | :white_check_mark: | :white_check_mark: | +| std::thread | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | +| TBB | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | +| CUDA (nvcc) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.0 - 12.5) | :white_check_mark: (CUDA 12.4 - 12.5) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.0) | :white_check_mark: (CUDA 12.2) | :white_check_mark: (CUDA 12.3) | :white_check_mark: (CUDA 12.4 - 12.5) | :white_check_mark: (CUDA 12.4 - 12.5) | :x: | :x: | - | :x: | +| CUDA (clang) | - | - | - | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | - | - | +| HIP (clang) | - | - | - | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: (HIP 6.0 - 6.1) | :white_check_mark: (HIP 6.2) | :x: | :x: | - | - | +| SYCL | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: [^2] | - | :x: | Other compilers or combinations marked with :x: in the table above may work but are not tested in CI and are therefore not explicitly supported. diff --git a/script/homebrew/13.2.1/libomp.rb b/script/homebrew/13.2.1/libomp.rb deleted file mode 100644 index 8225ad211514..000000000000 --- a/script/homebrew/13.2.1/libomp.rb +++ /dev/null @@ -1,64 +0,0 @@ -# SPDX-License-Identifier: BSD-2-Clause - -class Libomp < Formula - desc "LLVM's OpenMP runtime library" - homepage "https://openmp.llvm.org/" - url "https://github.com/llvm/llvm-project/releases/download/llvmorg-12.0.1/openmp-12.0.1.src.tar.xz" - sha256 "60fe79440eaa9ebf583a6ea7f81501310388c02754dbe7dc210776014d06b091" - license "MIT" - - livecheck do - url "https://llvm.org/" - regex(/LLVM (\d+\.\d+\.\d+)/i) - end - - bottle do - sha256 cellar: :any, arm64_big_sur: "9b4d71ac4e8a8b8d04819b1bfd155bcb266a9fdf1405b24c9e3801858b08d8bf" - sha256 cellar: :any, big_sur: "cba5086bd24f1aaa196900f784d7cf1c3dc0de1f536db2f6dccf571a7850d5d9" - sha256 cellar: :any, catalina: "1c84ee05772f5a01ddfbb9ad56c5e1526a5f6fee48b3eeeb732352b9a35fa5d3" - sha256 cellar: :any, mojave: "bb25a639e722fe6ab1ede965a5a8854696f40daac2c9c69ad36a8be7f8ae2606" - sha256 cellar: :any_skip_relocation, x86_64_linux: "732e9e28300c5e0b3fe8de12e5b6617bc8bb39cc401d5a35cffbb305097a70e9" - end - - depends_on "cmake" => :build - - on_linux do - keg_only "provided by LLVM, which is not keg-only on Linux" - end - - def install - # Build universal binary - ENV.permit_arch_flags - ENV.runtime_cpu_detection - - # Disable LIBOMP_INSTALL_ALIASES, otherwise the library is installed as - # libgomp alias which can conflict with GCC's libgomp. - system "cmake", ".", *std_cmake_args, "-DLIBOMP_INSTALL_ALIASES=OFF", "-DCMAKE_OSX_ARCHITECTURES=arm64;x86_64" - system "make", "install" - system "cmake", ".", "-DLIBOMP_ENABLE_SHARED=OFF", *std_cmake_args, - "-DLIBOMP_INSTALL_ALIASES=OFF", "-DCMAKE_OSX_ARCHITECTURES=arm64;x86_64" - system "make", "install" - end - - test do - (testpath/"test.cpp").write <<~EOS - #include - #include - int main (int argc, char** argv) { - std::array arr = {0,0}; - #pragma omp parallel num_threads(2) - { - size_t tid = omp_get_thread_num(); - arr.at(tid) = tid + 1; - } - if(arr.at(0) == 1 && arr.at(1) == 2) - return 0; - else - return 1; - } - EOS - system ENV.cxx, "-Werror", "-Xpreprocessor", "-fopenmp", "test.cpp", "-std=c++11", - "-L#{lib}", "-lomp", "-o", "test" - system "./test" - end - end diff --git a/script/homebrew/14.2/libomp.rb b/script/homebrew/14.2/libomp.rb deleted file mode 100644 index d4b69bade2dc..000000000000 --- a/script/homebrew/14.2/libomp.rb +++ /dev/null @@ -1,74 +0,0 @@ -# SPDX-License-Identifier: BSD-2-Clause - -class Libomp < Formula - desc "LLVM's OpenMP runtime library" - homepage "https://openmp.llvm.org/" - url "https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/openmp-14.0.6.src.tar.xz" - sha256 "4f731ff202add030d9d68d4c6daabd91d3aeed9812e6a5b4968815cfdff0eb1f" - license "MIT" - - livecheck do - url "https://llvm.org/" - regex(/LLVM (\d+\.\d+\.\d+)/i) - end - - bottle do - sha256 cellar: :any, arm64_monterey: "b36b1393289e7d98fc03425b6c23a63c4f5e9290ecf0922d45e6fde2973ba8fb" - sha256 cellar: :any, arm64_big_sur: "f00a5f352167b2fd68ad25b1959ef66a346023c6dbeb50892b386381d7ebe183" - sha256 cellar: :any, monterey: "a423e0bc90a9d0f0feff08eb197768287ba4722b88d4624c2d8306e443ff6fdb" - sha256 cellar: :any, big_sur: "46e5838f0061cfe1901c485987fc5649464cfa3b2150f2ac54dd5e61eb3342a4" - sha256 cellar: :any, catalina: "63cdbb3a70c4b85a6a92a55c8ab2384ded244d37568cd769409dee00a14b581d" - sha256 cellar: :any_skip_relocation, x86_64_linux: "470c1338f8c1bc8ef1a41e86bb9beddcff9c353947a2073b2c2b4f584db9bd20" - end - - depends_on "cmake" => :build - uses_from_macos "llvm" => :build - - on_linux do - keg_only "provided by LLVM, which is not keg-only on Linux" - end - - def install - # Disable LIBOMP_INSTALL_ALIASES, otherwise the library is installed as - # libgomp alias which can conflict with GCC's libgomp. - args = ["-DLIBOMP_INSTALL_ALIASES=OFF"] - args << "-DOPENMP_ENABLE_LIBOMPTARGET=OFF" if OS.linux? - - # Build universal binary - ENV.permit_arch_flags - ENV.runtime_cpu_detection - args << "-DCMAKE_OSX_ARCHITECTURES=arm64;x86_64" - - system "cmake", "-S", "openmp-#{version}.src", "-B", "build/shared", *std_cmake_args, *args - system "cmake", "--build", "build/shared" - system "cmake", "--install", "build/shared" - - system "cmake", "-S", "openmp-#{version}.src", "-B", "build/static", - "-DLIBOMP_ENABLE_SHARED=OFF", - *std_cmake_args, *args - system "cmake", "--build", "build/static" - system "cmake", "--install", "build/static" - end - - test do - (testpath/"test.cpp").write <<~EOS - #include - #include - int main (int argc, char** argv) { - std::array arr = {0,0}; - #pragma omp parallel num_threads(2) - { - size_t tid = omp_get_thread_num(); - arr.at(tid) = tid + 1; - } - if(arr.at(0) == 1 && arr.at(1) == 2) - return 0; - else - return 1; - } - EOS - system ENV.cxx, "-Werror", "-Xpreprocessor", "-fopenmp", "test.cpp", "-std=c++11", - "-L#{lib}", "-lomp", "-o", "test" - system "./test" - end - end diff --git a/script/homebrew/14.3.1/libomp.rb b/script/homebrew/14.3.1/libomp.rb deleted file mode 100644 index 77b03af9c772..000000000000 --- a/script/homebrew/14.3.1/libomp.rb +++ /dev/null @@ -1,83 +0,0 @@ -# SPDX-License-Identifier: BSD-2-Clause - -class Libomp < Formula - desc "LLVM's OpenMP runtime library" - homepage "https://openmp.llvm.org/" - url "https://github.com/llvm/llvm-project/releases/download/llvmorg-15.0.7/openmp-15.0.7.src.tar.xz" - sha256 "3f168d38e7a37b928dcb94b33ce947f75d81eef6fa6a4f9d16b6dc5511c07358" - license "MIT" - - livecheck do - url :stable - regex(/^llvmorg[._-]v?(\d+(?:\.\d+)+)$/i) - end - - bottle do - sha256 cellar: :any, arm64_ventura: "8c5c7b912a075e598fb7ae10f2999853343b2662061d92040b1a584cbb3ba7d2" - sha256 cellar: :any, arm64_monterey: "1b1aad07e8677744cdaa264419fade98bd1a852894c77d01985053a96b7d1c7d" - sha256 cellar: :any, arm64_big_sur: "00e04fbe9783ad7751eaa6d2edda92dfbff85131777255a74e364f3217a7a2df" - sha256 cellar: :any, ventura: "762c461db6af3cf78983b1eb58aee62699652b96237abf79469c8ac034b2156b" - sha256 cellar: :any, monterey: "0b944a6bbe8955e7900882b94f1b0b09030d5791191dc5b0c8b3d5d0895f4b12" - sha256 cellar: :any, big_sur: "f92e5b31f86c22c0fe875b50e050c19a89993b36106a9ad2737230ae2cb68069" - sha256 cellar: :any_skip_relocation, x86_64_linux: "d2a16a906c029e8405a11924837417ad1008d41bb1877399f494cb872a179f01" - end - - # Ref: https://github.com/Homebrew/homebrew-core/issues/112107 - keg_only "it can override GCC headers and result in broken builds" - - depends_on "cmake" => :build - depends_on "lit" => :build - uses_from_macos "llvm" => :build - - resource "cmake" do - url "https://github.com/llvm/llvm-project/releases/download/llvmorg-15.0.7/cmake-15.0.7.src.tar.xz" - sha256 "8986f29b634fdaa9862eedda78513969fe9788301c9f2d938f4c10a3e7a3e7ea" - end - - def install - (buildpath/"src").install buildpath.children - (buildpath/"cmake").install resource("cmake") - - # Disable LIBOMP_INSTALL_ALIASES, otherwise the library is installed as - # libgomp alias which can conflict with GCC's libgomp. - args = ["-DLIBOMP_INSTALL_ALIASES=OFF"] - args << "-DOPENMP_ENABLE_LIBOMPTARGET=OFF" if OS.linux? - - # Build universal binary - ENV.permit_arch_flags - ENV.runtime_cpu_detection - args << "-DCMAKE_OSX_ARCHITECTURES=arm64;x86_64" - - system "cmake", "-S", "src", "-B", "build/shared", *std_cmake_args, *args - system "cmake", "--build", "build/shared" - system "cmake", "--install", "build/shared" - - system "cmake", "-S", "src", "-B", "build/static", - "-DLIBOMP_ENABLE_SHARED=OFF", - *std_cmake_args, *args - system "cmake", "--build", "build/static" - system "cmake", "--install", "build/static" - end - - test do - (testpath/"test.cpp").write <<~EOS - #include - #include - int main (int argc, char** argv) { - std::array arr = {0,0}; - #pragma omp parallel num_threads(2) - { - size_t tid = omp_get_thread_num(); - arr.at(tid) = tid + 1; - } - if(arr.at(0) == 1 && arr.at(1) == 2) - return 0; - else - return 1; - } - EOS - system ENV.cxx, "-Werror", "-Xpreprocessor", "-fopenmp", "test.cpp", "-std=c++11", - "-I#{include}", "-L#{lib}", "-lomp", "-o", "test" - system "./test" - end -end diff --git a/script/install_omp.sh b/script/install_omp.sh index 1ae0bd4910ac..ff57bf43bc8d 100755 --- a/script/install_omp.sh +++ b/script/install_omp.sh @@ -11,28 +11,5 @@ echo_green "" if [ "$ALPAKA_CI_OS_NAME" = "macOS" ] then - # workaround to avoid link issues from python 2 to 3 during libomp dependency installation - rm '/usr/local/bin/2to3-3.11' || true - rm '/usr/local/bin/idle3.11' || true - rm '/usr/local/bin/pydoc3.11' || true - rm '/usr/local/bin/python3.11' || true - rm '/usr/local/bin/python3.11-config' || true - rm '/usr/local/bin/2to3-3.12' - rm '/usr/local/bin/idle3.12' - rm '/usr/local/bin/pydoc3.12' - rm '/usr/local/bin/python3.12' - rm '/usr/local/bin/python3.12-config' - rm '/usr/local/bin/2to3' || true - rm '/usr/local/bin/idle3' || true - rm '/usr/local/bin/pydoc3' || true - rm '/usr/local/bin/python3' || true - rm '/usr/local/bin/python3-config' || true - rm '/usr/local/share/man/man1/python3.1' || true - rm '/usr/local/lib/pkgconfig/python3-embed.pc' || true - rm '/usr/local/lib/pkgconfig/python3.pc' || true - rm '/usr/local/Frameworks/Python.framework/Headers' || true - rm '/usr/local/Frameworks/Python.framework/Python' || true - rm '/usr/local/Frameworks/Python.framework/Resources' || true - rm '/usr/local/Frameworks/Python.framework/Versions/Current' || true - brew reinstall --build-from-source --formula ./script/homebrew/${ALPAKA_CI_XCODE_VER}/libomp.rb + brew install libomp fi diff --git a/script/readme_generator/supported_compilers.json b/script/readme_generator/supported_compilers.json index 1fff43da4f37..d3a95f97de03 100644 --- a/script/readme_generator/supported_compilers.json +++ b/script/readme_generator/supported_compilers.json @@ -392,7 +392,7 @@ "comment": "[^2]" } }, - "Xcode 13.2.1 / 14.2 / 14.3.1 (macOS)": { + "Xcode 15.4 / 16.1 (macOS)": { "serial": { "state": "yes" },