summaryrefslogtreecommitdiffstats
path: root/src/arch
diff options
context:
space:
mode:
authorMichael Brown2013-05-14 21:08:26 +0200
committerMichael Brown2013-05-14 21:46:53 +0200
commitdbea47ce7d61f253b58aa7268b0261922a6b1a22 (patch)
tree5f2879d5c7d5b55931f386af04f8ff30499ba7a4 /src/arch
parent[build] Provide "allXXXs" targets for all media on all platforms (diff)
downloadipxe-dbea47ce7d61f253b58aa7268b0261922a6b1a22.tar.gz
ipxe-dbea47ce7d61f253b58aa7268b0261922a6b1a22.tar.xz
ipxe-dbea47ce7d61f253b58aa7268b0261922a6b1a22.zip
[build] Add efidrv.cab target for UEFI Secure Boot signing
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/Makefile.pcbios8
-rw-r--r--src/arch/x86/Makefile.efi10
2 files changed, 13 insertions, 5 deletions
diff --git a/src/arch/i386/Makefile.pcbios b/src/arch/i386/Makefile.pcbios
index 32800cdec..d3fe8b9e6 100644
--- a/src/arch/i386/Makefile.pcbios
+++ b/src/arch/i386/Makefile.pcbios
@@ -40,12 +40,10 @@ PAD_exe = $(PERL) $(PADIMG) --blksize=512
FINALISE_rom = $(PERL) $(FIXROM)
FINALISE_mrom = $(FINALISE_rom)
-# Add per-ROM targets for "allroms"
+# Use $(ROMS) rather than $(DRIVERS) for "allroms" and "allmroms"
#
-$(BIN)/allroms : $(foreach ROM,$(ROMS),$(BIN)/$(ROM).rom)
-$(BIN)/allmroms : $(foreach ROM,$(ROMS),$(BIN)/$(ROM).mrom)
-allroms : $(BIN)/allroms
-allmroms : $(BIN)/allmroms
+LIST_NAME_rom := ROMS
+LIST_NAME_mrom := ROMS
# rule to make a non-emulation ISO boot image
NON_AUTO_MEDIA += iso
diff --git a/src/arch/x86/Makefile.efi b/src/arch/x86/Makefile.efi
index bef8d59d8..3e3fbe3ca 100644
--- a/src/arch/x86/Makefile.efi
+++ b/src/arch/x86/Makefile.efi
@@ -12,6 +12,8 @@ LDFLAGS += -q -S
#
NON_AUTO_MEDIA += efi
NON_AUTO_MEDIA += efidrv
+NON_AUTO_MEDIA += drv.efi
+NON_AUTO_MEDIA += efirom
# Rules for building EFI files
#
@@ -23,6 +25,14 @@ $(BIN)/%.efidrv : $(BIN)/%.efidrv.tmp $(ELF2EFI)
$(QM)$(ECHO) " [FINISH] $@"
$(Q)$(ELF2EFI) --subsystem=11 $< $@
+$(BIN)/%.drv.efi : $(BIN)/%.efidrv
+ $(QM)$(ECHO) " [FINISH] $@"
+ $(Q)$(CP) $< $@
+
$(BIN)/%.efirom : $(BIN)/%.efidrv $(EFIROM)
$(QM)$(ECHO) " [FINISH] $@"
$(Q)$(EFIROM) -v $(TGT_PCI_VENDOR) -d $(TGT_PCI_DEVICE) $< $@
+
+$(BIN)/efidrv.cab : $(BIN)/alldrv.efis # $(ALL_drv.efi) is not yet defined
+ $(QM)$(ECHO) " [CAB] $@"
+ $(Q)$(LCAB) -n -q $(ALL_drv.efi) $@