11 years agoCorrect license header to BSD license.
lgao4 [Thu, 24 Dec 2009 01:33:53 +0000 (01:33 +0000)]
Correct license header to BSD license.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1780 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoGenerate constructor of NULL library instances in order that they are listed in DSC...
lgao4 [Wed, 23 Dec 2009 05:29:28 +0000 (05:29 +0000)]
Generate constructor of NULL library instances in order that they are listed in DSC file.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1779 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoSupport EFI_IFR_NUMERIC_SIZE_x flags definition
lgao4 [Wed, 23 Dec 2009 02:48:57 +0000 (02:48 +0000)]
Support EFI_IFR_NUMERIC_SIZE_x flags definition

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1778 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoRemove the action of using objcopy to add debug link section. In UNIXGCC tool chain...
klu2 [Wed, 23 Dec 2009 01:58:45 +0000 (01:58 +0000)]
Remove the action of using objcopy to add debug link section. In UNIXGCC tool chain, MinGW's objcopy do not add the section in PE way, but in ELF way that add section index at bottom of file, add section's content in ahead of file. It will make original PE file corrupt.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1777 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoGenFw: PeCoffConvertImageToXip overwrites file headers
jljusten [Tue, 22 Dec 2009 07:28:32 +0000 (07:28 +0000)]
GenFw: PeCoffConvertImageToXip overwrites file headers

If a section had an offset which overlapped with the executable headers
then the headers would be overwritten by PeCoffConvertImageToXip.
Now, this function will abort the conversion to XIP if this situation
is detected.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1776 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix build broken for IA64 architecture under linux
klu2 [Mon, 21 Dec 2009 10:23:01 +0000 (10:23 +0000)]
Fix build broken for IA64 architecture under linux

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1775 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoSplit debug information into a fake-pdb file for GCC tool chain
klu2 [Sat, 19 Dec 2009 10:31:54 +0000 (10:31 +0000)]
Split debug information into a fake-pdb file for GCC tool chain

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1774 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoRemove ARM compiler intrinsic libs and use new NULL library class feature.
ajfish [Wed, 16 Dec 2009 18:25:27 +0000 (18:25 +0000)]
Remove ARM compiler intrinsic libs and use new NULL library class feature.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1773 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix two bugs in FvLib functions.
lgao4 [Wed, 16 Dec 2009 14:22:17 +0000 (14:22 +0000)]
Fix two bugs in FvLib functions.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1772 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoGenFw: Update PeCoffExpandZeroFillSections to work with UNIXGCC & CYGGCC
jljusten [Wed, 16 Dec 2009 08:10:11 +0000 (08:10 +0000)]
GenFw: Update PeCoffExpandZeroFillSections to work with UNIXGCC & CYGGCC

PeCoffExpandZeroFillSections is also being renamed to

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1771 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoCorrect the latest link for ming runtime source for x64 architecture
klu2 [Sat, 12 Dec 2009 09:30:25 +0000 (09:30 +0000)]
Correct the latest link for ming runtime source for x64 architecture

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1770 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoCorrect the latest link for ming runtime source
klu2 [Sat, 12 Dec 2009 09:23:29 +0000 (09:23 +0000)]
Correct the latest link for ming runtime source

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1769 7335b38e-4728-0410-8992-fb3ffe349368

11 years agom32 option is missed for GCC IA32 assembler, which make IA32 building failure on...
klu2 [Sat, 12 Dec 2009 08:00:13 +0000 (08:00 +0000)]
m32 option is missed for GCC IA32 assembler, which make IA32 building failure on a GCC 64bit machine

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1768 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoCorrect the source of build template file. They are should be pointed to EDK_TOOLS_PA...
klu2 [Sat, 12 Dec 2009 05:07:17 +0000 (05:07 +0000)]
Correct the source of build template file. They are should be pointed to EDK_TOOLS_PATH. So customer could use EDK_TOOLS_PATH to re-point the current tools path as their development.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1767 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoGenFw: Comment call to PeCoffExpandZeroFillSections
jljusten [Fri, 11 Dec 2009 05:08:55 +0000 (05:08 +0000)]
GenFw: Comment call to PeCoffExpandZeroFillSections

