me
/
guix
Archived
1
0
Fork 0

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 <efraim@flashner.co.il>
Change-Id: I3a7b3f450e0da39129e7cffce7482b8e391e3858
master
spacecadet@purge.sh 2023-11-12 03:07:35 +00:00 committed by Efraim Flashner
parent c67e8c12d8
commit edb794bbd4
No known key found for this signature in database
GPG Key ID: 41AAE7DCCA3D8351
1 changed files with 33 additions and 30 deletions

View File

@ -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"))