• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1## @file
2# Windows makefile for Python tools build.
3#
4# Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
5# This program and the accompanying materials
6# are licensed and made available under the terms and conditions of the BSD License
7# which accompanies this distribution.  The full text of the license may be found at
8# http://opensource.org/licenses/bsd-license.php
9#
10# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12#
13
14!IFNDEF PYTHON_HOME
15!ERROR PYTHON_HOME must be defined!
16!ENDIF
17
18!IFDEF PYTHON_FREEZER_PATH
19!IF EXIST ($(PYTHON_FREEZER_PATH)\cxfreeze)
20# Using cx_Freeze 4.2.3 with Python 2.7.2
21FREEZE=$(PYTHON_HOME)\python $(PYTHON_FREEZER_PATH)\cxfreeze
22!ELSE
23!ERROR PYTHON_FREEZER_PATH does not exist!
24!ENDIF
25!ENDIF
26
27MODULES=encodings.cp437,encodings.gbk,encodings.utf_16,encodings.utf_8,encodings.utf_16_le,encodings.latin_1,encodings.ascii
28
29# DOS del command doesn't support ":\\" in the file path, such as j:\\BaseTools. Convert ":\\" to ":\"
30BASE_TOOLS_PATH = $(BASE_TOOLS_PATH::\\=:\)
31EDK_TOOLS_PATH  = $(EDK_TOOLS_PATH::\\=:\)
32
33BIN_DIR=$(EDK_TOOLS_PATH)\Bin\Win32
34
35APPLICATIONS=$(BIN_DIR)\build.exe $(BIN_DIR)\GenFds.exe $(BIN_DIR)\Trim.exe $(BIN_DIR)\TargetTool.exe $(BIN_DIR)\GenDepex.exe $(BIN_DIR)\GenPatchPcdTable.exe $(BIN_DIR)\PatchPcdValue.exe $(BIN_DIR)\BPDG.exe $(BIN_DIR)\UPT.exe $(BIN_DIR)\Rsa2048Sha256Sign.exe $(BIN_DIR)\Rsa2048Sha256GenerateKeys.exe $(BIN_DIR)\Pkcs7Sign.exe $(BIN_DIR)\Ecc.exe
36
37COMMON_PYTHON=$(BASE_TOOLS_PATH)\Source\Python\Common\BuildToolError.py \
38              $(BASE_TOOLS_PATH)\Source\Python\Common\Database.py \
39              $(BASE_TOOLS_PATH)\Source\Python\Common\DataType.py \
40              $(BASE_TOOLS_PATH)\Source\Python\Common\DecClassObject.py \
41              $(BASE_TOOLS_PATH)\Source\Python\Common\Dictionary.py \
42              $(BASE_TOOLS_PATH)\Source\Python\Common\DscClassObject.py \
43              $(BASE_TOOLS_PATH)\Source\Python\Common\EdkIIWorkspace.py \
44              $(BASE_TOOLS_PATH)\Source\Python\Common\EdkIIWorkspaceBuild.py \
45              $(BASE_TOOLS_PATH)\Source\Python\Common\EdkLogger.py \
46              $(BASE_TOOLS_PATH)\Source\Python\Common\Expression.py \
47              $(BASE_TOOLS_PATH)\Source\Python\Common\FdfClassObject.py \
48              $(BASE_TOOLS_PATH)\Source\Python\Common\FdfParserLite.py \
49              $(BASE_TOOLS_PATH)\Source\Python\Common\GlobalData.py \
50              $(BASE_TOOLS_PATH)\Source\Python\Common\Identification.py \
51              $(BASE_TOOLS_PATH)\Source\Python\Common\InfClassObject.py \
52              $(BASE_TOOLS_PATH)\Source\Python\Common\LongFilePathOs.py \
53              $(BASE_TOOLS_PATH)\Source\Python\Common\LongFilePathOsPath.py \
54              $(BASE_TOOLS_PATH)\Source\Python\Common\LongFilePathSupport.py \
55              $(BASE_TOOLS_PATH)\Source\Python\Common\MigrationUtilities.py \
56              $(BASE_TOOLS_PATH)\Source\Python\Common\Misc.py \
57              $(BASE_TOOLS_PATH)\Source\Python\Common\Parsing.py \
58              $(BASE_TOOLS_PATH)\Source\Python\Common\String.py \
59              $(BASE_TOOLS_PATH)\Source\Python\Common\TargetTxtClassObject.py \
60              $(BASE_TOOLS_PATH)\Source\Python\Common\ToolDefClassObject.py \
61              $(BASE_TOOLS_PATH)\Source\Python\Common\VpdInfoFile.py \
62              $(BASE_TOOLS_PATH)\Source\Python\Common\BuildVersion.py \
63              $(BASE_TOOLS_PATH)\Source\Python\Common\MultipleWorkspace.py \
64              $(BASE_TOOLS_PATH)\Source\Python\CommonDataClass\CommonClass.py \
65              $(BASE_TOOLS_PATH)\Source\Python\CommonDataClass\DataClass.py \
66              $(BASE_TOOLS_PATH)\Source\Python\CommonDataClass\Exceptions.py \
67              $(BASE_TOOLS_PATH)\Source\Python\CommonDataClass\FdfClass.py \
68              $(BASE_TOOLS_PATH)\Source\Python\CommonDataClass\ModuleClass.py \
69              $(BASE_TOOLS_PATH)\Source\Python\CommonDataClass\PackageClass.py \
70              $(BASE_TOOLS_PATH)\Source\Python\CommonDataClass\PlatformClass.py \
71              $(BASE_TOOLS_PATH)\Source\Python\Table\Table.py \
72              $(BASE_TOOLS_PATH)\Source\Python\Table\TableDataModel.py \
73              $(BASE_TOOLS_PATH)\Source\Python\Table\TableDec.py \
74              $(BASE_TOOLS_PATH)\Source\Python\Table\TableDsc.py \
75              $(BASE_TOOLS_PATH)\Source\Python\Table\TableEotReport.py \
76              $(BASE_TOOLS_PATH)\Source\Python\Table\TableFdf.py \
77              $(BASE_TOOLS_PATH)\Source\Python\Table\TableFile.py \
78              $(BASE_TOOLS_PATH)\Source\Python\Table\TableFunction.py \
79              $(BASE_TOOLS_PATH)\Source\Python\Table\TableIdentifier.py \
80              $(BASE_TOOLS_PATH)\Source\Python\Table\TableInf.py \
81              $(BASE_TOOLS_PATH)\Source\Python\Table\TablePcd.py \
82              $(BASE_TOOLS_PATH)\Source\Python\Table\TableQuery.py \
83              $(BASE_TOOLS_PATH)\Source\Python\Table\TableReport.py \
84              $(BASE_TOOLS_PATH)\Source\Python\Workspace\BuildClassObject.py \
85              $(BASE_TOOLS_PATH)\Source\Python\Workspace\MetaDataTable.py \
86              $(BASE_TOOLS_PATH)\Source\Python\Workspace\MetaFileCommentParser.py \
87              $(BASE_TOOLS_PATH)\Source\Python\Workspace\MetaFileParser.py \
88              $(BASE_TOOLS_PATH)\Source\Python\Workspace\MetaFileTable.py \
89              $(BASE_TOOLS_PATH)\Source\Python\Workspace\WorkspaceCommon.py \
90              $(BASE_TOOLS_PATH)\Source\Python\Workspace\WorkspaceDatabase.py \
91              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\AutoGen.py \
92              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\BuildEngine.py \
93              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\GenC.py \
94              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\GenDepex.py \
95              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\GenMake.py \
96              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\GenPcdDb.py \
97              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\InfSectionParser.py \
98              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\StrGather.py \
99              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\UniClassObject.py \
100              $(BASE_TOOLS_PATH)\Source\Python\AutoGen\ValidCheckingInfoObject.py \
101              $(BASE_TOOLS_PATH)\Source\Python\Common\RangeExpression.py \
102              $(BASE_TOOLS_PATH)\Source\Python\Common\VariableAttributes.py
103
104CMD_BUILD=$(BASE_TOOLS_PATH)\Source\Python\build\BuildReport.py \
105    $(BASE_TOOLS_PATH)\Source\Python\GenPatchPcdTable\GenPatchPcdTable.py \
106    $(BASE_TOOLS_PATH)\Source\Python\PatchPcdValue\PatchPcdValue.py \
107    $(BASE_TOOLS_PATH)\Source\Python\Eot\c.py \
108    $(BASE_TOOLS_PATH)\Source\Python\Eot\CLexer.py \
109    $(BASE_TOOLS_PATH)\Source\Python\Eot\CodeFragment.py \
110    $(BASE_TOOLS_PATH)\Source\Python\Eot\CodeFragmentCollector.py \
111    $(BASE_TOOLS_PATH)\Source\Python\Eot\CParser.py \
112    $(BASE_TOOLS_PATH)\Source\Python\Eot\Database.py \
113    $(BASE_TOOLS_PATH)\Source\Python\Eot\EfiCompressor.pyd \
114    $(BASE_TOOLS_PATH)\Source\Python\Eot\Eot.py \
115    $(BASE_TOOLS_PATH)\Source\Python\Eot\EotGlobalData.py \
116    $(BASE_TOOLS_PATH)\Source\Python\Eot\EotToolError.py \
117    $(BASE_TOOLS_PATH)\Source\Python\Eot\FileProfile.py \
118    $(BASE_TOOLS_PATH)\Source\Python\Eot\FvImage.py \
119    $(BASE_TOOLS_PATH)\Source\Python\Eot\InfParserLite.py \
120    $(BASE_TOOLS_PATH)\Source\Python\Eot\LzmaCompressor.pyd \
121    $(BASE_TOOLS_PATH)\Source\Python\Eot\Parser.py \
122    $(BASE_TOOLS_PATH)\Source\Python\Eot\ParserWarning.py \
123    $(BASE_TOOLS_PATH)\Source\Python\Eot\Report.py
124
125CMD_GENFDS=$(BASE_TOOLS_PATH)\Source\Python\GenFds\AprioriSection.py \
126    $(BASE_TOOLS_PATH)\Source\Python\GenFds\Attribute.py \
127    $(BASE_TOOLS_PATH)\Source\Python\GenFds\Capsule.py \
128    $(BASE_TOOLS_PATH)\Source\Python\GenFds\CapsuleData.py \
129    $(BASE_TOOLS_PATH)\Source\Python\GenFds\ComponentStatement.py \
130    $(BASE_TOOLS_PATH)\Source\Python\GenFds\CompressSection.py \
131    $(BASE_TOOLS_PATH)\Source\Python\GenFds\DataSection.py \
132    $(BASE_TOOLS_PATH)\Source\Python\GenFds\DepexSection.py \
133    $(BASE_TOOLS_PATH)\Source\Python\GenFds\EfiSection.py \
134    $(BASE_TOOLS_PATH)\Source\Python\GenFds\Fd.py \
135    $(BASE_TOOLS_PATH)\Source\Python\GenFds\FdfParser.py \
136    $(BASE_TOOLS_PATH)\Source\Python\GenFds\Ffs.py \
137    $(BASE_TOOLS_PATH)\Source\Python\GenFds\FfsFileStatement.py \
138    $(BASE_TOOLS_PATH)\Source\Python\GenFds\FfsInfStatement.py \
139    $(BASE_TOOLS_PATH)\Source\Python\GenFds\Fv.py \
140    $(BASE_TOOLS_PATH)\Source\Python\GenFds\FvImageSection.py \
141    $(BASE_TOOLS_PATH)\Source\Python\GenFds\GenFds.py \
142    $(BASE_TOOLS_PATH)\Source\Python\GenFds\GenFdsGlobalVariable.py \
143    $(BASE_TOOLS_PATH)\Source\Python\GenFds\GuidSection.py \
144    $(BASE_TOOLS_PATH)\Source\Python\GenFds\OptionRom.py \
145    $(BASE_TOOLS_PATH)\Source\Python\GenFds\OptRomFileStatement.py \
146    $(BASE_TOOLS_PATH)\Source\Python\GenFds\OptRomInfStatement.py \
147    $(BASE_TOOLS_PATH)\Source\Python\GenFds\Region.py \
148    $(BASE_TOOLS_PATH)\Source\Python\GenFds\Rule.py \
149    $(BASE_TOOLS_PATH)\Source\Python\GenFds\RuleComplexFile.py \
150    $(BASE_TOOLS_PATH)\Source\Python\GenFds\RuleSimpleFile.py \
151    $(BASE_TOOLS_PATH)\Source\Python\GenFds\Section.py \
152    $(BASE_TOOLS_PATH)\Source\Python\GenFds\UiSection.py \
153    $(BASE_TOOLS_PATH)\Source\Python\GenFds\VerSection.py \
154    $(BASE_TOOLS_PATH)\Source\Python\GenFds\Vtf.py
155
156CMD_BPDG=$(BASE_TOOLS_PATH)\Source\Python\BPDG\GenVpd.py \
157    $(BASE_TOOLS_PATH)\Source\Python\BPDG\StringTable.py
158
159CMD_UPT=$(BASE_TOOLS_PATH)\Source\Python\UPT\Core\DependencyRules.py \
160    $(BASE_TOOLS_PATH)\Source\Python\UPT\Core\DistributionPackageClass.py \
161    $(BASE_TOOLS_PATH)\Source\Python\UPT\Core\FileHook.py \
162    $(BASE_TOOLS_PATH)\Source\Python\UPT\Core\IpiDb.py \
163    $(BASE_TOOLS_PATH)\Source\Python\UPT\Core\PackageFile.py \
164    $(BASE_TOOLS_PATH)\Source\Python\UPT\Dll\sqlite3.dll \
165    $(BASE_TOOLS_PATH)\Source\Python\UPT\GenMetaFile\GenDecFile.py \
166    $(BASE_TOOLS_PATH)\Source\Python\UPT\GenMetaFile\GenInfFile.py \
167    $(BASE_TOOLS_PATH)\Source\Python\UPT\GenMetaFile\GenMetaFileMisc.py \
168    $(BASE_TOOLS_PATH)\Source\Python\UPT\GenMetaFile\GenXmlFile.py \
169    $(BASE_TOOLS_PATH)\Source\Python\UPT\InstallPkg.py \
170    $(BASE_TOOLS_PATH)\Source\Python\UPT\InventoryWs.py \
171    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\CommentGenerating.py \
172    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\CommentParsing.py \
173    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\DataType.py \
174    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\ExpressionValidate.py \
175    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\GlobalData.py \
176    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\Misc.py \
177    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\ParserValidate.py \
178    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\Parsing.py \
179    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\String.py \
180    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\UniClassObject.py \
181    $(BASE_TOOLS_PATH)\Source\Python\UPT\Library\Xml\XmlRoutines.py \
182    $(BASE_TOOLS_PATH)\Source\Python\UPT\Logger\Log.py \
183    $(BASE_TOOLS_PATH)\Source\Python\UPT\Logger\StringTable.py \
184    $(BASE_TOOLS_PATH)\Source\Python\UPT\Logger\ToolError.py \
185    $(BASE_TOOLS_PATH)\Source\Python\UPT\MkPkg.py \
186    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\DecObject.py \
187    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfBinaryObject.py \
188    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfBuildOptionObject.py \
189    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfCommonObject.py \
190    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfDefineCommonObject.py \
191    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfDefineObject.py \
192    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfDepexObject.py \
193    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfGuidObject.py \
194    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfHeaderObject.py \
195    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfLibraryClassesObject.py \
196    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfMisc.py \
197    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfPackagesObject.py \
198    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfPcdObject.py \
199    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfPpiObject.py \
200    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfProtocolObject.py \
201    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfSoucesObject.py \
202    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\Parser\InfUserExtensionObject.py \
203    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\POM\CommonObject.py \
204    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\POM\ModuleObject.py \
205    $(BASE_TOOLS_PATH)\Source\Python\UPT\Object\POM\PackageObject.py \
206    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\DecParser.py \
207    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\DecParserMisc.py \
208    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfAsBuiltProcess.py \
209    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfBinarySectionParser.py \
210    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfBuildOptionSectionParser.py \
211    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfDefineSectionParser.py \
212    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfDepexSectionParser.py \
213    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfGuidPpiProtocolSectionParser.py \
214    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfLibrarySectionParser.py \
215    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfPackageSectionParser.py \
216    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfParser.py \
217    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfParserMisc.py \
218    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfPcdSectionParser.py \
219    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfSectionParser.py \
220    $(BASE_TOOLS_PATH)\Source\Python\UPT\Parser\InfSourceSectionParser.py \
221    $(BASE_TOOLS_PATH)\Source\Python\UPT\PomAdapter\DecPomAlignment.py \
222    $(BASE_TOOLS_PATH)\Source\Python\UPT\PomAdapter\InfPomAlignment.py \
223    $(BASE_TOOLS_PATH)\Source\Python\UPT\PomAdapter\InfPomAlignmentMisc.py \
224    $(BASE_TOOLS_PATH)\Source\Python\UPT\ReplacePkg.py \
225    $(BASE_TOOLS_PATH)\Source\Python\UPT\RmPkg.py \
226    $(BASE_TOOLS_PATH)\Source\Python\UPT\UnitTest\CommentGeneratingUnitTest.py \
227    $(BASE_TOOLS_PATH)\Source\Python\UPT\UnitTest\CommentParsingUnitTest.py \
228    $(BASE_TOOLS_PATH)\Source\Python\UPT\UnitTest\DecParserTest.py \
229    $(BASE_TOOLS_PATH)\Source\Python\UPT\UnitTest\DecParserUnitTest.py \
230    $(BASE_TOOLS_PATH)\Source\Python\UPT\UnitTest\InfBinarySectionTest.py \
231    $(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\CommonXml.py \
232    $(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\GuidProtocolPpiXml.py \
233    $(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\IniToXml.py \
234    $(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\ModuleSurfaceAreaXml.py \
235    $(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\PackageSurfaceAreaXml.py \
236    $(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\PcdXml.py \
237    $(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\XmlParser.py \
238    $(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\XmlParserMisc.py
239
240CMD_ECC=$(BASE_TOOLS_PATH)\Source\Python\Ecc\c.py \
241    $(BASE_TOOLS_PATH)\Source\Python\Ecc\Check.py \
242    $(BASE_TOOLS_PATH)\Source\Python\Ecc\CLexer.py \
243    $(BASE_TOOLS_PATH)\Source\Python\Ecc\CodeFragment.py \
244    $(BASE_TOOLS_PATH)\Source\Python\Ecc\CodeFragmentCollector.py \
245    $(BASE_TOOLS_PATH)\Source\Python\Ecc\Configuration.py \
246    $(BASE_TOOLS_PATH)\Source\Python\Ecc\CParser.py \
247    $(BASE_TOOLS_PATH)\Source\Python\Ecc\Database.py \
248    $(BASE_TOOLS_PATH)\Source\Python\Ecc\Ecc.py \
249    $(BASE_TOOLS_PATH)\Source\Python\Ecc\EccGlobalData.py \
250    $(BASE_TOOLS_PATH)\Source\Python\Ecc\EccToolError.py \
251    $(BASE_TOOLS_PATH)\Source\Python\Ecc\Exception.py \
252    $(BASE_TOOLS_PATH)\Source\Python\Ecc\FileProfile.py \
253    $(BASE_TOOLS_PATH)\Source\Python\Ecc\MetaDataParser.py \
254    $(BASE_TOOLS_PATH)\Source\Python\Ecc\ParserWarning.py \
255    $(BASE_TOOLS_PATH)\Source\Python\Ecc\MetaFileWorkspace\MetaDataTable.py \
256    $(BASE_TOOLS_PATH)\Source\Python\Ecc\MetaFileWorkspace\MetaFileParser.py \
257    $(BASE_TOOLS_PATH)\Source\Python\Ecc\MetaFileWorkspace\MetaFileTable.py \
258    $(BASE_TOOLS_PATH)\Source\Python\Ecc\Xml\XmlRoutines.py
259
260!IFDEF PYTHON_FREEZER_PATH
261all: SetPythonPath $(APPLICATIONS)
262!ELSE
263all:
264  @echo.
265  @echo !!! WARNING !!! PYTHON_FREEZER_PATH is not set.
266  @echo Cannot make executable from Python code, executing python scripts instead !!!
267!ENDIF
268
269SetPythonPath:
270  set PYTHONPATH=$(BASE_TOOLS_PATH)\Source\Python
271
272$(BIN_DIR)\build.exe: $(BASE_TOOLS_PATH)\Source\Python\build\build.py $(COMMON_PYTHON) $(CMD_BUILD) $(CMD_GENFDS)
273  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) build\build.py
274
275$(BIN_DIR)\GenFds.exe: $(BASE_TOOLS_PATH)\Source\Python\GenFds\GenFds.py $(COMMON_PYTHON) $(CMD_GENFDS)
276  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) GenFds\GenFds.py
277
278$(BIN_DIR)\Trim.exe: $(BASE_TOOLS_PATH)\Source\Python\Trim\Trim.py $(COMMON_PYTHON)
279  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) Trim\Trim.py
280
281$(BIN_DIR)\GenDepex.exe: $(BASE_TOOLS_PATH)\Source\Python\AutoGen\GenDepex.py $(COMMON_PYTHON)
282  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) AutoGen\GenDepex.py
283
284$(BIN_DIR)\TargetTool.exe: $(BASE_TOOLS_PATH)\Source\Python\TargetTool\TargetTool.py $(COMMON_PYTHON)
285  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) TargetTool\TargetTool.py
286
287$(BIN_DIR)\GenPatchPcdTable.exe: $(BASE_TOOLS_PATH)\Source\Python\GenPatchPcdTable\GenPatchPcdTable.py $(COMMON_PYTHON)
288  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) GenPatchPcdTable\GenPatchPcdTable.py
289
290$(BIN_DIR)\PatchPcdValue.exe: $(BASE_TOOLS_PATH)\Source\Python\PatchPcdValue\PatchPcdValue.py $(COMMON_PYTHON)
291  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) PatchPcdValue\PatchPcdValue.py
292
293$(BIN_DIR)\BPDG.exe: $(BASE_TOOLS_PATH)\Source\Python\BPDG\BPDG.py $(COMMON_PYTHON) $(CMD_BPDG)
294  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) BPDG\BPDG.py
295
296$(BIN_DIR)\UPT.exe: $(BASE_TOOLS_PATH)\Source\Python\UPT\UPT.py $(CMD_UPT)
297  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) UPT\UPT.py
298
299$(BIN_DIR)\Rsa2048Sha256Sign.exe: $(BASE_TOOLS_PATH)\Source\Python\Rsa2048Sha256Sign\Rsa2048Sha256Sign.py $(BIN_DIR)\TestSigningPrivateKey.pem
300  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) Rsa2048Sha256Sign\Rsa2048Sha256Sign.py
301
302$(BIN_DIR)\TestSigningPrivateKey.pem: $(BASE_TOOLS_PATH)\Source\Python\Rsa2048Sha256Sign\TestSigningPrivateKey.pem
303  @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Rsa2048Sha256Sign\TestSigningPrivateKey.pem $(BIN_DIR)\TestSigningPrivateKey.pem
304
305$(BIN_DIR)\Rsa2048Sha256GenerateKeys.exe: $(BASE_TOOLS_PATH)\Source\Python\Rsa2048Sha256Sign\Rsa2048Sha256GenerateKeys.py
306  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) Rsa2048Sha256Sign\Rsa2048Sha256GenerateKeys.py
307
308$(BIN_DIR)\Ecc.exe: $(BASE_TOOLS_PATH)\Source\Python\Ecc\Ecc.py $(CMD_ECC) $(BIN_DIR)\config.ini $(BIN_DIR)\exception.xml
309  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) Ecc\Ecc.py
310
311$(BIN_DIR)\config.ini: $(BASE_TOOLS_PATH)\Source\Python\Ecc\config.ini
312  @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Ecc\config.ini $(BIN_DIR)\config.ini
313
314$(BIN_DIR)\exception.xml: $(BASE_TOOLS_PATH)\Source\Python\Ecc\exception.xml
315  @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Ecc\exception.xml $(BIN_DIR)\exception.xml
316
317$(BIN_DIR)\Pkcs7Sign.exe: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\Pkcs7Sign.py $(BIN_DIR)\TestCert.pem $(BIN_DIR)\TestCert.pub.pem $(BIN_DIR)\TestRoot.pem $(BIN_DIR)\TestRoot.pub.pem $(BIN_DIR)\TestSub.pem $(BIN_DIR)\TestSub.pub.pem
318  @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) Pkcs7Sign\Pkcs7Sign.py
319
320$(BIN_DIR)\TestCert.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestCert.pem
321  @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestCert.pem $(BIN_DIR)\TestCert.pem
322
323$(BIN_DIR)\TestCert.pub.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestCert.pub.pem
324  @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestCert.pub.pem $(BIN_DIR)\TestCert.pub.pem
325
326$(BIN_DIR)\TestSub.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestSub.pem
327  @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestSub.pem $(BIN_DIR)\TestSub.pem
328
329$(BIN_DIR)\TestSub.pub.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestSub.pub.pem
330  @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestSub.pub.pem $(BIN_DIR)\TestSub.pub.pem
331
332$(BIN_DIR)\TestRoot.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestRoot.pem
333  @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestRoot.pem $(BIN_DIR)\TestRoot.pem
334
335$(BIN_DIR)\TestRoot.pub.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestRoot.pub.pem
336  @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestRoot.pub.pem $(BIN_DIR)\TestRoot.pub.pem
337
338clean:
339cleanall:
340  @del /f /q $(BIN_DIR)\*.pyd $(BIN_DIR)\*.dll
341  @del /f /q $(BASE_TOOLS_PATH)\Source\Python\*.pyc
342  @for %%i in ($(APPLICATIONS)) do @del /f /q %%i
343
344