]>
git.proxmox.com Git - mirror_edk2.git/blob - Tools/Conf/BuildMacro.xml
4f2cf8d3b412ced4a9db496c2e32dbec92d23f5c
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 definitions for building files with different types
19 <macrodef name=
"Build_CCode">
20 <attribute name=
"FILEPATH"/>
21 <attribute name=
"FILENAME"/>
22 <attribute name=
"FILEEXT" default=
"c"/>
24 <element name=
"EXTRA.INC" optional=
"yes"/>
25 <element name=
"EXTRA.ARG" optional=
"yes"/>
28 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
29 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
30 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
33 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
35 <makedeps DepsFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep">
36 <input file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
37 <input file=
"${DEST_DIR_DEBUG}/AutoGen.h"/>
45 <file ListFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep"/>
48 <file Name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
53 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${CC_FAMILY}"
54 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj">
56 <argument value=
"${CC_FLAGS}"/>
58 <fileset casesensitive=
"off" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
67 <macrodef name=
"Build_AUTOGEN">
68 <attribute name=
"FILEPATH"/>
69 <attribute name=
"FILENAME"/>
70 <attribute name=
"FILEEXT" default=
"c"/>
72 <element name=
"EXTRA.INC" optional=
"yes"/>
73 <element name=
"EXTRA.ARG" optional=
"yes"/>
76 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
77 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
78 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
81 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
83 <makedeps DepsFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep">
84 <input file=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
85 <input file=
"${DEST_DIR_DEBUG}/AutoGen.h"/>
93 <file ListFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep"/>
96 <file Name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
101 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${CC_FAMILY}"
102 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj">
104 <argument value=
"${CC_FLAGS}"/>
106 <fileset casesensitive=
"off" file=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
114 <macrodef name=
"Build_DPX">
115 <attribute name=
"FILEPATH"/>
116 <attribute name=
"FILENAME"/>
117 <attribute name=
"FILEEXT" default=
"dxs"/>
119 <element name=
"EXTRA.INC" optional=
"yes"/>
120 <element name=
"EXTRA.ARG" optional=
"yes"/>
124 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
125 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
126 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
130 <file name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
133 <file name=
"${DEST_DIR_OUTPUT}/${BASE_NAME}.depex"/>
138 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}" family=
"${CC_FAMILY}"
139 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i">
141 <argument value=
"${PP_FLAGS}"/>
142 <fileset casesensitive=
"off" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
146 <gendepex inputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i" outputFile=
"${DEST_DIR_OUTPUT}/${BASE_NAME}.depex"/>
152 <macrodef name=
"Build_ASM">
153 <attribute name=
"FILEPATH"/>
154 <attribute name=
"FILENAME"/>
155 <attribute name=
"FILEEXT" default=
"asm"/>
157 <element name=
"EXTRA.INC" optional=
"yes"/>
158 <element name=
"EXTRA.ARG" optional=
"yes"/>
160 <!-- Dispath ASM file, there are three type.
162 S - Build_Gcc_Assembly
163 s - Build_Ipf_Assembly -->
166 <equals arg1=
"@{FILEEXT}" arg2=
"asm" />
168 <Build_Assembly FILEPATH=
"@{FILEPATH}" FILENAME=
"@{FILENAME}" FILEEXT=
"@{FILEEXT}">
169 <EXTRA.INC
.1><EXTRA.INC
/></EXTRA.INC
.1>
170 <EXTRA.ARG
.1><EXTRA.ARG
/></EXTRA.ARG
.1>
174 <equals arg1=
"@{FILEEXT}" arg2=
"S" />
176 <Build_Gcc_Assembly FILEPATH=
"@{FILEPATH}" FILENAME=
"@{FILENAME}" FILEEXT=
"@{FILEEXT}">
177 <EXTRA.INC
.1><EXTRA.INC
/></EXTRA.INC
.1>
178 <EXTRA.ARG
.1><EXTRA.ARG
/></EXTRA.ARG
.1>
179 </Build_Gcc_Assembly>
183 <equals arg1=
"@{FILEEXT}" arg2=
"s" />
185 <Build_IPF_Assembly_Code FILEPATH=
"@{FILEPATH}" FILENAME=
"@{FILENAME}" FILEEXT=
"@{FILEEXT}">
186 <EXTRA.INC
.1><EXTRA.INC
/></EXTRA.INC
.1>
187 <EXTRA.ARG
.1><EXTRA.ARG
/></EXTRA.ARG
.1>
188 </Build_IPF_Assembly_Code>
198 <macrodef name=
"Build_Assembly">
199 <attribute name=
"FILEPATH"/>
200 <attribute name=
"FILENAME"/>
201 <attribute name=
"FILEEXT" default=
"asm"/>
203 <element name=
"EXTRA.INC.1" optional=
"yes"/>
204 <element name=
"EXTRA.ARG.1" optional=
"yes"/>
207 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
208 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
209 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
213 <file Name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
216 <file Name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
221 <command type=
"PP" cmd=
"${PP}" workdir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}" family=
"${PP_FAMILY}">
223 <argument value=
"${PP_FLAGS}"/>
224 <fileset casesensitive=
"off" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
228 <replaceregexp file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"
229 match=
"^(#line +1 +.*@{FILEPATH}/@{FILENAME}\.@{FILEEXT}").+\1"
232 <replaceregexp file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"
236 <replaceregexp file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"
237 match=
"([^_a-zA-Z])0x([0-9a-fA-F]+)"
243 <command type=
"ASM" cmd=
"${ASM}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${ASM_FAMILY}"
244 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj">
247 <argument value=
"${ASM_FLAGS}"/>
250 <fileset casesensitive=
"off" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>
259 Build GCC assembly code
261 <macrodef name=
"Build_Gcc_Assembly">
262 <attribute name=
"FILEPATH"/>
263 <attribute name=
"FILENAME"/>
264 <attribute name=
"FILEEXT" default=
"asm"/>
266 <element name=
"EXTRA.INC.1" optional=
"yes"/>
267 <element name=
"EXTRA.ARG.1" optional=
"yes"/>
270 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
271 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
272 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
276 <file Name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
279 <file Name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
284 <command type=
"ASM" cmd=
"${ASM}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${ASM_FAMILY}"
285 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj">
288 <argument value=
"${ASM_FLAGS}"/>
291 <fileset casesensitive=
"off" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
302 <macrodef name=
"Build_IPF_Assembly_Code">
303 <attribute name=
"FILEPATH"/>
304 <attribute name=
"FILENAME"/>
305 <attribute name=
"FILEEXT" default=
"s"/>
307 <element name=
"EXTRA.INC.1" optional=
"yes"/>
308 <element name=
"EXTRA.ARG.1" optional=
"yes"/>
311 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
314 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
316 <makedeps DepsFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep">
317 <input file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
325 <file listfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep"/>
328 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
333 <command type=
"PP" cmd=
"${PP}" workdir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}" family=
"${PP_FAMILY}">
335 <argument value=
"${PP_FLAGS}"/>
336 <fileset casesensitive=
"off" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
341 <command type=
"ASM" cmd=
"${ASM}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${ASM_FAMILY}"
342 includepathDelimiter=
"-I" outputDelimiter=
"-o"
343 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj">
345 <argument value=
"${ASM_FLAGS}"/>
347 <fileset casesensitive=
"off" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>
356 <macrodef name=
"Build_IPF_PP_Code">
357 <attribute name=
"FILEPATH"/>
358 <attribute name=
"FILENAME"/>
359 <attribute name=
"FILEEXT" default=
"i"/>
361 <element name=
"EXTRA.INC" optional=
"yes"/>
362 <element name=
"EXTRA.ARG" optional=
"yes"/>
365 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
368 <command type=
"ASM" includepathDelimiter=
"-I">
369 <includepath path=
"${WORKSPACE_DIR}"/>
370 <includepath path=
"${MODULE_DIR}"/>
371 <includepath path=
"${MODULE_DIR}/${ARCH}"/>
374 <argument value=
"${ASM_FLAGS}"/>
376 <OutputFile File=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
378 <fileset casesensitive=
"off" file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
386 Library private HashMap map = new HashMap();
388 <macrodef name=
"Build_Library">
389 <attribute name=
"FILENAME" />
390 <attribute name=
"FILEEXT" default=
"obj"/>
393 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
394 <var name=
"FILE_PATH" value=
"." />
395 <mkdir dir=
"${BIN_DIR}"/>
399 <fileset casesensitive=
"off" dir=
"${DEST_DIR_OUTPUT}" includes=
"**/*.obj"/>
402 <file name=
"${BIN_DIR}/@{FILENAME}.lib"/>
407 <command type=
"SLINK" cmd=
"${SLINK}" family=
"${SLINK_FAMILY}"
408 outputFile=
"${BIN_DIR}/@{FILENAME}.lib">
409 <argument value=
"${SLINK_FLAGS}"/>
411 <fileset casesensitive=
"off" dir=
"${DEST_DIR_OUTPUT}" includes=
"**/*.obj"/>
422 <macrodef name=
"Build_UNI">
423 <attribute name=
"FILEPATH"/>
424 <attribute name=
"FILENAME"/>
425 <attribute name=
"FILEEXT" default=
"uni"/>
427 <element name=
"EXTRA.INC" optional=
"yes"/>
428 <element name=
"EXTRA.ARG" optional=
"yes"/>
431 <mkdir dir=
"${DEST_DIR_OUTPUT}/@{FILEPATH}"/>
435 <file name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
438 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
442 <strgather commandtype=
"parse" newdatabase=
"true">
443 <database name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
446 <inputfile name=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
451 <var name=
"SDB_FILES" value=
"${SDB_FILES}, ${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
456 .sdb(s) -> .c, .h -> .obj
458 <macrodef name=
"Build_Unicode_Database">
459 <attribute name=
"FILEPATH"/>
460 <attribute name=
"FILENAME"/>
461 <attribute name=
"FILEEXT" default=
"sdb"/>
463 <element name=
"EXTRA.INC" optional=
"yes"/>
464 <element name=
"EXTRA.ARG" optional=
"yes"/>
467 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
468 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
471 <file list=
"${SDB_FILES}"/>
472 <file list=
"${SOURCE_FILES}"/>
475 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
479 <strgather commandtype=
"scan" outputdatabase=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb" verbose=
"read">
480 <skipext name=
".uni"/>
482 <database list=
"${SDB_FILES}"/>
483 <inputfile name=
"${SOURCE_FILES}"/>
490 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
493 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}StrDefs.h"/>
494 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.hpk"/>
495 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c"/>
499 <strgather basename=
"@{FILENAME}Strings" commandtype=
"dump"
500 outputdefines=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}StrDefs.h"
501 outputhpk=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.hpk"
502 outputstring=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c">
503 <database name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.sdb"/>
510 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c"/>
513 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Strings.obj"/>
518 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}" family=
"${CC_FAMILY}"
519 includepathDelimiter=
"-I"
520 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Strings.obj">
521 <argument value=
"${CC_FLAGS}"/>
523 <fileset casesensitive=
"off" file=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c"/>
535 <macrodef name=
"Build_VFR">
536 <attribute name=
"FILEPATH"/>
537 <attribute name=
"FILENAME"/>
538 <attribute name=
"FILEEXT" default=
"vfr"/>
540 <element name=
"EXTRA.INC" optional=
"yes"/>
541 <element name=
"EXTRA.ARG" optional=
"yes"/>
544 <mkdir dir=
"${DEST_DIR_DEBUG}/@{FILEPATH}"/>
547 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
549 <makedeps DepsFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep">
550 <input file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
558 <file listfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}.dep"/>
561 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>
565 <vfrcompile createIfrBinFile=
"on" createListFile=
"on" outPutDir=
"${DEST_DIR_DEBUG}/@{FILEPATH}" vfrFile=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}">
570 <command type=
"CC" cmd=
"${CC}" workdir=
"${DEST_DIR_OUTPUT}"
571 includepathDelimiter=
"-I" family=
"${CC_FAMILY}"
572 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj" >
573 <argument value=
"${CC_FLAGS}"/>
576 <fileset casesensitive=
"off" file=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.c"/>
579 <delete file=
"${PLATFORM_DIR}/@{FILENAME}.i" />
588 <macrodef name=
"Build_DUMMY">
589 <attribute name=
"FILEPATH"/>
590 <attribute name=
"FILENAME"/>
591 <attribute name=
"FILEEXT"/>
593 <element name=
"EXTRA.INC" optional=
"yes"/>
594 <element name=
"EXTRA.ARG" optional=
"yes"/>
597 <echo message=
"Ignore DUMMY file ${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
601 <!--############################################################################
603 #############################################################################-->
607 <macrodef name=
"GenDll">
608 <attribute name=
"FILEPATH"/>
609 <attribute name=
"FILENAME"/>
610 <attribute name=
"FILEEXT"/>
612 <element name=
"LIB.ARG" optional=
"yes"/>
613 <element name=
"LINK.ARG" optional=
"yes"/>
616 <var name=
"FILE_BASENAME" value=
"@{FILENAME}" />
617 <var name=
"FILE_PATH" value=
"@{FILEPATH}" />
620 <file list=
"${LIBS}"/>
621 <fileset casesensitive=
"off" dir=
"${DEST_DIR_OUTPUT}" includes=
"**/*.obj"/>
624 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.dll"/>
629 <command type=
"SLINK" cmd=
"${SLINK}" family=
"${SLINK_FAMILY}"
630 outputFile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Local.lib">
631 <argument value=
"${SLINK_FLAGS}"/>
633 <fileset casesensitive=
"off" dir=
"${DEST_DIR_OUTPUT}" includes=
"**/*.obj"/>
637 <command type=
"DLINK" cmd=
"${DLINK}" family=
"${DLINK_FAMILY}"
638 outputFile=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.dll" >
639 <argument value=
"${DLINK_FLAGS}"/>
640 <libset libs=
"${LIBS}"/>
641 <libset libs=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Local.lib"/>
642 <libset libs=
"${DLINK_SPATH}" />
654 <macrodef name=
"GenEfi">
655 <attribute name=
"FILEPATH"/>
656 <attribute name=
"FILENAME"/>
657 <attribute name=
"FILEEXT" default=
"dll"/>
662 <file name=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
665 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"/>
669 <fwimage componentType=
"${MODULE_TYPE}" outImage=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"
670 peImage=
"${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}" time=
"0"/>
677 EFI_SECTION_FREEFORM_SUBTYPE_GUID
679 EFI_SECTION_USER_INTERFACE
680 EFI_SECTION_DXE_DEPEX
681 EFI_SECTION_PEI_DEPEX
686 EFI_SECTION_COMPRESSION
687 EFI_SECTION_GUID_DEFINED
688 EFI_SECTION_COMPATIBILITY16
689 EFI_SECTION_FIRMWARE_VOLUME_IMAGE
695 <macrodef name=
"EFI_SECTION_TE">
696 <attribute name=
"FILEPATH"/>
697 <attribute name=
"FILENAME"/>
698 <attribute name=
"FILEEXT" default=
"" />
700 <element name=
"PRE.PROCESS" optional=
"yes"/>
701 <element name=
"POST.PROCESS" optional=
"yes"/>
707 <equals arg1=
"${LIBS}" arg2=
""/>
711 <GenDll FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"">
713 <LINK.ARG
></LINK.ARG
>
716 <GenEfi FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"dll"/>
722 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"/>
725 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.tes"/>
729 <copy file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi" tofile=
"${BIN_DIR}/@{FILENAME}.efi" />
730 <copy file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi" tofile=
"${DEST_DIR_DEBUG}/@{FILENAME}.efi" />
731 <genteimage Dump=
"false" Verbose=
"false" OutputDir=
"" OutputFile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.te" InputFile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"/>
732 <copy file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.te" tofile=
"${BIN_DIR}/@{FILENAME}.te" />
733 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.te"
734 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.tes"
735 sectiontype=
"EFI_SECTION_TE"/>
742 <macrodef name=
"EFI_SECTION_PE32">
743 <attribute name=
"FILEPATH"/>
744 <attribute name=
"FILENAME"/>
745 <attribute name=
"FILEEXT" default=
"" />
747 <element name=
"PRE.PROCESS" optional=
"yes"/>
748 <element name=
"POST.PROCESS" optional=
"yes"/>
754 <!-- TBD ${OBJECTS} -->
755 <equals arg1=
"${LIBS}" arg2=
""/>
759 <GenDll FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"">
761 <LINK.ARG
></LINK.ARG
>
764 <GenEfi FILEPATH=
"." FILENAME=
"@{FILENAME}" FILEEXT=
"dll"/>
770 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"/>
773 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.pe32"/>
777 <copy file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi" tofile=
"${BIN_DIR}/@{FILENAME}.efi" />
779 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi"
780 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.pe32"
781 sectiontype=
"EFI_SECTION_PE32"/>
786 <copy file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.efi" tofile=
"${DEST_DIR_DEBUG}/@{FILENAME}.efi" />
793 <macrodef name=
"EFI_SECTION_VERSION">
794 <attribute name=
"FILEPATH"/>
795 <attribute name=
"FILENAME"/>
796 <attribute name=
"FILEEXT" default=
"" />
797 <attribute name=
"VERSION" default=
"0000"/>
799 <element name=
"PRE.PROCESS" optional=
"yes"/>
800 <element name=
"POST.PROCESS" optional=
"yes"/>
805 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.ver"/>
810 <gensection outputfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.ver"
811 versionnum=
"@{VERSION}"
812 sectiontype=
"EFI_SECTION_VERSION"/>
820 EFI_SECTION_USER_INTERFACE
822 <macrodef name=
"EFI_SECTION_USER_INTERFACE">
823 <attribute name=
"FILEPATH"/>
824 <attribute name=
"FILENAME"/>
825 <attribute name=
"FILEEXT" default=
"" />
826 <attribute name=
"UI" default=
"${BASE_NAME}"/>
828 <element name=
"PRE.PROCESS" optional=
"yes"/>
829 <element name=
"POST.PROCESS" optional=
"yes"/>
834 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.ui"/>
839 <gensection interfacestring=
"@{UI}"
840 outputfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.ui"
841 sectiontype=
"EFI_SECTION_USER_INTERFACE"/>
849 EFI_SECTION_DXE_DEPEX
851 <macrodef name=
"EFI_SECTION_DXE_DEPEX">
852 <attribute name=
"FILEPATH"/>
853 <attribute name=
"FILENAME"/>
854 <attribute name=
"FILEEXT" default=
"dxs"/>
856 <element name=
"PRE.PROCESS" optional=
"yes"/>
857 <element name=
"POST.PROCESS" optional=
"yes"/>
863 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"/>
867 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"/>
870 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
873 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"
874 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"
875 sectiontype=
"EFI_SECTION_DXE_DEPEX"/>
882 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
885 <touch file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
896 EFI_SECTION_PEI_DEPEX
898 <macrodef name=
"EFI_SECTION_PEI_DEPEX">
899 <attribute name=
"FILEPATH"/>
900 <attribute name=
"FILENAME"/>
901 <attribute name=
"FILEEXT" default=
"dxs"/>
903 <element name=
"PRE.PROCESS" optional=
"yes"/>
904 <element name=
"POST.PROCESS" optional=
"yes"/>
908 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"/>
912 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"/>
915 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
919 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.depex"
920 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"
921 sectiontype=
"EFI_SECTION_PEI_DEPEX"/>
929 <available type=
"file" file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
932 <touch file=
"${DEST_DIR_OUTPUT}/@{FILENAME}.dpx"/>
945 <macrodef name=
"EFI_SECTION_RAW">
946 <attribute name=
"FILEPATH"/>
947 <attribute name=
"FILENAME"/>
948 <attribute name=
"FILEEXT" default=
"bin"/>
950 <element name=
"PRE.PROCESS" optional=
"yes"/>
951 <element name=
"POST.PROCESS" optional=
"yes"/>
956 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.@{FILEEXT}"/>
959 <file name=
"${DEST_DIR_OUTPUT}/@{FILENAME}.sec"/>
964 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.@{FILEEXT}"
965 outputfile=
"${DEST_DIR_OUTPUT}/@{FILENAME}.sec"
966 sectiontype=
"EFI_SECTION_RAW"/>
974 EFI_SECTION_FIRMWARE_VOLUME_IMAGE
976 <macrodef name=
"EFI_SECTION_FIRMWARE_VOLUME_IMAGE">
977 <attribute name=
"FILEPATH"/>
978 <attribute name=
"FILENAME"/>
979 <attribute name=
"FILEEXT" default=
"fv"/>
981 <element name=
"PRE.PROCESS" optional=
"yes"/>
982 <element name=
"POST.PROCESS" optional=
"yes"/>
987 <file name=
"${FV_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>
990 <file name=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}fv.sec"/>
996 <copy file=
"${FV_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
997 tofile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
999 <gensection inputfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1000 outputfile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}fv.sec"
1001 sectiontype=
"EFI_SECTION_FIRMWARE_VOLUME_IMAGE"/>
1012 <macrodef name=
"Build_Binary">
1013 <attribute name=
"FILEPATH"/>
1014 <attribute name=
"FILENAME"/>
1015 <attribute name=
"FILEEXT" default=
"bin"/>
1017 <element name=
"EXTRA.INC" optional=
"yes"/>
1018 <element name=
"EXTRA.ARG" optional=
"yes"/>
1021 <copy file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1022 tofile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.bin"/>
1029 <macrodef name=
"Build_Graphics">
1030 <attribute name=
"FILEPATH"/>
1031 <attribute name=
"FILENAME"/>
1032 <attribute name=
"FILEEXT" default=
"bmp"/>
1034 <element name=
"EXTRA.INC" optional=
"yes"/>
1035 <element name=
"EXTRA.ARG" optional=
"yes"/>
1038 <mkdir dir=
"${MODULE_DIR}/@{FILEPATH}" />
1039 <copy file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1040 tofile=
"${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.bin"/>
1043 <macrodef name=
"Build_EFI">
1044 <attribute name=
"FILEPATH"/>
1045 <attribute name=
"FILENAME"/>
1046 <attribute name=
"FILEEXT" default=
"efi"/>
1048 <element name=
"EXTRA.INC" optional=
"yes"/>
1049 <element name=
"EXTRA.ARG" optional=
"yes"/>
1052 <mkdir dir=
"${MODULE_DIR}/@{FILEPATH}" />
1053 <copy file=
"${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"
1054 tofile=
"${DEST_DIR_OUTPUT}/${BASE_NAME}.efi"/>