From 448d51953536815775737c68c343d97755acf903 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niko=20H=C3=A4m=C3=A4l=C3=A4inen?= Date: Sat, 25 Jul 2026 20:21:06 +0300 Subject: [PATCH] Require clang + libstdc++ conan binaries per GCC major Add compiler.abi_extra setting to conan profile used for builds with clang using libstdc++ from gcc that differentiates built binaries based on GCC major version. This ensures that conan packages are rebuilt when GCC major version updates. --- .github/files/conan-profile-gcc-libstd++-for-clang | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/files/conan-profile-gcc-libstd++-for-clang b/.github/files/conan-profile-gcc-libstd++-for-clang index a4e74f77..68961005 100644 --- a/.github/files/conan-profile-gcc-libstd++-for-clang +++ b/.github/files/conan-profile-gcc-libstd++-for-clang @@ -2,6 +2,9 @@ {% set gccMajorVersion = os.environ["GCC_MAJOR_VERSION"] %} {% set gccPlat = {"Darwin": "aarch64-apple-darwin24", "Linux": "x86_64-pc-linux-gnu"}[platform.system()] %} +[settings] +compiler.abi_extra=libstdc++-gcc-{{ gccMajorVersion }} + [conf] tools.build:cxxflags=["-stdlib++-isystem{{ prefix }}/opt/gcc@{{ gccMajorVersion }}/include/c++/{{ gccMajorVersion }}", "-cxx-isystem{{ prefix }}/opt/gcc@{{ gccMajorVersion }}/include/c++/{{ gccMajorVersion }}/{{ gccPlat }}"] tools.build:exelinkflags=["-stdlib=libstdc++", "-L{{ prefix }}/opt/gcc@{{ gccMajorVersion }}/lib/gcc/{{ gccMajorVersion }}"]