[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
04/07: gnu: gcc: Disable RUNPATH validation for native builds.
From: |
Ludovic Courtès |
Subject: |
04/07: gnu: gcc: Disable RUNPATH validation for native builds. |
Date: |
Tue, 07 Apr 2015 20:32:26 +0000 |
civodul pushed a commit to branch core-updates
in repository guix.
commit dfc8bb207104cb3c25c0922508acf6d3c27b69fc
Author: Ludovic Courtès <address@hidden>
Date: Tue Apr 7 21:24:37 2015 +0200
gnu: gcc: Disable RUNPATH validation for native builds.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Pass
#:validate-runpath? #f.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Override
#:validate-runpath? with 'substitute-keyword-arguments'.
(gcc-final)[arguments]: Likewise.
* gnu/packages/cross-base.scm (cross-gcc-arguments): Likewise.
---
gnu/packages/commencement.scm | 12 +++++++-----
gnu/packages/cross-base.scm | 2 ++
gnu/packages/gcc.scm | 5 +++++
3 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 766aea4..14af246 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -158,6 +158,8 @@
(srfi srfi-1)
(srfi srfi-26))
,@(substitute-keyword-arguments (package-arguments gcc-4.8)
+ ((#:validate-runpath? _)
+ #t)
((#:configure-flags flags)
`(append (list ,(string-append "--target=" (boot-triplet))
@@ -500,11 +502,6 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a
\"address@hidden"~%"
#:allowed-references ("out" "lib" ,glibc-final)
- ;; Things like libasan.so and libstdc++.so NEED ld.so and/or
- ;; libgcc_s.so but RUNPATH is empty. This is a false positive, so turn
- ;; it off.
- #:validate-runpath? #f
-
;; Build again GMP & co. within GCC's build process, because it's hard
;; to do outside (because GCC-BOOT0 is a cross-compiler, and thus
;; doesn't honor $LIBRARY_PATH, which breaks `gnu-build-system'.)
@@ -529,6 +526,11 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a
\"address@hidden"~%"
"/lib")
flag))
,flags)))
+ ((#:validate-runpath? _)
+ ;; Things like libasan.so and libstdc++.so NEED ld.so and/or
+ ;; libgcc_s.so but RUNPATH is empty. This is a false positive, so
+ ;; turn it off.
+ #f)
((#:phases phases)
`(alist-delete 'symlink-libgcc_eh ,phases)))))
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 565a4a8..0f15a0a 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -175,6 +175,8 @@ may be either a libc package or #f.)"
#t)))
,phases)
phases)))
+ ((#:validate-runpath? _)
+ #t)
((#:strip-binaries? _)
;; Disable stripping as this can break binaries, with object files of
;; libgcc.a showing up as having an unknown architecture. See
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index 68c9e98..4c06f84 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -189,6 +189,11 @@ where the OS part is overloaded to denote a specific
ABI---into GCC
,(if stripped? "-g0" "-g")))))
#:tests? #f
+
+ ;; libstdc++.so NEEDs libgcc_s.so but somehow it doesn't get
+ ;; $(libdir) in its RUNPATH, so turn it off.
+ #:validate-runpath? #f
+
#:phases
(alist-cons-before
'configure 'pre-configure
- branch core-updates updated (bb146db -> 4ae7559), Ludovic Courtès, 2015/04/07
- 01/07: gnu: ld-wrapper: Extract symlink dereferencing., Ludovic Courtès, 2015/04/07
- 04/07: gnu: gcc: Disable RUNPATH validation for native builds.,
Ludovic Courtès <=
- 07/07: gnu: Emit a warning when a package module cannot be loaded., Ludovic Courtès, 2015/04/07
- 03/07: gnu: ld-wrapper: Add 'GUIX_LD_WRAPPER_DISABLE_RPATH' environment variable., Ludovic Courtès, 2015/04/07
- 02/07: gnu: ld-wrapper: Add '-rpath' flag only for libraries that are in the store., Ludovic Courtès, 2015/04/07
- 05/07: gnu: Change ld-wrapper extension from .scm to .in., Ludovic Courtès, 2015/04/07
- 06/07: ui: Add 'report-load-error'., Ludovic Courtès, 2015/04/07