Commit Graph

298 Commits

Author SHA1 Message Date
lgao4 7bc6c82b85 ynchronize build tools binaries with source code r1655 at build tool project.
Fix a bug that GenFv tool can't generate the correct top reset vector table for IA32, X64 and IPF arch SEC module.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8918 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-13 05:23:00 +00:00
klu2 66e1951f49 Synchronize build tools binaries with source code r1654 at build tool project.
The modifications includes:
1) Correct the issue that build tool generate UINT8 array for unicode string type PCD, it maybe cause alignment issue. Now build tool will generate UINT16 array for unicode string type PCD.
2) Merge FdfParser.py updates to FdfParserLite.py
3) Replace EFI_IMAGE_NT_HEADERS with EFI_IMAGE_OPTIONAL_HEADER_UNION. (GenFv)
The code referencing EFI_IMAGE_NT_HEADERS has been modified to
refer to EFI_IMAGE_OPTIONAL_HEADER_UNION => Pe32/Pe32Plus.
4) Remove definitions of build machine specific types.
Remove EFI_IMAGE_OPTIONAL_HEADER, EFI_IMAGE_NT_HEADERS,
EFI_IMAGE_NT_OPTIONAL_HDR_MAGIC, and EFI_IMAGE_MACHINE_TYPE_SUPPORTED,
since these were defined differently based on the architecture
of the build machine.  The BaseTools should support the edk2
supported processor architectures and not depend on the architecture
of the build platform.
5) Added support for the ARM processor type
Added RVCT as a ToolChainFamily (Real View Compiler Tools from ARM)
Enabled FixedAtBuild 32-bit PCDs to be used from GCC or RVCT assembler.
Updated GenFw to support RVCT ELF images and removed #ifdefs for ELF. Also made ELF to PE/COFF features available on all supported build targets for the tools by adding some FreeBSD ELF headers.
Updated GenFv to support the ARM reset vector in ZeroBytes of the FV header.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8872 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-10 09:38:06 +00:00
lgao4 c437405563 Synchronize the build tools' binary with source files at r1645 in build tool project.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8828 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-09 05:47:15 +00:00
xli24 ee33873da1 Synchronize the build tools' binary with source files at r1640 in build tool project.
This update adds error check for environment path existence.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8823 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-08 15:47:25 +00:00
xli24 ee0b896904 Synchronize the build tools' binary with source files at r1639 in build tool project.
This update fixes the bug of unmatched paths due to case-sensitive comparison on case-insensitive systems.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8814 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-08 08:49:33 +00:00
klu2 61374f5d4f Synchronize the build tools' binary with source files at r1637 in build tool project.
The modifications are:
1. Support BuildRuleFamily attribute of tool chain tag to be filtered build rule.
2. Enhance GenFds tool to get the default PcdValue from DEC file.
3. Enhance AutoGen to generate library function constructors for SEC type module.  

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8764 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-06 15:13:54 +00:00
klu2 e8c42f8a7d Synchronize the binary with modification at build tool project r1634. The modification is adjusting the regular expression to handle more "#include" case when build tool calculate the dependency for source file. This modification has been tested under UNIX and MSFT tool chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8699 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-01 06:44:37 +00:00
klu2 03476bf384 Synchronize the binary with build tools' source at r1630 which fix the issue that the dependency of some header files is missed in Gnu makefile
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8623 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-23 05:42:02 +00:00
klu2 23d0599aae Synchronize all binaries with build tools source base on r1628.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8617 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-21 13:33:37 +00:00
klu2 e189fded67 Synchronize binary with modification of r1618 in buildtools project. The modification is made for WorkspaceDatabase.py and affect the frozen binary of build.exe, GenFds.exe and TargetTools.exe
The modification is add additional checking for whether need renew the immediate file workspace database, the renew reason maybe:
The renew reason maybe:
1) If user force to renew;
2) If user do not force renew, and
   a) If the time of last modified python source is newer than database file;
   b) If the time of last modified frozen executable file is newer than database file, the executable file is build.exe in window and build in Linux/Unix/OSX

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8615 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-19 15:55:44 +00:00
klu2 94ca8fffcb Synchronize the source of build tool from build tool project (r1623) to binary in edk2 project at (r8530)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8531 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-11 09:45:52 +00:00
klu2 33cf9937a9 Fix issue that build is broken if a dynamic PCD's value is L"".
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8460 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-04 03:37:24 +00:00
rsun3 94fe1ac9f6 Update build.exe after StrGather was updated. Add -s build flag in EdkShellPkg.dsc so that .UNI files with ISO 639-2 language codes of EDK Shell can be built.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8413 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-31 07:46:19 +00:00
klu2 d09651693b Fix the bug that build tool and PCD driver can not deal with byte array or ANSIC type value for dynamic PCD.
This patch including following change:
1) Build tools:
   a) StringTable in generated PCD database is changed to UINT8 array but not original UINT16, because it can also stored the ANSIC and byte array.
   b) The layout of string table in PCD database is changed. To make sure unicode string is in double byte aligned, the item in string table which hold unicode string value will be put ahead than other items. After unicode string item, the HII variable name item is immediate. The byte array item and ANSIC string array item will be put at tail of whole string table.
   c) Fix bug that build tools does not handle the size of unicode string, byte array and ANSIC string.