This function appears to be breaking the UNIXGCC and CYGGCC toolchains
for the IA32 and X64 architectures.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1766 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoMissed one of the tools when I added the set.
AJFISH [Wed, 9 Dec 2009 01:39:32 +0000 (01:39 +0000)]
Missed one of the tools when I added the set.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1765 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd in the hooks points for Cygwin and update the TestTools.py to know how to find...
AJFISH [Tue, 8 Dec 2009 22:55:44 +0000 (22:55 +0000)]
Add in the hooks points for Cygwin and update the TestTools.py to know how to find them.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1764 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoCYGWIN 1.7 uses gcc 4.3.4 and the follownig files get build errors for the ctype...
AJFISH [Tue, 8 Dec 2009 22:16:28 +0000 (22:16 +0000)]
CYGWIN 1.7 uses gcc 4.3.4 and the follownig files get build errors for the ctype.h isdigit() and the like macros. The arguments are defined in POSIX as int, so I casted them to int to make the warning go away.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1763 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoNeed to add this to get BeagleBoard to build. Probably will get moved to edk2 in...
ajfish [Tue, 8 Dec 2009 19:24:53 +0000 (19:24 +0000)]
Need to add this to get BeagleBoard to build. Probably will get moved to edk2 in the long run.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1762 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdding fixes for Snow Leopard build. Snow Leopard tools default to 64-bit images...
ajfish [Mon, 7 Dec 2009 22:13:11 +0000 (22:13 +0000)]
Adding fixes for Snow Leopard build. Snow Leopard tools default to 64-bit images, but the uname stuff still reports i386. The tools are not yet 64-bit clean so make sure we build for i386 on Snow Leopard. Found an extra warning in BasePeCoff.c. Added sitecustomize.py that only does stuff for Mac OS X, turns out the default version of pyhton on Snow Leopard needs a little tweak to work correctly.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1761 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix an issue with mtoc not producing XIP images correctly as an area of zeros was...
ajfish [Mon, 7 Dec 2009 22:10:29 +0000 (22:10 +0000)]
Fix an issue with mtoc not producing XIP images correctly as an area of zeros was not in the PE/COFF file image, but was in the virtual (memory) image. This makes for a file that does not run XIP. This code includes fixes from the code review done on the mailing list.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1760 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoUpdate the .template files for latest OS X and RVCT builds. Fix some GCC issues with...
ajfish [Mon, 7 Dec 2009 19:17:46 +0000 (19:17 +0000)]
Update the .template files for latest OS X and RVCT builds. Fix some GCC issues with .h files, and add definition for MTOC PE/COFF debug image type. Also add a function needed for the --xip GenFw changed that is pending.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1759 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoMinor update the wording in help to follow build spec 1.2 literally.
qhuang8 [Thu, 3 Dec 2009 06:27:05 +0000 (06:27 +0000)]
Minor update the wording in help to follow build spec 1.2 literally.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1758 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. Support EDK DXE_SMM_DRIVER module type.
lgao4 [Tue, 1 Dec 2009 06:20:22 +0000 (06:20 +0000)]
1. Support EDK DXE_SMM_DRIVER module type.
2. Add build rule for microcode .inc file.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1757 7335b38e-4728-0410-8992-fb3ffe349368

11 years agotools_def.template: Add GCC 4.4 IA32 toolchain
jljusten [Mon, 30 Nov 2009 16:52:35 +0000 (16:52 +0000)]
tools_def.template: Add GCC 4.4 IA32 toolchain

