summaryrefslogtreecommitdiff
path: root/gnu/packages/commencement.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2018-10-03 17:13:06 +0200
committerJan Nieuwenhuizen <janneke@gnu.org>2018-11-24 08:18:32 +0100
commita6facf94828b7215566c724822f00feee36f60a9 (patch)
treefe7546365f4b779592e0f3fa8943d683309573e6 /gnu/packages/commencement.scm
parentf4bf64138c9628114173e999f080c4fad3fec975 (diff)
downloadguix-patches-a6facf94828b7215566c724822f00feee36f60a9.tar
guix-patches-a6facf94828b7215566c724822f00feee36f60a9.tar.gz
gnu: libstdc++-boot0: Improve gcc-wrapper workaround.
* gnu/packages/commencement.scm (libstdc++-boot0): Adjust the configure script instead of copying libstdc++.so from %BOOT0-INPUTS.
Diffstat (limited to 'gnu/packages/commencement.scm')
-rw-r--r--gnu/packages/commencement.scm18
1 files changed, 7 insertions, 11 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 015211f493..467a1585ff 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -1641,17 +1641,13 @@ exec " gcc "/bin/" program
(substitute-keyword-arguments (package-arguments lib)
((#:phases phases)
`(modify-phases ,phases
- ;; FIXME: why doesn't this package build libstdc++.so.6.0.20,
- ;; when gcc-mesboot builds it fine?
- ;; libtool: install: /gnu/store/7swwdnq02lqk4xkd8740fxdj1h4va38l-bootstrap-binaries-0/bin/install -c .libs/libstdc++.so.6.0.20 /gnu/store/np5pmdlwfin3vmqk88chh0fgs0ncki79-libstdc++-boot0-4.8.5/lib/libstdc++.so.6.0.20
- ;; /gnu/store/7swwdnq02lqk4xkd8740fxdj1h4va38l-bootstrap-binaries-0/bin/install: cannot stat '.libs/libstdc++.so.6.0.20': No such file or directory
- (add-after 'build 'copy-libstdc++-
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((gcc (assoc-ref %build-inputs "gcc"))
- (out (assoc-ref outputs "out")))
- (copy-file (string-append gcc "/lib/libstdc++.so.6.0.20")
- (string-append "src/.libs/libstdc++.so.6.0.20"))
- #t)))))))
+ (add-after 'unpack 'workaround-wrapper-bug
+ ;; XXX: The crude gcc-cross-wrapper causes "g++ -v" to
+ ;; fail, which in turn confuses the configure script.
+ (lambda _
+ (substitute* "libstdc++-v3/configure"
+ (("g\\+\\+ -v") "true"))
+ #t))))))
(_ (package-arguments lib)))))
(inputs (%boot0-inputs))
(native-inputs '()))))