From 7e211419738abcb6db7cfc18c0553da36a504a36 Mon Sep 17 00:00:00 2001 From: Chris Packham Date: Thu, 28 Apr 2022 21:49:05 +1200 Subject: [PATCH] glibc: Enable -Werror for more combinations of GCC/GLIBC Newer GCC versions trigger warnings on older GLIBC versions. GLIBC 2.29 is warning free with GCC9. GLIBC 2.31 is warning free with GCC10. GLIBC 2.34 is warning free with GCC11. Add milestones for 2.31 and 2.34 and use those to set the default value for GLIBC_ENABLE_WERROR based on the GCC version. Signed-off-by: Chris Packham --- config/libc/glibc.in | 10 ++++++++-- packages/glibc/package.desc | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/config/libc/glibc.in b/config/libc/glibc.in index 3da38bdb..08df3ea4 100644 --- a/config/libc/glibc.in +++ b/config/libc/glibc.in @@ -403,11 +403,17 @@ config GLIBC_SSP default "strong" if GLIBC_SSP_STRONG # All supported versions of glibc build cleanly with GCC7 and earlier. -# GCC8-related fixes were only available in glibc 2.27. +# GCC8-related fixes were only available in glibc 2.27 +# GCC9-related fixes were available in glibc 2.29 +# GCC10-related fixes were available in glibc 2.31 +# GCC11-related fixes were available in glibc 2.34 config GLIBC_ENABLE_WERROR bool "Enable -Werror during the build" default y if GCC_7_or_older - default y if GCC_8_or_later && GLIBC_2_27_or_later + default y if GCC_8_or_later && !GCC_9_or_later && GLIBC_2_27_or_later + default y if GCC_9_or_later && !GCC_10_or_later && GLIBC_2_29_or_later + default y if GCC_10_or_later && !GCC_11_or_later && GLIBC_2_31_or_later + default y if GCC_11_or_later && GLIBC_2_34_or_later help By default, glibc enables strict warning checks during the build. However, older version of glibc may not build with newer versions diff --git a/packages/glibc/package.desc b/packages/glibc/package.desc index 7a749881..56e42a5d 100644 --- a/packages/glibc/package.desc +++ b/packages/glibc/package.desc @@ -3,6 +3,6 @@ repository='git git://sourceware.org/git/glibc.git' mirrors='$(CT_Mirrors GNU glibc)' # Cannot use MAJOR.MINOR as the relevant part because of 2.12: 2.12.2 was the most recent # bugfix release, but it didn't have glibc-ports released alongside it. -milestones='2.14 2.17 2.20 2.23 2.24 2.25 2.26 2.27 2.28 2.29 2.30 2.32' +milestones='2.14 2.17 2.20 2.23 2.24 2.25 2.26 2.27 2.28 2.29 2.30 2.31 2.32 2.34' archive_formats='.tar.xz .tar.bz2 .tar.gz' signature_format='packed/.sig'