1 ##########################################################################################
2 !!!!!!!!!!!!!!!!! Notes for this ChangeLog.txt !!!!!!!!!!!!!!!!!
4 This log file is used to record two kinds of important information:
5 a) "Non-Compatible Changes": all non-compatible changes should be recorded. These info
6 will help the package user to merge this package; and some non-compatible changes
7 can also be added into release notes as news features when we release this package.
8 Normally Non-Compatible Changes contains the following types:
9 1) Package's external services were changed/updated
10 2) Package's common .h file is renamed, deleted, or the file path is changed.
11 3) The definition of package's common data structure is changed
14 b) "Important Compatible Changes": some important compatible changes can aslo be recorded
15 in this file, and we can add these updating into release notes when we release this
18 Non-Compatible and Compatible example format:
19 ==========================================================================================
20 EDK_0010: Non-Compatible: owner
22 Class_HFile: PPI A of MdePkg has been removed.
25 1) Removed the .h file: MdePkg\Include\Ppi\A.h
28 1) All modules that used this PPI A should be updated.
30 ==========================================================================================
31 EDK_0000: Compatible: owner
33 Class_BuildTool: with the EDK_0000 build.exe, the build performance is enhanced great.
36 1) BaseTools\Bin\Win32\build.exe
38 !!!!!!!!!!!!!!!!!! End of Notes !!!!!!!!!!!!!!!!!!
40 ##########################################################################################
42 ##########################################################################################
43 ########## Revision number of tools source code ##########
44 BaseTools/Bin/Win32/build.exe
45 r937 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Autogen
46 r937 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/build
47 r937 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
48 r937 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/CommonDataClass
49 r937 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/GenFds
51 BaseTools/Bin/Win32/GenFds.exe
52 r937 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
53 r937 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/CommonDataClass
54 r937 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/GenFds
56 BaseTools/Bin/Win32/Trim.exe
57 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Trim
58 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
60 BaseTools/Bin/Win32/MigrationMsa2Inf.exe
61 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/MigrationMsa2Inf
62 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
64 BaseTools/Bin/Win32/TargetTool.exe
65 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/TargetTool
66 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
68 BaseTools/Bin/Win32/Spd2Dec.exe
69 r777 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/spd2dec
71 BaseTools/Bin/Win32/Fpd2Dsc.exe
72 r767 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/fpd2dsc
74 ==========================================================================================
75 EDK_4251: Non-Compatible: jwang36
78 1) Changed MYTOOLS to use Visual Studio Team Suite for IA32 and X64. IPF is still use WINDKK.
79 2) Re-generated build.exe and GenFds.exe to incorporate new changes of build tools
80 3) Enabled multi-thread build mode by default (can be disabled by using "-n 0" option or changing
81 MULTIPLE_THREAD in target.txt to Disabled)
82 4) Fixed an incorrect command (no leading tab/space) generated in top level Makefile.
85 1) BaseTools/Bin/Win32/GenFds.exe
86 2) BaseTools/Bin/Win32/build.exe
87 3) BaseTools/Conf/target.template
88 4) BaseTools/Conf/tools_def.template
91 1) Install Visual Studio 2005 Team Suite Edition.
93 ==========================================================================================
94 EDK_4190: Non-Compatible: jwang36
97 1) Added support of using PCD default value from DEC/INF file if one
98 PCD is declared in INF file but not found in DSC file.
99 2) Added support of breaking build if no library instance is found for
103 1) BaseTools/Bin/Win32/build.exe
104 2) BaseTools/Bin/Win32/GenFds.exe
107 1) All packages/platforms/modules, which have wrong library classes
108 declared or have no library instance for some library classes, must be
109 changed to make sure each library class declared in INF file has
110 corresponding library instance.
112 ==========================================================================================
113 EDK_4096: Non-Compatible: jwang36
116 1) Removed the calling of vsvars32.bat in edksetup.bat, unless
117 "--nt32" switch is used.
118 2) Added MAKE command in tools_def.txt. This is used to locate where
119 the nmake.exe or make.exe is because it will not be in PATH any more.
120 3) Removed the calling of vsvars32.bat in toolsetup.bat.
121 4) Solved the hang issue of build.exe when error occurred or Ctrl+C is
123 5) Passed "-v/-d/-q" command line option to GenFds.exe in makefile if
124 it's used by build.exe.
127 1) BaseTools/Bin/Win32/build.exe
128 2) BaseTools/Bin/Win32/GenFds.exe
129 3) BaseTools/Conf/tools_def.template
130 4) BaseTools/toolsetup.bat
134 1) Nt32Pkg build needs to run vsvars32.bat before edksetup.bat or run
135 edksetup.bat with "--nt32" option, like
137 edksetup.bat --nt32 newbuild
139 2) $(WORKSPACE)/Conf/tools_def.txt must be deleted before running
140 edksetup.bat because of new tools_def.template. Otherwise the
141 build.exe cannot find the nmake.exe to call.
143 ==========================================================================================
144 EDK_3947: Compatible: jwang36
147 1) Improved spawn mode (multi-thread) build performance (build -s)
148 2) Changed the error/debug/warning message format
149 3) Added "--log" command line option to support storing log in file
152 1) BaseTools/Bin/Win32/build.exe
155 ==========================================================================================
156 EDK_3936: Compatible: klu2
159 1) The first parameter of PEIM's entry point in autogen.c has been changed to
163 1) BaseTools/Bin/Win32/build.exe
165 ==========================================================================================
166 EDK_3926: Compatible: jlin16
169 1) Added support of Capsule generation from FDF file.
172 1) BaseTools/Bin/Win32/build.exe
173 2) BaseTools/Bin/Win32/GenFds.exe
176 1) To generate capsule, insert [Capsule] section after [FV] sections and specifying
177 what FV will be put into capsule, For example:
179 CAPSULE_GUID = 3B6686BD-0D76-4030-B70E-B5519E2FC5A0
180 CAPSULE_FLAG = PersistAcrossReset
183 ==========================================================================================
184 EDK_3911: Compatible: jlin16
187 1) Added support of Apriori file generation from FDF file.
188 2) Added support of INF that describes binary files to put binary into FV.
189 3) Fixed single FV/FD generation error when specifying -i/-r option in GenFds.
193 1) BaseTools/Bin/Win32/build.exe
194 2) BaseTools/Bin/Win32/GenFds.exe
197 1) To generate Apriori file in FV, insert APRIORI statement just before the INF or
198 FILE statement list of the FV, For example:
200 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
201 FILE PEIM = B7A5041A-78BA-49e3-B73B-54C757811FB6 {
202 SECTION PE32 = MyBinPkg\bin\ia32\PeimAfterPcd.efi
204 INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf
206 2) To add binary file described by INF file into FV, only insert the INF statement
207 into the INF statements list of that FV, like this:
209 INF RuleOverride=Test MdeModulePkg/Logo/Logo.inf
211 Specifying how to process the binary file by defining corresponding Rule like this:
212 [Rule.Common.Base.Test]
213 FILE FREEFORM = $(NAMED_GUID) {
221 ==========================================================================================
222 EDK_3832: Non-Compatible: jwang36
225 1) Added support of MACRO in tools_def.txt
226 2) Merged PATH and NAME attributes in tools_def.txt
227 3) Changed DPATH attribute to DLL in tools_def.txt
228 4) Removed SPATH attribute in tools_def.txt
229 5) Added support for library instance without library class
230 6) Fixed the issue in Trim tool which zero file will be generated if the trimmed
231 file has not line directive
234 1) BaseTools/Bin/Win32/build.exe
235 2) BaseTools/Bin/Win32/GenFds.exe
236 3) BaseTools/Bin/Win32/Trim.exe
237 4) BaseTools/Conf/tools_def.template
240 1) All platforms and modules build
242 ==========================================================================================
243 EDK_3801: Compatible: jwang36
245 Class_BuildConfiguration: Added makefile as dependency for "Dynamic-Library-File" to
246 solve the incremental build issue occurred when there's library changes
249 1) BaseTools/Conf/build_rule.template
251 ==========================================================================================
252 EDK_3800: Compatible: lgao4
254 Class_BuildTool: Update EfiRom tool to fix checksum and PCI3.0 data structure
257 1) BaseTools/Bin/Win32/EfiRom.exe
259 ==========================================================================================
260 EDK_3795: Compatible: htao
262 Class_BuildTool: GenVtf tool open/write file with "r+b"/"w+b" attribute, but this cause
263 the RO attribute of the file changed. Fix this issue by changing
264 "r+b"/"w+b" to "rb"/"wb".
267 1) BaseTools/Bin/Win32/GenVtf.exe
269 ==========================================================================================
270 EDK_3791: Compatible: jlin16
273 1) use '#' to indicate flash generation progress.
274 2) use -v to switch on detail output messages.
277 1) BaseTools/Bin/Win32/GenFds.exe
279 ==========================================================================================
280 EDK_3789: Non-Compatible: lgao4
282 Class_BuildTool: support new Rules format and PCD format defined in FDF file
285 1) BaseTools/Bin/Win32/build.exe
286 2) BaseTools/Bin/Win32/GenFds.exe
289 1) All platform's FDF file, if any, must be changed to new format.
290 a) PCD format is changed from old PcdName to new PcdTokenSpaceGuid.PcdName,
291 for example PcdWinNtFdBaseAddress in old FDF file will be replaced
292 by gEfiNt32PkgTokenSpaceGuid.PcdWinNtFdBaseAddres.
293 b) Rule format adds binary file type and file postfix name support,
294 and doesn't require the full file path. Examples for Peim and AcpiTable module:
297 FILE PEIM = $(NAMED_GUID) {
298 PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).Depex
299 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
300 UI Optional $(MODULE_NAME)
301 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
305 FILE PEIM = $(NAMED_GUID) {
306 PEI_DEPEX PEI_DEPEX Optional |.Depex
308 UI STRING="$(MODULE_NAME)" Optional
309 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
313 [Rule.Common.DXE_DRIVER.ACPITABLE]
314 FILE FREEFORM = $(NAMED_GUID) {
315 RAW $(INF_OUTPUT)/Madt.acpi
316 RAW $(INF_OUTPUT)/Fadt.acpi
317 RAW $(INF_OUTPUT)/Facs.acpi
318 RAW $(INF_OUTPUT)/Spcr.acpi
319 RAW $(INF_OUTPUT)/Dsdt.aml
322 [Rule.Common.DXE_DRIVER.ACPITABLE]
323 FILE FREEFORM = $(NAMED_GUID) {
328 ==========================================================================================
329 EDK_3786: Compatible: vjeff
331 Class_BuildConfiguration:
332 1) Redirect ICC_IA32_*_PATH from C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin
333 to C:\Program Files\Intel\Compiler\C++\9.1\IA32\Bin.
334 2) Add ICC X64 definition to enable ICC X64 build.
337 1) BaseTools/Conf/tools_def.template
339 ==========================================================================================
340 EDK_3785: Non-Compatible: klu2
342 Class_BuildTool: Upgrade the format of EFI_PEIM_ENTRY_POINT to
343 EFI_PEIM_ENTRY_POINT2 according to PI specification.
347 1) BaseTools/Bin/Win32/build.exe
353 ==========================================================================================
354 EDK_3780: Non-Compatible: qhuang8
356 Class_MigrationTool: Update the syntax of PCD section.
357 Update the syntax of binary INF file
358 The generated Extended INF file should follow Extended INF spec 0.44
361 1) BaseTools/Bin/Win32/MigrationMsa2Inf.exe
364 1) New module migrated from old R9
367 ==========================================================================================
368 EDK_3766: Non-Compatible: lgao4
370 Class_BuildConfiguration: Update Acpi Asl file Build rule to remove trim step.
373 1) Conf/build_rule.template
376 1) Platform with ACPI module. Acpi module needs to set /EP preprocessor compiler option
377 for APP_FLAGS in module inf to override the default /E option defined in tools_def.txt file.