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