summaryrefslogtreecommitdiff
path: root/gnu/packages/commencement.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2017-10-06 14:09:37 +0300
committerEfraim Flashner <efraim@flashner.co.il>2017-10-08 00:59:09 +0300
commit86d02fa8010c053ba980e4c39373b9bf8af0561d (patch)
tree340cf50f06e79768d63a4c75f051577dcb82b474 /gnu/packages/commencement.scm
parentac423120c00de51c011b03e4df25878363c5d6e1 (diff)
downloadpatches-86d02fa8010c053ba980e4c39373b9bf8af0561d.tar
patches-86d02fa8010c053ba980e4c39373b9bf8af0561d.tar.gz
gnu: libstdc++: Rewrite as 'make-libstdc++' package.
* gnu/packages/commencement.scm (libstdc++): Rewrite the package using the 'make-libstdc++' method.
Diffstat (limited to 'gnu/packages/commencement.scm')
-rw-r--r--gnu/packages/commencement.scm51
1 files changed, 23 insertions, 28 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index af4c35e939..93199d210d 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -690,34 +690,29 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(define libstdc++
;; Intermediate libstdc++ that will allow us to build the final GCC
;; (remember that GCC-BOOT0 cannot build libstdc++.)
- ;; TODO: Write in terms of 'make-libstdc++'.
- (package-with-bootstrap-guile
- (package (inherit gcc)
- (name "libstdc++")
- (arguments
- `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
- #:allowed-references ("out")
- #:out-of-source? #t
- #:phases (alist-cons-before
- 'configure 'chdir
- (lambda _
- (chdir "libstdc++-v3"))
- %standard-phases)
- #:configure-flags `("--disable-shared"
- "--disable-libstdcxx-threads"
- "--disable-libstdcxx-pch"
- ,(string-append "--with-gxx-include-dir="
- (assoc-ref %outputs "out")
- "/include"
- ;; "/include/c++/"
- ;; ,(package-version gcc)
- ))))
- (outputs '("out"))
- (inputs %boot2-inputs)
- (native-inputs '())
- (propagated-inputs '())
- (synopsis "GNU C++ standard library (intermediate)"))))
+ (let ((lib (package-with-bootstrap-guile (make-libstdc++ gcc))))
+ (package
+ (inherit lib)
+ (arguments
+ `(#:guile ,%bootstrap-guile
+ #:implicit-inputs? #f
+ #:allowed-references ("out")
+
+ ;; XXX: libstdc++.so NEEDs ld.so for some reason.
+ #:validate-runpath? #f
+
+ ;; All of the package arguments from 'make-libstdc++
+ ;; except for the configure-flags.
+ ,@(package-arguments lib)
+ #:configure-flags `("--disable-shared"
+ "--disable-libstdcxx-threads"
+ "--disable-libstdcxx-pch"
+ ,(string-append "--with-gxx-include-dir="
+ (assoc-ref %outputs "out")
+ "/include"))))
+ (outputs '("out"))
+ (inputs %boot2-inputs)
+ (synopsis "GNU C++ standard library (intermediate)"))))
(define zlib-final
;; Zlib used by GCC-FINAL.