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