Please note that GCC 4.4 is not yet supported by the EDK II project.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1756 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoSync the description of GenFw and GenFv tool options between source code and man...
lgao4 [Wed, 25 Nov 2009 02:20:02 +0000 (02:20 +0000)]
Sync the description of GenFw and GenFv tool options between source code and man page document.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1755 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. Add a new option (--hiibinpackage) of GenFw tool to generate the resource section...
lgao4 [Wed, 25 Nov 2009 01:23:56 +0000 (01:23 +0000)]
1. Add a new option (--hiibinpackage) of GenFw tool to generate the resource section based on the input HII data.
2. Fix an error in AutoGen that processes all binary by default build rule. It should only process the binary files specified in INF by default rule.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1754 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix incremental build issue for FV Extended Headers. If only the contents of the...
mdkinney [Sun, 22 Nov 2009 20:42:30 +0000 (20:42 +0000)]
Fix incremental build issue for FV Extended Headers.  If only the contents of the FV Extended Header has been modified, then the change would not be reflected in the final FV/FD image.

This fix updates GenFds to update the time/date stamp on an FV INF file if the contents if the FV Extended Header is present and those contents have changed since the last time the FV Extended Header was generated.

Do not update time/date stamp if FV INF file does not exist.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1752 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix incremental build issue for FV Extended Headers. If only the contents of the...
mdkinney [Sun, 22 Nov 2009 20:36:39 +0000 (20:36 +0000)]
Fix incremental build issue for FV Extended Headers.  If only the contents of the FV Extended Header has been modified, then the change would not be reflected in the final FV/FD image.

 This fix updates GenFds to update the time/date stamp on an FV INF file if the contents if the FV Extended Header is present and those contents have changed since the last time the FV Extended Header was generated.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1751 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoGenFv: Fix issue where 64-bit pointer was being truncated
jljusten [Thu, 19 Nov 2009 08:38:39 +0000 (08:38 +0000)]
GenFv: Fix issue where 64-bit pointer was being truncated

This change fixes a scenario where the high 32-bits of
ImageContext.ImageAddress were found to be zero'd by the
bitwise-and operation.  This was seen on 64-bit Linux.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1750 7335b38e-4728-0410-8992-fb3ffe349368

11 years agotools_def: Use objcopy rather than windres for GCC toolchains
jljusten [Wed, 18 Nov 2009 23:08:26 +0000 (23:08 +0000)]
tools_def: Use objcopy rather than windres for GCC toolchains

This resolves a build issue with CYGGCC, where windres will not handle
paths using the '\' path separation character.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1749 7335b38e-4728-0410-8992-fb3ffe349368

11 years agotools_def: Add DEFAULT_WIN_ASL_* macros
jljusten [Wed, 18 Nov 2009 00:34:43 +0000 (00:34 +0000)]
tools_def: Add DEFAULT_WIN_ASL_* macros

These macro allow the IASL or Microsoft ASL compilers to be easily
selected by modifying the macro at the start of tools_def.
By default, the macros point to IASL.  This is an alternate method
of choosing the MS ASL compiler.  The other option currently is to
use one of the 'xASL' toolchains.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1748 7335b38e-4728-0410-8992-fb3ffe349368

11 years agotools_def: Fix GCC IPF RC_FLAGS
jljusten [Wed, 18 Nov 2009 00:34:41 +0000 (00:34 +0000)]
tools_def: Fix GCC IPF RC_FLAGS

This change allows GCC for IPF to build HII resources.  A sample driver
which makes use of this is MdeModulePkg/Universal/HiiResourcesSampleDxe.
These flag changes were provided by Liming (lgao4).

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1747 7335b38e-4728-0410-8992-fb3ffe349368

11 years agomingw-gcc-build.py: Use GNU's auto-redirecting mirror url for GCC source
jljusten [Wed, 18 Nov 2009 00:34:40 +0000 (00:34 +0000)]
mingw-gcc-build.py: Use GNU's auto-redirecting mirror url for GCC source

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1746 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoUpdate VFR Compiler to support HII security privilege feature. It parses the followin...
rsun3 [Thu, 12 Nov 2009 03:43:36 +0000 (03:43 +0000)]
Update VFR Compiler to support HII security privilege feature. It parses the following VFR syntax and generates EFI_IFR_SECURITY op-code.

securityExp ::=
  "security" "(" AcessSetupGuid ")"

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1745 7335b38e-4728-0410-8992-fb3ffe349368

