mbox series

[v5,0/7] gcc: Upgrade GCC to 16.1 release

Message ID 20260527133516.2337150-1-Hemanth.KumarMD@windriver.com
Headers show
Series gcc: Upgrade GCC to 16.1 release | expand

Message

Hemanth Kumar M D May 27, 2026, 1:35 p.m. UTC
From: Hemanth Kumar M D <Hemanth.KumarMD@windriver.com>

This patch series upgrades GCC to 16.1 and includes the required
runtime and compatibility fixes identified during testing in OE-Core.

The remaining fixes from v3 are updated in this version with
toolchain-gcc specific handling for libatomic related changes
based on review feedback.

Changes in v5:
- Add missing Signed-off-by tag in 0026-gcc-i386-fix-ICE-with-ffloat-store-PR125308.patch
- Delete patch files dropped from SRC_URI

Changes in v4:
- Use toolchain-gcc override for glibc libatomic linker flags
- Use toolchain-gcc override for libc-test libatomic-staticdev dependency

Changes in v3:
- Fix missing Signed-off-by in gn and gcc inner patch files

Changes in v2:
- Add libatomic-dev to elfutils ptest RDEPENDS
- Add libatomic-staticdev to libc-test ptest RDEPENDS
- Package new libcaf_shmem.a static library in libgfortran
- Fix gn build with GCC 16 on musl
- Backport GCC i386 ICE fix with -ffloat-store and SSE [PR125308]

Summary of patches:
- Patch 01: Upgrade GCC to 16.1 release.
- Patch 02: Disable automatic libatomic linking during gcc-runtime build.
- Patch 03: Package new libatomic_asneeded runtime files.
- Patch 04: Avoid passing MULTIBUILDTOP to libatomic in OE builds.
- Patch 05: Fix ICE on i386 with -ffloat-store and SSE [PR125308].
- Patch 06: Disable automatic libatomic linking in glibc.
- Patch 07: Limit libc-test libatomic-staticdev ptest dependency to GCC.

 meta/conf/distro/include/maintainers.inc      |   2 +-
 meta/conf/distro/include/tcmode-default.inc   |   2 +-
 meta/recipes-core/glibc/glibc.inc             |   3 +
 meta/recipes-core/musl/libc-test_git.bb       |   3 +-
 .../gcc/{gcc-15.2.inc => gcc-16.1.inc}        |  18 +-
 ...ian_15.2.bb => gcc-cross-canadian_16.1.bb} |   0
 .../{gcc-cross_15.2.bb => gcc-cross_16.1.bb}  |   0
 ...-crosssdk_15.2.bb => gcc-crosssdk_16.1.bb} |   0
 meta/recipes-devtools/gcc/gcc-runtime.inc     |  18 +-
 ...cc-runtime_15.2.bb => gcc-runtime_16.1.bb} |   0
 ...itizers_15.2.bb => gcc-sanitizers_16.1.bb} |   0
 ...{gcc-source_15.2.bb => gcc-source_16.1.bb} |   0
 ...AMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch |   2 +-
 ...sroot-gcc-version-specific-dirs-with.patch |   4 +-
 ...omic-Do-not-enforce-march-on-aarch64.patch |  18 +-
 ...025-gcc-testsuite-tweaks-for-mips-OE.patch |  78 +++---
 .../gcc/gcc/0026-fix-pr90579-testcases.patch  |  40 ---
 ...6-fix-ICE-with-ffloat-store-PR125308.patch |  89 ++++++
 .../gcc/gcc/0027-gcc15-pr122394.patch         |  88 ------
 ...028-fix-gcc-libitm-false-postives-01.patch | 187 -------------
 ...028-fix-gcc-libitm-false-postives-02.patch | 220 ---------------
 ...dy-Make-it-buildable-by-C-11-to-C-26.patch | 257 ------------------
 .../gcc/{gcc_15.2.bb => gcc_16.1.bb}          |   0
 ...initial_15.2.bb => libgcc-initial_16.1.bb} |   0
 .../gcc/{libgcc_15.2.bb => libgcc_16.1.bb}    |   0
 ...ibgfortran_15.2.bb => libgfortran_16.1.bb} |   0
 26 files changed, 176 insertions(+), 853 deletions(-)
 rename meta/recipes-devtools/gcc/{gcc-15.2.inc => gcc-16.1.inc} (88%)
 rename meta/recipes-devtools/gcc/{gcc-cross-canadian_15.2.bb => gcc-cross-canadian_16.1.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-cross_15.2.bb => gcc-cross_16.1.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-crosssdk_15.2.bb => gcc-crosssdk_16.1.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-runtime_15.2.bb => gcc-runtime_16.1.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-sanitizers_15.2.bb => gcc-sanitizers_16.1.bb} (100%)
 rename meta/recipes-devtools/gcc/{gcc-source_15.2.bb => gcc-source_16.1.bb} (100%)
 delete mode 100644 meta/recipes-devtools/gcc/gcc/0026-fix-pr90579-testcases.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc/0026-gcc-i386-fix-ICE-with-ffloat-store-PR125308.patch
 delete mode 100644 meta/recipes-devtools/gcc/gcc/0027-gcc15-pr122394.patch
 delete mode 100644 meta/recipes-devtools/gcc/gcc/0028-fix-gcc-libitm-false-postives-01.patch
 delete mode 100644 meta/recipes-devtools/gcc/gcc/0028-fix-gcc-libitm-false-postives-02.patch
 delete mode 100644 meta/recipes-devtools/gcc/gcc/0028-libcody-Make-it-buildable-by-C-11-to-C-26.patch
 rename meta/recipes-devtools/gcc/{gcc_15.2.bb => gcc_16.1.bb} (100%)
 rename meta/recipes-devtools/gcc/{libgcc-initial_15.2.bb => libgcc-initial_16.1.bb} (100%)
 rename meta/recipes-devtools/gcc/{libgcc_15.2.bb => libgcc_16.1.bb} (100%)
 rename meta/recipes-devtools/gcc/{libgfortran_15.2.bb => libgfortran_16.1.bb} (100%)