blob: c1b30def08ccae6b8c614b504912ee66228bd380 [file] [log] [blame]
andrewfish949f3882011-05-11 18:31:20 +00001## @file
2#
andrewfish5dcda292011-06-17 16:18:14 +00003# UEFI/PI Emulation Platform with UEFI HII interface supported.
andrewfish949f3882011-05-11 18:31:20 +00004#
5# The Emulation Platform can be used to debug individual modules, prior to creating
6# a real platform. This also provides an example for how an DSC is created.
7# Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
8# Portions copyright (c) 2010 - 2011, Apple Inc. All rights reserved.<BR>
9#
10# This program and the accompanying materials
11# are licensed and made available under the terms and conditions of the BSD License
12# which accompanies this distribution. The full text of the license may be found at
13# http://opensource.org/licenses/bsd-license.php
14#
15# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
16# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17#
18##
19
20################################################################################
21#
22# Defines Section - statements that will be processed to create a Makefile.
23#
24################################################################################
25[Defines]
26 PLATFORM_NAME = EmuUnix
27 PLATFORM_GUID = 05FD064D-1073-E844-936C-A0E16317107D
28 PLATFORM_VERSION = 0.3
29 DSC_ SPECIFICATION = 0x00010005
andrewfishe7523e02011-06-18 22:23:46 +000030!if $(BUILD_32)
31 OUTPUT_DIRECTORY = Build/EmuUnixIa32
32!else
andrewfish949f3882011-05-11 18:31:20 +000033 OUTPUT_DIRECTORY = Build/EmuUnixX64
andrewfishe7523e02011-06-18 22:23:46 +000034!endif
35
andrewfish112a8572011-06-18 17:53:31 +000036 SUPPORTED_ARCHITECTURES = X64|IA32
andrewfish949f3882011-05-11 18:31:20 +000037 BUILD_TARGETS = DEBUG|RELEASE
38 SKUID_IDENTIFIER = DEFAULT
jljustenbb89ec12011-06-28 16:47:23 +000039 FLASH_DEFINITION = EmulatorPkg/Unix/UnixX64.fdf
andrewfish949f3882011-05-11 18:31:20 +000040
41################################################################################
42#
43# SKU Identification section - list of all SKU IDs supported by this Platform.
44#
45################################################################################
46[SkuIds]
47 0|DEFAULT
48
49################################################################################
50#
51# Library Class section - list of all Library Classes needed by this Platform.
52#
53################################################################################
54[LibraryClasses]
55 #
56 # Entry point
57 #
58 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
59 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
60 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
61 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
62 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
63 #
64 # Basic
65 #
66 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
67 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
68 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
69 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
70 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
71 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
72 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
73
74 #
75 # UEFI & PI
76 #
77 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
78 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
79 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
80 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
81 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
82 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
83 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
84 UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
85
86 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
87 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
88 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
89 #
90 # Generic Modules
91 #
92 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
93 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
94 IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
95 UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
96 DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
97 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
98 GenericBdsLib|IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf
99 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
100 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
101 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
102 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
103 #
104 # Platform
105 #
jljustenbb89ec12011-06-28 16:47:23 +0000106 PlatformBdsLib|EmulatorPkg/Library/EmuBdsLib/EmuBdsLib.inf
107 KeyMapLib|EmulatorPkg/Library/KeyMapLibNull/KeyMapLibNull.inf
jljustend18d8a12011-06-28 16:50:26 +0000108
andrewfish949f3882011-05-11 18:31:20 +0000109 #
110 # Misc
111 #
112 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
113 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
114 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
jljustenbb89ec12011-06-28 16:47:23 +0000115 PeiServicesTablePointerLib|EmulatorPkg/Library/PeiServicesTablePointerLibMagicPage/PeiServicesTablePointerLibMagicPage.inf
andrewfish1453e772011-06-19 18:59:00 +0000116 DebugLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
117
andrewfish949f3882011-05-11 18:31:20 +0000118
andrewfish65e3f332011-05-14 16:00:22 +0000119[LibraryClasses.common.SEC]
jljustenbb89ec12011-06-28 16:47:23 +0000120 PeiServicesLib|EmulatorPkg/Library/SecPeiServicesLib/SecPeiServicesLib.inf
andrewfish65e3f332011-05-14 16:00:22 +0000121 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
jljustenbb89ec12011-06-28 16:47:23 +0000122 PeCoffGetEntryPointLib|EmulatorPkg/Library/PeiEmuPeCoffGetEntryPointLib/PeiEmuPeCoffGetEntryPointLib.inf
123 PeCoffExtraActionLib|EmulatorPkg/Library/PeiEmuPeCoffExtraActionLib/PeiEmuPeCoffExtraActionLib.inf
124 SerialPortLib|EmulatorPkg/Library/PeiEmuSerialPortLib/PeiEmuSerialPortLib.inf
125 PpiListLib|EmulatorPkg/Library/SecPpiListLib/SecPpiListLib.inf
andrewfish1453e772011-06-19 18:59:00 +0000126 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
jljustenbb89ec12011-06-28 16:47:23 +0000127 TimerLib|EmulatorPkg/Library/PeiTimerLib/PeiTimerLib.inf
andrewfish65e3f332011-05-14 16:00:22 +0000128
andrewfish949f3882011-05-11 18:31:20 +0000129[LibraryClasses.common.USER_DEFINED, LibraryClasses.common.BASE]
130 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
131 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
132 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
133 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
jljustenbb89ec12011-06-28 16:47:23 +0000134 PpiListLib|EmulatorPkg/Library/SecPpiListLib/SecPpiListLib.inf
135 ThunkPpiList|EmulatorPkg/Library/ThunkPpiList/ThunkPpiList.inf
136 ThunkProtocolList|EmulatorPkg/Library/ThunkProtocolList/ThunkProtocolList.inf
andrewfish65e3f332011-05-14 16:00:22 +0000137 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
jljustenbb89ec12011-06-28 16:47:23 +0000138 PpiListLib|EmulatorPkg/Library/SecPpiListLib/SecPpiListLib.inf
139 PeiServicesLib|EmulatorPkg/Library/SecPeiServicesLib/SecPeiServicesLib.inf
andrewfish65e3f332011-05-14 16:00:22 +0000140
andrewfish949f3882011-05-11 18:31:20 +0000141
142[LibraryClasses.common.PEIM, LibraryClasses.common.PEI_CORE]
143 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
144 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
145 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
jljustenbb89ec12011-06-28 16:47:23 +0000146 PeCoffGetEntryPointLib|EmulatorPkg/Library/PeiEmuPeCoffGetEntryPointLib/PeiEmuPeCoffGetEntryPointLib.inf
147 PeCoffExtraActionLib|EmulatorPkg/Library/PeiEmuPeCoffExtraActionLib/PeiEmuPeCoffExtraActionLib.inf
andrewfish949f3882011-05-11 18:31:20 +0000148 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
jljustenbb89ec12011-06-28 16:47:23 +0000149 SerialPortLib|EmulatorPkg/Library/PeiEmuSerialPortLib/PeiEmuSerialPortLib.inf
andrewfish1453e772011-06-19 18:59:00 +0000150 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
jljustenbb89ec12011-06-28 16:47:23 +0000151 TimerLib|EmulatorPkg/Library/PeiTimerLib/PeiTimerLib.inf
andrewfish949f3882011-05-11 18:31:20 +0000152
153[LibraryClasses.common.PEI_CORE]
154 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
andrewfish949f3882011-05-11 18:31:20 +0000155
156[LibraryClasses.common.PEIM]
157 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
andrewfish949f3882011-05-11 18:31:20 +0000158
159[LibraryClasses.common.DXE_CORE]
160 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
161 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
162 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
jljustenbb89ec12011-06-28 16:47:23 +0000163 PeCoffExtraActionLib|EmulatorPkg/Library/DxeEmuPeCoffExtraActionLib/DxeEmuPeCoffExtraActionLib.inf
andrewfish949f3882011-05-11 18:31:20 +0000164 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
165 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
jljustenbb89ec12011-06-28 16:47:23 +0000166 TimerLib|EmulatorPkg/Library/DxeCoreTimerLib/DxeCoreTimerLib.inf
167 EmuThunkLib|EmulatorPkg/Library/DxeEmuLib/DxeEmuLib.inf
andrewfish949f3882011-05-11 18:31:20 +0000168
169[LibraryClasses.common.DXE_RUNTIME_DRIVER, LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.DXE_DRIVER, LibraryClasses.common.UEFI_APPLICATION]
170 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
171 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
172 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
173 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
jljustenbb89ec12011-06-28 16:47:23 +0000174 EmuThunkLib|EmulatorPkg/Library/DxeEmuLib/DxeEmuLib.inf
175 PeCoffExtraActionLib|EmulatorPkg/Library/DxeEmuPeCoffExtraActionLib/DxeEmuPeCoffExtraActionLib.inf
andrewfish1453e772011-06-19 18:59:00 +0000176 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
jljustenbb89ec12011-06-28 16:47:23 +0000177 TimerLib|EmulatorPkg/Library/DxeTimerLib/DxeTimerLib.inf
andrewfish949f3882011-05-11 18:31:20 +0000178
179[LibraryClasses.common.UEFI_DRIVER]
180 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
jljustend18d8a12011-06-28 16:50:26 +0000181
andrewfish949f3882011-05-11 18:31:20 +0000182[LibraryClasses.common.UEFI_APPLICATION]
183 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
184
185
186################################################################################
187#
188# Pcd Section - list of all EDK II PCD Entries defined by this Platform.
189#
190################################################################################
191[PcdsFeatureFlag]
192 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE
193 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|TRUE
194 gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst|FALSE
195 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
196
197[PcdsFixedAtBuild]
198 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000040
199 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x0f
200 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x1f
201 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizeNonPopulateCapsule|0x0
202 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizePopulateCapsule|0x0
203
jljustenbb89ec12011-06-28 16:47:23 +0000204 gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareFdSize|0x002a0000
205 gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareBlockSize|0x10000
206 gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareVolume|L"../FV/FV_RECOVERY.fd"
jljustend18d8a12011-06-28 16:50:26 +0000207
jljustenbb89ec12011-06-28 16:47:23 +0000208 gEmulatorPkgTokenSpaceGuid.PcdEmuMemorySizeForSecMain|L"64!64"
jljusten72a44be2011-05-15 17:23:33 +0000209
210!if $(BUILD_NEW_SHELL)
211 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }
212!else
213!if $(USE_NEW_SHELL)
214 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }
215!endif
216!endif
217
andrewfish949f3882011-05-11 18:31:20 +0000218#define BOOT_WITH_FULL_CONFIGURATION 0x00
219#define BOOT_WITH_MINIMAL_CONFIGURATION 0x01
220#define BOOT_ASSUMING_NO_CONFIGURATION_CHANGES 0x02
221#define BOOT_WITH_FULL_CONFIGURATION_PLUS_DIAGNOSTICS 0x03
222#define BOOT_WITH_DEFAULT_SETTINGS 0x04
223#define BOOT_ON_S4_RESUME 0x05
224#define BOOT_ON_S5_RESUME 0x06
225#define BOOT_ON_S2_RESUME 0x10
226#define BOOT_ON_S3_RESUME 0x11
227#define BOOT_ON_FLASH_UPDATE 0x12
228#define BOOT_IN_RECOVERY_MODE 0x20
jljustenbb89ec12011-06-28 16:47:23 +0000229 gEmulatorPkgTokenSpaceGuid.PcdEmuBootMode|0
jljustend18d8a12011-06-28 16:50:26 +0000230
jljustenbb89ec12011-06-28 16:47:23 +0000231 gEmulatorPkgTokenSpaceGuid.PcdEmuApCount|L"1"
andrewfish949f3882011-05-11 18:31:20 +0000232
andrewfish5dcda292011-06-17 16:18:14 +0000233 # For a CD-ROM/DVD use L"diag.dmg:RO:2048"
jljustenbb89ec12011-06-28 16:47:23 +0000234 gEmulatorPkgTokenSpaceGuid.PcdEmuVirtualDisk|L"disk.dmg:FW"
235 gEmulatorPkgTokenSpaceGuid.PcdEmuGop|L"GOP Window"
236 gEmulatorPkgTokenSpaceGuid.PcdEmuFileSystem|L".!../../../../EdkShellBinPkg/Bin"
237 gEmulatorPkgTokenSpaceGuid.PcdEmuSerialPort|L"/dev/ttyS0"
238 gEmulatorPkgTokenSpaceGuid.PcdEmuNetworkInterface|L"en0"
andrewfish949f3882011-05-11 18:31:20 +0000239
jljustenbb89ec12011-06-28 16:47:23 +0000240 gEmulatorPkgTokenSpaceGuid.PcdEmuCpuModel|L"Intel(R) Processor Model"
241 gEmulatorPkgTokenSpaceGuid.PcdEmuCpuSpeed|L"3000"
andrewfish949f3882011-05-11 18:31:20 +0000242
andrewfish7e284ac2011-06-08 02:34:12 +0000243 # 0-PCANSI, 1-VT100, 2-VT00+, 3-UTF8
244 gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|1
245
andrewfish949f3882011-05-11 18:31:20 +0000246################################################################################
247#
248# Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
249#
250################################################################################
251
252[PcdsDynamicDefault.common.DEFAULT]
253 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0
254 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0
255 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
256
257[PcdsDynamicHii.common.DEFAULT]
258 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutColumn|L"Setup"|gEmuSystemConfigGuid|0x0|80
259 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutRow|L"Setup"|gEmuSystemConfigGuid|0x4|25
260 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|10
261
262
263###################################################################################################
264#
265# Components Section - list of the modules and components that will be processed by compilation
266# tools and the EDK II tools to generate PE32/PE32+/Coff image files.
267#
268# Note: The EDK II DSC file is not used to specify how compiled binary images get placed
269# into firmware volume images. This section is just a list of modules to compile from
270# source into UEFI-compliant binaries.
271# It is the FDF file that contains information on combining binary files into firmware
272# volume images, whose concept is beyond UEFI and is described in PI specification.
273# Binary modules do not need to be listed in this section, as they should be
274# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),
275# Logo (Logo.bmp), and etc.
276# There may also be modules listed in this section that are not required in the FDF file,
277# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
278# generated for it, but the binary will not be put into any firmware volume.
279#
280###################################################################################################
andrewfish112a8572011-06-18 17:53:31 +0000281
andrewfishea203f22011-06-20 23:05:43 +0000282!ifndef $(SKIP_MAIN_BUILD)
andrewfish112a8572011-06-18 17:53:31 +0000283[Components.X64]
284 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf {
285 <LibraryClasses>
286 # turn off CR3 write so that DXE IPL will not crash emulator
287 BaseLib|UnixPkg/Library/UnixBaseLib/UnixBaseLib.inf
288 }
289
290[Components.IA32]
jljustend18d8a12011-06-28 16:50:26 +0000291 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
andrewfish1d7ac5a2011-06-24 23:59:51 +0000292!endif
andrewfish112a8572011-06-18 17:53:31 +0000293
andrewfish949f3882011-05-11 18:31:20 +0000294[Components]
jljusten53a68132011-06-20 21:58:22 +0000295!ifdef $(UNIX_SEC_BUILD)
andrewfish949f3882011-05-11 18:31:20 +0000296 ##
andrewfish5dcda292011-06-17 16:18:14 +0000297 # Emulator, OS POSIX application
andrewfish949f3882011-05-11 18:31:20 +0000298 ##
jljustenbb89ec12011-06-28 16:47:23 +0000299 EmulatorPkg/Unix/Host/SecMain.inf
jljusten53a68132011-06-20 21:58:22 +0000300!endif
301
302!ifndef $(SKIP_MAIN_BUILD)
andrewfish65e3f332011-05-14 16:00:22 +0000303 #
304 # Generic SEC
305 #
jljustenbb89ec12011-06-28 16:47:23 +0000306 EmulatorPkg/Sec/Sec.inf
andrewfish65e3f332011-05-14 16:00:22 +0000307
andrewfish949f3882011-05-11 18:31:20 +0000308 ##
309 # PEI Phase modules
310 ##
311 MdeModulePkg/Core/Pei/PeiMain.inf
312 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
313 <LibraryClasses>
314 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
315 }
316 MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
jljustend18d8a12011-06-28 16:50:26 +0000317 MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
318
andrewfish949f3882011-05-11 18:31:20 +0000319 IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
jljustenbb89ec12011-06-28 16:47:23 +0000320 EmulatorPkg/BootModePei/BootModePei.inf
andrewfish949f3882011-05-11 18:31:20 +0000321 MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
jljustenbb89ec12011-06-28 16:47:23 +0000322 EmulatorPkg/AutoScanPei/AutoScanPei.inf
323 EmulatorPkg/FirmwareVolumePei/FirmwareVolumePei.inf
324 EmulatorPkg/FlashMapPei/FlashMapPei.inf
325 EmulatorPkg/ThunkPpiToProtocolPei/ThunkPpiToProtocolPei.inf
andrewfish949f3882011-05-11 18:31:20 +0000326
327 ##
328 # DXE Phase modules
329 ##
330 MdeModulePkg/Core/Dxe/DxeMain.inf {
331 <LibraryClasses>
andrewfish1453e772011-06-19 18:59:00 +0000332 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
andrewfish949f3882011-05-11 18:31:20 +0000333 NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf
334 NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
335 }
336 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
337 <LibraryClasses>
338 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
339 }
340
341 MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
342 MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf {
343 <LibraryClasses>
andrewfish1453e772011-06-19 18:59:00 +0000344 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
jljustend18d8a12011-06-28 16:50:26 +0000345 SerialPortLib|EmulatorPkg/Library/DxeEmuStdErrSerialPortLib/DxeEmuStdErrSerialPortLib.inf
andrewfish949f3882011-05-11 18:31:20 +0000346 }
347
andrewfish1ef41202011-06-21 23:41:31 +0000348 MdeModulePkg/Universal/Metronome/Metronome.inf
jljustenbb89ec12011-06-28 16:47:23 +0000349 EmulatorPkg/RealTimeClockRuntimeDxe/RealTimeClock.inf
350 EmulatorPkg/ResetRuntimeDxe/Reset.inf
andrewfish949f3882011-05-11 18:31:20 +0000351 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
jljustenbb89ec12011-06-28 16:47:23 +0000352 EmulatorPkg/FvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
andrewfish949f3882011-05-11 18:31:20 +0000353 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
354 MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
355 MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
jljustenbb89ec12011-06-28 16:47:23 +0000356 EmulatorPkg/EmuThunkDxe/EmuThunk.inf
357 EmulatorPkg/CpuRuntimeDxe/Cpu.inf
andrewfish949f3882011-05-11 18:31:20 +0000358 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
jljustenbb89ec12011-06-28 16:47:23 +0000359 EmulatorPkg/MiscSubClassPlatformDxe/MiscSubClassDriver.inf
360 EmulatorPkg/TimerDxe/Timer.inf
andrewfish949f3882011-05-11 18:31:20 +0000361
362
363 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
364 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
365 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
366 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
367 MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
368 MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
369 MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
andrewfish7e284ac2011-06-08 02:34:12 +0000370 EmbeddedPkg/SerialDxe/SerialDxe.inf {
371 <LibraryClasses>
372 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
jljustend18d8a12011-06-28 16:50:26 +0000373 SerialPortLib|EmulatorPkg/Library/DxeEmuSerialPortLib/DxeEmuSerialPortLib.inf
andrewfish7e284ac2011-06-08 02:34:12 +0000374 }
jljustend18d8a12011-06-28 16:50:26 +0000375
andrewfish949f3882011-05-11 18:31:20 +0000376 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
377 IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf
jljustend18d8a12011-06-28 16:50:26 +0000378 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
andrewfish5dcda292011-06-17 16:18:14 +0000379 #{
jljustend18d8a12011-06-28 16:50:26 +0000380 # <LibraryClasses>
jljustenbb89ec12011-06-28 16:47:23 +0000381 # NULL|EmulatorPkg/Library/DevicePathTextLib/DevicePathTextLib.inf
andrewfish5dcda292011-06-17 16:18:14 +0000382 #}
jljustend18d8a12011-06-28 16:50:26 +0000383
andrewfish949f3882011-05-11 18:31:20 +0000384 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
385 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
386 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
387 MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
388 MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
389 MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
390 IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf
391
jljustenbb89ec12011-06-28 16:47:23 +0000392 EmulatorPkg/EmuBusDriverDxe/EmuBusDriverDxe.inf
393 EmulatorPkg/EmuGopDxe/EmuGopDxe.inf
394 EmulatorPkg/EmuSimpleFileSystemDxe/EmuSimpleFileSystemDxe.inf
395 EmulatorPkg/EmuBlockIoDxe/EmuBlockIoDxe.inf
396 EmulatorPkg/EmuSnpDxe/EmuSnpDxe.inf
andrewfish949f3882011-05-11 18:31:20 +0000397
andrewfish949f3882011-05-11 18:31:20 +0000398 MdeModulePkg/Application/HelloWorld/HelloWorld.inf
399
400 #
401 # Network stack drivers
402 #
andrewfish949f3882011-05-11 18:31:20 +0000403 MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf
404 MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf
405 MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf
406 MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf
407 MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
408 MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf
409 MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf
410 MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
411 MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
412 MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
413
414 MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
415 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
416 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
417 MdeModulePkg/Universal/PrintDxe/PrintDxe.inf
418 MdeModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf {
419 <LibraryClasses>
420 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
421 }
422
jljusten72a44be2011-05-15 17:23:33 +0000423!if $(BUILD_FAT)
andrewfish949f3882011-05-11 18:31:20 +0000424 FatPkg/EnhancedFatDxe/Fat.inf
425!endif
jljusten72a44be2011-05-15 17:23:33 +0000426
427!if $(BUILD_NEW_SHELL)
428 ShellPkg/Application/Shell/Shell.inf {
429 <LibraryClasses>
430 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
431 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
432 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
433 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
434 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
435 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
436 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
437 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
438 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
439 FileHandleLib|ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
440 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
441 SortLib|ShellPkg/Library/UefiSortLib/UefiSortLib.inf
442 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
jljustenbb89ec12011-06-28 16:47:23 +0000443 MemoryAllocationLib|EmulatorPkg/Library/GuardUefiMemoryAllocationLib/GuardUefiMemoryAllocationLib.inf
andrewfish3f2035e2011-06-28 18:12:41 +0000444# SafeBlockIoLib|ShellPkg/Library/SafeBlockIoLib/SafeBlockIoLib.inf
445# SafeOpenProtocolLib|ShellPkg/Library/SafeOpenProtocolLib/SafeOpenProtocolLib.inf
andrewfish5dcda292011-06-17 16:18:14 +0000446
jljusten72a44be2011-05-15 17:23:33 +0000447 <PcdsFixedAtBuild>
448 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
449 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
450 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
451 }
452!endif
453
jljusten53a68132011-06-20 21:58:22 +0000454!endif
455