11 years agobuild_rule.template: Fix rule syntax for RC_FLAGS on GCC
jljusten [Thu, 12 Nov 2009 01:19:05 +0000 (01:19 +0000)]
build_rule.template: Fix rule syntax for RC_FLAGS on GCC

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1744 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. Support SuppressIf form usage.
lgao4 [Wed, 11 Nov 2009 05:33:35 +0000 (05:33 +0000)]
1. Support SuppressIf form usage.
2. Support DisableIf question and question tag with the dynamic question value.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1743 7335b38e-4728-0410-8992-fb3ffe349368

11 years agotools_def.template: Add GCC_WINDRES_FLAGS macro
jljusten [Tue, 10 Nov 2009 19:52:03 +0000 (19:52 +0000)]
tools_def.template: Add GCC_WINDRES_FLAGS macro

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1742 7335b38e-4728-0410-8992-fb3ffe349368

11 years agotools_def.template: Make use of macros for GCC common flags
jljusten [Tue, 10 Nov 2009 19:52:02 +0000 (19:52 +0000)]
tools_def.template: Make use of macros for GCC common flags

This should fix an inconsistency with the GCC flags used during CYGGCC

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1741 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoDSC: Add support for NULL classes within 'LibraryClasses' sections
jljusten [Sat, 7 Nov 2009 23:16:46 +0000 (23:16 +0000)]
DSC: Add support for NULL classes within 'LibraryClasses' sections

