From 3aa06d57d465446a28a173a205f2171ea8521594 Mon Sep 17 00:00:00 2001 From: Pierre Blanchard Date: Thu, 24 Oct 2024 12:18:31 +0000 Subject: [PATCH] Update gcc version from 11 to 12 in GHA. --- .github/workflows/build-as-subproject.yml | 2 +- .github/workflows/build-examples.yml | 2 +- .github/workflows/build_and_test.yml | 2 +- README.md | 4 +++- toolchains/aarch64-gcc.cmake | 9 ++++++++- toolchains/armhf-gcc.cmake | 9 ++++++++- toolchains/ppc64el-gcc.cmake | 6 +++++- toolchains/s390x-gcc.cmake | 5 ++++- 8 files changed, 31 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build-as-subproject.yml b/.github/workflows/build-as-subproject.yml index 777d9cab..a75d6dba 100644 --- a/.github/workflows/build-as-subproject.yml +++ b/.github/workflows/build-as-subproject.yml @@ -13,7 +13,7 @@ permissions: contents: read env: - GCC_VERSION: "11" + GCC_VERSION: "12" COMMON_CMAKE_FLAGS: > -DSLEEF_SHOW_CONFIG=ON -DSLEEF_BUILD_GNUABI_LIBS=ON diff --git a/.github/workflows/build-examples.yml b/.github/workflows/build-examples.yml index c3274a22..c71c5a24 100644 --- a/.github/workflows/build-examples.yml +++ b/.github/workflows/build-examples.yml @@ -13,7 +13,7 @@ permissions: contents: read env: - GCC_VERSION: "11" + GCC_VERSION: "12" COMMON_CMAKE_FLAGS: > -DSLEEF_SHOW_CONFIG=ON -DSLEEF_BUILD_GNUABI_LIBS=ON diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 68e51b52..3a6ffbd3 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -13,7 +13,7 @@ permissions: contents: read env: - GCC_VERSION: "11" + GCC_VERSION: "12" LLVM_VERSION: "17" COMMON_CMAKE_FLAGS: > -DSLEEF_SHOW_CONFIG=1 diff --git a/README.md b/README.md index 202a812e..021978bc 100644 --- a/README.md +++ b/README.md @@ -105,7 +105,7 @@ LTO is not tested in CI yet, except on Windows. ### Compiler support -Results are displayed for gcc 11 and llvm 17, the compiler versions used in CI tests with GitHub Actions. +Results are displayed for gcc 12 and llvm 17, the compiler versions used in CI tests with GitHub Actions. Older versions should be supported too, while newer ones are either not tested or have known issues. @@ -122,6 +122,8 @@ Only Linux distributions and macOS are fully tested in CI and thus officially su Only AArch64 and x86_64 vector extensions are built and tested natively on Linux and macOS. Other architectures/vector extensions are cross-compiled on Linux. +Native AArch64 tests on Linux are using gcc 11, while native x86_64 and cross-compiled tests use gcc 12. + Building SLEEF for Windows on x86 machines was officially supported ( :white_circle: ), as of 3.5.1, however it is only partially tested due to [known limitations of the test suite with MinGW or MSYS2](https://github.com/shibatch/sleef/issues/544). As a result tests for Windows on x86 only include DFT for now (other tests are disabled in build system), diff --git a/toolchains/aarch64-gcc.cmake b/toolchains/aarch64-gcc.cmake index c3594551..ef5be569 100644 --- a/toolchains/aarch64-gcc.cmake +++ b/toolchains/aarch64-gcc.cmake @@ -4,7 +4,14 @@ SET (CMAKE_SYSTEM_PROCESSOR "aarch64") SET(CMAKE_FIND_ROOT_PATH /usr/aarch64-linux-gnu /usr/include/aarch64-linux-gnu /usr/lib/aarch64-linux-gnu /lib/aarch64-linux-gnu) -find_program(CMAKE_C_COMPILER NAMES aarch64-linux-gnu-gcc-11 aarch64-linux-gnu-gcc-8 aarch64-linux-gnu-gcc-7 aarch64-linux-gnu-gcc-6 aarch64-linux-gnu-gcc-5 aarch64-linux-gnu-gcc) +find_program(CMAKE_C_COMPILER + NAMES aarch64-linux-gnu-gcc-12 + aarch64-linux-gnu-gcc-11 + aarch64-linux-gnu-gcc-8 + aarch64-linux-gnu-gcc-7 + aarch64-linux-gnu-gcc-6 + aarch64-linux-gnu-gcc-5 + aarch64-linux-gnu-gcc) SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH) diff --git a/toolchains/armhf-gcc.cmake b/toolchains/armhf-gcc.cmake index 24e160b9..013485df 100644 --- a/toolchains/armhf-gcc.cmake +++ b/toolchains/armhf-gcc.cmake @@ -4,7 +4,14 @@ SET (CMAKE_SYSTEM_PROCESSOR "armhf") SET(CMAKE_FIND_ROOT_PATH /usr/arm-linux-gnueabihf /usr/include/arm-linux-gnueabihf /usr/lib/arm-linux-gnueabihf) -find_program(CMAKE_C_COMPILER NAMES arm-linux-gnueabihf-gcc-11 arm-linux-gnueabihf-gcc-8 arm-linux-gnueabihf-gcc-7 arm-linux-gnueabihf-gcc-6 arm-linux-gnueabihf-gcc-5 arm-linux-gnueabihf-gcc) +find_program(CMAKE_C_COMPILER + NAMES arm-linux-gnueabihf-gcc-12 + arm-linux-gnueabihf-gcc-11 + arm-linux-gnueabihf-gcc-8 + arm-linux-gnueabihf-gcc-7 + arm-linux-gnueabihf-gcc-6 + arm-linux-gnueabihf-gcc-5 + arm-linux-gnueabihf-gcc) SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH) diff --git a/toolchains/ppc64el-gcc.cmake b/toolchains/ppc64el-gcc.cmake index 7d6c96ae..c950aab7 100644 --- a/toolchains/ppc64el-gcc.cmake +++ b/toolchains/ppc64el-gcc.cmake @@ -4,7 +4,11 @@ SET (CMAKE_SYSTEM_PROCESSOR "ppc64") SET(CMAKE_FIND_ROOT_PATH /usr/powerpc64le-linux-gnu /usr/include/powerpc64le-linux-gnu /usr/lib/powerpc64le-linux-gnu) -find_program(CMAKE_C_COMPILER NAMES powerpc64le-linux-gnu-gcc-11 powerpc64le-linux-gnu-gcc ppc64el-cc) +find_program(CMAKE_C_COMPILER + NAMES powerpc64le-linux-gnu-gcc-12 + powerpc64le-linux-gnu-gcc-11 + powerpc64le-linux-gnu-gcc + ppc64el-cc) SET(CMAKE_AR /usr/powerpc64le-linux-gnu/bin/ar) diff --git a/toolchains/s390x-gcc.cmake b/toolchains/s390x-gcc.cmake index 4aa9f12c..f95ea5f8 100644 --- a/toolchains/s390x-gcc.cmake +++ b/toolchains/s390x-gcc.cmake @@ -4,7 +4,10 @@ SET (CMAKE_SYSTEM_PROCESSOR "s390x") SET(CMAKE_FIND_ROOT_PATH /usr/s390x-linux-gnu /usr/include/s390x-linux-gnu /usr/lib/s390x-linux-gnu) -find_program(CMAKE_C_COMPILER NAMES s390x-linux-gnu-gcc-11 s390x-linux-gnu-gcc) +find_program(CMAKE_C_COMPILER + NAMES s390x-linux-gnu-gcc-12 + s390x-linux-gnu-gcc-11 + s390x-linux-gnu-gcc) SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)