summaryrefslogtreecommitdiff
path: root/BaseTools/Source/Python
AgeCommit message (Collapse)Author
2016-07-13BaseTools: enhance error handling for DSC fileYonghong Zhu
Add logic for DSC file validation for Prebuild init. Add logic to detect error for DSC parser when '{' is missing. Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit d429fcd0d25936ff5861e9c6e37f7cf9285217b2)
2016-07-13BaseTools/Build: Consider only build-specified architecturesThomas Palmer
When building for any specific architecture, the build script today is loading DSC sections for other architectures not in the build. The build process should disregard DSC sections that are not relevant to the build. This fixes scenario whereby a build occurs in a source tree that was been cleaned of non-essential directories. For instance, X64 builds do not require the ArmPkg directory to build a firmware image. This condition (build break when ArmPkg is absent) occurs when included DSCs have sections for multiple architectures. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Thomas Palmer <thomas.palmer@hpe.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 77177984087654ff2888e182d40c20480da29811)
2016-07-13BaseTools: Fix PLATFORM_DIR variable value.Marvin.Haeuser@outlook.com
In commit 017fb1cd4c5e3c8b914eb217ac1760223687dad7, the PLATFORM_DIR macro has been updated to resolve to the correct path. However, it is incorrectly accessed via curved rather than curly braces by GenMake. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 7a5f1426c57bcaaa87c5c9a86c5ab2090c890453)
2016-07-13BaseTools: Fix the bug to correctly handle the [BuildOptions]Yonghong Zhu
the last fix call os.path.normpath() function, which removes the trailing slash character, it cause NASM failure for ResetVector driver. Cc: Liming Gao <liming.gao@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 67a69059f714c0728676d13d97f10bd12730b378)
2016-07-13BaseTools: fix the bug for [BuildOptions] of multiple workspace supportYonghong Zhu
when enable Multiple workspace and there have other option(eg: -I) before $(WORKSPACE), handleWsMacro cannot return correct which cause the ArmVirtPkg build failure. example: [BuildOptions] *_*_AARCH64_PLATFORM_FLAGS == -I$(WORKSPACE)/ArmVirtPkg/Include Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 2b1c08acfceb94326c67b7d8f9fe5d8ab4cb7f61)
2016-07-13BaseTools: fix PLATFORM_DIR variable value for multiple workspaceYonghong Zhu
when enable the multiple workspace, the PLATFORM_DIR still is $(WORKSPACE)\AnyPkg, even though it is in a PACKAGES_PATH folder. this patch fix this issue to use the real path. Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 017fb1cd4c5e3c8b914eb217ac1760223687dad7)
2016-07-13BaseTools: generate hash value in build report for each output EFI imageYonghong Zhu
Build report add new report type 'HASH' to include the hash value for each output EFI image. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit eca5be7a7d813c78fbeed14736776a774a72cd45)
2016-07-13BaseTools: Add support to merge Prebuild and Postbuild into build ProcessYonghong Zhu
This feature is enhance build tool to incorporate execution of prebuild and postbuild. 1.Prebuild script a.DEFINE PREBUILD in DSC [Defines] section b.Build command -D PREBUILD to override the one in DSC [Defines] section 1)If PREBUILD is a file, then this file will be used as prebuild script. 2)If PREBUILD is empty, then prebuild script will be disabled. 3)If PREBUILD is not defined in [Defines] section and not passed in on command line, then prebuild script is also disabled. 2.Prebuild option a.All options of build tool b.TARGET, ARCH and TOOL_CHAIN_TAG value, Those value will be from target.txt file if they are not in build command line. c.Additional options following prebuild definition. Quotes are needed when these additional options are present. d.Quotes would also be required if the path to the prebuild command contains space or special characters. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit f0dc69e61bf2316dcf7cc75eb7e4ba374a5b2832)
2016-07-13BaseTools: Enhance --Pcd which override by build optionYonghong Zhu
This patch 1) enhance the help info for --pcd to use " but not '. 2) Add the condition statements for build option Pcd type check. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit d7cd335681d6b1b5791b4e8ef4e311f39469a8c0)
2016-07-13BaseTools: cache the defined Guid tool to improve the performanceYonghong Zhu
Current GenFds Tool class GuidSection() is parsing the tools_def.txt for every GUID'ed section that has a GUID defined tool, it cause a bad performance. so this patch cache the defined Guid tool to improve the performance. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 213ae07750fc7532e8ba62a234e958388d1f0359)
2016-07-13BaseTools/GenFds: Fix the bug for wrong alignment generate for RAW fileYonghong Zhu
When do the multiple raw file support feature, it cause the regression that the raw file section alignment value was wrongly overridden by the single raw file. this patch: 1) fix the wrong overridden bug. 2) remove the duplicate code for combine multiple raw file into one. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit cfaaf99bdd412139ca7b9724e678429b2f2fb45f)
2016-07-13BaseTools: Add two new sections for PCD in the build reportYonghong Zhu
Build Spec updated to add two new sections for PCD in the build report. 1.Conditional directives section:If the DSC or FDF file contains conditional directive statements. 2.Unused PCDs section: If the DSC or FDF file define values for PCDs that are not used by any module and are not used in conditional directive statements. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit c8d07c5eeb481e777ad48dc1737d1ab1be67bd44)
2016-07-13BaseTools: Remove the unnecessary check for RAW FileYonghong Zhu
Because the __VerifyFile function already checked whether the file is valid. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 4fa7b3301ef31f2787b9d0bde6694203a67b3ff2)
2016-07-13BaseTools: generate alignment when the FV content come from the filesystemYonghong Zhu
when the FV contents come from the filesystem instead of from a named FDF section, the build tool missed to generate alignment for this FV. The fix is get the alignment value from FV header and use this value to generate alignment. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 877c0a93be4317f5715347359cc78d41f4654748)
2016-07-13BaseTools: Extend the RAW format to support multiple binary filesYonghong Zhu
Current FDF spec updated to support multiple binary files for RAW File in the [FV] and [Capsule] section. For the multiple normal files, it may have the optional FfsAlignment. Example: FILE RAW = 197DB236-F856-4924-91F8-C1F12FB875F3 { Align=16 $(PLATFORM_PACKAGE)/Binaries/File1.pdb Align=16 $(PLATFORM_PACKAGE)/Binaries/File2.pdb Align=16 $(PLATFORM_PACKAGE)/Binaries/File3.pdb } Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 860992ed70ae4c849239174c154d9a7650eabd6e)
2016-07-13BaseTools: not include the undefined macro in response fileYonghong Zhu
In last Nmake patch, when we generate the response file, we would replace all the Macros in the make file. Once there have undefined macro used, the tool direct report error. In this patch, we use following solution to resolve the failure. 1. Add all the defined macros into AutoGenObject macro dict 2. For the undefined macros which used in the Make file, when we generate the response file, we not include this macro, let make phase to handle. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 3570e3324835ba08fa68a1d0bf59290750ff797d)
2016-07-13BaseTools: Fix nmake failure due to command-line length limitationYonghong Zhu
NMAKE is limited to command-line length of 4096 characters. Due to the large number of /I directives specified on command line (one per include directory), the path length of WORKSPACE is multiplied by the number of /I directives and can exceed the limit. This patch: 1. Add new build option -l, --cmd-len to set the maximum command line length, default value is 4096. 2. Generate the response file only if the command line length exceed its maximum characters (default is 4096) when build the module. Cover PP_FLAGS, CC_FLAGS, VFRPP_FLAGS, APP_FLAGS, ASLPP_FLAGS, ASLCC_FLAGS and ASM_FLAGS. 3. The content of the response file is combine from the FLAGS option and INC option. 4. When build failure, it would print out the response file's file location and its content. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 725cdb8fbfb034cd73574ed9c356b0dca14ff843)
2016-07-13BaseTools: add new command line option to support override PCD valueYonghong Zhu
this patch add new feature to support override PCD value on the command line. The value from the command line is the highest priority. 1.Add option(--pcd) to support both PcdName and TokenSpaceGuild.PcdName 2.For void* type PCD, use following format: cstring PCD: --pcd PcdName="string" unicodestring PCD: --pcd PcdName=L"string" CArray PCD: --pcd PcdName=B"{0x1, 0x2}" 3.Build Report, use *B to show the PCD value was overridden in the command line. 4.Error Condition: Report error if the PCD is not found Report error if the PcdName is found under multiple different TokenSpaceGuid Report error if PCD value syntax is incorrect Report error if void* type PCD value exceed its max size Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 763e8edf610b2ccf422986c81ee36b4733560cdb)
2016-07-13BaseTools: Support recent versions of cx_freeze.Marvin Haeuser
This patch fixes the assumed invalid command to start recent versions of cx_freeze on Windows, which are python and not Windows executables. To launch them correctly, the '$(PYTHON_HOME)\python' prefix has been added, so that Python can interpret the tool. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 89a811538e24fd598b9267b888c4ab4c2556dae2)
2016-07-13BaseTools: Add two macros into AutoGenObject macro dictYonghong Zhu
Add DEST_DIR_OUTPUT and DEST_DIR_DEBUG into AutoGenObject macro dict. Because some module (eg: BaseUefiCpuLib) may use this macro in the make file. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit df1e1b63d4c54e1ed5ea0b697ac3fba903c28009)
2016-03-15BaseTools/BPDG: Fix the bug to get the PCD SizeYonghong Zhu
The original bug is only consider int format of PcdSize, but forgot the Hex format. The fix is use the already exist variable PCD.PcdBinSize which done to translate PCD size cover both format. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 53c1329529e47a7da3a0bb5169b5fe0b44f4307e)
2016-03-15BaseTools: update the mail address for stack trace infoYonghong Zhu
Update the mail address from edk2-devel@lists.sourceforge.net to edk2-devel@lists.01.org. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Andrew Fish <afish@apple.com> (cherry picked from commit 3a0f8bdef348a3afca72217d319bb1a8d8b1036a)
2016-03-11BaseTools: report warning if VOID* PCD with {} value is not 8-byte alignedYonghong Zhu
For VOID* Pcd with {} value, If platform developer wants to put in a specific hex offset value that is not 8-byte aligned for VOID * then we allow it with a warning message. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 815ada26cb7069d1121153c4e661e796c9e1da25)
2016-03-11BaseTools: Change source files to DOS format.Liming Gao
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 452582852dc3654ce51e0c6072aaf752d1b0e3ed)
2016-03-11BaseTools: Add Multiple Workspaces support for custom Makefiles.Marvin Haeuser
This patch makes sure the MODULE_DIR variable points to the correct location when multiple workspaces are used. Currently, it is always prefixed with $(WORKSPACE), which only works as long as the package is in the Workspace. Code modules were not effected because the required paths were valid, but for custom Makefiles, the MODULE_DIR variable is used. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> (cherry picked from commit 01e418d652bb3a7cbacc82d74fab1cc5260d0e1f)
2016-02-24BaseTools/Trim: Fix the bug for stripping when no line directive in fileYonghong Zhu
when no line directive in file, the tool still need to strip the typedef statement (eg: typedef struct, typedef union ..). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 7cf1e91d611c5dbe8bdaefd5a48b61e63ea58263)
2016-02-24BaseTools: report an error message when failed to start build commandYonghong Zhu
when build.py was failing to build packages but was not providing any error message except for “Failed to start command.” this patch provide the error message. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit 790f60f22efb829903b6d308decaa4b1506ab928)
2016-02-24BaseTools-Source: Update displayed version informationedk2 dev
Standardize the --version and --help text command-line options Updated tools to correctly display the Build number when using command-line option --version and exit successfully after termination. Ecc was also updated to print informational messages after the options are parsed. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Larry Hauch <larry.hauch@intel.com> Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com> (cherry picked from commit fbf2338143952da2c63241e51379504a15aa3ea9)
2016-02-24BaseTools:Incremental build not work if VPD values in DSC changed by -DYonghong Zhu
If a -D flag is passed into build that selects different lines in [PcdsDynamicExVpd], then build does not see any changes to the timestamp of the DSC file and the VPD tool is not used to regenerate the VPD region based in the statements that are active. so we changed the detect condition and use SaveFileOnChange function to generate VPD. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19767 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit e459de78001be89d37cc286d0fcd57f92e1a438a)
2016-02-24BaseTools: Fix a bug for VpdOffset calculateYonghong Zhu
The VpdOffset value in the DSC both support integer and Hex value, so we fix the bug to support both format. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19765 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit ca85291f1f020652254457cc9edbb3caf6a2ed56)
2016-02-24BaseTools: Fix the bug when no FD section in the FDF fileYonghong Zhu
Check if the Fdf.CurrentFdName is not None and in Fdf.Profile.FdDict before using it which fix a crash issue when no FD section in FDF file. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19747 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit cb04330eee96f3afc8d9f060b69859e3c068c3c9)
2016-02-24BaseTools: make build report tolerant of FVs specified by nameEugene Cohen
Check if the FV name is in the FV dictionary before using it which fixes a crash during build report generation when FVs are specified by path in the FDF. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eugene Cohen <eugene@hp.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19705 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit a243297253afb3f4e5b4047bab49548c73dfdcd7)
2016-02-24BaseTools: process the files by the priority in BUILDRULEORDERYonghong Zhu
By the BUILDRULEORDER feature to process files listed in INF [Sources] sections in priority order, if a filename is listed with multiple extensions, the tools will use only the file that matches the first extension in the space separated list. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19686 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit 4cb7bade0abdbbd4658ee2343c82ae050018e635)
2016-02-24BaseTools: VPD Tool to allocate VPD region be aligned based on value typeYonghong Zhu
Base on build spec update, ASCII strings(“string”), will be byte aligned, Unicode strings(L”string”) will be two-byte aligned, Byte arrays, {0x00, 0x01} will be 8-byte aligned. This patch is going to update VPD Tool to allocate VOID* PCDs to an offset value that is aligned based in syntax of the PCD value. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19651 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit 22061fab23a2bc9bf39cb3d1bd0ff0f1264d3859)
2016-02-24BaseTools: VOID* PCDs in VPD region must be aligned based on value typeYonghong Zhu
Base on build spec update, ASCII strings(“string”), will be byte aligned, Unicode strings(L”string”) will be two-byte aligned, Byte arrays, {0x00, 0x01} will be 8-byte aligned. This patch is going to halt with an error message if a VOID* PCD has an offset value that is not aligned based on the syntax of the PCD value. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19650 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit 5a13737abf9d12d99a15961fa94716b507c701a2)
2016-02-24BaseTools: Fix GenPatchPcdTable to support '-' characters in file namesYonghong Zhu
The Regular Expression parsing of lines in MAP files does not currently support the use of '-' in the column for the filename the symbol is sources from, it cause a build break from the GenPatchPcdTable. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19649 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit 8b54f22f60d1ecdfc4beb1f0965b52f7063b93ad)
2016-02-24BaseTool/UPT: Fix a typo issueHess Chen
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hess Chen <hesheng.chen@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19576 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit bc003bc0769f2ad37700d34dfde83eac323b51c7)
2016-02-24BaseTool/ECC: Add UTF-8 support on ECC toolHess Chen
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hess Chen <hesheng.chen@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19575 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit 975889279df2eb3d3338cb88afb3faa71ddde4d6)
2016-02-24BaseTools: Fix Makefile to correctly break during a build failureLarry Hauch
Updated the Makefile so that nmake will correctly fail if the cxfreeze command fails to complete successfully. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Larry Hauch <larry.hauch@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19501 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit 179475645373a6842b6da8739c469d8b99672319)
2016-02-24BaseTools: Fix the bug for VOID* Patchable PCD declaration in LibraryYonghong Zhu
VOID* Patchable PCD in Library has the different declaration from the one in Driver, this issue that will cause GCC LTO build failure. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19766 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit d66670f9ea830c8f6e1f21b2deeca58128e3bfde)
2015-12-18BaseTools: Fix one bug in FD region for multiple workspace supportYonghong Zhu
Update the os.path.join to mws.join for FILE/INF/CAPSULE/FV region type. (Sync patch r19319 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19387 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-18BaseTools/Ecc: Fix a bug to report fake issueHess Chen
Fix a bug to ignore the lib ins defined in [components] section but also listed in SkipDir (Sync patch r19238 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hess Chen <hesheng.chen@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19384 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-18Revert the change in r19143 for BUILDRULEORDER.Yonghong Zhu
(Sync patch r19150 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19380 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-18BaseTools: process the files by the priority in BUILDRULEORDERYonghong Zhu
By the BUILDRULEORDER feature to process files listed in INF [Sources] sections in priority order, if a filename is listed with multiple extensions, the tools will use only the file that matches the first extension in the space separated list. (Sync patch r19143 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19378 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-18BaseTools: Fix a bug when apply patches to SEC use the FILE_GUID overrideYonghong Zhu
Fix a bug when applying patches to SEC modules that use the FILE_GUID override. Since a temp dir is used when FILE_GUID override is used, the INF file path comparisons fail. The fix is to capture the real INF file path comparisons instead of using the temp dir path to the INF. (Sync patch r19142 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19377 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-18BaseTools: Enhance GenFv Tool to report error messageYonghong Zhu
When two vtf files in one FV image, no FV file can be generated, but it report the stack trace info. so we enhance the tool to report error message directly but not the stack trace info. (Sync patch r19141 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19376 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-18BaseTools: Fix a bug in the VPD report generationYonghong Zhu
Changed the if condition to check whether current Region is FD VPD region to fix a bug in the VPD report generation. (Sync patch r19139 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19375 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-18Revert the change in r19137.Yonghong Zhu
(Sync patch r19138 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19374 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-18BaseTools: Enhance GenFv Tool to report error messageYonghong Zhu
When two vtf files in one FV image, no FV file can be generated, but it report the stack trace info. so we enhance the tool to report error message directly but not the stack trace info. (Sync patch r19137 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19373 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-18BaseTools: Add support for INF statement in FD regionYonghong Zhu
FD region today can be file or data, but not a patched image.Add support for an INF statement in an FD region, so the binary from the INF can be patched prior to being added to the FD region. (Sync patch r19136 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19372 6f19259b-4bc3-4df7-8a09-765794883524