;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org>
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages commencement)
- #:use-module ((guix licenses)
- #:select (gpl3+ lgpl2.0+ public-domain))
#:use-module (gnu packages)
#:use-module (gnu packages bootstrap)
#:use-module (gnu packages base)
#:use-module (guix memoization)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
- #:use-module (srfi srfi-26)
#:use-module (ice-9 vlist)
#:use-module (ice-9 match)
- #:use-module (ice-9 regex)
#:export (make-gcc-toolchain))
;;; Commentary:
(version (string-append version "-" revision "." (string-take commit 7)))
(source (origin
(method url-fetch)
- (uri (string-append "https://gitlab.com/janneke/tinycc"
- "/-/archive/" commit
- "/tinycc-" commit ".tar.gz"))
+ (uri (list (string-append "mirror://gnu/guix/mirror"
+ "/tinycc-" commit ".tar.gz")
+ (string-append "https://gitlab.com/janneke/tinycc"
+ "/-/archive/" commit
+ "/tinycc-" commit ".tar.gz")))
(sha256
(base32
"1hmzn1pq0x22ppd80hyrn5qzqq94mxd0ychzj6vrr2vnj2frjv5b"))))
(define flex-boot0
;; This Flex is needed to build MiG as well as Linux-Libre headers.
- (package
- (inherit flex)
- (native-inputs `(("bison" ,bison-boot0)))
- (propagated-inputs
- ;; XXX: Here we use an 'm4-boot0' package that's not eq? so that it
- ;; appears twice in '%build-inputs', like when we were using
- ;; 'package-with-explicit-inputs'.
- ;; TODO: Remove this hack on the next rebuild cycle.
- `(("m4" ,(package (inherit m4-boot0*)))))
- (inputs (%boot0-inputs))
- (arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:tests? #f))))
+ (let ((m4-boot0* (package (inherit m4-boot0*))))
+ (package
+ (inherit flex)
+ (native-inputs `(("bison" ,bison-boot0)))
+ (propagated-inputs
+ ;; XXX: Here we use an 'm4-boot0' package that's not eq? so that it
+ ;; appears twice in '%build-inputs', like when we were using
+ ;; 'package-with-explicit-inputs'.
+ ;; TODO: Remove this hack on the next rebuild cycle.
+ `(("m4" ,m4-boot0*)))
+ (inputs (%boot0-inputs))
+ (arguments
+ `(#:implicit-inputs? #f
+ #:guile ,%bootstrap-guile
+ #:tests? #f)))))
(define linux-libre-headers-boot0
(mlambda ()
(synopsis "Complete GCC tool chain for C/C++ development")
(description
"This package provides a complete GCC tool chain for C/C++ development to
-be installed in user profiles. This includes GCC, as well as libc (headers
-an d binaries, plus debugging symbols in the @code{debug} output), and Binutils.")
+be installed in user profiles. This includes GCC, as well as libc (headers and
+binaries, plus debugging symbols in the @code{debug} output), and Binutils.")
(home-page "https://gcc.gnu.org/")
(outputs '("out" "debug" "static"))
(define-public gcc-toolchain-9
(make-gcc-toolchain gcc-9))
+(define-public gcc-toolchain-10
+ (make-gcc-toolchain gcc-10))
+
+;; Provide the Fortran toolchain package only for the version of gfortran that
+;; is used by Guix internally to build Fortran libraries, because combining
+;; code compiled with different versions can cause problems.
+
+(define-public gfortran-toolchain
+ (package (inherit (make-gcc-toolchain gfortran))
+ (synopsis "Complete GCC tool chain for Fortran development")
+ (description "This package provides a complete GCC tool chain for
+Fortran development to be installed in user profiles. This includes
+gfortran, as well as libc (headers and binaries, plus debugging symbols
+in the @code{debug} output), and binutils.")))
+
+
;;; commencement.scm ends here