]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/ChangeLog.txt
Check In tool source code based on Build tool project revision r1655.
[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 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Autogen
46 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/build
47 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
48 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/CommonDataClass
49 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/GenFds
50 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Workspace
51
52 BaseTools/Bin/Win32/GenFds.exe
53 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
54 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/CommonDataClass
55 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/GenFds
56 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Workspace
57
58 BaseTools/Bin/Win32/GenDepex.exe
59 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/AutoGen
60 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
61
62 BaseTools/Bin/Win32/Trim.exe
63 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Trim
64 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
65
66 BaseTools/Bin/Win32/MigrationMsa2Inf.exe
67 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/MigrationMsa2Inf
68 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
69
70 BaseTools/Bin/Win32/TargetTool.exe
71 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/TargetTool
72 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/Common
73
74 BaseTools/Bin/Win32/Spd2Dec.exe
75 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/spd2dec
76
77 BaseTools/Bin/Win32/Fpd2Dsc.exe
78 r1655 https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python/fpd2dsc
79
80 ==========================================================================================
81 Binary Tool checkin log
82 ==========================================================================================
83 EDK_7529: Non-Compatible: jwang36
84
85 Class_BuildTool:
86 1) Use FAMILY defined in *_TAGNAME_*_*_FAMILY as the toolchain family
87 2) Force file name case check in Windows
88 3) Consolidate file/path operations
89 4) Support binary file type in build_rule.txt
90 5) Generate $(FILE_TYPES) macro only when it's used in build_rule.txt
91 6) Use build_rule.txt to solve customized build for USER_DEFINED module
92 7) Re-design TemplateString to make it faster
93 8) Improve performance of Trim tool
94 9) Fix undefined variables issue
95 10) Fix HSD202142 and HSD202144
96
97 Code Change :
98 1) /trunk/edk2/BaseTools/Bin/Win32/build.exe
99 2) /trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
100 3) /trunk/edk2/BaseTools/Bin/Win32/Trim.exe
101 4) /trunk/edk2/BaseTools/Conf/build_rule.template
102
103 Possible Impacts:
104 1) To build Nt32Pkg.dsc correctly, the local version build_rule.txt must
105 updated with the change in new build_rule.template.
106 2) The case of file path must be the same as in file system, or the build
107 will break.
108
109 EDK_7159: Non-Compatible: jwang36
110
111 Class_BuildTool:
112 1) Re-fine and fully test the mechanism of getting over the long command
113 line limitation
114 2) Change the -s option of build from "SpawnMode" to be "SilentMode"
115 3) Change the prototype of PeiCoreEntryPoint in AutoGen-ed code
116 4) Remove CalcDeps module since it's no longer needed.
117 5) Remove "-k", "-g" and "-l" switches from build
118 6) Remove MULTIPLE_THREAD in target.template. Use MAX_CONCURRENT_THREAD_NUMBER
119 to get the same functionality.
120
121 Code Change :
122 1) /trunk/edk2/BaseTools/Bin/Win32/build.exe
123 1) /trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
124
125 Possible Impacts:
126 1) The local version build_rule.txt must be updated with changes in build_rule.template
127 2) Use "build -s" to pass "-s" switch to "make" tool to do silent "make".
128 To suppress all message from stdout, use "build -q" instead.
129 3) To get over the long command line limitation, use "@$(<FILE_TYPE>S_LIST)"
130 in the place of ${src} for those commands encountering such kind of
131 problem.
132
133 EDK_7009: Non-Compatible: jwang36
134
135 Class_BuildTool:
136 1) Search value of Guid/Protocol/PPI in inf file only in the same category in dec file.
137 2) Pass all files in a module's directory to StrGather for R8 modules.
138
139 Code Change :
140 1) /trunk/edk2/BaseTools/Bin/Win32/build.exe
141
142 Possible Impacts:
143 1) Those inf files in which the PPI/Protocol/Guid are put in incorrect
144 section will encounter build break.
145
146 ==========================================================================================
147 EDK_6930: Non-Compatible: jwang36
148
149 Class_BuildTool:
150 1) Separate the AutoGen code for PCDs between module and its library instances.
151 Only macros for module's PCDs will be put in AutoGen.h. Others will be put
152 in AutoGen.c. This is intended to catch missed PCDs in inf file more easily.
153 2) For better compatibile between C standards or C compiler, add type cast for
154 PCD constants in AutoGen.h according to the PCD datum type.
155 3) Add incremental generation capability for FV in GenFds tool.
156
157 Code Change :
158 1) /trunk/edk2/BaseTools/Bin/Win32/build.exe
159 2) /trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
160
161 Possible Impacts:
162 1) If there're PCDs used in a module but not declared in the module's inf file,
163 and occasionally they are declared in the library instances, there must be
164 a build break. Adding necessary PCDs declarations in the module's inf file
165 will solve it.
166
167 ==========================================================================================
168 EDK_6828: Compatible: jwang36
169
170 Class_BuildTool:
171 1) Add a feature to allow override tools option via "==" in metafile.
172 2) Remove the AutoGen.c generation for R8 module without unicode file.
173
174
175 Code Change :
176 1) /trunk/edk2/BaseTools/Bin/Win32/build.exe
177
178 ==========================================================================================
179 EDK_6772: Non-Compatible: jwang36
180
181 Class_BuildTool:
182 1) Add /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT) in EBC_CC_FLAGS to ensure
183 correct R8's module entry point for EBC arch.
184
185 Code Change :
186 1) /trunk/edk2/BaseTools/Conf/tools_def.template
187
188 Possible Impacts:
189 The local version of tools_def.txt must be updated with the change in
190 tools_def.template.
191
192 ==========================================================================================
193 EDK_6762: Non-Compatible: lgao4
194
195 Class_BuildTool:
196 1) Declare entry point, constructor into AutoGen.h
197 2) Create <ModuleName>StrDefs.h to contain uni code string ID.
198
199
200 Code Change :
201 1) /trunk/edk2/BaseTools/Bin/Win32/build.exe
202 2) /trunk/edk2/BaseTools/Conf/tools_def.template
203
204 Possible Impacts:
205 The local version of tools_def.txt must be updated with change in
206 tools_def.tempalte.
207
208 ==========================================================================================
209 EDK_6671: Compatible: qwang12
210
211 Class_BuildTool:
212 1) StrGather (Build.exe) in compatible mode add a Framework Package Header
213 to replace the original ¡°ArrayLength¡± generated in the output.
214 2) VfrCompiler in compatible mode add a Framework Package Header to replace
215 the original ¡°ArrayLength¡± generated in the output.
216
217 Code Change :
218 1) /trunk/edk2/BaseTools/Bin/Win32/VfrCompile.exe
219 2) /trunk/edk2/BaseTools/Bin/Win32/build.exe
220
221
222 ==========================================================================================
223 EDK_6666: Compatible: lgao4
224
225 Class_BuildTool:
226 1) Enhance GenFv WriteFvMap function to print basic debug information
227 (entrypoint, baseaddress, .text, .data section base address) when no
228 map can be referred.
229 2) Enhance GenFv tool to create the non PI file system firmware volume.
230 3) Update VfrComile
231 - Set the first framework var store name to ¡°Setup¡±
232 - Support DEFAULT and MANUFACTURING for framework CheckBox flags value
233
234 Code Change :
235 /trunk/edk2/BaseTools/Bin/Win32/GenFv.exe
236 /trunk/edk2/BaseTools/Bin/Win32/VfrCompile.exe
237
238 ==========================================================================================
239 EDK_6640: Compatible: jwang36
240
241 Class_BuildTool:
242 1) Change file line format of AutoGen files to native style.
243
244 Code Change :
245 1) /trunk/edk2/BaseTools/Bin/Win32/build.exe
246
247 ==========================================================================================
248 EDK_6613: Non-Compatible: qwang12
249
250 Class_BuildTool:
251 1) Generate data for ConfigAccess.ExtractConfig() impl
252
253 Code Change :
254 1) /trunk/edk2/BaseTools/Bin/Win32/VfrCompile.exe
255
256 ==========================================================================================
257 EDK_6490: Compatible: jwang36
258
259 Class_BuildTool:
260 1) Add ImportTool.bat script
261 2) Add more error check for Trim.exe
262
263
264 Code Change :
265 1) /trunk/edk2/BaseTools/Bin/Win32/ImportTool.bat
266 2) /trunk/edk2/BaseTools/Bin/Win32/Trim.exe
267
268 ==========================================================================================
269 EDK_6452: Compatible: jwang36
270
271 Class_BuildTool:
272 1) Allow the flags of tools not defined tools_def.txt
273 2) Add BUILD as internal tool to pass compatible mode of unicode to build tool.
274 3) Add support of [Depex.common.<ModuleType>] in inf file
275 4) Add more optimization, especially for architecture protocols, in GeDepex tool
276 5) Fix the generation of _gPeimRevision and _gDxeRevision global variables in
277 AutoGen.c according to new MdePkg spec.
278 6) Change the header file of DxeSmmeEntryPoint.h to UefiDriverEntryPoint.h
279 in AutoGen.c since it's no longer exist.
280 7) Fix $(PROCESSOR) macro replacement issue in [nmake] section
281
282 Code Change :
283 /trunk/edk2/BaseTools/Bin/Win32/GenDepex.exe
284 /trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
285 /trunk/edk2/BaseTools/Bin/Win32/build.exe
286
287 ==========================================================================================
288 EDK_6289: Compatible: jwang36
289
290 Class_BuildTool:
291 1) Performance improvement on startup of build.exe
292
293 Code Change :
294 1) /trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
295 2) /trunk/edk2/BaseTools/Bin/Win32/build.exe
296
297 ==========================================================================================
298 EDK_6269: Compatible: jwang36
299
300 Class_BuildTool:
301 1) Bug fixes
302 2) Improve the screen output when in quiet build mode
303 3) Add "tbuild" target in makefile in order to not created directories in
304 makefile. Instead, they will be created in build tool. This will give
305 better build performance, especially in incremental build.
306 4) Add space check in WORKSPACE and OUTPUT_DIRECTORY (in dsc file) directory
307 name and give error message if found.
308
309 Code Change :
310 1) /trunk/edk2/BaseTools/Bin/Win32/build.exe
311
312 ==========================================================================================
313 EDK_5762: Compatible: jlin16
314
315 Class_BuildTool:
316 1) Enhance the tool to build R8 module via ECP.
317
318 Code Change :
319 1) /trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
320 2) /trunk/edk2/BaseTools/Bin/Win32/build.exe
321
322 ==========================================================================================
323 EDK_5635: Compatible: lgao4
324
325 Class_BuildTool:
326 1) Enhance GenFv tool to print Fv Size and Length, and Get module map by
327 module pdb pointer and get module guid by module FFS guid.
328 2) And Enhance VfrCompiler to handle framework vfr file, and print more
329 debug information into .lst file.
330
331 Code Change :
332 1) /trunk/edk2/BaseTools/Bin/Win32/GenFv.exe
333 2) /trunk/edk2/BaseTools/Bin/Win32/VfrCompile.exe
334
335 ==========================================================================================
336 EDK_5634: Non-Compatible: jwang36
337
338 Class_BuildTool:
339 1) Enhance the format of build_rule.txt to allow module type and arch information.
340 2) Enhance Trim to convert ASL style of include to C style of include
341 3) Enhance Trim to convert some EDK coding convention to EDK2 ECP convention
342 4) Add warning message when encountering unrecognized content in DSC/DEC/INF File
343 5) Enhance the GenDepex to ignore everything outside DEPENDENCY_STANT and DEPENDENCY_END in dxs file
344
345 Code Change :
346 /trunk/edk2/BaseTools/Bin/Win32/GenDepex.exe
347 /trunk/edk2/BaseTools/Bin/Win32/Trim.exe
348 /trunk/edk2/BaseTools/Bin/Win32/build.exe
349 /trunk/edk2/BaseTools/Conf/build_rule.template
350 /trunk/edk2/BaseTools/Conf/tools_def.template
351
352 Possible Impacts:
353 The local version tools_def.txt and build_rule.txt must be updated with
354 the changes in tools_def.template and build_rule.template respectively.
355
356 ==========================================================================================
357 EDK_5193: Compatible: jwang36
358
359 Class_BuildTool:
360 1) Add incremental support in GenFds
361
362 Code Change :
363 /trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
364 /trunk/edk2/BaseTools/Bin/Win32/build.exe
365
366 ==========================================================================================
367 EDK_5186: Compatible: jwang36
368
369 Class_BuildTool:
370 1) Add explicit banner for pass/fail indication of build
371 2) Fix the issue which cause error message from FDF parser won't be printed out.
372 3) Fix the error message format of FDF parser
373 4) Change the exit code of build tool from always 1 to error code, if error occurred
374
375 Code Change :
376 /trunk/edk2/BaseTools/Bin/Win32/GenFds.exe
377 /trunk/edk2/BaseTools/Bin/Win32/build.exe
378
379 ==========================================================================================
380 EDK_4971: Compatible: lgao4
381
382 Class_BuildTool:
383 1) Enhance GenFw tool to always zero .pdata section for PE32 and PE32+ image in
384 order to improve compression ratio for them.
385
386 Code Change :
387 /trunk/edk2/BaseTools/Bin/Win32/GenFw.exe
388
389 ==========================================================================================
390 EDK_4918: Compatible: lgao4
391
392 Class_BuildTool:
393 1) Correct Error Message format for these C tools according to the Tool Design Spec.
394
395 Code Change :
396 /trunk/edk2/BaseTools/Bin/Win32/EfiLdrImage.exe
397 /trunk/edk2/BaseTools/Bin/Win32/GenFv.exe
398 /trunk/edk2/BaseTools/Bin/Win32/TianoCompress.exe
399 /trunk/edk2/BaseTools/Bin/Win32/VfrCompile.exe
400 /trunk/edk2/BaseTools/Bin/Win32/VolInfo.exe
401
402 ==========================================================================================
403 EDK_4859: Non-Compatible: jwang36
404
405 Class_BuildTool:
406 1) Changed VfrCompile.exe to be UEFI HII compatible
407 2) Improved R8 module build
408 3) Added binary file build
409 4) Removed "extern int __make_me_compile_correctly" in AutoGen code for
410 R9 modules, but kept for R8 modules
411 5) Enfored more error check and introduced a optimization for GenDepex
412 6) Added BUILD_RULE_CONF in target.txt to specify build rules file
413 7) Rebuilt all Python tools with Python2.5.2
414
415 Code Change :
416 1) build.exe
417 2) VfrCompile.exe
418 3) GenFds.exe
419 4) GenDepex.exe
420 5) target.template
421
422
423 Possible Impacts:
424 1) All EFI code needs to be UEFI HII compatible.
425 2) Conf/target.txt needs to be replaced by new target.template
426
427 ==========================================================================================
428 EDK_4251: Non-Compatible: jwang36
429
430 Class_BuildTool:
431 1) Changed MYTOOLS to use Visual Studio Team Suite for IA32 and X64. IPF is still use WINDKK.
432 2) Re-generated build.exe and GenFds.exe to incorporate new changes of build tools
433 3) Enabled multi-thread build mode by default (can be disabled by using "-n 0" option or changing
434 MULTIPLE_THREAD in target.txt to Disabled)
435 4) Fixed an incorrect command (no leading tab/space) generated in top level Makefile.
436
437 Code Change :
438 1) BaseTools/Bin/Win32/GenFds.exe
439 2) BaseTools/Bin/Win32/build.exe
440 3) BaseTools/Conf/target.template
441 4) BaseTools/Conf/tools_def.template
442
443 Possible Impacts:
444 1) Install Visual Studio 2005 Team Suite Edition.
445
446 ==========================================================================================
447 EDK_4190: Non-Compatible: jwang36
448
449 Class_BuildTool:
450 1) Added support of using PCD default value from DEC/INF file if one
451 PCD is declared in INF file but not found in DSC file.
452 2) Added support of breaking build if no library instance is found for
453 a library class.
454
455 Code Change :
456 1) BaseTools/Bin/Win32/build.exe
457 2) BaseTools/Bin/Win32/GenFds.exe
458
459 Possible Impacts:
460 1) All packages/platforms/modules, which have wrong library classes
461 declared or have no library instance for some library classes, must be
462 changed to make sure each library class declared in INF file has
463 corresponding library instance.
464
465 ==========================================================================================
466 EDK_4096: Non-Compatible: jwang36
467
468 Class_BuildTool:
469 1) Removed the calling of vsvars32.bat in edksetup.bat, unless
470 "--nt32" switch is used.
471 2) Added MAKE command in tools_def.txt. This is used to locate where
472 the nmake.exe or make.exe is because it will not be in PATH any more.
473 3) Removed the calling of vsvars32.bat in toolsetup.bat.
474 4) Solved the hang issue of build.exe when error occurred or Ctrl+C is
475 pressed.
476 5) Passed "-v/-d/-q" command line option to GenFds.exe in makefile if
477 it's used by build.exe.
478
479 Code Change :
480 1) BaseTools/Bin/Win32/build.exe
481 2) BaseTools/Bin/Win32/GenFds.exe
482 3) BaseTools/Conf/tools_def.template
483 4) BaseTools/toolsetup.bat
484 5) edksetup.bat
485
486 Possible Impacts:
487 1) Nt32Pkg build needs to run vsvars32.bat before edksetup.bat or run
488 edksetup.bat with "--nt32" option, like
489
490 edksetup.bat --nt32 newbuild
491
492 2) $(WORKSPACE)/Conf/tools_def.txt must be deleted before running
493 edksetup.bat because of new tools_def.template. Otherwise the
494 build.exe cannot find the nmake.exe to call.
495
496 ==========================================================================================
497 EDK_3947: Compatible: jwang36
498
499 Class_BuildTool:
500 1) Improved spawn mode (multi-thread) build performance (build -s)
501 2) Changed the error/debug/warning message format
502 3) Added "--log" command line option to support storing log in file
503
504 Code Change :
505 1) BaseTools/Bin/Win32/build.exe
506
507
508 ==========================================================================================
509 EDK_3936: Compatible: klu2
510
511 Class_BuildTool:
512 1) The first parameter of PEIM's entry point in autogen.c has been changed to
513 EFI_PEI_FILE_HANDLE
514
515 Code Change :
516 1) BaseTools/Bin/Win32/build.exe
517
518 ==========================================================================================
519 EDK_3926: Compatible: jlin16
520
521 Class_BuildTool:
522 1) Added support of Capsule generation from FDF file.
523
524 Code Change :
525 1) BaseTools/Bin/Win32/build.exe
526 2) BaseTools/Bin/Win32/GenFds.exe
527
528 Possible Impacts:
529 1) To generate capsule, insert [Capsule] section after [FV] sections and specifying
530 what FV will be put into capsule, For example:
531 [Capsule.Fob]
532 CAPSULE_GUID = 3B6686BD-0D76-4030-B70E-B5519E2FC5A0
533 CAPSULE_FLAG = PersistAcrossReset
534 FV = BiosUpdate
535
536 ==========================================================================================
537 EDK_3911: Compatible: jlin16
538
539 Class_BuildTool:
540 1) Added support of Apriori file generation from FDF file.
541 2) Added support of INF that describes binary files to put binary into FV.
542 3) Fixed single FV/FD generation error when specifying -i/-r option in GenFds.
543
544
545 Code Change :
546 1) BaseTools/Bin/Win32/build.exe
547 2) BaseTools/Bin/Win32/GenFds.exe
548
549 Possible Impacts:
550 1) To generate Apriori file in FV, insert APRIORI statement just before the INF or
551 FILE statement list of the FV, For example:
552 APRIORI PEI {
553 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
554 FILE PEIM = B7A5041A-78BA-49e3-B73B-54C757811FB6 {
555 SECTION PE32 = MyBinPkg\bin\ia32\PeimAfterPcd.efi
556 }
557 INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf
558 }
559 2) To add binary file described by INF file into FV, only insert the INF statement
560 into the INF statements list of that FV, like this:
561
562 INF RuleOverride=Test MdeModulePkg/Logo/Logo.inf
563
564 Specifying how to process the binary file by defining corresponding Rule like this:
565 [Rule.Common.Base.Test]
566 FILE FREEFORM = $(NAMED_GUID) {
567 COMPRESS PI_STD {
568 GUIDED {
569 RAW BIN |.bmp
570 }
571 }
572 }
573
574 ==========================================================================================
575 EDK_3832: Non-Compatible: jwang36
576
577 Class_BuildTool:
578 1) Added support of MACRO in tools_def.txt
579 2) Merged PATH and NAME attributes in tools_def.txt
580 3) Changed DPATH attribute to DLL in tools_def.txt
581 4) Removed SPATH attribute in tools_def.txt
582 5) Added support for library instance without library class
583 6) Fixed the issue in Trim tool which zero file will be generated if the trimmed
584 file has not line directive
585
586 Code Change :
587 1) BaseTools/Bin/Win32/build.exe
588 2) BaseTools/Bin/Win32/GenFds.exe
589 3) BaseTools/Bin/Win32/Trim.exe
590 4) BaseTools/Conf/tools_def.template
591
592 Possible Impacts:
593 1) All platforms and modules build
594
595 ==========================================================================================
596 EDK_3801: Compatible: jwang36
597
598 Class_BuildConfiguration: Added makefile as dependency for "Dynamic-Library-File" to
599 solve the incremental build issue occurred when there's library changes
600
601 Code Change :
602 1) BaseTools/Conf/build_rule.template
603
604 ==========================================================================================
605 EDK_3800: Compatible: lgao4
606
607 Class_BuildTool: Update EfiRom tool to fix checksum and PCI3.0 data structure
608
609 Code Change :
610 1) BaseTools/Bin/Win32/EfiRom.exe
611
612 ==========================================================================================
613 EDK_3795: Compatible: htao
614
615 Class_BuildTool: GenVtf tool open/write file with "r+b"/"w+b" attribute, but this cause
616 the RO attribute of the file changed. Fix this issue by changing
617 "r+b"/"w+b" to "rb"/"wb".
618
619 Code Change :
620 1) BaseTools/Bin/Win32/GenVtf.exe
621
622 ==========================================================================================
623 EDK_3791: Compatible: jlin16
624
625 Class_BuildTool:
626 1) use '#' to indicate flash generation progress.
627 2) use -v to switch on detail output messages.
628
629 Code Change :
630 1) BaseTools/Bin/Win32/GenFds.exe
631
632 ==========================================================================================
633 EDK_3789: Non-Compatible: lgao4
634
635 Class_BuildTool: support new Rules format and PCD format defined in FDF file
636
637 Code Change :
638 1) BaseTools/Bin/Win32/build.exe
639 2) BaseTools/Bin/Win32/GenFds.exe
640
641 Possible Impacts:
642 1) All platform's FDF file, if any, must be changed to new format.
643 a) PCD format is changed from old PcdName to new PcdTokenSpaceGuid.PcdName,
644 for example PcdWinNtFdBaseAddress in old FDF file will be replaced
645 by gEfiNt32PkgTokenSpaceGuid.PcdWinNtFdBaseAddres.
646 b) Rule format adds binary file type and file postfix name support,
647 and doesn't require the full file path. Examples for Peim and AcpiTable module:
648 Old Peim Rule:
649 [Rule.Common.PEIM]
650 FILE PEIM = $(NAMED_GUID) {
651 PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).Depex
652 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
653 UI Optional $(MODULE_NAME)
654 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
655 }
656 New Peim Rule:
657 [Rule.Common.PEIM]
658 FILE PEIM = $(NAMED_GUID) {
659 PEI_DEPEX PEI_DEPEX Optional |.Depex
660 PE32 PE32 |.efi
661 UI STRING="$(MODULE_NAME)" Optional
662 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
663 }
664
665 Old AcpiTable Rule:
666 [Rule.Common.DXE_DRIVER.ACPITABLE]
667 FILE FREEFORM = $(NAMED_GUID) {
668 RAW $(INF_OUTPUT)/Madt.acpi
669 RAW $(INF_OUTPUT)/Fadt.acpi
670 RAW $(INF_OUTPUT)/Facs.acpi
671 RAW $(INF_OUTPUT)/Spcr.acpi
672 RAW $(INF_OUTPUT)/Dsdt.aml
673 }
674 New AcpiTable Rule:
675 [Rule.Common.DXE_DRIVER.ACPITABLE]
676 FILE FREEFORM = $(NAMED_GUID) {
677 RAW ACPI |.acpi
678 RAW ASL |.aml
679 }
680
681 ==========================================================================================
682 EDK_3786: Compatible: vjeff
683
684 Class_BuildConfiguration:
685 1) Redirect ICC_IA32_*_PATH from C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin
686 to C:\Program Files\Intel\Compiler\C++\9.1\IA32\Bin.
687 2) Add ICC X64 definition to enable ICC X64 build.
688
689 Code Change :
690 1) BaseTools/Conf/tools_def.template
691
692 ==========================================================================================
693 EDK_3785: Non-Compatible: klu2
694
695 Class_BuildTool: Upgrade the format of EFI_PEIM_ENTRY_POINT to
696 EFI_PEIM_ENTRY_POINT2 according to PI specification.
697
698
699 Code Change :
700 1) BaseTools/Bin/Win32/build.exe
701
702 Possible Impacts:
703 1) All modules build
704
705
706 ==========================================================================================
707 EDK_3780: Non-Compatible: qhuang8
708
709 Class_MigrationTool: Update the syntax of PCD section.
710 Update the syntax of binary INF file
711 The generated Extended INF file should follow Extended INF spec 0.44
712
713 Code Change :
714 1) BaseTools/Bin/Win32/MigrationMsa2Inf.exe
715
716 Possible Impacts:
717 1) New module migrated from old R9
718
719
720 ==========================================================================================
721 EDK_3766: Non-Compatible: lgao4
722
723 Class_BuildConfiguration: Update Acpi Asl file Build rule to remove trim step.
724
725 Code Change :
726 1) Conf/build_rule.template
727
728 Possible Impacts:
729 1) Platform with ACPI module. Acpi module needs to set /EP preprocessor compiler option
730 for APP_FLAGS in module inf to override the default /E option defined in tools_def.txt file.