diff options
-rw-r--r-- | meta-efi-secure-boot/recipes-core/ovmf/ovmf_%.bbappend | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/meta-efi-secure-boot/recipes-core/ovmf/ovmf_%.bbappend b/meta-efi-secure-boot/recipes-core/ovmf/ovmf_%.bbappend new file mode 100644 index 0000000..69a0e4b --- /dev/null +++ b/meta-efi-secure-boot/recipes-core/ovmf/ovmf_%.bbappend | |||
@@ -0,0 +1,59 @@ | |||
1 | inherit user-key-store | ||
2 | |||
3 | PACKAGECONFIG_append = " secureboot" | ||
4 | |||
5 | # For SELoader | ||
6 | do_compile_class-target_append() { | ||
7 | if ${@bb.utils.contains('PACKAGECONFIG', 'secureboot', 'true', 'false', d)}; then | ||
8 | secbuild_dir="${S}/Build/SecurityPkg/RELEASE_${FIXED_GCCVER}" | ||
9 | ${S}/OvmfPkg/build.sh $PARALLEL_JOBS -a $OVMF_ARCH -b RELEASE -t ${FIXED_GCCVER} ${OVMF_SECURE_BOOT_FLAGS} -p SecurityPkg/SecurityPkg.dsc | ||
10 | ln ${secbuild_dir}/${OVMF_ARCH}/Hash2DxeCrypto.efi ${WORKDIR}/ovmf/ | ||
11 | ln ${secbuild_dir}/${OVMF_ARCH}/Pkcs7VerifyDxe.efi ${WORKDIR}/ovmf/ | ||
12 | fi | ||
13 | } | ||
14 | |||
15 | EFI_TARGET = "/boot/efi/EFI/BOOT" | ||
16 | |||
17 | do_install_class-target_append() { | ||
18 | if ${@bb.utils.contains('PACKAGECONFIG', 'secureboot', 'true', 'false', d)}; then | ||
19 | mkdir -p ${D}${EFI_TARGET} | ||
20 | if [ x"${UEFI_SB}" = x"1" ]; then | ||
21 | install ${WORKDIR}/ovmf/Hash2DxeCrypto.efi.signed ${D}${EFI_TARGET}/Hash2DxeCrypto.efi | ||
22 | install ${WORKDIR}/ovmf/Pkcs7VerifyDxe.efi.signed ${D}${EFI_TARGET}/Pkcs7VerifyDxe.efi | ||
23 | else | ||
24 | install ${WORKDIR}/ovmf/Hash2DxeCrypto.efi ${D}${EFI_TARGET}/Hash2DxeCrypto.efi | ||
25 | install ${WORKDIR}/ovmf/Pkcs7VerifyDxe.efi ${D}${EFI_TARGET}/Pkcs7VerifyDxe.efi | ||
26 | fi | ||
27 | fi | ||
28 | } | ||
29 | |||
30 | python do_sign() { | ||
31 | } | ||
32 | |||
33 | python do_sign_class-target() { | ||
34 | sb_sign(d.expand('${WORKDIR}/ovmf/Hash2DxeCrypto.efi'), d.expand('${WORKDIR}/ovmf/Hash2DxeCrypto.efi.signed'), d) | ||
35 | sb_sign(d.expand('${WORKDIR}/ovmf/Pkcs7VerifyDxe.efi'), d.expand('${WORKDIR}/ovmf/Pkcs7VerifyDxe.efi.signed'), d) | ||
36 | } | ||
37 | addtask sign after do_compile before do_install | ||
38 | |||
39 | do_deploy_class-target_append() { | ||
40 | if [ x"${UEFI_SB}" = x"1" ]; then | ||
41 | install -d ${DEPLOYDIR}/efi-unsigned | ||
42 | install ${WORKDIR}/ovmf/Pkcs7VerifyDxe.efi "${DEPLOYDIR}/efi-unsigned/Pkcs7VerifyDxe.efi" | ||
43 | install ${WORKDIR}/ovmf/Hash2DxeCrypto.efi "${DEPLOYDIR}/efi-unsigned/Hash2DxeCrypto.efi" | ||
44 | install ${WORKDIR}/ovmf/Pkcs7VerifyDxe.efi.signed "${DEPLOYDIR}/Pkcs7VerifyDxe.efi" | ||
45 | install ${WORKDIR}/ovmf/Hash2DxeCrypto.efi.signed "${DEPLOYDIR}/Hash2DxeCrypto.efi" | ||
46 | else | ||
47 | install ${WORKDIR}/ovmf/Pkcs7VerifyDxe.efi "${DEPLOYDIR}/Pkcs7VerifyDxe.efi" | ||
48 | install ${WORKDIR}/ovmf/Hash2DxeCrypto.efi "${DEPLOYDIR}/Hash2DxeCrypto.efi" | ||
49 | fi | ||
50 | } | ||
51 | |||
52 | PACKAGES += " \ | ||
53 | ovmf-pkcs7-efi \ | ||
54 | " | ||
55 | |||
56 | FILES_ovmf-pkcs7-efi += " \ | ||
57 | ${EFI_TARGET}/Hash2DxeCrypto.efi \ | ||
58 | ${EFI_TARGET}/Pkcs7VerifyDxe.efi \ | ||
59 | " | ||