diff options
author | Ludovic Courtès <ludo@gnu.org> | 2013-11-08 21:58:09 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2013-11-08 21:58:09 +0100 |
commit | 7db9608d52ab431165ab150a0a0707c686990c1c (patch) | |
tree | b19d49a71e71f8da939a4825b545da3a31907e65 /gnu/packages/gcc.scm | |
parent | 7a78cc7af24a1303dd0117cb977e15ca89a5dad8 (diff) | |
parent | 6a9957545ce51e7a50381059d4509d0dfcba0aba (diff) | |
download | guix-7db9608d52ab431165ab150a0a0707c686990c1c.tar guix-7db9608d52ab431165ab150a0a0707c686990c1c.tar.gz |
Merge branch 'master' into core-updates
Conflicts:
guix/packages.scm
Diffstat (limited to 'gnu/packages/gcc.scm')
-rw-r--r-- | gnu/packages/gcc.scm | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index dde0f0d934..bbc0a134d2 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -27,6 +27,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) + #:use-module (guix utils) #:use-module (ice-9 regex)) (define %gcc-infrastructure @@ -211,6 +212,35 @@ Go. It also includes standard libraries for these languages.") (base32 "1j6dwgby4g3p3lz7zkss32ghr45zpdidrg8xvazvn91lqxv25p09")))))) +(define (custom-gcc gcc name languages) + "Return a custom version of GCC that supports LANGUAGES." + (package (inherit gcc) + (name name) + (arguments + (substitute-keyword-arguments `(#:modules ((guix build gnu-build-system) + (guix build utils) + (ice-9 regex) + (srfi srfi-1) + (srfi srfi-26)) + ,@(package-arguments gcc)) + ((#:configure-flags flags) + `(cons (string-append "--enable-languages=" + ,(string-join languages ",")) + (remove (cut string-match "--enable-languages.*" <>) + ,flags))))))) + +(define-public gfortran-4.8 + (custom-gcc gcc-4.8 "gfortran" '("fortran"))) + +(define-public gccgo-4.8 + (custom-gcc gcc-4.8 "gccgo" '("go"))) + +(define-public gcc-objc-4.8 + (custom-gcc gcc-4.8 "gcc-objc" '("objc"))) + +(define-public gcc-objc++-4.8 + (custom-gcc gcc-4.8 "gcc-objc++" '("obj-c++"))) + (define-public isl (package (name "isl") |