]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/ChangeLog.txt
GenFds fix two UI sections error.
[mirror_edk2.git] / BaseTools / ChangeLog.txt
1 ##########################################################################################
2 !!!!!!!!!!!!!!!!! Notes for this ChangeLog.txt !!!!!!!!!!!!!!!!!
3
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
12 ...
13
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
16 package.
17
18 Non-Compatible and Compatible example format:
19 ==========================================================================================
20 EDK_0010: Non-Compatible: owner
21
22 Class_HFile: PPI A of MdePkg has been removed.
23
24 Code Change :
25 1) Removed the .h file: MdePkg\Include\Ppi\A.h
26
27 Possible Impacts:
28 1) All modules that used this PPI A should be updated.
29
30 ==========================================================================================
31 EDK_0000: Compatible: owner
32
33 Class_BuildTool: with the EDK_0000 build.exe, the build performance is enhanced great.
34
35 Code Change :
36 1) BaseTools\Bin\Win32\build.exe
37
38 !!!!!!!!!!!!!!!!!! End of Notes !!!!!!!!!!!!!!!!!!
39
40 ##########################################################################################
41
42 ##########################################################################################
43 ########## Revision number of tools source code ##########
44 BaseTools/Bin/Win32/build.exe
45 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Autogen
46 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/build
47 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
48 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/CommonDataClass
49 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/GenFds
50
51 BaseTools/Bin/Win32/GenFds.exe
52 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
53 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/CommonDataClass
54 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/GenFds
55
56 BaseTools/Bin/Win32/GenDepex.exe
57 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/AutoGen
58 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
59
60 BaseTools/Bin/Win32/Trim.exe
61 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Trim
62 r1070 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
63
64 BaseTools/Bin/Win32/MigrationMsa2Inf.exe
65 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/MigrationMsa2Inf
66 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
67
68 BaseTools/Bin/Win32/TargetTool.exe
69 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/TargetTool
70 r843 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
71
72 BaseTools/Bin/Win32/Spd2Dec.exe
73 r777 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/spd2dec
74
75 BaseTools/Bin/Win32/Fpd2Dsc.exe
76 r767 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/fpd2dsc
77
78 ==========================================================================================
79 EDK_4859: Non-Compatible: jwang36
80
81 Class_BuildTool:
82 1) Changed VfrCompile.exe to be UEFI HII compatible
83 2) Improved R8 module build
84 3) Added binary file build
85 4) Removed "extern int __make_me_compile_correctly" in AutoGen code for
86 R9 modules, but kept for R8 modules
87 5) Enfored more error check and introduced a optimization for GenDepex
88 6) Added BUILD_RULE_CONF in target.txt to specify build rules file
89 7) Rebuilt all Python tools with Python2.5.2
90
91 Code Change :
92 1) build.exe
93 2) VfrCompile.exe
94 3) GenFds.exe
95 4) GenDepex.exe
96 5) target.template
97
98
99 Possible Impacts:
100 1) All EFI code needs to be UEFI HII compatible.
101 2) Conf/target.txt needs to be replaced by new target.template
102
103 ==========================================================================================
104 EDK_4251: Non-Compatible: jwang36
105
106 Class_BuildTool:
107 1) Changed MYTOOLS to use Visual Studio Team Suite for IA32 and X64. IPF is still use WINDKK.
108 2) Re-generated build.exe and GenFds.exe to incorporate new changes of build tools
109 3) Enabled multi-thread build mode by default (can be disabled by using "-n 0" option or changing
110 MULTIPLE_THREAD in target.txt to Disabled)
111 4) Fixed an incorrect command (no leading tab/space) generated in top level Makefile.
112
113 Code Change :
114 1) BaseTools/Bin/Win32/GenFds.exe
115 2) BaseTools/Bin/Win32/build.exe
116 3) BaseTools/Conf/target.template
117 4) BaseTools/Conf/tools_def.template
118
119 Possible Impacts:
120 1) Install Visual Studio 2005 Team Suite Edition.
121
122 ==========================================================================================
123 EDK_4190: Non-Compatible: jwang36
124
125 Class_BuildTool:
126 1) Added support of using PCD default value from DEC/INF file if one
127 PCD is declared in INF file but not found in DSC file.
128 2) Added support of breaking build if no library instance is found for
129 a library class.
130
131 Code Change :
132 1) BaseTools/Bin/Win32/build.exe
133 2) BaseTools/Bin/Win32/GenFds.exe
134
135 Possible Impacts:
136 1) All packages/platforms/modules, which have wrong library classes
137 declared or have no library instance for some library classes, must be
138 changed to make sure each library class declared in INF file has
139 corresponding library instance.
140
141 ==========================================================================================
142 EDK_4096: Non-Compatible: jwang36
143
144 Class_BuildTool:
145 1) Removed the calling of vsvars32.bat in edksetup.bat, unless
146 "--nt32" switch is used.
147 2) Added MAKE command in tools_def.txt. This is used to locate where
148 the nmake.exe or make.exe is because it will not be in PATH any more.
149 3) Removed the calling of vsvars32.bat in toolsetup.bat.
150 4) Solved the hang issue of build.exe when error occurred or Ctrl+C is
151 pressed.
152 5) Passed "-v/-d/-q" command line option to GenFds.exe in makefile if
153 it's used by build.exe.
154
155 Code Change :
156 1) BaseTools/Bin/Win32/build.exe
157 2) BaseTools/Bin/Win32/GenFds.exe
158 3) BaseTools/Conf/tools_def.template
159 4) BaseTools/toolsetup.bat
160 5) edksetup.bat
161
162 Possible Impacts:
163 1) Nt32Pkg build needs to run vsvars32.bat before edksetup.bat or run
164 edksetup.bat with "--nt32" option, like
165
166 edksetup.bat --nt32 newbuild
167
168 2) $(WORKSPACE)/Conf/tools_def.txt must be deleted before running
169 edksetup.bat because of new tools_def.template. Otherwise the
170 build.exe cannot find the nmake.exe to call.
171
172 ==========================================================================================
173 EDK_3947: Compatible: jwang36
174
175 Class_BuildTool:
176 1) Improved spawn mode (multi-thread) build performance (build -s)
177 2) Changed the error/debug/warning message format
178 3) Added "--log" command line option to support storing log in file
179
180 Code Change :
181 1) BaseTools/Bin/Win32/build.exe
182
183
184 ==========================================================================================
185 EDK_3936: Compatible: klu2
186
187 Class_BuildTool:
188 1) The first parameter of PEIM's entry point in autogen.c has been changed to
189 EFI_PEI_FILE_HANDLE
190
191 Code Change :
192 1) BaseTools/Bin/Win32/build.exe
193
194 ==========================================================================================
195 EDK_3926: Compatible: jlin16
196
197 Class_BuildTool:
198 1) Added support of Capsule generation from FDF file.
199
200 Code Change :
201 1) BaseTools/Bin/Win32/build.exe
202 2) BaseTools/Bin/Win32/GenFds.exe
203
204 Possible Impacts:
205 1) To generate capsule, insert [Capsule] section after [FV] sections and specifying
206 what FV will be put into capsule, For example:
207 [Capsule.Fob]
208 CAPSULE_GUID = 3B6686BD-0D76-4030-B70E-B5519E2FC5A0
209 CAPSULE_FLAG = PersistAcrossReset
210 FV = BiosUpdate
211
212 ==========================================================================================
213 EDK_3911: Compatible: jlin16
214
215 Class_BuildTool:
216 1) Added support of Apriori file generation from FDF file.
217 2) Added support of INF that describes binary files to put binary into FV.
218 3) Fixed single FV/FD generation error when specifying -i/-r option in GenFds.
219
220
221 Code Change :
222 1) BaseTools/Bin/Win32/build.exe
223 2) BaseTools/Bin/Win32/GenFds.exe
224
225 Possible Impacts:
226 1) To generate Apriori file in FV, insert APRIORI statement just before the INF or
227 FILE statement list of the FV, For example:
228 APRIORI PEI {
229 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
230 FILE PEIM = B7A5041A-78BA-49e3-B73B-54C757811FB6 {
231 SECTION PE32 = MyBinPkg\bin\ia32\PeimAfterPcd.efi
232 }
233 INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf
234 }
235 2) To add binary file described by INF file into FV, only insert the INF statement
236 into the INF statements list of that FV, like this:
237
238 INF RuleOverride=Test MdeModulePkg/Logo/Logo.inf
239
240 Specifying how to process the binary file by defining corresponding Rule like this:
241 [Rule.Common.Base.Test]
242 FILE FREEFORM = $(NAMED_GUID) {
243 COMPRESS PI_STD {
244 GUIDED {
245 RAW BIN |.bmp
246 }
247 }
248 }
249
250 ==========================================================================================
251 EDK_3832: Non-Compatible: jwang36
252
253 Class_BuildTool:
254 1) Added support of MACRO in tools_def.txt
255 2) Merged PATH and NAME attributes in tools_def.txt
256 3) Changed DPATH attribute to DLL in tools_def.txt
257 4) Removed SPATH attribute in tools_def.txt
258 5) Added support for library instance without library class
259 6) Fixed the issue in Trim tool which zero file will be generated if the trimmed
260 file has not line directive
261
262 Code Change :
263 1) BaseTools/Bin/Win32/build.exe
264 2) BaseTools/Bin/Win32/GenFds.exe
265 3) BaseTools/Bin/Win32/Trim.exe
266 4) BaseTools/Conf/tools_def.template
267
268 Possible Impacts:
269 1) All platforms and modules build
270
271 ==========================================================================================
272 EDK_3801: Compatible: jwang36
273
274 Class_BuildConfiguration: Added makefile as dependency for "Dynamic-Library-File" to
275 solve the incremental build issue occurred when there's library changes
276
277 Code Change :
278 1) BaseTools/Conf/build_rule.template
279
280 ==========================================================================================
281 EDK_3800: Compatible: lgao4
282
283 Class_BuildTool: Update EfiRom tool to fix checksum and PCI3.0 data structure
284
285 Code Change :
286 1) BaseTools/Bin/Win32/EfiRom.exe
287
288 ==========================================================================================
289 EDK_3795: Compatible: htao
290
291 Class_BuildTool: GenVtf tool open/write file with "r+b"/"w+b" attribute, but this cause
292 the RO attribute of the file changed. Fix this issue by changing
293 "r+b"/"w+b" to "rb"/"wb".
294
295 Code Change :
296 1) BaseTools/Bin/Win32/GenVtf.exe
297
298 ==========================================================================================
299 EDK_3791: Compatible: jlin16
300
301 Class_BuildTool:
302 1) use '#' to indicate flash generation progress.
303 2) use -v to switch on detail output messages.
304
305 Code Change :
306 1) BaseTools/Bin/Win32/GenFds.exe
307
308 ==========================================================================================
309 EDK_3789: Non-Compatible: lgao4
310
311 Class_BuildTool: support new Rules format and PCD format defined in FDF file
312
313 Code Change :
314 1) BaseTools/Bin/Win32/build.exe
315 2) BaseTools/Bin/Win32/GenFds.exe
316
317 Possible Impacts:
318 1) All platform's FDF file, if any, must be changed to new format.
319 a) PCD format is changed from old PcdName to new PcdTokenSpaceGuid.PcdName,
320 for example PcdWinNtFdBaseAddress in old FDF file will be replaced
321 by gEfiNt32PkgTokenSpaceGuid.PcdWinNtFdBaseAddres.
322 b) Rule format adds binary file type and file postfix name support,
323 and doesn't require the full file path. Examples for Peim and AcpiTable module:
324 Old Peim Rule:
325 [Rule.Common.PEIM]
326 FILE PEIM = $(NAMED_GUID) {
327 PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).Depex
328 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
329 UI Optional $(MODULE_NAME)
330 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
331 }
332 New Peim Rule:
333 [Rule.Common.PEIM]
334 FILE PEIM = $(NAMED_GUID) {
335 PEI_DEPEX PEI_DEPEX Optional |.Depex
336 PE32 PE32 |.efi
337 UI STRING="$(MODULE_NAME)" Optional
338 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
339 }
340
341 Old AcpiTable Rule:
342 [Rule.Common.DXE_DRIVER.ACPITABLE]
343 FILE FREEFORM = $(NAMED_GUID) {
344 RAW $(INF_OUTPUT)/Madt.acpi
345 RAW $(INF_OUTPUT)/Fadt.acpi
346 RAW $(INF_OUTPUT)/Facs.acpi
347 RAW $(INF_OUTPUT)/Spcr.acpi
348 RAW $(INF_OUTPUT)/Dsdt.aml
349 }
350 New AcpiTable Rule:
351 [Rule.Common.DXE_DRIVER.ACPITABLE]
352 FILE FREEFORM = $(NAMED_GUID) {
353 RAW ACPI |.acpi
354 RAW ASL |.aml
355 }
356
357 ==========================================================================================
358 EDK_3786: Compatible: vjeff
359
360 Class_BuildConfiguration:
361 1) Redirect ICC_IA32_*_PATH from C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin
362 to C:\Program Files\Intel\Compiler\C++\9.1\IA32\Bin.
363 2) Add ICC X64 definition to enable ICC X64 build.
364
365 Code Change :
366 1) BaseTools/Conf/tools_def.template
367
368 ==========================================================================================
369 EDK_3785: Non-Compatible: klu2
370
371 Class_BuildTool: Upgrade the format of EFI_PEIM_ENTRY_POINT to
372 EFI_PEIM_ENTRY_POINT2 according to PI specification.
373
374
375 Code Change :
376 1) BaseTools/Bin/Win32/build.exe
377
378 Possible Impacts:
379 1) All modules build
380
381
382 ==========================================================================================
383 EDK_3780: Non-Compatible: qhuang8
384
385 Class_MigrationTool: Update the syntax of PCD section.
386 Update the syntax of binary INF file
387 The generated Extended INF file should follow Extended INF spec 0.44
388
389 Code Change :
390 1) BaseTools/Bin/Win32/MigrationMsa2Inf.exe
391
392 Possible Impacts:
393 1) New module migrated from old R9
394
395
396 ==========================================================================================
397 EDK_3766: Non-Compatible: lgao4
398
399 Class_BuildConfiguration: Update Acpi Asl file Build rule to remove trim step.
400
401 Code Change :
402 1) Conf/build_rule.template
403
404 Possible Impacts:
405 1) Platform with ACPI module. Acpi module needs to set /EP preprocessor compiler option
406 for APP_FLAGS in module inf to override the default /E option defined in tools_def.txt file.
407
408