2) PCD PEI/DXE driver:
   The pointer of StringTable is changed to UINT8* but not original UINT16*.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8392 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-27 11:34:11 +00:00
rsun3 b0a5e682d6 Update build.exe after StrGather python script was changed.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8383 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-26 03:40:56 +00:00
klu2 ab4e42d903 Build tool need generate different value macro's name for PatchableInModule type PCD against FixedAtBuild PCD.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8368 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-21 08:43:22 +00:00
klu2 14073b3f8c Fix the bug that TAB character in uni file make unicode string missing in autogen file. Corresponding version in build tool project is r1592.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8364 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-21 04:39:36 +00:00
klu2 b20d41df13 temporary roll back build.exe because the some string definition are missed by strgather introduced latest check-in.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8345 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-20 09:44:31 +00:00
klu2 32685030d8 Freeze for build tool check-in r1591: Fix bug in the processing of backslashes in UNI files.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8341 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-20 02:20:07 +00:00
klu2 8968742e88 Originally, there are following implementation:
1) The collect action of platform's dynamic PCD database is trigged by module's autogen action. 
2) If platform is used for more than one architecture, two platform object will be created

Above two rules will cause an issue for single module building that if
1) platform support IA32 and X64
2) do single module for X64 module

then, the dynamic PCD for IA32 modules will missed in PCD database, because no IA32 module need autogen so collection action for IA32 module is not trigged.

