X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=BaseTools%2FSource%2FPython%2FMakefile;h=ce5541b513c409d54045edfc5d4b56320bc6296a;hp=8bc213b47c2e94555722847ce65e68793f1c8a02;hb=0944818a1972b07b09b53a2a1e88295cd92361cf;hpb=89a811538e24fd598b9267b888c4ab4c2556dae2
diff --git a/BaseTools/Source/Python/Makefile b/BaseTools/Source/Python/Makefile
index 8bc213b47c..ce5541b513 100644
--- a/BaseTools/Source/Python/Makefile
+++ b/BaseTools/Source/Python/Makefile
@@ -1,7 +1,7 @@
## @file
# Windows makefile for Python tools build.
#
-# Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
# which accompanies this distribution. The full text of the license may be found at
@@ -11,16 +11,17 @@
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
-!IFNDEF PYTHON_FREEZER_PATH
-!ERROR PYTHON_FREEZER_PATH must be defined!
+!IFNDEF PYTHON_HOME
+!ERROR PYTHON_HOME must be defined!
!ENDIF
+!IFDEF PYTHON_FREEZER_PATH
!IF EXIST ($(PYTHON_FREEZER_PATH)\cxfreeze)
# Using cx_Freeze 4.2.3 with Python 2.7.2
FREEZE=$(PYTHON_HOME)\python $(PYTHON_FREEZER_PATH)\cxfreeze
!ELSE
-# Using cx_Freeze 3.0.3 with Python 2.5.4
-FREEZE=$(PYTHON_FREEZER_PATH)\FreezePython.exe
+!ERROR PYTHON_FREEZER_PATH does not exist!
+!ENDIF
!ENDIF
MODULES=encodings.cp437,encodings.gbk,encodings.utf_16,encodings.utf_8,encodings.utf_16_le,encodings.latin_1,encodings.ascii
@@ -31,7 +32,7 @@ EDK_TOOLS_PATH = $(EDK_TOOLS_PATH::\\=:\)
BIN_DIR=$(EDK_TOOLS_PATH)\Bin\Win32
-APPLICATIONS=$(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)\Ecc.exe
+APPLICATIONS=$(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
COMMON_PYTHON=$(BASE_TOOLS_PATH)\Source\Python\Common\BuildToolError.py \
$(BASE_TOOLS_PATH)\Source\Python\Common\Database.py \
@@ -87,6 +88,9 @@ COMMON_PYTHON=$(BASE_TOOLS_PATH)\Source\Python\Common\BuildToolError.py \
$(BASE_TOOLS_PATH)\Source\Python\Workspace\MetaFileTable.py \
$(BASE_TOOLS_PATH)\Source\Python\Workspace\WorkspaceCommon.py \
$(BASE_TOOLS_PATH)\Source\Python\Workspace\WorkspaceDatabase.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Workspace\DecBuildData.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Workspace\DscBuildData.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Workspace\InfBuildData.py \
$(BASE_TOOLS_PATH)\Source\Python\AutoGen\AutoGen.py \
$(BASE_TOOLS_PATH)\Source\Python\AutoGen\BuildEngine.py \
$(BASE_TOOLS_PATH)\Source\Python\AutoGen\GenC.py \
@@ -97,6 +101,7 @@ COMMON_PYTHON=$(BASE_TOOLS_PATH)\Source\Python\Common\BuildToolError.py \
$(BASE_TOOLS_PATH)\Source\Python\AutoGen\StrGather.py \
$(BASE_TOOLS_PATH)\Source\Python\AutoGen\UniClassObject.py \
$(BASE_TOOLS_PATH)\Source\Python\AutoGen\ValidCheckingInfoObject.py \
+ $(BASE_TOOLS_PATH)\Source\Python\AutoGen\GenVar.py \
$(BASE_TOOLS_PATH)\Source\Python\Common\RangeExpression.py \
$(BASE_TOOLS_PATH)\Source\Python\Common\VariableAttributes.py
@@ -236,7 +241,34 @@ CMD_UPT=$(BASE_TOOLS_PATH)\Source\Python\UPT\Core\DependencyRules.py \
$(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\XmlParser.py \
$(BASE_TOOLS_PATH)\Source\Python\UPT\Xml\XmlParserMisc.py
+CMD_ECC=$(BASE_TOOLS_PATH)\Source\Python\Ecc\c.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\Check.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\CLexer.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\CodeFragment.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\CodeFragmentCollector.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\Configuration.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\CParser.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\Database.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\Ecc.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\EccGlobalData.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\EccToolError.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\Exception.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\FileProfile.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\MetaDataParser.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\ParserWarning.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\MetaFileWorkspace\MetaDataTable.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\MetaFileWorkspace\MetaFileParser.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\MetaFileWorkspace\MetaFileTable.py \
+ $(BASE_TOOLS_PATH)\Source\Python\Ecc\Xml\XmlRoutines.py
+
+!IFDEF PYTHON_FREEZER_PATH
all: SetPythonPath $(APPLICATIONS)
+!ELSE
+all:
+ @echo.
+ @echo !!! WARNING !!! PYTHON_FREEZER_PATH is not set.
+ @echo Cannot make executable from Python code, executing python scripts instead !!!
+!ENDIF
SetPythonPath:
set PYTHONPATH=$(BASE_TOOLS_PATH)\Source\Python
@@ -285,9 +317,31 @@ $(BIN_DIR)\config.ini: $(BASE_TOOLS_PATH)\Source\Python\Ecc\config.ini
$(BIN_DIR)\exception.xml: $(BASE_TOOLS_PATH)\Source\Python\Ecc\exception.xml
@copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Ecc\exception.xml $(BIN_DIR)\exception.xml
-
+
+$(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
+ @$(FREEZE) --include-modules=$(MODULES) --install-dir=$(BIN_DIR) Pkcs7Sign\Pkcs7Sign.py
+
+$(BIN_DIR)\TestCert.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestCert.pem
+ @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestCert.pem $(BIN_DIR)\TestCert.pem
+
+$(BIN_DIR)\TestCert.pub.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestCert.pub.pem
+ @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestCert.pub.pem $(BIN_DIR)\TestCert.pub.pem
+
+$(BIN_DIR)\TestSub.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestSub.pem
+ @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestSub.pem $(BIN_DIR)\TestSub.pem
+
+$(BIN_DIR)\TestSub.pub.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestSub.pub.pem
+ @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestSub.pub.pem $(BIN_DIR)\TestSub.pub.pem
+
+$(BIN_DIR)\TestRoot.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestRoot.pem
+ @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestRoot.pem $(BIN_DIR)\TestRoot.pem
+
+$(BIN_DIR)\TestRoot.pub.pem: $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestRoot.pub.pem
+ @copy /Y /B $(BASE_TOOLS_PATH)\Source\Python\Pkcs7Sign\TestRoot.pub.pem $(BIN_DIR)\TestRoot.pub.pem
+
clean:
cleanall:
@del /f /q $(BIN_DIR)\*.pyd $(BIN_DIR)\*.dll
+ @del /f /q $(BASE_TOOLS_PATH)\Source\Python\*.pyc
@for %%i in ($(APPLICATIONS)) do @del /f /q %%i