[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/02: gnu: cross-base: Remove exports of cross compilers.
From: |
Ludovic Courtès |
Subject: |
02/02: gnu: cross-base: Remove exports of cross compilers. |
Date: |
Fri, 4 Nov 2016 14:36:12 +0000 (UTC) |
civodul pushed a commit to branch master
in repository guix.
commit bd2e1a8cb07088bdc54b9bb05d9b2e99f78e5b28
Author: Ludovic Courtès <address@hidden>
Date: Fri Nov 4 15:29:01 2016 +0100
gnu: cross-base: Remove exports of cross compilers.
They were never really needed and caused troubles in the presence of
circular module dependencies as reported by
Danny Milosavljevic <address@hidden> at
<https://lists.gnu.org/archive/html/guix-devel/2016-11/msg00144.html>.
* gnu/packages/cross-base.scm (xgcc-mips64el, xgcc-xtensa, xgcc-armhf):
Remove.
* gnu/packages/firmware.scm (ath9k-htc-firmware)[native-inputs]: Use
'cross-gcc' instead of XGCC-XTENSA.
---
gnu/packages/cross-base.scm | 38 ++++++++------------------------------
gnu/packages/firmware.scm | 4 ++--
2 files changed, 10 insertions(+), 32 deletions(-)
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 0000a3a..4b720ba 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 45b7bf7..484896f 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 <address@hidden>
+;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <address@hidden>
;;;
;;; 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)))