]> git.proxmox.com Git - mirror_edk2.git/blob - DuetPkg/BootSector/GNUmakefile
Add GNUmakefile for Linux GCC to build BootSector;
[mirror_edk2.git] / DuetPkg / BootSector / GNUmakefile
1
2 ASSEMBLY_CODE_FILE_LIST = $(MODULE_DIR)/bootsect.S \
3 $(MODULE_DIR)/bs16.S \
4 $(MODULE_DIR)/bs32.S \
5 $(MODULE_DIR)/efi32.S \
6 $(MODULE_DIR)/Gpt.S \
7 $(MODULE_DIR)/Mbr.S \
8 $(MODULE_DIR)/start.S \
9 $(MODULE_DIR)/start16.S \
10 $(MODULE_DIR)/start32.S
11
12 TARGET_FILES = $(OUTPUT_DIR)/bootsect.bin \
13 $(OUTPUT_DIR)/bs16.bin \
14 $(OUTPUT_DIR)/bs32.bin \
15 $(OUTPUT_DIR)/Gpt.bin \
16 $(OUTPUT_DIR)/Mbr.bin \
17 $(OUTPUT_DIR)/start.bin \
18 $(OUTPUT_DIR)/start16.bin \
19 $(OUTPUT_DIR)/start32.bin \
20 # $(OUTPUT_DIR)/start64.bin \
21 # $(OUTPUT_DIR)/st16_64.bin \
22 # $(OUTPUT_DIR)/st32_64.bin \
23 $(OUTPUT_DIR)/efi32.bin \
24 # $(OUTPUT_DIR)/efi64.bin2
25
26 .PHONY : all
27 all: $(TARGET_FILES)
28
29 # bootsect.S
30 $(OUTPUT_DIR)/bootsect.o: $(MODULE_DIR)/bootsect.S
31 $(ASM) -c -o $(OUTPUT_DIR)/bootsect.o $(MODULE_DIR)/bootsect.S
32 $(OUTPUT_DIR)/bootsect.bin: $(OUTPUT_DIR)/bootsect.o
33 $(DLINK) --oformat binary -o $(OUTPUT_DIR)/bootsect.bin $(OUTPUT_DIR)/bootsect.o -Ttext 0
34
35 # bs16.S
36 $(OUTPUT_DIR)/bs16.o: $(MODULE_DIR)/bs16.S
37 $(ASM) -c -o $(OUTPUT_DIR)/bs16.o $(MODULE_DIR)/bs16.S
38 $(OUTPUT_DIR)/bs16.bin: $(OUTPUT_DIR)/bs16.o
39 $(DLINK) --oformat binary -o $(OUTPUT_DIR)/bs16.bin $(OUTPUT_DIR)/bs16.o -Ttext 0
40
41 # bs32.S
42 $(OUTPUT_DIR)/bs32.o: $(MODULE_DIR)/bs32.S
43 $(ASM) -c -o $(OUTPUT_DIR)/bs32.o $(MODULE_DIR)/bs32.S
44 $(OUTPUT_DIR)/bs32.bin: $(OUTPUT_DIR)/bs32.o
45 $(DLINK) --oformat binary -o $(OUTPUT_DIR)/bs32.bin $(OUTPUT_DIR)/bs32.o -Ttext 0
46
47 # Gpt.S
48 $(OUTPUT_DIR)/Gpt.o: $(MODULE_DIR)/Gpt.S
49 $(ASM) -c -o $(OUTPUT_DIR)/Gpt.o $(MODULE_DIR)/Gpt.S
50 $(OUTPUT_DIR)/Gpt.bin: $(OUTPUT_DIR)/Gpt.o
51 $(DLINK) --oformat binary -o $(OUTPUT_DIR)/Gpt.bin $(OUTPUT_DIR)/Gpt.o -Ttext 0
52
53 # Mbr.S
54 $(OUTPUT_DIR)/Mbr.o: $(MODULE_DIR)/Mbr.S
55 $(ASM) -c -o $(OUTPUT_DIR)/Mbr.o $(MODULE_DIR)/Mbr.S
56 $(OUTPUT_DIR)/Mbr.bin: $(OUTPUT_DIR)/Mbr.o
57 $(DLINK) --oformat binary -o $(OUTPUT_DIR)/Mbr.bin $(OUTPUT_DIR)/Mbr.o -Ttext 0
58
59 # start.S
60 $(OUTPUT_DIR)/start.o: $(MODULE_DIR)/start.S
61 $(ASM) -c -o $(OUTPUT_DIR)/start.o $(MODULE_DIR)/start.S
62 $(OUTPUT_DIR)/start.bin: $(OUTPUT_DIR)/start.o
63 $(DLINK) --oformat binary -o $(OUTPUT_DIR)/start.bin $(OUTPUT_DIR)/start.o -Ttext 0
64
65 # start16.S
66 $(OUTPUT_DIR)/start16.o: $(MODULE_DIR)/start16.S
67 $(ASM) -c -o $(OUTPUT_DIR)/start16.o $(MODULE_DIR)/start16.S
68 $(OUTPUT_DIR)/start16.bin: $(OUTPUT_DIR)/start16.o
69 $(DLINK) --oformat binary -o $(OUTPUT_DIR)/start16.bin $(OUTPUT_DIR)/start16.o -Ttext 0
70
71 # start32.S
72 $(OUTPUT_DIR)/start32.o: $(MODULE_DIR)/start32.S
73 $(ASM) -c -o $(OUTPUT_DIR)/start32.o $(MODULE_DIR)/start32.S
74 $(OUTPUT_DIR)/start32.bin: $(OUTPUT_DIR)/start32.o
75 $(DLINK) --oformat binary -o $(OUTPUT_DIR)/start32.bin $(OUTPUT_DIR)/start32.o -Ttext 0
76
77 # efi32.S
78 $(OUTPUT_DIR)/efi32.o: $(MODULE_DIR)/efi32.S
79 $(ASM) -c -o $(OUTPUT_DIR)/efi32.o $(MODULE_DIR)/efi32.S
80 $(OUTPUT_DIR)/efi32.bin: $(OUTPUT_DIR)/efi32.o
81 $(DLINK) --oformat binary -o $(OUTPUT_DIR)/efi32.bin $(OUTPUT_DIR)/efi32.o -Ttext 0
82
83
84 clean:
85 ifneq ($(OUTPUT_DIR), )
86 rm -r $(OUTPUT_DIR)
87 endif
88 ifneq ($(DEBUG_DIR), )
89 rm -r $(DEBUG_DIR)
90 endif
91
92
93