Previously, a module could specify a NULL library class that would
always be linked to the module.  For example:
    SamplePkg/SampleModule.inf {

Now, a similar syntax can be used under normal 'LibraryClasses' sections:

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1740 7335b38e-4728-0410-8992-fb3ffe349368

11 years agotools_def.template: Introduce MS_VS_BIN and MS_VS_DLL definitions.
jljusten [Tue, 3 Nov 2009 23:54:05 +0000 (23:54 +0000)]
tools_def.template: Introduce MS_VS_BIN and MS_VS_DLL definitions.

These are used with the ICC & CYGGCC toolchains to allow easier configuration
for building with nmake.exe/rc.exe from VS2003, VS2005 or VS2005-on-win64.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1739 7335b38e-4728-0410-8992-fb3ffe349368

11 years agobuild_rule.template: Fix build issue seen with CYGGCC.
jljusten [Tue, 3 Nov 2009 23:54:03 +0000 (23:54 +0000)]
build_rule.template: Fix build issue seen with CYGGCC.

Remove (") quotes around $(OBJECT_FILES_LIST) in the build rules as
it seems to cause an issue with building for the GYCGCC toolchain.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1738 7335b38e-4728-0410-8992-fb3ffe349368

11 years agotools_def.template: Rename CYGWIN_BIN32 to CYGWIN_BINIA32
jljusten [Tue, 3 Nov 2009 23:54:02 +0000 (23:54 +0000)]
tools_def.template: Rename CYGWIN_BIN32 to CYGWIN_BINIA32

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1737 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoMake Binary file built correctly.
lgao4 [Mon, 2 Nov 2009 03:27:00 +0000 (03:27 +0000)]
Make Binary file built correctly.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1736 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoEnhance tool to support PI SMM, SMM_CORE FV file type and PI SMM_DEPEX section type.
lgao4 [Mon, 2 Nov 2009 01:59:32 +0000 (01:59 +0000)]
Enhance tool to support PI SMM, SMM_CORE FV file type and PI SMM_DEPEX section type.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1735 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoImprove CAPSULE_FLAGS parsing in [Capsule] section of FDF files.
mdkinney [Wed, 28 Oct 2009 22:24:57 +0000 (22:24 +0000)]
Improve CAPSULE_FLAGS parsing in [Capsule] section of FDF files.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1734 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoImprove CAPSULE_FLAGS parsing in [Capsule] section of FDF files.
mdkinney [Wed, 28 Oct 2009 22:08:01 +0000 (22:08 +0000)]
Improve CAPSULE_FLAGS parsing in [Capsule] section of FDF files.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1733 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix a bug to check checksum of FFS data.
lgao4 [Wed, 28 Oct 2009 02:10:17 +0000 (02:10 +0000)]
Fix a bug to check checksum of FFS data.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1732 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoMake sure all top level FVs in an FD are processed before capsules in an FD are proce...
mdkinney [Tue, 27 Oct 2009 21:52:01 +0000 (21:52 +0000)]
Make sure all top level FVs in an FD are processed before capsules in an FD are processed.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1731 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoResolve parsing ambiguities in [Capsule] section of FDF files.
mdkinney [Tue, 27 Oct 2009 21:51:18 +0000 (21:51 +0000)]
Resolve parsing ambiguities in [Capsule] section of FDF files.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1730 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoMake VolInfo tool to recognize SMM, SMM_CORE file type.
lgao4 [Tue, 27 Oct 2009 08:41:18 +0000 (08:41 +0000)]
Make VolInfo tool to recognize SMM, SMM_CORE file type.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1729 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoCalculate FFS file checksum only by FFS data, not the entire FFS file according to...
lgao4 [Tue, 27 Oct 2009 08:10:53 +0000 (08:10 +0000)]
Calculate FFS file checksum only by FFS data, not the entire FFS file according to PI1.2

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1728 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoGenFv: SEC/PEI Core files are not required for a VTF-0 Volume Top File.
jljusten [Mon, 26 Oct 2009 03:50:41 +0000 (03:50 +0000)]
GenFv: SEC/PEI Core files are not required for a VTF-0 Volume Top File.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1727 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. Support the lower case string token name in compatible mode.
lgao4 [Thu, 22 Oct 2009 01:32:40 +0000 (01:32 +0000)]
1. Support the lower case string token name in compatible mode.
2. Check whether string token name contains the invalid lower case character in native mode.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1726 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoStrip possible blank before submit PCD information.
klu2 [Wed, 21 Oct 2009 14:31:21 +0000 (14:31 +0000)]
Strip possible blank before submit PCD information.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1725 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. Free the allocated memory and Close the open file when exit.
lgao4 [Tue, 20 Oct 2009 06:03:40 +0000 (06:03 +0000)]
1. Free the allocated memory and Close the open file when exit.
2. Calculate PI FV header size with PI extension header and extension header entry.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1724 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. Make code alignment as 4 byte indent.
lgao4 [Tue, 20 Oct 2009 06:00:40 +0000 (06:00 +0000)]
1. Make code alignment as 4 byte indent.
2. Add check for the size of each FV extend entry, which can't exceed 0x10000.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1723 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. Add RC tool path for the different tool chain, which is used to create PE resource...
lgao4 [Mon, 19 Oct 2009 10:12:11 +0000 (10:12 +0000)]
1. Add RC tool path for the different tool chain, which is used to create PE resource section.
2. Add the build rule to create HII resource section.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1722 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. Enhance GenFw tool to merge HII binary package into a txt resource file.
lgao4 [Mon, 19 Oct 2009 10:10:56 +0000 (10:10 +0000)]
1. Enhance GenFw tool to merge HII binary package into a txt resource file.
2. Enhance VfrCompiler tool to create the binary HII form package.
3. Enhance Build tool to create the binary HII string package when UEFI_HII_RESOURCE_SECTION is set, and insert HII resource section into the final EFI image.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1721 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoSet the unused .pdata and .xdata section as discardable attribute.
lgao4 [Mon, 19 Oct 2009 07:18:06 +0000 (07:18 +0000)]
Set the unused .pdata and .xdata section as discardable attribute.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1720 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoclean up non-English characters.
vanjeff [Sat, 10 Oct 2009 05:30:41 +0000 (05:30 +0000)]
clean up non-English characters.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1719 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix issues in report generation for DXE SMM drivers
mdkinney [Sat, 10 Oct 2009 00:31:53 +0000 (00:31 +0000)]
Fix issues in report generation for DXE SMM drivers

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1718 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoUpdate module scoped report of the 'build' command to list the complete set of librar...
mdkinney [Fri, 9 Oct 2009 23:58:14 +0000 (23:58 +0000)]
Update module scoped report of the 'build' command to list the complete set of library instances that are linked against each module and indicate if each library has a constructor, a destructor, or both.  Also, show the dependency expression for each library instance if one is present along with the dependency expression of each module and the merged dependency expression that combines the module's dependency expression with the dependency expression of all the module's dependent libraries.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1717 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAllow macros to be used in PCD definitions in DSC files.
mdkinney [Thu, 8 Oct 2009 20:19:04 +0000 (20:19 +0000)]
Allow macros to be used in PCD definitions in DSC files.

For example:


The value of the macro $(DEBUG_PROPERTY_MASK) may be defined using two methods.
1) build command -D flag:
       build -D DEBUG_PROPERTY_MASK=0x2F

2) [defines] section of DSC file:

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1716 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd support for FV Extension Headers and FV Extension Entries defined in the PI speci...
mdkinney [Tue, 6 Oct 2009 20:28:21 +0000 (20:28 +0000)]
Add support for FV Extension Headers and FV Extension Entries defined in the PI specifications.

