summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/cross-base.scm38
-rw-r--r--gnu/packages/firmware.scm4
2 files changed, 10 insertions, 32 deletions
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 0000a3adcb..4b720ba4e9 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -368,36 +368,14 @@ XBINUTILS and the cross tool chain."
                      ,@(package-native-inputs glibc)))))
 
 
-;;;
-;;; Concrete cross toolchains.
-;;;
-
-(define-public xgcc-mips64el
-  (let* ((triplet "mips64el-linux-gnuabi64")      ;N64 ABI
-         (xgcc    (cross-gcc triplet
-                             (cross-binutils triplet)
-                             (cross-libc triplet))))
-    ;; Don't attempt to build this cross-compiler on i686;
-    ;; see <http://bugs.gnu.org/19598>.
-    (package (inherit xgcc)
-      (supported-systems (fold delete
-                               (package-supported-systems xgcc)
-                               '("mips64el-linux" "i686-linux"))))))
-
-(define-public xgcc-xtensa
-  ;; Bare-bones Xtensa cross-compiler, used to build the Atheros firmware.
-  (cross-gcc "xtensa-elf"))
-
-(define-public xgcc-armhf
-  (let* ((triplet "arm-linux-gnueabihf")
-         (xgcc    (cross-gcc triplet
-                             (cross-binutils triplet)
-                             (cross-libc triplet))))
-    (package (inherit xgcc)
-      (supported-systems (delete "armhf-linux" %supported-systems)))))
-
-;; (define-public xgcc-armel
-;;   (let ((triplet "armel-linux-gnueabi"))
+;;; Concrete cross tool chains are instantiated like this:
+;;
+;; (define-public xgcc-armhf
+;;   (let ((triplet "arm-linux-gnueabihf"))
 ;;     (cross-gcc triplet
 ;;                (cross-binutils triplet)
 ;;                (cross-libc triplet))))
+;;
+;;; We don't do that here because we'd be referring to bindings from (gnu
+;;; packages gcc) from the top level, which doesn't play well with circular
+;;; dependencies among modules.
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 45b7bf7ab1..484896f592 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -71,7 +71,7 @@
 
     ;; The firmware is cross-compiled using a "bare bones" compiler (no libc.)
     ;; Use our own tool chain for that.
-    (native-inputs `(("cross-gcc" ,xgcc-xtensa)
+    (native-inputs `(("cross-gcc" ,(cross-gcc "xtensa-elf"))
                      ("cross-binutils" ,(cross-binutils "xtensa-elf"))
                      ("cmake" ,cmake)
                      ("perl" ,perl)))