diff options
author | Efraim Flashner <efraim@flashner.co.il> | 2017-10-06 14:09:37 +0300 |
---|---|---|
committer | Efraim Flashner <efraim@flashner.co.il> | 2017-10-08 00:59:09 +0300 |
commit | 86d02fa8010c053ba980e4c39373b9bf8af0561d (patch) | |
tree | 340cf50f06e79768d63a4c75f051577dcb82b474 | |
parent | ac423120c00de51c011b03e4df25878363c5d6e1 (diff) | |
download | guix-86d02fa8010c053ba980e4c39373b9bf8af0561d.tar.gz |
gnu: libstdc++: Rewrite as 'make-libstdc++' package.
* gnu/packages/commencement.scm (libstdc++): Rewrite the package using the 'make-libstdc++' method.
-rw-r--r-- | gnu/packages/commencement.scm | 51 |
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. |