diff options
Diffstat (limited to 'sys-firmware/edk2/edk2-202411.ebuild')
-rw-r--r-- | sys-firmware/edk2/edk2-202411.ebuild | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/sys-firmware/edk2/edk2-202411.ebuild b/sys-firmware/edk2/edk2-202411.ebuild index 0b8cd1c71d87..a998704605eb 100644 --- a/sys-firmware/edk2/edk2-202411.ebuild +++ b/sys-firmware/edk2/edk2-202411.ebuild @@ -6,7 +6,7 @@ EAPI=8 PYTHON_REQ_USE="sqlite" PYTHON_COMPAT=( python3_{12..13} ) -inherit edo prefix python-any-r1 readme.gentoo-r1 secureboot toolchain-funcs +inherit edo flag-o-matic prefix python-any-r1 readme.gentoo-r1 secureboot toolchain-funcs DESCRIPTION="TianoCore EDK II UEFI firmware for virtual machines" HOMEPAGE="https://github.com/tianocore/edk2" @@ -48,7 +48,7 @@ SRC_URI=" S="${WORKDIR}/${PN}-${PN}-stable${PV}" LICENSE="BSD-2 MIT" SLOT="0" -KEYWORDS="-* ~amd64 arm64 ~riscv" +KEYWORDS="-* ~amd64 arm64 ~loong ~riscv" BDEPEND=" ${PYTHON_DEPS} @@ -64,6 +64,8 @@ RDEPEND=" PATCHES=( "${FILESDIR}/${PN}-202411-werror.patch" + "${FILESDIR}/${PN}-202411-gcc15.patch" + "${FILESDIR}/${PN}-202411-loong.patch" "${FILESDIR}/${PN}-202408-binutils-2.41-textrels.patch" ) @@ -93,6 +95,14 @@ pkg_setup() { UNIT1="QEMU_VARS.qcow2" FMT="qcow2" ;; + loong) + TARGET_ARCH="LOONGARCH64" + QEMU_ARCH="loongarch64" + ARCH_DIRS="${DIR}/LoongArchVirtQemu" + UNIT0="QEMU_EFI.fd" + UNIT1="QEMU_VARS.fd" + FMT="raw" + ;; riscv) TARGET_ARCH="RISCV64" QEMU_ARCH="riscv64" @@ -260,6 +270,14 @@ src_compile() { mk_fw_vars arm64 Build/ArmVirtQemu-AARCH64.secboot_INSECURE/"${BUILD_DIR}"/FV/QEMU_VARS.fd raw_to_qcow2 64m Build/ArmVirtQemu-AARCH64*/"${BUILD_DIR}"/FV/QEMU_{EFI,VARS}.fd ;; + loong) + BUILD_ARGS+=( + # fails to seed the OpenSSL RNG during early initialization due + # to improper FPU enabling (maybe too late) + -D NETWORK_TLS_ENABLE=FALSE + ) + mybuild -a LOONGARCH64 -p OvmfPkg/LoongArchVirt/LoongArchVirtQemu.dsc + ;; riscv) mybuild -a RISCV64 -p OvmfPkg/RiscVVirt/RiscVVirtQemu.dsc raw_to_qcow2 32m Build/RiscVVirtQemu/"${BUILD_DIR}"/FV/RISCV_VIRT_{CODE,VARS}.fd @@ -294,6 +312,10 @@ src_install() { newins Build/ArmVirtQemu-AARCH64${TYPE}/"${BUILD_DIR}"/FV/QEMU_VARS.qcow2 QEMU_VARS${TYPE}.qcow2 done ;; + loong) + insinto ${DIR}/LoongArchVirtQemu + doins Build/LoongArchVirtQemu/"${BUILD_DIR}"/FV/QEMU_{EFI,VARS}.fd + ;; riscv) insinto ${DIR}/RiscVVirtQemu doins Build/RiscVVirtQemu/"${BUILD_DIR}"/FV/RISCV_VIRT_{CODE,VARS}.qcow2 |