Now, I think the collection action for platform dynamic PCD should be explicitly called after PlatformAutoGen is created.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8323 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-18 07:09:48 +00:00
klu2 133ed0bf9d Fix bug for -b option
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8305 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-13 05:29:20 +00:00
klu2 410ee03367 Add checking for options number to avoid user's confusion. The corresponding patch in source is r1583 in build tools project.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8302 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-12 07:30:04 +00:00
klu2 5796de6792 Add Fv name checking for build.exe if user gives FV name from command line. originally, this checking is only done by GenFds tool, that is too later.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8288 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-11 05:37:56 +00:00
jwang36 15543340da Implemented feature request hsd202262 and incorporated SMM support
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8229 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-03 06:40:59 +00:00
qhuang8 33d487d463 Sync bug fix of Base Tools r1559.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8226 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-30 10:45:50 +00:00
jwang36 14ca06407d Frozen from source r1551
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8122 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-17 07:22:21 +00:00
jwang36 c44fb9d331 Generated from source r1543
a. Fixed PCD database error
b. Fixed inf file extension issue 
c. Fixed an issue in which RealPath() returns None if WORKSPACE root was passed in
d. Check MODULE_TYPE and COMPONENT_TYPE to be defined


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7994 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-31 15:46:16 +00:00
jwang36 03e0648b32 Built from source r1536:
a. Show correct and bad file path when file name case is wrong
b. Remove the "_FLAGS" check in meta file parser


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7961 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-26 15:14:27 +00:00
qhuang8 1e976d75f1 Temporarily rollback the previous check in for more investigations of PCD database data structures difference for PcdPeim and PcdDxe.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7918 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-21 03:59:44 +00:00
jwang36 db488c7865 a. Fixed build break caused by EdkLogger.warning
b. Fixed PCD token number generation issue for PCD in library

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7907 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-19 07:30:32 +00:00
jlin16 024a05ac5c GenFds add support for PCD specified file GUID.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7901 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-17 09:48:47 +00:00
jlin16 d26743215a GenFds add option ROM and Defines section support.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7891 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-16 10:20:03 +00:00
jwang36 0306d9a9c5 Added a workaround to bypass the error caused by SaveFileToDisk in Common.PyUtility.pyd
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7878 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-13 09:00:45 +00:00
jwang36 a114969731 Try to remove duplicated include path in command line option
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7869 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-12 16:39:24 +00:00
jwang36 34a8fc1077 Added support of PCD HII Variable name in C style of unicode string.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7827 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-05 15:51:47 +00:00
jlin16 e95a695825 GenFds add FV name GUID support.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7798 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-04 07:25:18 +00:00
jwang36 2696392b1e Fixed file path issue if the WORKSPACE is the root of a drive (generated from source r1506)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7753 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-02 05:55:25 +00:00
jwang36 63418eb7d0 a. Allow different types PCD declaration in dec file
b. Generated from source r1505

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7745 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-01 12:53:39 +00:00
jwang36 1a6c62bb0d Frozen from source r1503: added quote marks for the reference of $(MAKE) to avoid build failure because of space in MAKE path.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7731 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-28 07:09:00 +00:00
jwang36 a9f61fc3d0 Added the definition of $(MAKE) macro back into top level makefile for the sake of nmake.exe in Visual Studio 2003.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7722 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-26 16:10:19 +00:00
jwang36 7e6142874d 1. Fixed the issue which string ID, $LANGUAGE_NAME and $PRINTABLE_LANGUAGE_NAME, were generated if "#langdef" is not in the first uni file.
2. Fixed the issue which "//" would be taken as comment in PCD value in DSC file.
3. Generated from source r1500

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7662 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-24 17:15:45 +00:00
jwang36 16cbc58005 Fixed single module build failure issue
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7545 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-19 10:00:25 +00:00
jwang36 9a99b39e56 Fixed an issue caused by passing string of fdf file path
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7542 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-18 14:15:15 +00:00
jwang36 56cdcbe1a5 Fixed the failure caused by specifying fdf file via "-f" switch
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7541 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-18 12:10:56 +00:00
jwang36 510750f5cf 1) Fixed silent mode issue in Linux.
2) Fixed customized build issue in Duet.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7532 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-17 04:14:58 +00:00
jwang36 a7d376877f 1. Use FAMILY defined in *_TAGNAME_*_*_FAMILY as the toolchain family
2. Force file name case check in Windows
3. Consolidate file/path operations
4. Support binary file type in build_rule.txt
5. Generate $(FILE_TYPES) macro only when it's used in build_rule.txt
6. Fix HSD202142 and HSD202144
 

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7529 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-16 13:37:23 +00:00
jwang36 70e5ca2731 Fixed a PcdEx AutoGen bug
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7358 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-23 08:37:07 +00:00
jwang36 dacae1e8f8 Test version for performance concern.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7249 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-13 03:35:05 +00:00
jwang36 0ae247182a Fixed the out-of-sync issue of AutoGen-ed files in Windows platform.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7248 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-12 08:03:23 +00:00
jwang36 5884bab5eb A test version making use Windows API to create AutoGen files
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7244 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-12 05:44:06 +00:00