summaryrefslogtreecommitdiffstats
path: root/src/arch/x86/Makefile.efi
blob: 13a69d9f7f128f54dc98cdf803727c13ffda5d29 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# -*- makefile -*- : Force emacs to use Makefile mode

# The EFI linker script
#
LDSCRIPT	= arch/x86/scripts/efi.lds

# Retain relocation information for elf2efi
#
LDFLAGS		+= -q -S

# Media types.
#
NON_AUTO_MEDIA	+= efi
NON_AUTO_MEDIA	+= efidrv
NON_AUTO_MEDIA	+= drv.efi
NON_AUTO_MEDIA	+= efirom

# Include SNP driver in the all-drivers build
#
DRIVERS += snp

# Rules for building EFI files
#
$(BIN)/%.efi : $(BIN)/%.efi.tmp $(ELF2EFI)
	$(QM)$(ECHO) "  [FINISH] $@"
	$(Q)$(ELF2EFI) --subsystem=10 $< $@

$(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) $@