]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/BaseTools/ChangeLog.txt
Copying latest $WORKSPACE/BaseTools to $WORKSPACE/Tools/BaseTools. Once the
[mirror_edk2.git] / Tools / BaseTools / ChangeLog.txt
CommitLineData
cc8821ee 1##########################################################################################\r
2!!!!!!!!!!!!!!!!! Notes for this ChangeLog.txt !!!!!!!!!!!!!!!!!\r
3\r
4This log file is used to record two kinds of important information:\r
5 a) "Non-Compatible Changes": all non-compatible changes should be recorded. These info\r
6 will help the package user to merge this package; and some non-compatible changes\r
7 can also be added into release notes as news features when we release this package.\r
8 Normally Non-Compatible Changes contains the following types:\r
9 1) Package's external services were changed/updated\r
10 2) Package's common .h file is renamed, deleted, or the file path is changed.\r
11 3) The definition of package's common data structure is changed\r
12 ...\r
13\r
14 b) "Important Compatible Changes": some important compatible changes can aslo be recorded\r
15 in this file, and we can add these updating into release notes when we release this\r
16 package.\r
17\r
18Non-Compatible and Compatible example format:\r
19==========================================================================================\r
20EDK_0010: Non-Compatible: owner\r
21\r
22 Class_HFile: PPI A of MdePkg has been removed.\r
23\r
24 Code Change :\r
25 1) Removed the .h file: MdePkg\Include\Ppi\A.h\r
26\r
27 Possible Impacts:\r
28 1) All modules that used this PPI A should be updated.\r
29\r
30==========================================================================================\r
31EDK_0000: Compatible: owner\r
32\r
33 Class_BuildTool: with the EDK_0000 build.exe, the build performance is enhanced great.\r
34\r
35 Code Change :\r
36 1) BaseTools\Bin\Win32\build.exe\r
37\r
38!!!!!!!!!!!!!!!!!! End of Notes !!!!!!!!!!!!!!!!!!\r
39##########################################################################################\r
40\r
41==========================================================================================\r
42EDK_4096: Non-Compatible: jwang36\r
43\r
44 Class_BuildTool:\r
45 1) Removed the calling of vsvars32.bat in edksetup.bat, unless\r
46 "--nt32" switch is used.\r
47 2) Added MAKE command in tools_def.txt. This is used to locate where\r
48 the nmake.exe or make.exe is because it will not be in PATH any more.\r
49 3) Removed the calling of vsvars32.bat in toolsetup.bat.\r
50 4) Solved the hang issue of build.exe when error occurred or Ctrl+C is\r
51 pressed.\r
52 5) Passed "-v/-d/-q" command line option to GenFds.exe in makefile if\r
53 it's used by build.exe.\r
54 \r
55 Code Change :\r
56 1) BaseTools/Bin/Win32/build.exe\r
57 2) BaseTools/Bin/Win32/GenFds.exe\r
58 3) BaseTools/Conf/tools_def.template\r
59 4) BaseTools/toolsetup.bat\r
60 5) edksetup.bat\r
61\r
62 Possible Impacts:\r
63 1) Nt32Pkg build needs to run vsvars32.bat before edksetup.bat or run\r
64 edksetup.bat with "--nt32" option, like\r
65\r
66 edksetup.bat --nt32 newbuild\r
67\r
68 2) $(WORKSPACE)/Conf/tools_def.txt must be deleted before running\r
69 edksetup.bat because of new tools_def.template. Otherwise the\r
70 build.exe cannot find the nmake.exe to call.\r
71\r
72==========================================================================================\r
73EDK_3947: Compatible: jwang36\r
74\r
75 Class_BuildTool:\r
76 1) Improved spawn mode (multi-thread) build performance (build -s)\r
77 2) Changed the error/debug/warning message format\r
78 3) Added "--log" command line option to support storing log in file\r
79 \r
80 Code Change :\r
81 1) BaseTools/Bin/Win32/build.exe\r
82\r
83\r
84==========================================================================================\r
85EDK_3936: Compatible: klu2\r
86\r
87 Class_BuildTool:\r
88 1) The first parameter of PEIM's entry point in autogen.c has been changed to \r
89 EFI_PEI_FILE_HANDLE\r
90 \r
91 Code Change :\r
92 1) BaseTools/Bin/Win32/build.exe\r
93\r
94==========================================================================================\r
95EDK_3926: Compatible: jlin16\r
96\r
97 Class_BuildTool:\r
98 1) Added support of Capsule generation from FDF file.\r
99 \r
100 Code Change :\r
101 1) BaseTools/Bin/Win32/build.exe\r
102 2) BaseTools/Bin/Win32/GenFds.exe\r
103\r
104 Possible Impacts:\r
105 1) To generate capsule, insert [Capsule] section after [FV] sections and specifying\r
106 what FV will be put into capsule, For example:\r
107 [Capsule.Fob]\r
108 CAPSULE_GUID = 3B6686BD-0D76-4030-B70E-B5519E2FC5A0\r
109 CAPSULE_FLAG = PersistAcrossReset\r
110 FV = BiosUpdate\r
111\r
112==========================================================================================\r
113EDK_3911: Compatible: jlin16\r
114\r
115 Class_BuildTool:\r
116 1) Added support of Apriori file generation from FDF file.\r
117 2) Added support of INF that describes binary files to put binary into FV.\r
118 3) Fixed single FV/FD generation error when specifying -i/-r option in GenFds.\r
119 \r
120 \r
121 Code Change :\r
122 1) BaseTools/Bin/Win32/build.exe\r
123 2) BaseTools/Bin/Win32/GenFds.exe\r
124\r
125 Possible Impacts:\r
126 1) To generate Apriori file in FV, insert APRIORI statement just before the INF or\r
127 FILE statement list of the FV, For example:\r
128 APRIORI PEI {\r
129 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
130 FILE PEIM = B7A5041A-78BA-49e3-B73B-54C757811FB6 {\r
131 SECTION PE32 = MyBinPkg\bin\ia32\PeimAfterPcd.efi\r
132 }\r
133 INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
134 }\r
135 2) To add binary file described by INF file into FV, only insert the INF statement\r
136 into the INF statements list of that FV, like this:\r
137 \r
138 INF RuleOverride=Test MdeModulePkg/Logo/Logo.inf\r
139 \r
140 Specifying how to process the binary file by defining corresponding Rule like this:\r
141 [Rule.Common.Base.Test]\r
142 FILE FREEFORM = $(NAMED_GUID) {\r
143 COMPRESS PI_STD {\r
144 GUIDED {\r
145 RAW BIN |.bmp \r
146 }\r
147 }\r
148 }\r
149\r
150==========================================================================================\r
151EDK_3832: Non-Compatible: jwang36\r
152\r
153 Class_BuildTool:\r
154 1) Added support of MACRO in tools_def.txt\r
155 2) Merged PATH and NAME attributes in tools_def.txt\r
156 3) Changed DPATH attribute to DLL in tools_def.txt\r
157 4) Removed SPATH attribute in tools_def.txt\r
158 5) Added support for library instance without library class\r
159 6) Fixed the issue in Trim tool which zero file will be generated if the trimmed \r
160 file has not line directive\r
161 \r
162 Code Change :\r
163 1) BaseTools/Bin/Win32/build.exe\r
164 2) BaseTools/Bin/Win32/GenFds.exe\r
165 3) BaseTools/Bin/Win32/Trim.exe\r
166 4) BaseTools/Conf/tools_def.template\r
167\r
168 Possible Impacts:\r
169 1) All platforms and modules build\r
170\r
171==========================================================================================\r
172EDK_3801: Compatible: jwang36\r
173\r
174 Class_BuildConfiguration: Added makefile as dependency for "Dynamic-Library-File" to \r
175 solve the incremental build issue occurred when there's library changes\r
176\r
177 Code Change :\r
178 1) BaseTools/Conf/build_rule.template\r
179\r
180==========================================================================================\r
181EDK_3800: Compatible: lgao4\r
182\r
183 Class_BuildTool: Update EfiRom tool to fix checksum and PCI3.0 data structure\r
184\r
185 Code Change :\r
186 1) BaseTools/Bin/Win32/EfiRom.exe\r
187\r
188==========================================================================================\r
189EDK_3795: Compatible: htao\r
190\r
191 Class_BuildTool: GenVtf tool open/write file with "r+b"/"w+b" attribute, but this cause\r
192 the RO attribute of the file changed. Fix this issue by changing \r
193 "r+b"/"w+b" to "rb"/"wb".\r
194\r
195 Code Change :\r
196 1) BaseTools/Bin/Win32/GenVtf.exe\r
197\r
198==========================================================================================\r
199EDK_3791: Compatible: jlin16\r
200\r
201 Class_BuildTool:\r
202 1) use '#' to indicate flash generation progress.\r
203 2) use -v to switch on detail output messages.\r
204\r
205 Code Change :\r
206 1) BaseTools/Bin/Win32/GenFds.exe\r
207\r
208==========================================================================================\r
209EDK_3789: Non-Compatible: lgao4\r
210\r
211 Class_BuildTool: support new Rules format and PCD format defined in FDF file\r
212\r
213 Code Change :\r
214 1) BaseTools/Bin/Win32/build.exe\r
215 2) BaseTools/Bin/Win32/GenFds.exe\r
216\r
217 Possible Impacts:\r
218 1) All platform's FDF file, if any, must be changed to new format.\r
219 a) PCD format is changed from old PcdName to new PcdTokenSpaceGuid.PcdName, \r
220 for example PcdWinNtFdBaseAddress in old FDF file will be replaced \r
221 by gEfiNt32PkgTokenSpaceGuid.PcdWinNtFdBaseAddres.\r
222 b) Rule format adds binary file type and file postfix name support, \r
223 and doesn't require the full file path. Examples for Peim and AcpiTable module:\r
224 Old Peim Rule:\r
225 [Rule.Common.PEIM]\r
226 FILE PEIM = $(NAMED_GUID) {\r
227 PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).Depex\r
228 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi\r
229 UI Optional $(MODULE_NAME)\r
230 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)\r
231 }\r
232 New Peim Rule:\r
233 [Rule.Common.PEIM]\r
234 FILE PEIM = $(NAMED_GUID) {\r
235 PEI_DEPEX PEI_DEPEX Optional |.Depex\r
236 PE32 PE32 |.efi\r
237 UI STRING="$(MODULE_NAME)" Optional \r
238 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) \r
239 }\r
240\r
241 Old AcpiTable Rule:\r
242 [Rule.Common.DXE_DRIVER.ACPITABLE]\r
243 FILE FREEFORM = $(NAMED_GUID) {\r
244 RAW $(INF_OUTPUT)/Madt.acpi\r
245 RAW $(INF_OUTPUT)/Fadt.acpi\r
246 RAW $(INF_OUTPUT)/Facs.acpi\r
247 RAW $(INF_OUTPUT)/Spcr.acpi\r
248 RAW $(INF_OUTPUT)/Dsdt.aml\r
249 }\r
250 New AcpiTable Rule:\r
251 [Rule.Common.DXE_DRIVER.ACPITABLE]\r
252 FILE FREEFORM = $(NAMED_GUID) {\r
253 RAW ACPI |.acpi\r
254 RAW ASL |.aml\r
255 }\r
256\r
257==========================================================================================\r
258EDK_3786: Compatible: vjeff\r
259\r
260 Class_BuildConfiguration:\r
261 1) Redirect ICC_IA32_*_PATH from C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin \r
262 to C:\Program Files\Intel\Compiler\C++\9.1\IA32\Bin. \r
263 2) Add ICC X64 definition to enable ICC X64 build.\r
264\r
265 Code Change :\r
266 1) BaseTools/Conf/tools_def.template\r
267\r
268==========================================================================================\r
269EDK_3785: Non-Compatible: klu2\r
270\r
271 Class_BuildTool: Upgrade the format of EFI_PEIM_ENTRY_POINT to \r
272 EFI_PEIM_ENTRY_POINT2 according to PI specification.\r
273\r
274\r
275 Code Change :\r
276 1) BaseTools/Bin/Win32/build.exe\r
277\r
278 Possible Impacts:\r
279 1) All modules build\r
280\r
281\r
282==========================================================================================\r
283EDK_3780: Non-Compatible: qhuang8\r
284\r
285 Class_MigrationTool: Update the syntax of PCD section.\r
286 Update the syntax of binary INF file\r
287 The generated Extended INF file should follow Extended INF spec 0.44\r
288\r
289 Code Change :\r
290 1) BaseTools/Bin/Win32/MigrationMsa2Inf.exe\r
291\r
292 Possible Impacts:\r
293 1) New module migrated from old R9\r
294\r
295\r
296==========================================================================================\r
297EDK_3766: Non-Compatible: lgao4\r
298\r
299 Class_BuildConfiguration: Update Acpi Asl file Build rule to remove trim step.\r
300\r
301 Code Change :\r
302 1) Conf/build_rule.template\r
303\r
304 Possible Impacts:\r
305 1) Platform with ACPI module. Acpi module needs to set /EP preprocessor compiler option \r
306 for APP_FLAGS in module inf to override the default /E option defined in tools_def.txt file. \r
307\r
308\r