From edb794bbd45a3e290c678d3f50863278b8f09799 Mon Sep 17 00:00:00 2001 From: "spacecadet@purge.sh" Date: Sun, 12 Nov 2023 03:07:35 +0000 Subject: gnu: ovmf-arm: Update to use GCC5. * gnu/packages/firmware.scm (ovmf-arm): Updating OVMF to 202308 requires GCC5, packages inheriting from ovmf also need to be updated. Signed-off-by: Efraim Flashner Change-Id: I3a7b3f450e0da39129e7cffce7482b8e391e3858 --- gnu/packages/firmware.scm | 63 +++++++++++++++++++++++++---------------------- 1 file changed, 33 insertions(+), 30 deletions(-) (limited to 'gnu/packages/firmware.scm') diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index cb3ca63bde..5a67095235 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1018,36 +1018,39 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.") (supported-systems %supported-systems)))) (define-public ovmf-arm - (package - (inherit ovmf) - (name "ovmf-arm") - (native-inputs - (append (package-native-inputs ovmf) - (if (not (string-prefix? "armhf" (%current-system))) - `(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf")) - ("cross-binutils" ,(cross-binutils "arm-linux-gnueabihf"))) - '()))) - (arguments - (substitute-keyword-arguments (package-arguments ovmf) - ((#:phases phases) - #~(modify-phases #$phases - #$@(if (string-prefix? "armhf" (%current-system)) - '() - '((add-before 'configure 'set-env - (lambda _ - (setenv "GCC49_ARM_PREFIX" "arm-linux-gnueabihf-"))))) - (replace 'build - (lambda _ - (invoke "build" "-a" "ARM" "-t" "GCC49" - "-p" "ArmVirtPkg/ArmVirtQemu.dsc"))) - (delete 'build-x64) - (replace 'install - (lambda _ - (let ((fmw (string-append #$output "/share/firmware"))) - (mkdir-p fmw) - (copy-file "Build/ArmVirtQemu-ARM/RELEASE_GCC49/FV/QEMU_EFI.fd" - (string-append fmw "/ovmf_arm.bin"))))))))) - (supported-systems %supported-systems))) + (let ((toolchain-ver "GCC5")) + (package + (inherit ovmf) + (name "ovmf-arm") + (native-inputs + (append (package-native-inputs ovmf) + (if (not (string-prefix? "armhf" (%current-system))) + `(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf")) + ("cross-binutils" ,(cross-binutils "arm-linux-gnueabihf"))) + '()))) + (arguments + (substitute-keyword-arguments (package-arguments ovmf) + ((#:phases phases) + #~(modify-phases #$phases + #$@(if (string-prefix? "armhf" (%current-system)) + '() + #~((add-before 'configure 'set-env + (lambda _ + (setenv (string-append #$toolchain-ver "_ARM_PREFIX") + "arm-linux-gnueabihf-"))))) + (replace 'build + (lambda _ + (invoke "build" "-a" "ARM" "-t" #$toolchain-ver + "-p" "ArmVirtPkg/ArmVirtQemu.dsc"))) + (delete 'build-x64) + (replace 'install + (lambda _ + (let ((fmw (string-append #$output "/share/firmware"))) + (mkdir-p fmw) + (copy-file (string-append "Build/ArmVirtQemu-ARM/RELEASE_" + #$toolchain-ver "/FV/QEMU_EFI.fd") + (string-append fmw "/ovmf_arm.bin"))))))))) + (supported-systems %supported-systems)))) (define* (make-arm-trusted-firmware platform #:key (triplet "aarch64-linux-gnu")) -- cgit v1.2.3