The FDF syntax has been extended to allow zero or more FV Extension Entries to be declared.  The contents can come from files or byte arrays declared in the FDF itself.

1) FV Extension Entry of type 0x1234 using a workspace relative path to the entry contents.

  FV_EXT_ENTRY TYPE=0x1234 {
    FILE = Nt32Pkg/a.txt

2) FV Extension Entry of type 0x1234 using an absolute path to the entry contents.

  FV_EXT_ENTRY TYPE=0x1234 {
    FILE = c:/b.txt

3) FV Extension Entry of type 0x1234 using an embedded byte array

  FV_EXT_ENTRY TYPE=0x1234 {
    DATA = { 0x00, 0x01, 0x02 }

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1715 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd -y and -Y flags to the 'build' command to provide report generation capabilities...
mdkinney [Tue, 6 Oct 2009 20:24:17 +0000 (20:24 +0000)]
Add -y and -Y flags to the 'build' command to provide report generation capabilities.  The report is currently limited to platform and modules scope PCD setting summaries.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1714 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix mistaken generation of a build error for case-sensitive file systems.
jljusten [Thu, 1 Oct 2009 06:32:20 +0000 (06:32 +0000)]
Fix mistaken generation of a build error for case-sensitive file systems.

On a case sensitive file system if more than one paths with similar names
exists, it could cause a false build error to be generated.  For example,
if both an x64 and an X64 directory existed, then it was possible that an
error would be generated saying that the file case was incorrect.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1713 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoCorrect OrderList opcode MaxContainers from the array size to the array number.
lgao4 [Tue, 22 Sep 2009 03:24:20 +0000 (03:24 +0000)]
Correct OrderList opcode MaxContainers from the array size to the array number.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1712 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoMinor update VFR tool to align with spec updates in MdePkg.
qhuang8 [Mon, 21 Sep 2009 14:16:40 +0000 (14:16 +0000)]
Minor update VFR tool to align with spec updates in MdePkg.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1711 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix GCC build failure because print format L is not recognized by GCC. Only l can...
lgao4 [Thu, 17 Sep 2009 02:25:42 +0000 (02:25 +0000)]
Fix GCC build failure because print format L is not recognized by GCC. Only l can be used.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1710 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd check when symbol file doesn't match bin file.
lgao4 [Wed, 16 Sep 2009 01:55:44 +0000 (01:55 +0000)]
Add check when symbol file doesn't match bin file.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1709 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix the bug to zero .xdata section.
lgao4 [Tue, 15 Sep 2009 08:26:41 +0000 (08:26 +0000)]
Fix the bug to zero .xdata section.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1708 7335b38e-4728-0410-8992-fb3ffe349368

11 years agosync with EDK II maintrunk.
vanjeff [Fri, 11 Sep 2009 02:23:56 +0000 (02:23 +0000)]
sync with EDK II maintrunk.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1707 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoCorrectly create extension FvNameGuid for the empty FV image when FvNameGuid is set.
lgao4 [Thu, 10 Sep 2009 08:14:40 +0000 (08:14 +0000)]
Correctly create extension FvNameGuid for the empty FV image when FvNameGuid is set.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1706 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoReduce command line option, we can specify --capflag multi times to enumerate all...
qhuang8 [Thu, 10 Sep 2009 07:59:00 +0000 (07:59 +0000)]
Reduce command line option, we can specify --capflag multi times to enumerate all four combinations.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1705 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoMinor update previous check in
qhuang8 [Thu, 10 Sep 2009 07:36:18 +0000 (07:36 +0000)]
Minor update previous check in

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1704 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFor EDK module, if source over write path does exists, the source file will be got...
lgao4 [Thu, 10 Sep 2009 07:21:26 +0000 (07:21 +0000)]
For EDK module, if source over write path does exists, the source file will be got from source over write path.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1703 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd a new Capsule initiate reset flag support in build tools.
qhuang8 [Thu, 10 Sep 2009 07:19:52 +0000 (07:19 +0000)]
Add a new Capsule initiate reset flag support in build tools.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1702 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix the bug that ECP platform build break.
rsun3 [Wed, 9 Sep 2009 02:24:20 +0000 (02:24 +0000)]
Fix the bug that ECP platform build break.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1701 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix build break while UNI file string name too long.
qhuang8 [Tue, 8 Sep 2009 08:53:18 +0000 (08:53 +0000)]
Fix build break while UNI file string name too long.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1700 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoUpdate VFR file build rule by removing trim action, which may delete some information...
lgao4 [Tue, 8 Sep 2009 04:44:38 +0000 (04:44 +0000)]
Update VFR file build rule by removing trim action, which may delete some information in vfr file.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1699 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoCorrect strnicmp to strncmp
lgao4 [Tue, 8 Sep 2009 01:54:55 +0000 (01:54 +0000)]
Correct strnicmp to strncmp

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1698 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. FormID can't be set to zero.
lgao4 [Mon, 7 Sep 2009 03:31:10 +0000 (03:31 +0000)]
1. FormID can't be set to zero.
2. Check the default value for Numeric and OneOf opcode.
3. Support #pragma Pack(show)

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1697 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoSupport PI EFI_SECTION_SMM_DEPEX section.
lgao4 [Wed, 2 Sep 2009 09:47:05 +0000 (09:47 +0000)]

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1696 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd support for PI SMM driver module type in EDK style INF file.
rsun3 [Wed, 2 Sep 2009 07:15:17 +0000 (07:15 +0000)]
Add support for PI SMM driver module type in EDK style INF file.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1695 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd /GF compiler option for IPF ICC tool chains by default.
qhuang8 [Tue, 1 Sep 2009 15:01:16 +0000 (15:01 +0000)]
Add /GF compiler option for IPF ICC tool chains by default.
This option enables read-only string pools to reduce the final PE/COFF image size.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1694 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd support for defining macros in the command line to the Build utility.
rsun3 [Fri, 28 Aug 2009 05:34:41 +0000 (05:34 +0000)]
Add support for defining macros in the command line to the Build utility.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1693 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoSplit XCODE32 IA32 DLINK into DEBUG & RELEASE. Added INTRINSIC_FLAGS so it would...
ajfish [Thu, 27 Aug 2009 20:44:35 +0000 (20:44 +0000)]
Split XCODE32 IA32 DLINK into DEBUG & RELEASE. Added INTRINSIC_FLAGS so it would now be possible to override the ARM compiler intrinsic lib from a DSC file. This allows the DSC to match the compiler intrinsic lib to a specific ARM processor type. So for example if you have a newer ARM processor it may support a div instruction, but older processors do not. You sould use INTRINSIC_FLAGS to point to an intrinsic library version that uses the ARM div instruction as a size/speed optimization for your platform.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1692 7335b38e-4728-0410-8992-fb3ffe349368

11 years agobuild tools will break if PEIM or DXE driver has no valid [Depex] section.
vanjeff [Thu, 27 Aug 2009 07:07:10 +0000 (07:07 +0000)]
build tools will break if PEIM or DXE driver has no valid [Depex] section.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1691 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoadd RVCT (RealView Compiler Toolkit from ARM for ARM hosted on Windows)/ RVCTCYGWIN...
eric_tian [Thu, 27 Aug 2009 06:56:53 +0000 (06:56 +0000)]
add RVCT (RealView Compiler Toolkit from ARM for ARM hosted on Windows)/ RVCTCYGWIN (RVCT compiler running on cygwin) / XCODE /ARMGCC support, which is contributed by Andrew Fish.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1690 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix a bug that the build process breaks with a message "in Exec IntegrityError: colum...
rsun3 [Wed, 26 Aug 2009 09:27:25 +0000 (09:27 +0000)]
Fix a bug that the build process breaks with a message "in Exec IntegrityError: column ID is not unique" when !include statement is used in a PCD section in the platform DSC file. The root cause is that the end flag record is inserted multiple times. The solution is that do not set end flag when processing included meta files.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1689 7335b38e-4728-0410-8992-fb3ffe349368

11 years ago1. Support CAPSULE flash region type in FD section of FDF file.
lgao4 [Fri, 21 Aug 2009 08:52:36 +0000 (08:52 +0000)]
1. Support CAPSULE flash region type in FD section of FDF file.
2. Enhance the circle check between FV, Capsule and FD image.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1688 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd the missing build options.
lgao4 [Fri, 21 Aug 2009 05:55:21 +0000 (05:55 +0000)]
Add the missing build options.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1687 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix the issue that EFI_IFR_RESET_BUTTON is incorrectly listed as a question.
qhuang8 [Wed, 19 Aug 2009 13:29:29 +0000 (13:29 +0000)]
Fix the issue that EFI_IFR_RESET_BUTTON is incorrectly listed as a question.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1686 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoAdd the dependency for the capsule generation.
lgao4 [Mon, 17 Aug 2009 02:54:46 +0000 (02:54 +0000)]
Add the dependency for the capsule generation.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1685 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoChange the default location for IASL on Unix.
jljusten [Sat, 15 Aug 2009 05:05:00 +0000 (05:05 +0000)]
Change the default location for IASL on Unix.

The default is now /usr/bin/iasl, but $(HOME)/programs/iasl is
also shown as a commented example.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1684 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoRemove '/' directory separator from CYGWIN & UNIXGCC tool specications.
jljusten [Sat, 15 Aug 2009 05:04:59 +0000 (05:04 +0000)]
Remove '/' directory separator from CYGWIN & UNIXGCC tool specications.

This allows for the UNIXGCC_*_PETOOLS_PREFIX and CYGWIN_* macros
to potentially have a prefix before the executable name.  This allows
more flexibility for gcc/binutils when the executables include
a prefix.  Some commented examples are shown where this might be used.
For example:
  DEFINE UNIXGCC_IA32_PETOOLS_PREFIX = ENV(HOME)/programs/gcc/ia32/bin/i686-pc-mingw32-

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1683 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix warning seen with GCC.
jljusten [Fri, 14 Aug 2009 06:03:54 +0000 (06:03 +0000)]
Fix warning seen with GCC.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1682 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix a python syntax error.
qhuang8 [Fri, 14 Aug 2009 01:07:27 +0000 (01:07 +0000)]
Fix a python syntax error.
If we use "from Common.BuildToolError import *", we really do not need "BuildToolError." name space, which is only required when we use "from Common.BuildToolError import BuildToolError"

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1681 7335b38e-4728-0410-8992-fb3ffe349368

11 years agoFix GenFvImage to generate FvImage when the required size is same to the size of...
lgao4 [Thu, 13 Aug 2009 09:40:49 +0000 (09:40 +0000)]
Fix GenFvImage to generate FvImage when the required size is same to the size of Fv image.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1680 7335b38e-4728-0410-8992-fb3ffe349368