summaryrefslogtreecommitdiffstats
path: root/BaseTools
Commit message (Collapse)AuthorAgeFilesLines
* BaseTools: Update Rsa2048Sha256Sign to use openssl dgst optionvUDK2018Liming Gao2018-03-281-3/+3
| | | | | | | | | Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Cc: Qin Long <qin.long@intel.com> Reviewed-by: Qin Long <qin.long@intel.com> (cherry picked from commit d1b777440bc616f1e6da9204f3eec9f7a5a6f2e2)
* BaseTools: Update Rsa2048Sha256Sign to use openssl standard optionsLiming Gao2018-03-281-2/+2
| | | | | | | | | | | | | | | | | | sha256 is not the standard option. It should be replaced by sha -sha256. Otherwise, it doesn't work in MAC OS. In V2, update the option to sha1 -sha256. In late openssl version >= 1.1, there is no sha option, but has sha1,sha256. In previous openssl version < 1.1, there is no sha256, but has sha,sha1. To work with all openssl version, use sha1 -sha256 for it. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liao Jui-peng <jui-pengx.liao@intel.com> Signed-off-by: Liming Gao <liming.gao@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 1d574dfc15e4495a4063ce4faf3c2e9191677d8d)
* BaseTool: Fixed the issue of empty PcdDB.BobCF2018-03-231-4/+5
| | | | | | | | | | | If there is no dynamic pcds, there should be DB header in the Pcd DataBase. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 0a4f2d48696f094cec73e28a4402775dc6262eef)
* BaseTools: Add the missing package include directory in PcdValueInit MakefileLiming Gao2018-03-231-1/+3
| | | | | | | | | Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Cc: Feng Bob C <bob.c.feng@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit b005802a1c860a0f7ed9a727ce3ffc3ea7f9c441)
* BaseTools: Override Max size by build Option Pcd for HII typeYonghong Zhu2018-03-211-0/+8
| | | | | | | | | | | Current code will generate maxsize for HII type PCD when parser DSC file, while this HII type PCD value maybe override in build command per --pcd option, so the max size need re-calculate. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit c8ae65ac5218973e473ba1ba4bd5f9ccb547a219)
* BaseTools: Fix bug for --pcd VOID* type when no max size is specifiedYonghong Zhu2018-03-211-13/+0
| | | | | | | | | | | | | when VOID* type non-structure pcd used in --pcd, and its max size is not specified in DSC or its value is hex value, build break due to the code int(Pcd.MaxDatumSize,10). Now this patch remove this code, because tool will calculate the size info in later phase. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 29d521b9fa00045eb036c353e0b8f5ebe9c12a98)
* BaseTools: Add Feature Flag Pcd Type into Override listYonghong Zhu2018-03-211-1/+2
| | | | | | | | | | when only define the PCD in the DEC file, and use --pcd feature, we also need cover this case for Feature Flag Type. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit b7bfcd1a7e96524d15345e420c3f7120c29a107f)
* BaseTools: Add PackageDocumentTools into Scripts folderYonghong Zhu2018-03-1920-0/+7177
| | | | | | | | | | | | | | This tool is used to generate the document for edk2 packages. The generated document will be in UDK release. For example, UDK2017 document can be found in: https://github.com/tianocore/tianocore.github.io/wiki/UDK2017#documentation Cc: Star Zeng <star.zeng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> (cherry picked from commit 7ccc9c954c5c8a5b92199e68227384da0b5e4e7d)
* BaseTools: Fix bug for VOID* DynamicDefault Pcd use Flexible formatYonghong Zhu2018-03-191-8/+0
| | | | | | | | | | | | define a flexible pcd format in Dyanmic/DynamicExDefault section, it cause build error. [PcdsDynamicExDefault.common.DEFAULT] pcdToken.Name|{GUID("11111111-2222-42eb-b5eb-fef31d207cb4")} Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 316b43dee56837ed7d382e8de4a78d6bb9d14eb7)
* BaseTools: Detect structure pcd header file change.BobCF2018-03-191-54/+135
| | | | | | | | | | Detect structure pcd header file change Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 34d808add3dc23aaa37e1c9edb2fcc2b50118367)
* BaseTools: --hash --binary-destination generate wrong binary pathFeng, YunhuaX2018-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Option --hash --binary-destination generate Binaries section in the inf file, but the path of ASL file is begin with Output directory, so need replace Output directory with '', will get the file name RamDisk.aml Incorrect AML file path in inf file on linux: [Binaries.X64] PE32|RamDiskDxe.efi ASL|home/tiano/Desktop/hash/edk2/Build/OvmfX64/RELEASE_GCC5/X64 /MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe/OUTPUT/RamDisk.aml DXE_DEPEX|RamDiskDxe.depex BIN|RamDiskDxeOffset.bin Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 90456c3c06d9c370b48417754ece2fb8252da5f8)
* BaseTools: Get Pcd DatumType from DEC file for --pcdYonghong Zhu2018-03-121-0/+1
| | | | | | | | | | It is regression bug that missing the Pcd DatumType info from DEC file for --pcd . Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 87a1f65e80cf183a87072df04d749b0aa12171d9)
* BaseTools: Fix parse OFFSET_OF get wrong offsetFeng, YunhuaX2018-03-121-1/+2
| | | | | | | | | | | Fix parse OFFSET_OF get wrong offset Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit b31501c90abcea74c03e86a3bd9f6190cb4e1ddd)
* BaseTools: Fix a bug for --pcd used in ConditionalStatement calculateYonghong Zhu2018-03-103-1/+5
| | | | | | | | | | Move the GlobalData.BuildOptionPcd before FdfParser() function and add type check for Pcd item. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 705ed563de86475a32fb555d4238cc10717294f8)
* BaseTools: Update --pcd parser to support flexible pcd formatYonghong Zhu2018-03-108-268/+159
| | | | | | | | | This patch update --pcd parser to support flexible pcd format. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 8565b5829c1f30408020a4adb37074dba5492378)
* BaseTools: Fixed Pcd from command line issue.BobCF2018-03-104-47/+31
| | | | | | | | | | Save the pcd command line value in Pcd object Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 0f228f19fb40ffe60b13962ff639917435c562a9)
* BaseTools: update DNS_DEVICE_PATH/URI_DEVICE_PATH definitionYonghong Zhu2018-03-081-3/+10
| | | | | | | | | Update this two definition to align with MdePkg. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 20203d3f98d671d7d7d78f33bbb02cf1d1b3cabe)
* BaseTools: Fix byte orders when handling 8-byte arrayYonghong Zhu2018-03-041-1/+3
| | | | | | | | | | | | | | | | | Per UEFI spec, FibreEx.WWN, FibreEx.Lun, SasEx.Address, SasEx.Lun and iSCSI.Lun are all 8-byte array with byte #0 in the left. It means "0102030405060708" should be converted to: UINT8[8] = {01, 02, 03, 04, 05, 06, 07, 08} or UINT64 = {0807060504030201} Today's implementation wrongly uses the reversed order. The patch fixes this issue by using StrHexToBytes(). Copy this solution from MdePkg Hash version d0196be. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 27db236ac2beefc8a2de4c0df07ab47374aacfc3)
* BaseTools: Fix bug when converting iSCSI nodeYonghong Zhu2018-03-041-1/+1
| | | | | | | | | | | If protocol string is not specified, default TCP(0) should be used. Today's implementation wrongly sets to 1 for this case. Copy the fix solution from MdePkg Hash version e6c80aea. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit c1d6749b0ed3c58b7dc771e0f857995096107f44)
* BaseTools: Fix the bug to search Fv.txt file relative to workspaceYonghong Zhu2018-03-041-6/+9
| | | | | | | | | | | when the SECTION FV_IMAGE = $(XX)/XX.Fv, the Fv file should relative to WORKSPACE, so when we search the XX.Fv.txt file, we should search the path relative to workspace first. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit aebe5a36b6e960896671d3134c6b26f6735b7f53)
* BaseTools: Correct Structure Pcd value in the reportYonghong Zhu2018-03-041-9/+63
| | | | | | | | | | The patch "Fixed build failed issue" changed structure Pcd Object, so we need update build report to correct structure Pcd Value. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 24326f381f84aca925a5df3eace96a7523ce1c27)
* BaseTools: Pcd Value override issue.Feng, Bob C2018-03-041-6/+8
| | | | | | | | | | | For the case that the structure PCD has no value assignment in DSC, but has value assignment in command line. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 1667eec6990fae902981504887546f5a4913fde0)
* BaseTools: Fixed build failed issue.Feng, Bob C2018-03-041-7/+14
| | | | | | | | | | | Case 1. A Pcd has no default sku setting in DSC. Case 2. Build as Single SKU. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit f832bb3466008998001c1a3247febc0abfbcab55)
* BaseTools: Fixed Pcd value override issue.BobCF2018-03-045-62/+157
| | | | | | | | | | | | | | 1. Handle the Pcd maxsize issue for the case that the length of Pcd value from CommandLine bigger that its maxsize 2. The Pcd value override in commandline. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit b854e2bf752940b8d4dd3a569942d9c07b5d498f)
* BaseTools: DSC Components section support flexible PCDYunhua Feng2018-03-042-1/+17
| | | | | | | | | | | | | | DSC Components section support flexible PCD, and for binary driver, we need patch this value. Update the split char ',' not ', ' because some value may have space, while others may not have this space. Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 0537f332c968e6c3adeefa2222b5f1aa7252b711)
* BaseTools: Dsc/Fdf conditional statement parse issueFeng, YunhuaX2018-03-042-0/+8
| | | | | | | | | | | Set PCD value with --pcd argument not replace DSC/Fdf PCD value. Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 1fa7fdf6eada55316d7b5b45a0d116625d697fc5)
* BaseTools: report error if flag in LABEL() invalidFeng, YunhuaX2018-03-041-4/+10
| | | | | | | | | | | Flag in LABEL() is not valid C variable name, will report error. Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 5ac0a5450bb87ccefa9f847d3d5bf579cb13925e)
* BaseTools: Fix the bug for display incorrect *M flag in reportYonghong Zhu2018-03-041-10/+10
| | | | | | | | | | | | The root cause is the byte array value in the driver Pcd, some bytes have additional space character, while the value in DSC file doesn't have this space, it cause the string compare return false, so we remove the extra space. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 6ee9c68912324b4053cfa15fd06b02af1c1c74d9)
* BaseTools: Fix eval parse string issueFeng, YunhuaX2018-03-041-4/+26
| | | | | | | | | | | | | | | | | eval argument start with " or ', but it is unicode string, will encounter error: List = list(eval(Value)) # translate escape character File "<string>", line 1 'j??=????????F?? ^ SyntaxError: EOL while scanning string literal Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 4faf13222edead307109bf8c747200ea3fb617c0)
* BaseTools: GlobalData.gConfDirectory is None when run GenFdsFeng, YunhuaX2018-03-041-1/+3
| | | | | | | | | | | | | When run GenFds, GlobalData.gConfDirectory is None, On Linux self._ToolChainFamily default Value is "MSFT", and then generate the wrong PcdValueInit Makefile Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 541a3f5882d60d6241a752127acf3ef367c548e4)
* BaseTools: Fix the bug for single module build with GenC/GenMakeYonghong Zhu2018-03-041-0/+8
| | | | | | | | | copy the same logic from _BuildPa() function. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit cd49821608f7eb867b8351c7a0cd3ed4dd2d563d)
* BaseTools: Align WIN_CERTIFICATE_UEFI_GUID definition to MdePkg one.Liming Gao2018-03-021-2/+2
| | | | | | | Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit a16f7f47949ebddf07d228ef3827ec8747180e48)
* BaseTools: Enhance FV info report file path to support absolute pathYonghong Zhu2018-03-011-1/+7
| | | | | | | | | | | | When generate build report, Tool will get the info like size, Fv Name, etc from the xx.Fv.txt file and add these info into the build report. This patch support the xx.Fv.txt to use absolute file path format since user may provide specified FV path. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 2157bc9c8b8be30ada11fe2e64454157d3ae528f)
* BaseTools: Improve build performance of structure PCD value generationFeng, Bob C2018-03-012-103/+112
| | | | | | | | | | Optimized the PcdValueInit.c size by abstract the common logic in the funciton. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit f3b314331ce1557d51bbd6930ca9bec01ceefdd7)
* BaseTool: GUID format PCD value assignment fail in Structure PCD fieldBobCF2018-03-012-110/+182
| | | | | | | | | | | If Structure PCD field is assigned as GUID format, its data type should be the fixed GUID structure. No flexible check is required. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 79820e32ec96b560bc0d5cd437990f600a2ddce7)
* BaseTools: Improve build performance of structure PCD value generationFeng, Bob C2018-03-013-84/+101
| | | | | | | | | | | Add cache for building PcdValueInit.c. If PcdValueInit.c is not changed, it will not be regenerated. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 0a57a9782bef8ee11d8de937c149eb7ff22647c9)
* BaseTools: Fixed the pcd value override issue.Feng, Bob C2018-03-014-24/+44
| | | | | | | | | | | | 1. the issue in the overriding value from command line. 2. dec fully value < dec field assign value < dsc fully value < dsc field assign value Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 06140766c13fb9288a922990ffde77fca93fc71d)
* BaseTools/tools_def: use separate PP definition for DTCArd Biesheuvel2018-03-012-8/+4
| | | | | | | | | | | | | | | Clang's preprocessor behaves differently from GCC's, and produces intermediate device tree source that still contains #pragma pack() and other directives that the device tree compiler chokes on. For assembling device tree sources, it matters very little which preprocessor is being used, so let's just use GNU CPP explicitly. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit a68749f39a2e04ef68e5656b7b72fca25a2e23dc)
* BaseTools: Fix a bug override Pcd by DSC Components sectionYonghong Zhu2018-02-282-3/+17
| | | | | | | | | | | | The case is: define a VOID* pcd in DEC file, eg: Value is {0x1}. then override this PCD on DSC component section, eg: Value is {0x1, 0x2, 0x3}, the max size of this PCD is calculate wrong which cause build error. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit cdbf45ad859b1e75e055f1fd06d0c8a10452b3aa)
* BaseTools: Fix report not used --pcd value incorrectlyFeng, YunhuaX2018-02-281-0/+1
| | | | | | | | | | | | Argument --pcd gUefiOvmfPkgTokenSpaceGuid.test10=H"{1}", If the PCD is not used, report value {0x01, 0x00}, is incorrect. Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 97e1ff1b913bdedcf08c0d1917d488e0097759b7)
* BaseTools: Fix flexible PCD single quote and double quote bugsFeng, YunhuaX2018-02-285-65/+123
| | | | | | | | | | | | | | | | | | | | | | | 1.The " and ' inside the string, must use escape character format (\", \') 2.'string' and L'string' format in --pcd, it must be double quoted first. Some examples that to match --pcd format and DSC format --pcd DSC format L"ABC" L"ABC" "AB\\\"C" "AB\"C" "AB\\\'C" "AB\'C" L"\'AB\\\"C\'" L'AB\"C' "\'AB\\\'C\'" 'AB\'C' H"{0, L\"AB\\\"B\", \'ab\\\"c\'}" {0, L"AB\"B", 'ab\"c'} Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit ea927d2f3f2e34f4b26c10829f5887830cb0720e)
* BaseTools: Update GenFw to correct DebugEntry Offset when convert XIP imageLiming Gao2018-02-281-0/+6
| | | | | | | | | | DebugEntry FileOffset is required to be updated to the virtual address if the input image is converted to XIP image. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 29c50757873c431c59fa4173f9cfd5c3548a1394)
* BaseTools: Add more error message when PcdValue is wrongLiming Gao2018-02-281-0/+2
| | | | | | | | | | | For structure PCD, its field name is wrong and cause build failure. Its build error message will output to let user aware what's wrong. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Cc: Feng Bob C <bob.c.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 0939fda93cbc252cd5b4ed4f026ed6ec9e07687f)
* BaseTools: Resolve BaseTools C tool build failureLiming Gao2018-02-282-1/+4
| | | | | | | | | | New GUID definition is conflicted with GUID in Windows Kits guiddef.h. GUID definition will be defined when it is undefined. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 006c2647dc60cd7e9d32c3555a3bf7cfd890ddd6)
* BaseTools:Override the MAKE_FLAGS by BuildOptions in DSCYonghong Zhu2018-02-281-0/+7
| | | | | | | | | | The issue that *_*_*_MAKE_FLAGS doesn't work in DSC [BuildOptions] section. It means MAKE flags can't be set in platform DSC file. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 02a908fc6d93a7971990d5fa8cd4efe023d14e43)
* BaseTools GenFv: Update error message to describe PE image alignmentLiming Gao2018-02-281-3/+3
| | | | | | | Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 3c3277f21e4b4ebbb4988893d2edcfe8f8406348)
* BaseTools: Add the missing basic definition in C BaseType.hLiming Gao2018-02-281-0/+25
| | | | | | | Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 3e44e9f534ddacc7f334aff31ba0a591445f2aaf)
* BaseTools: Add *B Flag for the field that from command lineYonghong Zhu2018-02-261-7/+3
| | | | | | | | | | | For structure PCD, the field value may override in the command line, so in the report when we print the field info we add *B Flag for those field. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit f440f7e3caba12c0649c9ce15c33c7ec7aa2a4e8)
* BaseTools: Update ValueExpressionEx for flexible PCDFeng, YunhuaX2018-02-261-75/+130
| | | | | | | | | | | | 1. Byte array number should less than 0xFF. 2. Add SplitPcdValueString for PCD split Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 3be421e98756efc6d355b45e632c5c7b19b35b9e)
* BaseTools/Expression: Use 2nd passes on PCD valuesKinney, Michael D2018-02-261-1/+25
| | | | | | | | | | | | | | | | | Use 2 passes when evaluating PCD values to discover all the LABEL() operators and compute the byte offset of each LABEL(). The 2nd pass then has the information to replace the OFFSET_OF() operator with the computed byte offset. The 2 passes allows OFFSET_OF() to be used before a LABEL() is declared. fixes:https://bugzilla.tianocore.org/show_bug.cgi?id=880 Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 8bd72d7c05ff820ee7826809a033fda9b007d18f)