gnu: linux-libre: Adjust for PowerPC.
* gnu/packages/linux.scm (system->defconfig): New procedure. (linux-libre-headers)[arguments]: Use it in 'build' phase to determine the target name. * gnu/packages/cross-base.scm (cross-kernel-headers)[xlinux-headers] (arguments): Likewise.
This commit is contained in:
parent
fc649d0aad
commit
440a3143f0
|
@ -315,7 +315,7 @@ GCC that does not target a libc; otherwise, target that libc."
|
|||
(setenv "ARCH" ,(system->linux-architecture target))
|
||||
(format #t "`ARCH' set to `~a' (cross compiling)~%" (getenv "ARCH"))
|
||||
|
||||
(and (zero? (system* "make" "defconfig"))
|
||||
(and (zero? (system* "make" ,(system->defconfig target)))
|
||||
(zero? (system* "make" "mrproper" "headers_check"))))
|
||||
,phases))))
|
||||
(native-inputs `(("cross-gcc" ,xgcc)
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
|
||||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
|
||||
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -98,6 +99,13 @@
|
|||
((string-prefix? "aarch64" arch) "arm64")
|
||||
(else arch))))
|
||||
|
||||
(define-public (system->defconfig system)
|
||||
"Some systems (notably powerpc-linux) require a special target for kernel
|
||||
defconfig. Return the appropiate make target if applicable, otherwise return
|
||||
\"defconfig\"."
|
||||
(cond ((string-prefix? "powerpc-" system) "pmac32_defconfig")
|
||||
(else "defconfig")))
|
||||
|
||||
(define (linux-libre-urls version)
|
||||
"Return a list of URLs for Linux-Libre VERSION."
|
||||
(list (string-append
|
||||
|
@ -136,12 +144,14 @@
|
|||
(replace 'build
|
||||
(lambda _
|
||||
(let ((arch ,(system->linux-architecture
|
||||
(or (%current-target-system)
|
||||
(%current-system))))
|
||||
(defconfig ,(system->defconfig
|
||||
(or (%current-target-system)
|
||||
(%current-system)))))
|
||||
(setenv "ARCH" arch)
|
||||
(format #t "`ARCH' set to `~a'~%" (getenv "ARCH"))
|
||||
|
||||
(and (zero? (system* "make" "defconfig"))
|
||||
(and (zero? (system* "make" defconfig))
|
||||
(zero? (system* "make" "mrproper" "headers_check"))))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
|
|
Loading…
Reference in New Issue