Add condifition for passing ELFGCC building...
[edk2.git] / DuetPkg / BootSector / Makefile
blobd58567ff182876e3e71988c0945886ecf74e4fb4
2 BASETOOLS_DIR = $(EDK_TOOLS_PATH)\Bin\Win32
5 # Build Macro
7 ASSEMBLY_CODE_FILE_LIST = $(MODULE_DIR)\bootsect.asm \
8 $(MODULE_DIR)\bs16.asm \
9 $(MODULE_DIR)\bs32.asm \
10 $(MODULE_DIR)\efi32.asm \
11 $(MODULE_DIR)\Gpt.asm \
12 $(MODULE_DIR)\Mbr.asm \
13 $(MODULE_DIR)\start.asm \
14 $(MODULE_DIR)\start16.asm \
15 $(MODULE_DIR)\start32.asm
17 TARGET_FILES = $(OUTPUT_DIR)\bootsect.com \
18 $(OUTPUT_DIR)\bs16.com \
19 $(OUTPUT_DIR)\bs32.com \
20 $(OUTPUT_DIR)\Gpt.com \
21 $(OUTPUT_DIR)\Mbr.com \
22 $(OUTPUT_DIR)\Start.com \
23 $(OUTPUT_DIR)\Start16.com \
24 $(OUTPUT_DIR)\Start32.com \
25 $(OUTPUT_DIR)\Start64.com \
26 $(OUTPUT_DIR)\St16_64.com \
27 $(OUTPUT_DIR)\St32_64.com \
28 $(OUTPUT_DIR)\efi32.com2 \
29 $(OUTPUT_DIR)\efi64.com2
31 INC =
34 #OBJECTS =
36 LIBS =
38 COMMON_DEPS =
40 ifeq ($(TOOLCHAIN_TAG), MSFT)
41 all: $(TARGET_FILES)
42 else
43 all:
44 endif
46 #=============
47 $(OUTPUT_DIR)\bootsect.obj:$(MODULE_DIR)\bootsect.asm
48 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\bootsect.obj" /FR"$(OUTPUT_DIR)\bootsect.txt" "$(MODULE_DIR)\bootsect.asm"
50 $(OUTPUT_DIR)\bootsect.com:$(OUTPUT_DIR)\bootsect.obj
51 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\bootsect.obj,$(OUTPUT_DIR)\bootsect.com,$(OUTPUT_DIR)\bootsect.map,,,
53 #=============
55 $(OUTPUT_DIR)\bs16.obj:$(MODULE_DIR)\bs16.asm
56 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\bs16.obj" "$(MODULE_DIR)\bs16.asm"
58 $(OUTPUT_DIR)\bs16.com:$(OUTPUT_DIR)\bs16.obj
59 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\bs16.obj,$(OUTPUT_DIR)\bs16.com,$(OUTPUT_DIR)\bs16.map,,,
61 #=============
63 $(OUTPUT_DIR)\bs32.obj:$(MODULE_DIR)\bs32.asm
64 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\bs32.obj" "$(MODULE_DIR)\bs32.asm"
66 $(OUTPUT_DIR)\bs32.com:$(OUTPUT_DIR)\bs32.obj
67 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\bs32.obj,$(OUTPUT_DIR)\bs32.com,$(OUTPUT_DIR)\bs32.map,,,
69 #=============
71 $(OUTPUT_DIR)\Gpt.obj:$(MODULE_DIR)\Gpt.asm
72 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\Gpt.obj" "$(MODULE_DIR)\Gpt.asm"
74 $(OUTPUT_DIR)\Gpt.com:$(OUTPUT_DIR)\Gpt.obj
75 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\Gpt.obj,$(OUTPUT_DIR)\Gpt.com,$(OUTPUT_DIR)\Gpt.map,,,
77 #=============
79 $(OUTPUT_DIR)\Mbr.obj:$(MODULE_DIR)\Mbr.asm
80 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\Mbr.obj" "$(MODULE_DIR)\Mbr.asm"
82 $(OUTPUT_DIR)\Mbr.com:$(OUTPUT_DIR)\Mbr.obj
83 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\Mbr.obj,$(OUTPUT_DIR)\Mbr.com,$(OUTPUT_DIR)\Mbr.map,,,
85 #============
87 $(OUTPUT_DIR)\Start.obj:$(MODULE_DIR)\Start.asm
88 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\Start.obj" "$(MODULE_DIR)\Start.asm"
90 $(OUTPUT_DIR)\Start.com:$(OUTPUT_DIR)\Start.obj
91 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\Start.obj,$(OUTPUT_DIR)\Start.com,$(OUTPUT_DIR)\Start.map,,,
93 #=============
95 $(OUTPUT_DIR)\Start16.obj:$(MODULE_DIR)\Start16.asm
96 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\Start16.obj" "$(MODULE_DIR)\Start16.asm"
98 $(OUTPUT_DIR)\Start16.com:$(OUTPUT_DIR)\Start16.obj
99 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\Start16.obj,$(OUTPUT_DIR)\Start16.com,$(OUTPUT_DIR)\Start16.map,,,
101 #=============
103 $(OUTPUT_DIR)\Start32.obj:$(MODULE_DIR)\Start32.asm
104 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\Start32.obj" "$(MODULE_DIR)\Start32.asm"
106 $(OUTPUT_DIR)\Start32.com:$(OUTPUT_DIR)\Start32.obj
107 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\Start32.obj,$(OUTPUT_DIR)\Start32.com,$(OUTPUT_DIR)\Start32.map,,,
109 #=============
111 $(OUTPUT_DIR)\Start64.obj:$(MODULE_DIR)\Start64.asm
112 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\Start64.obj" "$(MODULE_DIR)\Start64.asm"
114 $(OUTPUT_DIR)\Start64.com:$(OUTPUT_DIR)\Start64.obj
115 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\Start64.obj,$(OUTPUT_DIR)\Start64.com,$(OUTPUT_DIR)\Start64.map,,,
117 #=============
119 $(OUTPUT_DIR)\St16_64.obj:$(MODULE_DIR)\St16_64.asm
120 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\St16_64.obj" "$(MODULE_DIR)\St16_64.asm"
122 $(OUTPUT_DIR)\St16_64.com:$(OUTPUT_DIR)\St16_64.obj
123 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\St16_64.obj,$(OUTPUT_DIR)\St16_64.com,$(OUTPUT_DIR)\St16_64.map,,,
125 #=============
127 $(OUTPUT_DIR)\St32_64.obj:$(MODULE_DIR)\St32_64.asm
128 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\St32_64.obj" "$(MODULE_DIR)\St32_64.asm"
130 $(OUTPUT_DIR)\St32_64.com:$(OUTPUT_DIR)\St32_64.obj
131 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\St32_64.obj,$(OUTPUT_DIR)\St32_64.com,$(OUTPUT_DIR)\St32_64.map,,,
133 #=============
135 $(OUTPUT_DIR)\efi32.obj:$(MODULE_DIR)\efi32.asm
136 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\efi32.obj" "$(MODULE_DIR)\efi32.asm"
138 $(OUTPUT_DIR)\efi32.com:$(OUTPUT_DIR)\efi32.obj
139 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\efi32.obj,$(OUTPUT_DIR)\efi32.com,$(OUTPUT_DIR)\efi32.map,,,
141 #=============
143 $(OUTPUT_DIR)\efi32.com2:$(OUTPUT_DIR)\efi32.com
144 $(BASETOOLS_DIR)\Split.exe -f $(OUTPUT_DIR)\efi32.com -t $(OUTPUT_DIR)\efi32.com2 -s 135168
146 #=============
148 $(OUTPUT_DIR)\efi64.obj:$(MODULE_DIR)\efi64.asm
149 "$(ASM16)" /c /omf /Fo"$(OUTPUT_DIR)\efi64.obj" "$(MODULE_DIR)\efi64.asm"
151 $(OUTPUT_DIR)\efi64.com:$(OUTPUT_DIR)\efi64.obj
152 "$(ASMLINK16)" /tiny $(OUTPUT_DIR)\efi64.obj,$(OUTPUT_DIR)\efi64.com,$(OUTPUT_DIR)\efi64.map,,,
154 #=============
156 $(OUTPUT_DIR)\efi64.com2:$(OUTPUT_DIR)\efi64.com
157 $(BASETOOLS_DIR)\Split.exe -f $(OUTPUT_DIR)\efi64.com -t $(OUTPUT_DIR)\efi64.com2 -s 135168
160 clean:
161 if exist $(DEBUG_DIR) rmdir /s /q $(DEBUG_DIR)
162 if exist $(OUTPUT_DIR) rmdir /s /q $(OUTPUT_DIR)