gnu: binutils: Absorb binutils-next.

* gnu/packages/base.scm (binutils)[configure-flags]: Set out-of-source? to #t.
{--enable-64-bit-bfd, --enable-compressed-debug-sections=all, --enable-lto,
--enable-separate-code, --enable-threads}: New flags.
(binutils-next): Delete variable.
(binutils-gold): Inherit from binutils.
* gnu/packages/linux.scm (kexec-tools)[native-inputs]: Replace
binutils-next with binutils.
This commit is contained in:
Maxim Cournoyer 2021-12-17 15:48:44 -05:00
parent d3f195f77e
commit ce362bc1f3
No known key found for this signature in database
GPG key ID: 1260E46482E63562
2 changed files with 12 additions and 22 deletions

View file

@ -524,7 +524,8 @@ (define-public binutils
"binutils-2.37-file-descriptor-leak.patch")))) "binutils-2.37-file-descriptor-leak.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags '(;; Add `-static-libgcc' to not retain a dependency `(#:out-of-source? #t ;recommended in the README
#:configure-flags '(;; Add `-static-libgcc' to not retain a dependency
;; on GCC when bootstrapping. ;; on GCC when bootstrapping.
"LDFLAGS=-static-libgcc" "LDFLAGS=-static-libgcc"
@ -543,7 +544,13 @@ (define-public binutils
;; Make sure 'ar' and 'ranlib' produce archives in a ;; Make sure 'ar' and 'ranlib' produce archives in a
;; deterministic fashion. ;; deterministic fashion.
"--enable-deterministic-archives"))) "--enable-deterministic-archives"
"--enable-64-bit-bfd"
"--enable-compressed-debug-sections=all"
"--enable-lto"
"--enable-separate-code"
"--enable-threads")))
(synopsis "Binary utilities: bfd gas gprof ld") (synopsis "Binary utilities: bfd gas gprof ld")
(description (description
@ -556,23 +563,6 @@ (define-public binutils
(license gpl3+) (license gpl3+)
(home-page "https://www.gnu.org/software/binutils/"))) (home-page "https://www.gnu.org/software/binutils/")))
;;; TODO: Merge into binutils on the next world rebuild.
(define-public binutils-next
(package/inherit binutils
(name "binutils-next")
(version "2.37")
(arguments
(substitute-keyword-arguments (package-arguments binutils)
((#:out-of-source? _ #f) ;recommended in the README
#t)
((#:configure-flags flags)
`(cons* "--enable-64-bit-bfd"
"--enable-compressed-debug-sections=all"
"--enable-lto"
"--enable-separate-code"
"--enable-threads"
,flags))))))
;; FIXME: ath9k-firmware-htc-binutils.patch do not apply on 2.34 because of a ;; FIXME: ath9k-firmware-htc-binutils.patch do not apply on 2.34 because of a
;; big refactoring of xtensa-modules.c (commit 567607c11fbf7105 upstream). ;; big refactoring of xtensa-modules.c (commit 567607c11fbf7105 upstream).
;; Keep this version around until the patch is updated. ;; Keep this version around until the patch is updated.
@ -594,7 +584,7 @@ (define-public binutils-2.33
(properties '()))) (properties '())))
(define-public binutils-gold (define-public binutils-gold
(package/inherit binutils-next (package/inherit binutils
(name "binutils-gold") (name "binutils-gold")
(arguments (arguments
(substitute-keyword-arguments (package-arguments binutils) (substitute-keyword-arguments (package-arguments binutils)

View file

@ -8377,8 +8377,8 @@ (define-public kexec-tools
;; This variant of binutils is used for the 64 bit support needed to ;; This variant of binutils is used for the 64 bit support needed to
;; assemble the `purgatory/arch/i386/compat_x86_64.S' program on i686-linux. ;; assemble the `purgatory/arch/i386/compat_x86_64.S' program on i686-linux.
(native-inputs (list (make-ld-wrapper "ld-wrapper" (native-inputs (list (make-ld-wrapper "ld-wrapper"
#:binutils binutils-next) #:binutils binutils)
binutils-next)) binutils))
(home-page "https://projects.horms.net/projects/kexec/") (home-page "https://projects.horms.net/projects/kexec/")
(synopsis "Tools for booting directly into different kernels") (synopsis "Tools for booting directly into different kernels")
(description "This package provides the @code{kexec} program and ancillary (description "This package provides the @code{kexec} program and ancillary