mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
gnu: glibc: Update to 2.27.
* gnu/packages/base.scm (glibc/linux): Update to 2.27. [source](patches): Add 'glibc-hidden-visibility-ldconfig.patch' and 'glibc-2.27-git-fixes.patch'. [native-inputs]: Add BISON. [arguments]: Remove deprecated "--enable-add-ons" from #:configure-flags. Also remove unneeded "libc_cv_ssp=no" and "libcv_ssp_strong=no". (glibc-2.26): New public variable. * gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[native-inputs]: Add BISON-BOOT0. * gnu/packages/patches/glibc-2.27-git-fixes.patch, gnu/packages/patches/glibc-hidden-visibility-ldconfig.patch: New files. * gnu/local.mk (dist_patch_DATA): Register them.
This commit is contained in:
parent
e0f9f85f8d
commit
5e8cb5e698
5 changed files with 596 additions and 21 deletions
|
@ -36,6 +36,7 @@
|
|||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages acl)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages ed)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
|
@ -538,26 +539,15 @@ store.")
|
|||
(define-public glibc/linux
|
||||
(package
|
||||
(name "glibc")
|
||||
;; Glibc has stable branches that continuously pick fixes for each supported
|
||||
;; release. Unfortunately they do not do point-releases, so we are stuck
|
||||
;; with copying almost all patches, or use a snapshot of the release branch.
|
||||
;;
|
||||
;; This version number corresponds to the output of `git describe` and the
|
||||
;; archive can be generated by checking out the commit ID and running:
|
||||
;; git archive --prefix=$(git describe)/ HEAD | xz > $(git describe).tar.xz
|
||||
;; See <https://bugs.gnu.org/29406> for details.
|
||||
;;
|
||||
;; Note: Always use a dot after the minor version since various places rely
|
||||
;; on "version-major+minor" to determine where locales are found.
|
||||
(version "2.26.105-g0890d5379c")
|
||||
(version "2.27")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://alpha.gnu.org/gnu/guix/mirror/"
|
||||
"glibc-" (version-major+minor version) "-"
|
||||
(caddr (string-split version #\.)) ".tar.xz"))
|
||||
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jck0c1i248sn02rvsfjykk77qncma34bjq89dyy2irwm50d7s3g"))
|
||||
"0wpwq7gsm7sd6ysidv0z575ckqdg13cr2njyfgrbgh4f65adwwji"))
|
||||
(snippet
|
||||
;; Disable 'ldconfig' and /etc/ld.so.cache. The latter is
|
||||
;; required on LFS distros to avoid loading the distro's libc.so
|
||||
|
@ -569,6 +559,8 @@ store.")
|
|||
#t))
|
||||
(modules '((guix build utils)))
|
||||
(patches (search-patches "glibc-ldd-x86_64.patch"
|
||||
"glibc-2.27-git-fixes.patch"
|
||||
"glibc-hidden-visibility-ldconfig.patch"
|
||||
"glibc-versioned-locpath.patch"
|
||||
"glibc-allow-kernel-2.6.32.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
|
@ -595,8 +587,7 @@ store.")
|
|||
(guix build gnu-build-system))
|
||||
|
||||
#:configure-flags
|
||||
(list "--enable-add-ons"
|
||||
"--sysconfdir=/etc"
|
||||
(list "--sysconfdir=/etc"
|
||||
|
||||
;; Installing a locale archive with all the locales is to
|
||||
;; expensive (~100 MiB), so we rely on users to install the
|
||||
|
@ -631,10 +622,7 @@ store.")
|
|||
;; Use our Bash instead of /bin/sh.
|
||||
(string-append "BASH_SHELL="
|
||||
(assoc-ref %build-inputs "bash")
|
||||
"/bin/bash")
|
||||
|
||||
;; XXX: Work around "undefined reference to `__stack_chk_guard'".
|
||||
"libc_cv_ssp=no" "libc_cv_ssp_strong=no")
|
||||
"/bin/bash"))
|
||||
|
||||
#:tests? #f ; XXX
|
||||
#:phases (modify-phases %standard-phases
|
||||
|
@ -745,6 +733,7 @@ store.")
|
|||
;; install the message catalogs, with 'msgfmt'.
|
||||
(native-inputs `(("texinfo" ,texinfo)
|
||||
("perl" ,perl)
|
||||
("bison" ,bison)
|
||||
("gettext" ,gettext-minimal)))
|
||||
|
||||
(native-search-paths
|
||||
|
@ -853,6 +842,26 @@ GLIBC/HURD for a Hurd host"
|
|||
;; Below are old libc versions, which we use mostly to build locale data in
|
||||
;; the old format (which the new libc cannot cope with.)
|
||||
|
||||
(define-public glibc-2.26
|
||||
(package
|
||||
(inherit glibc)
|
||||
;; This version number corresponds to the output of `git describe` and the
|
||||
;; archive can be generated by checking out the commit ID and running:
|
||||
;; git archive --prefix=$(git describe)/ HEAD | xz > $(git describe).tar.xz
|
||||
;; See <https://bugs.gnu.org/29406> for why this was necessary.
|
||||
(version "2.26.105-g0890d5379c")
|
||||
(source (origin
|
||||
(inherit (package-source glibc))
|
||||
(uri (string-append "https://alpha.gnu.org/gnu/guix/mirror/"
|
||||
"glibc-" (version-major+minor version) "-"
|
||||
(caddr (string-split version #\.)) ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jck0c1i248sn02rvsfjykk77qncma34bjq89dyy2irwm50d7s3g"))
|
||||
(patches (search-patches "glibc-ldd-x86_64.patch"
|
||||
"glibc-versioned-locpath.patch"
|
||||
"glibc-allow-kernel-2.6.32.patch"))))))
|
||||
|
||||
(define-public glibc-2.25
|
||||
(package
|
||||
(inherit glibc)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue