From bd2e1a8cb07088bdc54b9bb05d9b2e99f78e5b28 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 4 Nov 2016 15:29:01 +0100 Subject: 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 at . * 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(-) (limited to 'gnu/packages') 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 @@ (define xlinux-headers ,@(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 . - (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 +;;; Copyright © 2014, 2015, 2016 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -71,7 +71,7 @@ (define-public ath9k-htc-firmware ;; 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))) -- cgit v1.2.3