summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorJanneke Nieuwenhuizen <janneke@gnu.org>2025-01-01 13:59:17 +0100
committerAndreas Enge <andreas@enge.fr>2025-07-18 20:17:19 +0200
commit497811b66f4fb065e7406cc4ce0bd1220383d404 (patch)
tree2459a06be3da9dc3a5139756ea2bf0a98a4b06bd /gnu
parent5a72c9f517d1a4b2c15fc72043bc720d32f0700f (diff)
gnu; glibc-2.33: Fix build with gcc-14.
* gnu/packages/base.scm (glibc-2.33)[arguments]: New field to further relax gcc-14.'s strictness. Change-Id: Ib6ac5bc44608a56bb7dd584c21beadee280fe519
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/base.scm23
1 files changed, 22 insertions, 1 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 0d017ef5b06..737f2c90414 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -1303,7 +1303,28 @@ with the Linux kernel.")
(member (basename patch)
'("glibc-2.35-CVE-2023-4911.patch"
"glibc-hurd-clock_gettime_monotonic.patch")))
- (origin-patches (package-source glibc-2.35)))))))))
+ (origin-patches (package-source glibc-2.35)))))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments glibc)
+ ((#:configure-flags flags #~'())
+ #~(cons* #$(string-append
+ "CFLAGS=-g -O2"
+ " -Wno-error=builtin-declaration-mismatch"
+ " -Wno-error=format-overflow"
+ " -Wno-error=stringop-overflow"
+ " -Wno-error=use-after-free")
+ "--enable-crypt"
+ ;; We do not want to use the C++ compiler, because its
+ ;; libstdc++ is linked against a newer glibc, and so relies
+ ;; on those newer symbols. Pretend it doesn't link (the test
+ ;; doesn't actually check that the compiler works with new
+ ;; libstdc++ and older glibc).
+ "libc_cv_cxx_link_ok=no"
+ #$flags))
+ ((#:phases phases)
+ `(modify-phases ,phases
+ ;; This phase fails trying to create /etc/ld.so.cache
+ (delete 'install-utf8-c-locale)))))))
(define-public glibc-2.32
(package