EDK II Build Specification
Tables
Figures
1 Introduction
1.1 Overview
1.2 Target Audience
1.3 Terms
1.4 Related Information
1.5 Conventions Used in this Document
2 Design Discussion
2.1 Development Environments
2.2 UEFI/PI Firmware Images
2.3 Boot Sequence
2.4 Typical Flash Part Layout
2.5 Generic Build Process
2.6 Creating EFI Images
2.7 SKU Support
3 UEFI and PI Image Specification
4 EDK II Build Process Overview
4.1 EDK II Build System
4.2 Build Process Overview
4.3 Pre-Build Stage Overview
4.4 Creating Binary EFI Images - $(MAKE) stage
4.5 Post-Build Stage
4.6 File Specifications
4.7 File Extensions
5 Meta-Data File Specifications
5.1 Build Meta-Data File Formats
5.2 tools_def.txt
5.3 target.txt File
6 Quick Start
6.1 Environment Variables
6.2 Build Scope
7 Build Environment
7.1 Build Scope
7.2 Third Party Tools
7.3 GUIDed Tools
8 Pre-Build AutoGen Stage
8.1 Overview
8.2 Auto-generation Process
8.3 Auto-generated code
8.4 Auto-generated PCD Database File
8.5 Auto-generated Makefiles
8.6 Binary Modules
8.7 Generated AsBuilt INF Files
9 Build or $(MAKE) Stage
9.1 Overview
9.2 Preprocess/Trim
9.3 Compile/Assembly
9.4 Static Link
9.5 Dynamic Link
9.6 Generate Module Images
9.7 Generate Platform Images
10 Post-Build ImageGen Stage - FLASH
10.1 Overview of Flash Device Layout
10.2 Parsing FDF Meta-Data File
10.3 Build Intermediate Images
10.4 Create the FV Image File(s)
10.5 Create the FD image file(s)
10.6 Post Build Processing
11 Post-Build ImageGen Stage - Other
11.1 EFI PCI Option ROM Images
11.2 UEFI Applications
11.3 Capsules
12 Build Changes and Customizations
12.1 Building for Debug
12.2 Adding Custom Compression Tools
12.3 Using Custom Build Tools
12.4 Customizing Compilation for a Component
12.5 Platform Specific ASL Tools
12.6 Build Reproducibility
13 Build Reports
13.1 Build Report Generation Options
13.2 Sample Launch Steps: NT32 platform
13.3 Output
13.4 Platform Summary
13.5 Mixed PCD Section
13.6 Global PCD Section
13.7 FD Section
13.8 Module Section
13.9 Execution Order Prediction Section
Appendix A Variables
Appendix B tools_def.txt
Appendix C target.txt
Appendix D build.exe command
D.1 Overview
D.2 Makefile actions
D.3 Build Targets and options
D.4 Usage
Appendix E NT32 Platform Emulation
Appendix F Firmware Volume INF
F.1 Firmware Volume INF Description
F.2 [Attributes] Section
F.3 [Files] Section
F.4 [Options] Section
Appendix G VS2005 Team Suite Performance
G.1 Step 1 - Create a new project
G.2 Step 2 - Update the project
Appendix H Module Types
Appendix I VPD Tool
I.1 Build System Output File Format
I.2 VPD Tool Map File Format
Appendix J Makefiles
J.1 NMAKE Module Makefile Format
Appendix K Third Party Tool Flags
Published with GitBook
D.1 Overview
EDK II Build Specification
DRAFT [03/01/2024 01:40:53]
Revision 1.28
D.1 Overview
Under normal circumstances, the build tool will:
Process the command-line options
Parse the meta-data files
Generate the C files
Generate the Makefiles
Call the make command.
EDK II Build Specification
DRAFT [03/01/2024 01:40:53]
Revision 1.28