gnu: cross-base: Do not strip cross-gcc.
Fixes a regression introduced in 9063ef0
whereby #:strip-binaries? would be
left to #t, leading to an invalid cross-built libgcc.a (see
<http://hydra.gnu.org/build/492479/nixlog/1/tail-reload>.)
* gnu/packages/cross-base.scm (cross-gcc-arguments): Add #:strip-binaries? #f
unconditionally. Replace 'install' phase to use "make install-strip".
This commit is contained in:
parent
ab999c2516
commit
2a1552c608
|
@ -86,7 +86,13 @@ may be either a libc package or #f.)"
|
||||||
;; Set the current target system so that 'glibc-dynamic-linker' returns the
|
;; Set the current target system so that 'glibc-dynamic-linker' returns the
|
||||||
;; right name.
|
;; right name.
|
||||||
(parameterize ((%current-target-system target))
|
(parameterize ((%current-target-system target))
|
||||||
(substitute-keyword-arguments (package-arguments gcc-4.9)
|
;; Disable stripping as this can break binaries, with object files of
|
||||||
|
;; libgcc.a showing up as having an unknown architecture. See
|
||||||
|
;; <http://lists.fedoraproject.org/pipermail/arm/2010-August/000663.html>
|
||||||
|
;; for instance.
|
||||||
|
(let ((args `(#:strip-binaries? #f
|
||||||
|
,@(package-arguments gcc-4.9))))
|
||||||
|
(substitute-keyword-arguments args
|
||||||
((#:configure-flags flags)
|
((#:configure-flags flags)
|
||||||
`(append (list ,(string-append "--target=" target)
|
`(append (list ,(string-append "--target=" target)
|
||||||
,@(if libc
|
,@(if libc
|
||||||
|
@ -141,7 +147,13 @@ may be either a libc package or #f.)"
|
||||||
'("as" "nm"))
|
'("as" "nm"))
|
||||||
(symlink wrapper (string-append libexec "/ld"))
|
(symlink wrapper (string-append libexec "/ld"))
|
||||||
#t))
|
#t))
|
||||||
,phases)))
|
(alist-replace
|
||||||
|
'install
|
||||||
|
(lambda _
|
||||||
|
;; Unlike our 'strip' phase, this will do the right thing
|
||||||
|
;; for cross-compilers.
|
||||||
|
(zero? (system* "make" "install-strip")))
|
||||||
|
,phases))))
|
||||||
(if libc
|
(if libc
|
||||||
`(alist-cons-before
|
`(alist-cons-before
|
||||||
'configure 'set-cross-path
|
'configure 'set-cross-path
|
||||||
|
@ -174,13 +186,7 @@ may be either a libc package or #f.)"
|
||||||
(remove cross? libpath) ":"))
|
(remove cross? libpath) ":"))
|
||||||
#t)))
|
#t)))
|
||||||
,phases)
|
,phases)
|
||||||
phases)))
|
phases)))))))
|
||||||
((#:strip-binaries? _)
|
|
||||||
;; Disable stripping as this can break binaries, with object files of
|
|
||||||
;; libgcc.a showing up as having an unknown architecture. See
|
|
||||||
;; <http://lists.fedoraproject.org/pipermail/arm/2010-August/000663.html>
|
|
||||||
;; for instance.
|
|
||||||
#f))))
|
|
||||||
|
|
||||||
(define (cross-gcc-patches target)
|
(define (cross-gcc-patches target)
|
||||||
"Return GCC patches needed for TARGET."
|
"Return GCC patches needed for TARGET."
|
||||||
|
|
Loading…
Reference in New Issue