a673d00a22c5f98fe49753a2427eabd13568d2d4
1
<?xml version=
"1.0" encoding=
"UTF-8"?>
3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 <project name=
"common">
14 Macro for intialize some properties. This Macro build will be called before source file build.
16 <macrodef name=
"Build_Init">
17 <element name=
"EXTRA.INC" optional=
"yes"/>
18 <element name=
"EXTRA.ARG" optional=
"yes"/>
21 <var name=
"OBJECTS" value=
"" />
22 <var name=
"SDB_FILES" value=
"" />
26 <isset property=
"PCH"/>
28 <equals arg1=
"${PCH}" arg2=
""/>
33 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/AutoGen.h.gch"/>
35 <makedeps DepsFile=
"${DEST_DIR_OUTPUT}/AutoGen.h.dep">
36 <input file=
"${DEST_DIR_DEBUG}/AutoGen.h"/>
44 <file ListFile=
"${DEST_DIR_OUTPUT}/AutoGen.h.dep"/>
47 <file Name=
"${DEST_DIR_OUTPUT}/AutoGen.h.gch"/>
51 <!-- Generate pre-compiled header -->
53 <command type=
"CC" cmd=
"${PCH}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${CC_FAMILY}"
54 outputFile=
"${DEST_DIR_OUTPUT}/AutoGen.h.obj" dpath=
"${CC_DPATH}" libpath=
"${CC_LIBPATH}"
55 include=
"${CC_INCLUDEPATH}">
57 <argument value=
"${PCH_FLAGS}"/>
59 <fileset casesensitive=
"on" file=
"${DEST_DIR_DEBUG}/AutoGen.h"/>
64 <equals arg1=
"${CC_FAMILY}" arg2=
"GCC"/>
66 <move file=
"${DEST_DIR_OUTPUT}/AutoGen.h.obj" tofile=
"${DEST_DIR_DEBUG}/AutoGen.h.gch" overwrite=
"true"/>
74 <equals arg1=
"${CC_FAMILY}" arg2=
"GCC"/>
77 <var name=
"OBJECTS" value=
"${OBJECTS} AutoGen.h.obj"/>
87 macro definitions for building files with different types
92 <macrodef name=
"Build_CCode">
93 <attribute name=
"FILEPATH"/>
94 <attribute name=
"FILENAME"/>
95 <attribute name=
"FILEEXT" default=
"c"/>
97 <element name=
"EXTRA.INC" optional=
"yes"/>
98 <element name=
"EXTRA.ARG" optional=
"yes"/>
101 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
102 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
103 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
106 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
108 <makedeps DepsFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep">
109 <input file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
110 <input file=
"${DEST_DIR_DEBUG}/AutoGen.h"/>
118 <file ListFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep"/>
121 <file Name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
126 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${CC_FAMILY}"
127 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj" dpath=
"${CC_DPATH}"
128 libpath=
"${CC_LIBPATH}" include=
"${CC_INCLUDEPATH}">
130 <argument value=
"${CC_FLAGS}"/>
132 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
137 <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->
139 <equals arg1=
"@{FILEPATH}" arg2=
"." />
141 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILENAME}.obj" />
144 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />
151 <macrodef name=
"Build_AUTOGEN">
152 <attribute name=
"FILEPATH"/>
153 <attribute name=
"FILENAME"/>
154 <attribute name=
"FILEEXT" default=
"c"/>
156 <element name=
"EXTRA.INC" optional=
"yes"/>
157 <element name=
"EXTRA.ARG" optional=
"yes"/>
160 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
161 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
162 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
165 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
167 <makedeps DepsFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep">
168 <input file=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
169 <input file=
"${DEST_DIR_DEBUG}/AutoGen.h"/>
177 <file ListFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep"/>
180 <file Name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
185 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${CC_FAMILY}"
186 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj" dpath=
"${CC_DPATH}"
187 libpath=
"${CC_LIBPATH}" include=
"${CC_INCLUDEPATH}">
189 <argument value=
"${CC_FLAGS}"/>
191 <fileset casesensitive=
"on" file=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
196 <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->
198 <equals arg1=
"@{FILEPATH}" arg2=
"." />
200 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILENAME}.obj" />
203 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />
209 <macrodef name=
"Build_DPX">
210 <attribute name=
"FILEPATH"/>
211 <attribute name=
"FILENAME"/>
212 <attribute name=
"FILEEXT" default=
"dxs"/>
214 <element name=
"EXTRA.INC" optional=
"yes"/>
215 <element name=
"EXTRA.ARG" optional=
"yes"/>
219 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
220 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
221 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
225 <file name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
228 <file name=
"${DEST_DIR_OUTPUT}/${BASE_NAME}.depex"/>
233 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}" family=
"${CC_FAMILY}"
234 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i" dpath=
"${CC_DPATH}"
235 libpath=
"${CC_LIBPATH}" include=
"${CC_INCLUDEPATH}">
237 <argument value=
"${PP_FLAGS}"/>
238 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
242 <gendepex inputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i" outputFile=
"${DEST_DIR_OUTPUT}/${BASE_NAME}.depex"/>
248 <macrodef name=
"Build_ASM">
249 <attribute name=
"FILEPATH"/>
250 <attribute name=
"FILENAME"/>
251 <attribute name=
"FILEEXT" default=
"asm"/>
253 <element name=
"EXTRA.INC" optional=
"yes"/>
254 <element name=
"EXTRA.ARG" optional=
"yes"/>
256 <!-- Dispath ASM file, there are three type.
258 S - Build_Gcc_Assembly
259 s - Build_Ipf_Assembly -->
262 <equals arg1=
"@{FILEEXT}" arg2=
"asm" />
264 <Build_Assembly FILEPATH=
"@{FILEPATH}" FILENAME=
"@{FILENAME}" FILEEXT=
"@{FILEEXT}">
265 <EXTRA.INC
.1><EXTRA.INC
/></EXTRA.INC
.1>
266 <EXTRA.ARG
.1><EXTRA.ARG
/></EXTRA.ARG
.1>
270 <equals arg1=
"@{FILEEXT}" arg2=
"S" />
272 <Build_Gcc_Assembly FILEPATH=
"@{FILEPATH}" FILENAME=
"@{FILENAME}" FILEEXT=
"@{FILEEXT}">
273 <EXTRA.INC
.1><EXTRA.INC
/></EXTRA.INC
.1>
274 <EXTRA.ARG
.1><EXTRA.ARG
/></EXTRA.ARG
.1>
275 </Build_Gcc_Assembly>
279 <equals arg1=
"@{FILEEXT}" arg2=
"s" />
281 <Build_IPF_Assembly_Code FILEPATH=
"@{FILEPATH}" FILENAME=
"@{FILENAME}" FILEEXT=
"@{FILEEXT}">
282 <EXTRA.INC
.1><EXTRA.INC
/></EXTRA.INC
.1>
283 <EXTRA.ARG
.1><EXTRA.ARG
/></EXTRA.ARG
.1>
284 </Build_IPF_Assembly_Code>
294 <macrodef name=
"Build_Assembly">
295 <attribute name=
"FILEPATH"/>
296 <attribute name=
"FILENAME"/>
297 <attribute name=
"FILEEXT" default=
"asm"/>
299 <element name=
"EXTRA.INC.1" optional=
"yes"/>
300 <element name=
"EXTRA.ARG.1" optional=
"yes"/>
303 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
304 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
305 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
309 <file Name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
312 <file Name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
317 <command type=
"PP" cmd=
"${PP}" workdir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}" family=
"${PP_FAMILY}"
318 dpath=
"${PP_DPATH}" libpath=
"${PP_LIBPATH}" include=
"${PP_INCLUDEPATH}">
320 <argument value=
"${PP_FLAGS}"/>
321 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
325 <replaceregexp file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"
326 match=
"^(#line +1 +.*@{FILEPATH}/@{FILENAME}\.@{FILEEXT}").+\1"
329 <replaceregexp file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"
333 <replaceregexp file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"
334 match=
"([^_a-zA-Z])0x([0-9a-fA-F]+)"
340 <command type=
"ASM" cmd=
"${ASM}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${ASM_FAMILY}"
341 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj" dpath=
"${ASM_DPATH}"
342 libpath=
"${ASM_LIBPATH}" include=
"${ASM_INCLUDEPATH}">
345 <argument value=
"${ASM_FLAGS}"/>
348 <fileset casesensitive=
"on" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>
353 <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->
355 <equals arg1=
"@{FILEPATH}" arg2=
"." />
357 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILENAME}.obj" />
360 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />
367 Build GCC assembly code
369 <macrodef name=
"Build_Gcc_Assembly">
370 <attribute name=
"FILEPATH"/>
371 <attribute name=
"FILENAME"/>
372 <attribute name=
"FILEEXT" default=
"asm"/>
374 <element name=
"EXTRA.INC.1" optional=
"yes"/>
375 <element name=
"EXTRA.ARG.1" optional=
"yes"/>
378 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
379 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
380 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
384 <file Name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
387 <file Name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
392 <command type=
"ASM" cmd=
"${ASM}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${ASM_FAMILY}"
393 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj" dpath=
"${ASM_DPATH}"
394 libpath=
"${ASM_LIBPATH}" include=
"${ASM_INCLUDEPATH}">
397 <argument value=
"${ASM_FLAGS}"/>
400 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
405 <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->
407 <equals arg1=
"@{FILEPATH}" arg2=
"." />
409 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILENAME}.obj" />
412 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />
421 <macrodef name=
"Build_IPF_Assembly_Code">
422 <attribute name=
"FILEPATH"/>
423 <attribute name=
"FILENAME"/>
424 <attribute name=
"FILEEXT" default=
"s"/>
426 <element name=
"EXTRA.INC.1" optional=
"yes"/>
427 <element name=
"EXTRA.ARG.1" optional=
"yes"/>
430 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
433 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
435 <makedeps DepsFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep">
436 <input file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
437 <input file=
"${DEST_DIR_DEBUG}/AutoGen.h"/>
445 <file listfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep"/>
448 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
453 <command type=
"PP" cmd=
"${APP}" workdir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}" family=
"${APP_FAMILY}"
454 dpath=
"${APP_DPATH}" libpath=
"${APP_LIBPATH}" include=
"${APP_INCLUDEPATH}">
456 <argument value=
"${APP_FLAGS}"/>
457 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
462 <command type=
"ASM" cmd=
"${ASM}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${ASM_FAMILY}"
463 includepathDelimiter=
"-I" outputDelimiter=
"-o" dpath=
"${ASM_DPATH}"
464 libpath=
"${ASM_LIBPATH}" include=
"${ASM_INCLUDEPATH}"
465 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj">
467 <argument value=
"${ASM_FLAGS}"/>
469 <fileset casesensitive=
"on" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>
474 <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->
476 <equals arg1=
"@{FILEPATH}" arg2=
"." />
478 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILENAME}.obj" />
481 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />
488 <macrodef name=
"Build_IPF_PP_Code">
489 <attribute name=
"FILEPATH"/>
490 <attribute name=
"FILENAME"/>
491 <attribute name=
"FILEEXT" default=
"i"/>
493 <element name=
"EXTRA.INC" optional=
"yes"/>
494 <element name=
"EXTRA.ARG" optional=
"yes"/>
497 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
500 <command type=
"ASM" includepathDelimiter=
"-I" dpath=
"${ASM_DPATH}"
501 libpath=
"${ASM_LIBPATH}" include=
"${ASM_INCLUDEPATH}">
502 <includepath path=
"${WORKSPACE_DIR}"/>
503 <includepath path=
"${MODULE_DIR}"/>
504 <includepath path=
"${MODULE_DIR}/${ARCH}"/>
507 <argument value=
"${ASM_FLAGS}"/>
509 <OutputFile File=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
511 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
519 Library private HashMap map = new HashMap();
521 <macrodef name=
"Build_Library">
522 <attribute name=
"FILENAME" />
523 <attribute name=
"FILEEXT" default=
"obj"/>
526 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
527 <var name=
"FILE_PATH" value=
"." />
528 <mkdir dir=
"${BIN_DIR}"/>
532 <fileset dir=
"${DEST_DIR_OUTPUT}" includes=
"${OBJECTS}" />
535 <file name=
"${BIN_DIR}/@{FILENAME}.lib"/>
540 <command type=
"SLINK" cmd=
"${SLINK}" family=
"${SLINK_FAMILY}"
541 outputFile=
"${BIN_DIR}/@{FILENAME}.lib" dpath=
"${SLINK_DPATH}"
542 libpath=
"${SLINK_LIBPATH}" include=
"${SLINK_INCLUDEPATH}">
543 <argument value=
"${SLINK_FLAGS}"/>
545 <fileset dir=
"${DEST_DIR_OUTPUT}" includes=
"${OBJECTS}"/>
556 <macrodef name=
"Build_UNI">
557 <attribute name=
"FILEPATH"/>
558 <attribute name=
"FILENAME"/>
559 <attribute name=
"FILEEXT" default=
"uni"/>
561 <element name=
"EXTRA.INC" optional=
"yes"/>
562 <element name=
"EXTRA.ARG" optional=
"yes"/>
565 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
569 <file name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
572 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
576 <strgather commandtype=
"parse" newdatabase=
"true">
577 <database name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
580 <inputfile name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
585 <var name=
"SDB_FILES" value=
"${SDB_FILES}, ${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
590 .sdb(s) -> .c, .h -> .obj
592 <macrodef name=
"Build_Unicode_Database">
593 <attribute name=
"FILEPATH"/>
594 <attribute name=
"FILENAME"/>
595 <attribute name=
"FILEEXT" default=
"sdb"/>
597 <element name=
"EXTRA.INC" optional=
"yes"/>
598 <element name=
"EXTRA.ARG" optional=
"yes"/>
601 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
602 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
605 <file list=
"${SDB_FILES}"/>
606 <file list=
"${SOURCE_FILES}"/>
609 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
613 <strgather commandtype=
"scan" outputdatabase=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb" verbose=
"read">
614 <skipext name=
".uni"/>
616 <database list=
"${SDB_FILES}"/>
617 <inputfile name=
"${SOURCE_FILES}"/>
624 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
627 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}StrDefs.h"/>
628 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.hpk"/>
629 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c"/>
633 <strgather basename=
"@{FILENAME}Strings" commandtype=
"dump"
634 outputdefines=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}StrDefs.h"
635 outputhpk=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.hpk"
636 outputstring=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c">
637 <database name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
644 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c"/>
645 <file ListFile=
"${DEST_DIR_OUTPUT}/AutoGen.h.dep"/>
648 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Strings.obj"/>
653 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${CC_FAMILY}"
654 includepathDelimiter=
"-I" dpath=
"${CC_DPATH}"
655 libpath=
"${CC_LIBPATH}" include=
"${CC_INCLUDEPATH}"
656 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Strings.obj">
657 <argument value=
"${CC_FLAGS}"/>
659 <fileset casesensitive=
"on" file=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c"/>
665 <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->
667 <equals arg1=
"@{FILEPATH}" arg2=
"." />
669 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILENAME}Strings.obj" />
672 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILEPATH}/@{FILENAME}Strings.obj" />
681 <macrodef name=
"Build_VFR">
682 <attribute name=
"FILEPATH"/>
683 <attribute name=
"FILENAME"/>
684 <attribute name=
"FILEEXT" default=
"vfr"/>
686 <element name=
"EXTRA.INC" optional=
"yes"/>
687 <element name=
"EXTRA.ARG" optional=
"yes"/>
690 <mkdir dir=
"${DEST_DIR_DEBUG}/@{FILEPATH}"/>
693 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
695 <makedeps DepsFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep">
696 <input file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
697 <input file=
"${DEST_DIR_DEBUG}/AutoGen.h"/>
705 <file listfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep"/>
708 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
712 <!-- if "TOOLCHIAN FAMILY" is "GCC", it should point the ouput file for preprocess compiler -->
714 <equals arg1=
"${CC_FAMILY}" arg2=
"GCC"/>
717 <command type=
"PP" cmd=
"${PP}" workdir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}" family=
"${PP_FAMILY}"
718 dpath=
"${PP_DPATH}" libpath=
"${PP_LIBPATH}" include=
"${PP_INCLUDEPATH}">
719 <argument value=
"${VFRPP_FLAGS} -o ${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>
720 <!-- Output file of the preprocess -->
722 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
730 <equals arg1=
"${CC_FAMILY}" arg2=
"GCC"/>
734 <command type=
"PP" cmd=
"${PP}" workdir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}" family=
"${PP_FAMILY}"
735 dpath=
"${PP_DPATH}" libpath=
"${PP_LIBPATH}" include=
"${PP_INCLUDEPATH}">
736 <argument value=
"${VFRPP_FLAGS} ${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
737 <!-- Output file of the preprocess -->
739 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
746 <vfrcompile createIfrBinFile=
"on" createListFile=
"on" outPutDir=
"${DEST_DIR_DEBUG}/@{FILEPATH}" vfrFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i">
751 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}"
752 includepathDelimiter=
"-I" family=
"${CC_FAMILY}" dpath=
"${CC_DPATH}"
753 libpath=
"${CC_LIBPATH}" include=
"${CC_INCLUDEPATH}"
754 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj" >
755 <argument value=
"${CC_FLAGS}"/>
758 <fileset casesensitive=
"on" file=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.c"/>
763 <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->
765 <equals arg1=
"@{FILEPATH}" arg2=
"." />
767 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILENAME}.obj" />
770 <var name=
"OBJECTS" value=
"${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />
777 Build the real mode ASM file
779 <macrodef name=
"Build_RealAsm">
780 <attribute name=
"FILEPATH"/>
781 <attribute name=
"FILENAME"/>
782 <attribute name=
"FILEEXT" default=
"asm"/>
784 <element name=
"EXTRA.INC" optional=
"yes"/>
785 <element name=
"EXTRA.ARG" optional=
"yes"/>
790 <file name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
793 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.cat"/>
797 <exec dir=
"${DEST_DIR_OUTPUT}" executable=
"${ASM}" failonerror=
"true">
798 <arg line=
"/nologo /omf ${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT} /Bl${ASMLINK} ${ASMLINK_FLAGS}"/>
800 <concat destfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.cat" binary=
"yes">
801 <filelist dir=
"${MODULE_DIR}" files=
"Blank2.pad"/>
802 <filelist dir=
"${DEST_DIR_OUTPUT}" files=
"@{FILENAME}.com"/>
812 <macrodef name=
"Build_ASL">
813 <attribute name=
"FILEPATH"/>
814 <attribute name=
"FILENAME"/>
815 <attribute name=
"FILEEXT" default=
"asl"/>
817 <element name=
"EXTRA.INC" optional=
"yes"/>
818 <element name=
"EXTRA.ARG" optional=
"yes"/>
821 <mkdir dir=
"${DEST_DIR_OUTPUT}"/>
825 <file name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
828 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.sec"/>
833 <command type=
"PP" cmd=
"${PP}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${PP_FAMILY}"
834 dpath=
"${PP_DPATH}" libpath=
"${PP_LIBPATH}" include=
"${PP_INCLUDEPATH}">
835 <argument value=
"${APP_FLAGS}"/>
837 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
841 <exec dir=
"${DEST_DIR_OUTPUT}" executable=
"${ASL}" failonerror=
"true" outputproperty=
"ASL_OUTPUT">
842 <arg line=
"${DEST_DIR_OUTPUT}/@{FILENAME}.i"/>
847 <contains string=
"${ASL_OUTPUT}" substring=
"Supports ACPI Specification Revision 2.0"/>
848 <contains string=
"${ASL_OUTPUT}" substring=
"Supports ACPI Specification Revision 1.0"/>
851 <fail message=
"Current Asl tool not support Acpi Spec 3.0. Pls update your Asl compiler."/>
855 <EFI_SECTION_RAW FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"aml"/>
863 Build Asl table c file
865 <macrodef name=
"Build_CCASL">
866 <attribute name=
"FILEPATH"/>
867 <attribute name=
"FILENAME"/>
868 <attribute name=
"FILEEXT" default=
"c"/>
870 <element name=
"EXTRA.INC" optional=
"yes"/>
871 <element name=
"EXTRA.ARG" optional=
"yes"/>
874 <mkdir dir=
"${DEST_DIR_OUTPUT}"/>
878 <file name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
881 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.sec"/>
887 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${CC_FAMILY}"
888 outputFile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.obj" dpath=
"${CC_DPATH}"
889 libpath=
"${CC_LIBPATH}" include=
"${CC_INCLUDEPATH}">
891 <argument value=
"${CC_FLAGS}"/>
893 <fileset casesensitive=
"on" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
898 <command type=
"DLINK" cmd=
"${DLINK}" family=
"${DLINK_FAMILY}"
899 outputFile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.exe" dpath=
"${DLINK_DPATH}" >
900 <argument value=
"${SLINK_FLAGS}"/>
901 <fileset casesensitive=
"on" file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.obj"/>
905 <genacpitable inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.exe" outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.acpi" />
907 <EFI_SECTION_RAW FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"acpi"/>
916 <macrodef name=
"Build_DUMMY">
917 <attribute name=
"FILEPATH"/>
918 <attribute name=
"FILENAME"/>
919 <attribute name=
"FILEEXT"/>
921 <element name=
"EXTRA.INC" optional=
"yes"/>
922 <element name=
"EXTRA.ARG" optional=
"yes"/>
925 <!--echo message="Ignoring ${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}" level="info" /-->
929 <!--############################################################################
931 #############################################################################-->
935 <macrodef name=
"GenDll">
936 <attribute name=
"FILEPATH"/>
937 <attribute name=
"FILENAME"/>
938 <attribute name=
"FILEEXT"/>
940 <element name=
"LIB.ARG" optional=
"yes"/>
941 <element name=
"LINK.ARG" optional=
"yes"/>
944 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
945 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
948 <file list=
"${LIBS}"/>
949 <fileset dir=
"${DEST_DIR_OUTPUT}" includes=
"${OBJECTS}" />
952 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.dll"/>
957 <command type=
"SLINK" cmd=
"${SLINK}" family=
"${SLINK_FAMILY}" dpath=
"${SLINK_DPATH}"
958 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Local.lib"
959 libpath=
"${SLINKLIBPATH}" include=
"${SLINK_INCLUDEPATH}">
960 <argument value=
"${SLINK_FLAGS}"/>
962 <fileset dir=
"${DEST_DIR_OUTPUT}" includes=
"${OBJECTS}"/>
966 <command type=
"DLINK" cmd=
"${DLINK}" family=
"${DLINK_FAMILY}"
967 outputFile=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.dll" dpath=
"${DLINK_DPATH}"
968 libpath=
"${DLINK_LIBPATH}" include=
"${DLINK_INCLUDEPATH}">
969 <argument value=
"${DLINK_FLAGS}"/>
970 <libset libs=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Local.lib ${LIBS} ${DLINK_SPATH}"/>
982 <macrodef name=
"GenEfi">
983 <attribute name=
"FILEPATH"/>
984 <attribute name=
"FILENAME"/>
985 <attribute name=
"FILEEXT" default=
"dll"/>
990 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
993 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"/>
997 <fwimage componentType=
"${MODULE_TYPE}" outImage=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"
998 peImage=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}" time=
"0"/>
1005 EFI_SECTION_FREEFORM_SUBTYPE_GUID
1007 EFI_SECTION_USER_INTERFACE
1008 EFI_SECTION_DXE_DEPEX
1009 EFI_SECTION_PEI_DEPEX
1014 EFI_SECTION_COMPRESSION
1015 EFI_SECTION_GUID_DEFINED
1016 EFI_SECTION_COMPATIBILITY16
1017 EFI_SECTION_FIRMWARE_VOLUME_IMAGE
1023 <macrodef name=
"EFI_SECTION_TE">
1024 <attribute name=
"FILEPATH"/>
1025 <attribute name=
"FILENAME"/>
1026 <attribute name=
"FILEEXT" default=
"" />
1028 <element name=
"PRE.PROCESS" optional=
"yes"/>
1029 <element name=
"POST.PROCESS" optional=
"yes"/>
1035 <equals arg1=
"${LIBS}" arg2=
""/>
1039 <GenDll FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"">
1041 <LINK.ARG
></LINK.ARG
>
1044 <GenEfi FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"dll"/>
1050 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"/>
1053 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.tes"/>
1057 <copy file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi" tofile=
"${BIN_DIR}/@{FILENAME}.efi" />
1058 <copy file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi" tofile=
"${DEST_DIR_DEBUG}/@{FILENAME}.efi" />
1059 <genteimage Dump=
"false" Verbose=
"false" OutputDir=
"" OutputFile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.te" InputFile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"/>
1060 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.te"
1061 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.tes"
1062 sectiontype=
"EFI_SECTION_TE"/>
1069 <macrodef name=
"EFI_SECTION_PE32">
1070 <attribute name=
"FILEPATH"/>
1071 <attribute name=
"FILENAME"/>
1072 <attribute name=
"FILEEXT" default=
"" />
1074 <element name=
"PRE.PROCESS" optional=
"yes"/>
1075 <element name=
"POST.PROCESS" optional=
"yes"/>
1081 <!-- TBD ${OBJECTS} -->
1082 <equals arg1=
"${LIBS}" arg2=
""/>
1086 <GenDll FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"">
1088 <LINK.ARG
></LINK.ARG
>
1091 <GenEfi FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"dll"/>
1097 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"/>
1100 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.pe32"/>
1104 <copy file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi" tofile=
"${BIN_DIR}/@{FILENAME}.efi" />
1105 <copy file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi" tofile=
"${DEST_DIR_DEBUG}/@{FILENAME}.efi" />
1106 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"
1107 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.pe32"
1108 sectiontype=
"EFI_SECTION_PE32"/>
1119 <macrodef name=
"EFI_SECTION_VERSION">
1120 <attribute name=
"FILEPATH"/>
1121 <attribute name=
"FILENAME"/>
1122 <attribute name=
"FILEEXT" default=
"" />
1123 <attribute name=
"VERSION" default=
"0000"/>
1125 <element name=
"PRE.PROCESS" optional=
"yes"/>
1126 <element name=
"POST.PROCESS" optional=
"yes"/>
1131 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.ver"/>
1136 <gensection outputfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.ver"
1137 versionnum=
"@{VERSION}"
1138 sectiontype=
"EFI_SECTION_VERSION"/>
1146 EFI_SECTION_USER_INTERFACE
1148 <macrodef name=
"EFI_SECTION_USER_INTERFACE">
1149 <attribute name=
"FILEPATH"/>
1150 <attribute name=
"FILENAME"/>
1151 <attribute name=
"FILEEXT" default=
"" />
1152 <attribute name=
"UI" default=
"${BASE_NAME}"/>
1154 <element name=
"PRE.PROCESS" optional=
"yes"/>
1155 <element name=
"POST.PROCESS" optional=
"yes"/>
1160 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.ui"/>
1165 <gensection interfacestring=
"@{UI}"
1166 outputfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.ui"
1167 sectiontype=
"EFI_SECTION_USER_INTERFACE"/>
1175 EFI_SECTION_DXE_DEPEX
1177 <macrodef name=
"EFI_SECTION_DXE_DEPEX">
1178 <attribute name=
"FILEPATH"/>
1179 <attribute name=
"FILENAME"/>
1180 <attribute name=
"FILEEXT" default=
"dxs"/>
1182 <element name=
"PRE.PROCESS" optional=
"yes"/>
1183 <element name=
"POST.PROCESS" optional=
"yes"/>
1189 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"/>
1193 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"/>
1196 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
1199 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"
1200 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"
1201 sectiontype=
"EFI_SECTION_DXE_DEPEX"/>
1208 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
1211 <touch file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
1222 EFI_SECTION_PEI_DEPEX
1224 <macrodef name=
"EFI_SECTION_PEI_DEPEX">
1225 <attribute name=
"FILEPATH"/>
1226 <attribute name=
"FILENAME"/>
1227 <attribute name=
"FILEEXT" default=
"dxs"/>
1229 <element name=
"PRE.PROCESS" optional=
"yes"/>
1230 <element name=
"POST.PROCESS" optional=
"yes"/>
1234 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"/>
1238 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"/>
1241 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
1245 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"
1246 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"
1247 sectiontype=
"EFI_SECTION_PEI_DEPEX"/>
1255 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
1258 <touch file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
1271 <macrodef name=
"EFI_SECTION_RAW">
1272 <attribute name=
"FILEPATH"/>
1273 <attribute name=
"FILENAME"/>
1274 <attribute name=
"FILEEXT" default=
"bin"/>
1276 <element name=
"PRE.PROCESS" optional=
"yes"/>
1277 <element name=
"POST.PROCESS" optional=
"yes"/>
1282 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
1285 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.sec"/>
1290 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1291 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.sec"
1292 sectiontype=
"EFI_SECTION_RAW"/>
1302 <macrodef name=
"EFI_SECTION_RAW_SEC">
1303 <attribute name=
"FILEPATH"/>
1304 <attribute name=
"FILENAME"/>
1305 <attribute name=
"FILEEXT" default=
"cat"/>
1307 <element name=
"PRE.PROCESS" optional=
"yes"/>
1308 <element name=
"POST.PROCESS" optional=
"yes"/>
1313 <file name=
"${DEST_DIR_OUTPUT}/ResetVec.@{FILEEXT}"/>
1314 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.te"/>
1317 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.sec"/>
1322 <secfixup secexefile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.te" resetvectorDatafile=
"${DEST_DIR_OUTPUT}/ResetVec.@{FILEEXT}"
1323 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.bin"/>
1325 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.bin"
1326 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.sec"
1327 sectiontype=
"EFI_SECTION_RAW"/>
1335 EFI_SECTION_FIRMWARE_VOLUME_IMAGE
1337 <macrodef name=
"EFI_SECTION_FIRMWARE_VOLUME_IMAGE">
1338 <attribute name=
"FILEPATH"/>
1339 <attribute name=
"FILENAME"/>
1340 <attribute name=
"FILEEXT" default=
"fv"/>
1342 <element name=
"PRE.PROCESS" optional=
"yes"/>
1343 <element name=
"POST.PROCESS" optional=
"yes"/>
1348 <file name=
"${FV_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
1351 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}fv.sec"/>
1357 <copy file=
"${FV_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1358 tofile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1360 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1361 outputfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}fv.sec"
1362 sectiontype=
"EFI_SECTION_FIRMWARE_VOLUME_IMAGE"/>
1373 <macrodef name=
"Build_Binary">
1374 <attribute name=
"FILEPATH"/>
1375 <attribute name=
"FILENAME"/>
1376 <attribute name=
"FILEEXT" default=
"bin"/>
1378 <element name=
"EXTRA.INC" optional=
"yes"/>
1379 <element name=
"EXTRA.ARG" optional=
"yes"/>
1382 <copy file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1383 tofile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.bin"/>
1390 <macrodef name=
"Build_MICROCODE">
1391 <attribute name=
"FILEPATH"/>
1392 <attribute name=
"FILENAME"/>
1393 <attribute name=
"FILEEXT" default=
"TXT"/>
1395 <element name=
"EXTRA.INC" optional=
"yes"/>
1396 <element name=
"EXTRA.ARG" optional=
"yes"/>
1399 <mkdir dir=
"${TARGET_DIR}/Microcode"/>
1400 <flashmap MCIFile=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}" MCOFILE=
"${TARGET_DIR}/Microcode/@{FILENAME}.bin"/>
1407 <macrodef name=
"Build_BMP">
1408 <attribute name=
"FILEPATH"/>
1409 <attribute name=
"FILENAME"/>
1410 <attribute name=
"FILEEXT" default=
"bmp"/>
1412 <element name=
"EXTRA.INC" optional=
"yes"/>
1413 <element name=
"EXTRA.ARG" optional=
"yes"/>
1416 <copy file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1417 tofile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.bin"/>
1424 <macrodef name=
"Build_EFI">
1425 <attribute name=
"FILEPATH"/>
1426 <attribute name=
"FILENAME"/>
1427 <attribute name=
"FILEEXT" default=
"efi"/>
1429 <element name=
"EXTRA.INC" optional=
"yes"/>
1430 <element name=
"EXTRA.ARG" optional=
"yes"/>
1433 <mkdir dir=
"${MODULE_DIR}/@{FILEPATH}" />
1434 <copy file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1435 tofile=
"${DEST_DIR_OUTPUT}/${BASE_NAME}.efi"/>
1440 Build macro for Apriori
1442 <macrodef name=
"Build_Apriori">
1443 <attribute name=
"FILEPATH" default=
"."/>
1444 <attribute name=
"FILENAME"/>
1445 <attribute name=
"FILEEXT" default=
"apr"/>
1446 <attribute name=
"GUID"/>
1449 <mkdir dir=
"${FV_DIR}/Apriori" />
1450 <gensection inputfile=
"${FV_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1451 outputfile=
"${FV_DIR}/Apriori/@{FILENAME}.sec"
1452 sectiontype=
"EFI_SECTION_RAW"/>
1454 <genffsfile BaseName=
"@{FILENAME}" ffsATTRIBCHECKSUM=
"TRUE" ffsFILETYPE=
"EFI_FV_FILETYPE_FREEFORM"
1455 fileGuid=
"@{GUID}" moduleType=
"BASE" outputDir=
"${FV_DIR}">
1456 <sectFile fileName=
"${FV_DIR}/Apriori/@{FILENAME}.sec"/>