]>
Commit | Line | Data |
---|---|---|
1 | \r | |
2 | #\r | |
3 | # Platform Macro Definition\r | |
4 | #\r | |
5 | PLATFORM_NAME = DuetPkg\r | |
6 | PLATFORM_GUID = 199E24E0-0989-42aa-87F2-611A8C397E72\r | |
7 | PLATFORM_VERSION = 0.3\r | |
8 | PLATFORM_RELATIVE_DIR = DuetPkg\r | |
9 | PLATFORM_DIR = $(WORKSPACE)\DuetPkg\r | |
10 | PLATFORM_OUTPUT_DIR = Build\DuetPkg\r | |
11 | \r | |
12 | #\r | |
13 | # Module Macro Definition\r | |
14 | #\r | |
15 | MODULE_NAME = BootSector\r | |
16 | MODULE_GUID = 2410F0DF-D915-4137-BD04-AAB6BA4C50E0\r | |
17 | MODULE_VERSION = 1.0\r | |
18 | MODULE_TYPE = USER_DEFINED\r | |
19 | MODULE_FILE_BASE_NAME = BootSector\r | |
20 | BASE_NAME = $(MODULE_NAME)\r | |
21 | MODULE_RELATIVE_DIR = DuetPkg\BootSector\r | |
22 | MODULE_DIR = $(WORKSPACE)\DuetPkg\BootSector\r | |
23 | \r | |
24 | #\r | |
25 | # Build Configuration Macro Definition\r | |
26 | #\r | |
27 | ARCH = IA32\r | |
28 | TOOLCHAIN_TAG = MYTOOLS\r | |
29 | TARGET = DEBUG\r | |
30 | BASETOOLS_DIR=m:\tree\working\BaseTools\Bin\Win32\r | |
31 | \r | |
32 | #\r | |
33 | # Build Directory Macro Definition\r | |
34 | #\r | |
35 | # PLATFORM_BUILD_DIR = m:\tree\working\Build\DuetPkg\DEBUG_MYTOOLS\r | |
36 | BUILD_DIR = $(WORKSPACE)\Build\DuetPkg\DEBUG_MYTOOLS\r | |
37 | BIN_DIR = $(BUILD_DIR)\IA32\r | |
38 | LIB_DIR = $(BIN_DIR)\r | |
39 | MODULE_BUILD_DIR = $(BUILD_DIR)\IA32\DuetPkg\BootSector\BootSector\r | |
40 | OUTPUT_DIR = $(MODULE_BUILD_DIR)\OUTPUT\r | |
41 | DEBUG_DIR = $(MODULE_BUILD_DIR)\DEBUG\r | |
42 | DEST_DIR_OUTPUT = $(OUTPUT_DIR)\r | |
43 | DEST_DIR_DEBUG = $(DEBUG_DIR)\r | |
44 | \r | |
45 | #\r | |
46 | # Default Tools Flags Macro Definition (from tools_def.txt by default)\r | |
47 | #\r | |
48 | DEFAULT_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r | |
49 | DEFAULT_SLINK_FLAGS = /nologo /LTCG\r | |
50 | DEFAULT_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs8192 /Gy /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm\r | |
51 | DEFAULT_APP_FLAGS = /nologo /E /TC\r | |
52 | DEFAULT_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FIAutoGen.h\r | |
53 | DEFAULT_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb\r | |
54 | DEFAULT_ASM_FLAGS = /nologo /c /WX /W3 /coff /Cx /Zd /Zi\r | |
55 | DEFAULT_TIANO_FLAGS = \r | |
56 | DEFAULT_MAKE_FLAGS = /nologo\r | |
57 | DEFAULT_ASMLINK_FLAGS = /nologo /tiny\r | |
58 | DEFAULT_ASL_FLAGS = \r | |
59 | \r | |
60 | \r | |
61 | #\r | |
62 | # Platform Tools Flags Macro Definition (from platform description file)\r | |
63 | #\r | |
64 | PLATFORM_PP_FLAGS = \r | |
65 | PLATFORM_SLINK_FLAGS = \r | |
66 | PLATFORM_CC_FLAGS = \r | |
67 | PLATFORM_APP_FLAGS = \r | |
68 | PLATFORM_VFRPP_FLAGS = \r | |
69 | PLATFORM_DLINK_FLAGS = \r | |
70 | PLATFORM_ASM_FLAGS = \r | |
71 | PLATFORM_TIANO_FLAGS = \r | |
72 | PLATFORM_MAKE_FLAGS = \r | |
73 | PLATFORM_ASMLINK_FLAGS = \r | |
74 | PLATFORM_ASL_FLAGS = \r | |
75 | \r | |
76 | \r | |
77 | #\r | |
78 | # Module Tools Flags Macro Definition (from platform/module description file)\r | |
79 | #\r | |
80 | MODULE_PP_FLAGS = \r | |
81 | MODULE_SLINK_FLAGS = \r | |
82 | MODULE_CC_FLAGS = \r | |
83 | MODULE_APP_FLAGS = \r | |
84 | MODULE_VFRPP_FLAGS = \r | |
85 | MODULE_DLINK_FLAGS = \r | |
86 | MODULE_ASM_FLAGS = \r | |
87 | MODULE_TIANO_FLAGS = \r | |
88 | MODULE_MAKE_FLAGS = \r | |
89 | MODULE_ASMLINK_FLAGS = \r | |
90 | MODULE_ASL_FLAGS = \r | |
91 | \r | |
92 | \r | |
93 | #\r | |
94 | # Tools Flag Macro\r | |
95 | #\r | |
96 | PP_FLAGS = $(DEFAULT_PP_FLAGS) $(PLATFORM_PP_FLAGS) $(MODULE_PP_FLAGS)\r | |
97 | SLINK_FLAGS = $(DEFAULT_SLINK_FLAGS) $(PLATFORM_SLINK_FLAGS) $(MODULE_SLINK_FLAGS)\r | |
98 | CC_FLAGS = $(DEFAULT_CC_FLAGS) $(PLATFORM_CC_FLAGS) $(MODULE_CC_FLAGS)\r | |
99 | APP_FLAGS = $(DEFAULT_APP_FLAGS) $(PLATFORM_APP_FLAGS) $(MODULE_APP_FLAGS)\r | |
100 | VFRPP_FLAGS = $(DEFAULT_VFRPP_FLAGS) $(PLATFORM_VFRPP_FLAGS) $(MODULE_VFRPP_FLAGS)\r | |
101 | DLINK_FLAGS = $(DEFAULT_DLINK_FLAGS) $(PLATFORM_DLINK_FLAGS) $(MODULE_DLINK_FLAGS)\r | |
102 | ASM_FLAGS = $(DEFAULT_ASM_FLAGS) $(PLATFORM_ASM_FLAGS) $(MODULE_ASM_FLAGS)\r | |
103 | TIANO_FLAGS = $(DEFAULT_TIANO_FLAGS) $(PLATFORM_TIANO_FLAGS) $(MODULE_TIANO_FLAGS)\r | |
104 | MAKE_FLAGS = $(DEFAULT_MAKE_FLAGS) $(PLATFORM_MAKE_FLAGS) $(MODULE_MAKE_FLAGS)\r | |
105 | ASMLINK_FLAGS = $(DEFAULT_ASMLINK_FLAGS) $(PLATFORM_ASMLINK_FLAGS) $(MODULE_ASMLINK_FLAGS)\r | |
106 | ASL_FLAGS = $(DEFAULT_ASL_FLAGS) $(PLATFORM_ASL_FLAGS) $(MODULE_ASL_FLAGS)\r | |
107 | \r | |
108 | \r | |
109 | #\r | |
110 | # Tools Path Macro\r | |
111 | #\r | |
112 | PP = C:\Program Files\Microsoft Visual Studio 8\Vc\bin\cl.exe\r | |
113 | SLINK = C:\Program Files\Microsoft Visual Studio 8\Vc\bin\lib.exe\r | |
114 | CC = C:\Program Files\Microsoft Visual Studio 8\Vc\bin\cl.exe\r | |
115 | APP = C:\Program Files\Microsoft Visual Studio 8\Vc\bin\cl.exe\r | |
116 | VFRPP = C:\Program Files\Microsoft Visual Studio 8\Vc\bin\cl.exe\r | |
117 | DLINK = C:\Program Files\Microsoft Visual Studio 8\Vc\bin\link.exe\r | |
118 | ASM = C:\WINDDK\3790.1830\bin\x86\ml.exe\r | |
119 | TIANO = TianoCompress.exe\r | |
120 | MAKE = C:\Program Files\Microsoft Visual Studio 8\Vc\bin\nmake.exe\r | |
121 | #ASMLINK = C:\WINDDK\3790.1830\bin\bin16\link.exe\r | |
122 | ASMLINK = C:\WINDDK\3790.1830\bin\bin16\link16.exe\r | |
123 | ASL = C:\ASL\iasl.exe\r | |
124 | \r | |
125 | \r | |
126 | MAKE_FILE = $(MODULE_BUILD_DIR)\Makefile\r | |
127 | \r | |
128 | #\r | |
129 | # Shell Command Macro\r | |
130 | #\r | |
131 | RD = rmdir /s /q\r | |
132 | RM = del /f /q\r | |
133 | MD = mkdir\r | |
134 | CP = copy /y\r | |
135 | MV = move /y\r | |
136 | \r | |
137 | \r | |
138 | #\r | |
139 | # Build Macro\r | |
140 | #\r | |
141 | ASSEMBLY_CODE_FILE_LIST = $(MODULE_DIR)\bootsect.asm \\r | |
142 | $(MODULE_DIR)\bs16.asm \\r | |
143 | $(MODULE_DIR)\bs32.asm \\r | |
144 | $(MODULE_DIR)\efi32.asm \\r | |
145 | $(MODULE_DIR)\Gpt.asm \\r | |
146 | $(MODULE_DIR)\Mbr.asm \\r | |
147 | $(MODULE_DIR)\start.asm \\r | |
148 | $(MODULE_DIR)\start16.asm \\r | |
149 | $(MODULE_DIR)\start32.asm \r | |
150 | \r | |
151 | TARGET_FILES = $(OUTPUT_DIR)\bootsect.com \\r | |
152 | $(OUTPUT_DIR)\bs16.com \\r | |
153 | $(OUTPUT_DIR)\bs32.com \\r | |
154 | $(OUTPUT_DIR)\Gpt.com \\r | |
155 | $(OUTPUT_DIR)\Mbr.com \\r | |
156 | $(OUTPUT_DIR)\Start.com \\r | |
157 | $(OUTPUT_DIR)\Start16.com \\r | |
158 | $(OUTPUT_DIR)\Start32.com \\r | |
159 | $(OUTPUT_DIR)\efi32.com2\r | |
160 | \r | |
161 | INC = \r | |
162 | \r | |
163 | \r | |
164 | #OBJECTS = \r | |
165 | \r | |
166 | LIBS = \r | |
167 | \r | |
168 | COMMON_DEPS = \r | |
169 | \r | |
170 | all: init $(TARGET_FILES) loader\r | |
171 | \r | |
172 | init:\r | |
173 | if not exist $(OUTPUT_DIR) mkdir $(OUTPUT_DIR)\r | |
174 | if not exist $(DEBUG_DIR) mkdir $(DEBUG_DIR)\r | |
175 | \r | |
176 | #============= \r | |
177 | $(OUTPUT_DIR)\bootsect.obj:$(MODULE_DIR)\bootsect.asm\r | |
178 | $(ASM) /c /omf /Fo"$(OUTPUT_DIR)\bootsect.obj" /FR"$(OUTPUT_DIR)\bootsect.txt" "$(MODULE_DIR)\bootsect.asm"\r | |
179 | \r | |
180 | $(OUTPUT_DIR)\bootsect.com:$(OUTPUT_DIR)\bootsect.obj\r | |
181 | "$(ASMLINK)" /tiny $(OUTPUT_DIR)\bootsect.obj,$(OUTPUT_DIR)\bootsect.com,$(OUTPUT_DIR)\bootsect.map,,,\r | |
182 | \r | |
183 | #============= \r | |
184 | \r | |
185 | $(OUTPUT_DIR)\bs16.obj:$(MODULE_DIR)\bs16.asm\r | |
186 | $(ASM) /c /omf /Fo"$(OUTPUT_DIR)\bs16.obj" "$(MODULE_DIR)\bs16.asm"\r | |
187 | \r | |
188 | $(OUTPUT_DIR)\bs16.com:$(OUTPUT_DIR)\bs16.obj\r | |
189 | "$(ASMLINK)" /tiny $(OUTPUT_DIR)\bs16.obj,$(OUTPUT_DIR)\bs16.com,$(OUTPUT_DIR)\bs16.map,,,\r | |
190 | \r | |
191 | #============= \r | |
192 | \r | |
193 | $(OUTPUT_DIR)\bs32.obj:$(MODULE_DIR)\bs32.asm\r | |
194 | $(ASM) /c /omf /Fo"$(OUTPUT_DIR)\bs32.obj" "$(MODULE_DIR)\bs32.asm"\r | |
195 | \r | |
196 | $(OUTPUT_DIR)\bs32.com:$(OUTPUT_DIR)\bs32.obj\r | |
197 | "$(ASMLINK)" /tiny $(OUTPUT_DIR)\bs32.obj,$(OUTPUT_DIR)\bs32.com,$(OUTPUT_DIR)\bs32.map,,,\r | |
198 | \r | |
199 | #============= \r | |
200 | \r | |
201 | $(OUTPUT_DIR)\Gpt.obj:$(MODULE_DIR)\Gpt.asm\r | |
202 | $(ASM) /c /omf /Fo"$(OUTPUT_DIR)\Gpt.obj" "$(MODULE_DIR)\Gpt.asm"\r | |
203 | \r | |
204 | $(OUTPUT_DIR)\Gpt.com:$(OUTPUT_DIR)\Gpt.obj\r | |
205 | "$(ASMLINK)" /tiny $(OUTPUT_DIR)\Gpt.obj,$(OUTPUT_DIR)\Gpt.com,$(OUTPUT_DIR)\Gpt.map,,,\r | |
206 | \r | |
207 | #============= \r | |
208 | \r | |
209 | $(OUTPUT_DIR)\Mbr.obj:$(MODULE_DIR)\Mbr.asm\r | |
210 | $(ASM) /c /omf /Fo"$(OUTPUT_DIR)\Mbr.obj" "$(MODULE_DIR)\Mbr.asm"\r | |
211 | \r | |
212 | $(OUTPUT_DIR)\Mbr.com:$(OUTPUT_DIR)\Mbr.obj\r | |
213 | "$(ASMLINK)" /tiny $(OUTPUT_DIR)\Mbr.obj,$(OUTPUT_DIR)\Mbr.com,$(OUTPUT_DIR)\Mbr.map,,,\r | |
214 | \r | |
215 | #============\r | |
216 | \r | |
217 | $(OUTPUT_DIR)\Start.obj:$(MODULE_DIR)\Start.asm\r | |
218 | $(ASM) /c /omf /Fo"$(OUTPUT_DIR)\Start.obj" "$(MODULE_DIR)\Start.asm"\r | |
219 | \r | |
220 | $(OUTPUT_DIR)\Start.com:$(OUTPUT_DIR)\Start.obj\r | |
221 | "$(ASMLINK)" /tiny $(OUTPUT_DIR)\Start.obj,$(OUTPUT_DIR)\Start.com,$(OUTPUT_DIR)\Start.map,,,\r | |
222 | \r | |
223 | #============= \r | |
224 | \r | |
225 | $(OUTPUT_DIR)\Start16.obj:$(MODULE_DIR)\Start16.asm\r | |
226 | $(ASM) /c /omf /Fo"$(OUTPUT_DIR)\Start16.obj" "$(MODULE_DIR)\Start16.asm"\r | |
227 | \r | |
228 | $(OUTPUT_DIR)\Start16.com:$(OUTPUT_DIR)\Start16.obj\r | |
229 | "$(ASMLINK)" /tiny $(OUTPUT_DIR)\Start16.obj,$(OUTPUT_DIR)\Start16.com,$(OUTPUT_DIR)\Start16.map,,,\r | |
230 | \r | |
231 | #=============\r | |
232 | \r | |
233 | $(OUTPUT_DIR)\Start32.obj:$(MODULE_DIR)\Start32.asm\r | |
234 | $(ASM) /c /omf /Fo"$(OUTPUT_DIR)\Start32.obj" "$(MODULE_DIR)\Start32.asm"\r | |
235 | \r | |
236 | $(OUTPUT_DIR)\Start32.com:$(OUTPUT_DIR)\Start32.obj\r | |
237 | "$(ASMLINK)" /tiny $(OUTPUT_DIR)\Start32.obj,$(OUTPUT_DIR)\Start32.com,$(OUTPUT_DIR)\Start32.map,,,\r | |
238 | \r | |
239 | #=============\r | |
240 | \r | |
241 | $(OUTPUT_DIR)\efi32.obj:$(MODULE_DIR)\efi32.asm\r | |
242 | $(ASM) /c /omf /Fo"$(OUTPUT_DIR)\efi32.obj" "$(MODULE_DIR)\efi32.asm"\r | |
243 | \r | |
244 | $(OUTPUT_DIR)\efi32.com:$(OUTPUT_DIR)\efi32.obj\r | |
245 | "$(ASMLINK)" /tiny $(OUTPUT_DIR)\efi32.obj,$(OUTPUT_DIR)\efi32.com,$(OUTPUT_DIR)\efi32.map,,,\r | |
246 | \r | |
247 | #=============\r | |
248 | \r | |
249 | $(OUTPUT_DIR)\efi32.com2:$(OUTPUT_DIR)\efi32.com\r | |
250 | $(BASETOOLS_DIR)\Split.exe -f $(OUTPUT_DIR)\efi32.com -t $(OUTPUT_DIR)\efi32.com2 -s 135168\r | |
251 | #\r | |
252 | # clean all generated files\r | |
253 | #\r | |
254 | \r | |
255 | loader:$(BUILD_DIR)\FV\Efildr\r | |
256 | \r | |
257 | $(BUILD_DIR)\FV\DUETEFIMAINFV.z:$(BUILD_DIR)\FV\DUETEFIMAINFV.Fv\r | |
258 | $(BASETOOLS_DIR)\TianoCompress -e -o $(BUILD_DIR)\FV\DUETEFIMAINFV.z $(BUILD_DIR)\FV\DUETEFIMAINFV.Fv\r | |
259 | \r | |
260 | $(BUILD_DIR)\FV\DxeMain.z:$(BUILD_DIR)\IA32\DxeMain.efi \r | |
261 | $(BASETOOLS_DIR)\TianoCompress -e -o $(BUILD_DIR)\FV\DxeMain.z $(BUILD_DIR)\IA32\DxeMain.efi\r | |
262 | \r | |
263 | $(BUILD_DIR)\FV\DxeIpl.z:$(BUILD_DIR)\IA32\DxeIpl.efi \r | |
264 | $(BASETOOLS_DIR)\TianoCompress -e -o $(BUILD_DIR)\FV\DxeIpl.z $(BUILD_DIR)\IA32\DxeIpl.efi\r | |
265 | \r | |
266 | $(BUILD_DIR)\FV\Efildr32:$(BUILD_DIR)\IA32\EfiLoader.efi $(BUILD_DIR)\FV\DxeIpl.z $(BUILD_DIR)\FV\DUETEFIMAINFV.z\r | |
267 | $(BASETOOLS_DIR)\EfiLdrImage.exe -o $(BUILD_DIR)\FV\Efildr32 $(BUILD_DIR)\IA32\EfiLoader.efi $(BUILD_DIR)\FV\DxeIpl.z $(BUILD_DIR)\FV\DUETEFIMAINFV.z\r | |
268 | \r | |
269 | $(BUILD_DIR)\FV\Efildr:$(OUTPUT_DIR)\Start.com $(OUTPUT_DIR)\Efi32.com2 $(BUILD_DIR)\FV\Efildr32\r | |
270 | copy /b $(OUTPUT_DIR)\BootSect.com+$(OUTPUT_DIR)\Efi32.com2+$(BUILD_DIR)\FV\Efildr32 $(BUILD_DIR)\FV\Efildr\r | |
271 | \r | |
272 | clean:\r | |
273 | if exist $(DEBUG_DIR) rmdir /s /q $(DEBUG_DIR)\r | |
274 | if exist $(OUTPUT_DIR) rmdir /s /q $(OUTPUT_DIR)\r | |
275 | \r | |
276 | \r |