Nt32Pkg.dsc revision cbc6b5e54599c7391ece99ad3c5313f4dd4ddda6
1## @file
2# EFI/Framework Emulation Platform with UEFI HII interface supported.
3#
4# The Emulation Platform can be used to debug individual modules, prior to creating
5#    a real platform. This also provides an example for how an DSC is created.
6#
7# Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
8#
9#    This program and the accompanying materials
10#    are licensed and made available under the terms and conditions of the BSD License
11#    which accompanies this distribution. The full text of the license may be found at
12#    http://opensource.org/licenses/bsd-license.php
13#
14#    THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
15#    WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
16#
17##
18
19################################################################################
20#
21# Defines Section - statements that will be processed to create a Makefile.
22#
23################################################################################
24[Defines]
25  PLATFORM_NAME                  = NT32
26  PLATFORM_GUID                  = EB216561-961F-47EE-9EF9-CA426EF547C2
27  PLATFORM_VERSION               = 0.4
28  DSC_SPECIFICATION              = 0x00010005
29  OUTPUT_DIRECTORY               = Build/NT32
30  SUPPORTED_ARCHITECTURES        = IA32
31  BUILD_TARGETS                  = DEBUG|RELEASE
32  SKUID_IDENTIFIER               = DEFAULT
33  FLASH_DEFINITION               = Nt32Pkg/Nt32Pkg.fdf
34
35  #
36  # Defines for default states.  These can be changed on the command line.
37  # -D FLAG=VALUE
38  #
39  DEFINE SECURE_BOOT_ENABLE      = FALSE
40
41################################################################################
42#
43# SKU Identification section - list of all SKU IDs supported by this
44#                              Platform.
45#
46################################################################################
47[SkuIds]
48  0|DEFAULT              # The entry: 0|DEFAULT is reserved and always required.
49
50################################################################################
51#
52# Library Class section - list of all Library Classes needed by this Platform.
53#
54################################################################################
55[LibraryClasses]
56  #
57  # Entry point
58  #
59  PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
60  PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
61  DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
62  UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
63  UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
64  #
65  # Basic
66  #
67  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
68  SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
69  PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
70  CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
71  IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
72  PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
73  PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
74  PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
75  CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
76  PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
77  PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
78  #
79  # UEFI & PI
80  #
81  UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
82  UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
83  UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
84  UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
85  UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
86  HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
87  DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
88  UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
89  PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
90  PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
91  DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
92  DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
93  
94  #
95  # Generic Modules
96  #
97  UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
98  UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
99  NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
100  IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
101  UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
102  DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
103  OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
104  GenericBdsLib|IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf
105  SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
106  TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
107  SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
108  CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
109  #
110  # Platform
111  #
112  PlatformBdsLib|Nt32Pkg/Library/Nt32BdsLib/Nt32BdsLib.inf
113  #
114  # Misc
115  #
116  DebugLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
117  DebugPrintErrorLevelLib|MdeModulePkg/Library/DxeDebugPrintErrorLevelLib/DxeDebugPrintErrorLevelLib.inf
118  PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
119  DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
120  CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf
121  
122!if $(SECURE_BOOT_ENABLE) == TRUE
123  PlatformSecureLib|Nt32Pkg/Library/PlatformSecureLib/PlatformSecureLib.inf
124  IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
125  OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
126!endif
127
128[LibraryClasses.common.USER_DEFINED]
129  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
130  PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
131  ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
132  OemHookStatusCodeLib|Nt32Pkg/Library/PeiNt32OemHookStatusCodeLib/PeiNt32OemHookStatusCodeLib.inf
133  MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
134  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
135
136[LibraryClasses.common.PEIM,LibraryClasses.common.PEI_CORE]
137  #
138  # PEI phase common
139  #
140  HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
141  MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
142  ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
143  ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
144  BaseMemoryLib|MdePkg/Library/BaseMemoryLibOptPei/BaseMemoryLibOptPei.inf
145  IoLib|MdePkg/Library/PeiIoLibCpuIo/PeiIoLibCpuIo.inf
146  PeCoffGetEntryPointLib|Nt32Pkg/Library/Nt32PeiPeCoffGetEntryPointLib/Nt32PeiPeCoffGetEntryPointLib.inf
147  PeCoffExtraActionLib|Nt32Pkg/Library/PeiNt32PeCoffExtraActionLib/PeiNt32PeCoffExtraActionLib.inf
148  DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
149
150[LibraryClasses.common.PEI_CORE]
151  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
152  OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
153
154[LibraryClasses.common.PEIM]
155  PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
156  OemHookStatusCodeLib|Nt32Pkg/Library/PeiNt32OemHookStatusCodeLib/PeiNt32OemHookStatusCodeLib.inf
157!if $(SECURE_BOOT_ENABLE) == TRUE  
158  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
159!endif
160
161[LibraryClasses.common]
162  #
163  # DXE phase common
164  #
165  BaseMemoryLib|MdePkg/Library/BaseMemoryLibOptDxe/BaseMemoryLibOptDxe.inf
166  HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
167  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
168  MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
169  ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
170  OemHookStatusCodeLib|Nt32Pkg/Library/DxeNt32OemHookStatusCodeLib/DxeNt32OemHookStatusCodeLib.inf
171  PeCoffExtraActionLib|Nt32Pkg/Library/DxeNt32PeCoffExtraActionLib/DxeNt32PeCoffExtraActionLib.inf
172  ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
173  WinNtLib|Nt32Pkg/Library/DxeWinNtLib/DxeWinNtLib.inf
174!if $(SECURE_BOOT_ENABLE) == TRUE
175  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
176!endif
177
178[LibraryClasses.common.DXE_CORE]
179  HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
180  MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
181  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
182
183[LibraryClasses.common.DXE_SMM_DRIVER]
184  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
185
186[LibraryClasses.common.UEFI_DRIVER]
187  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
188
189[LibraryClasses.common.UEFI_APPLICATION]
190  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
191  PrintLib|MdeModulePkg/Library/DxePrintLibPrint2Protocol/DxePrintLibPrint2Protocol.inf
192  
193[LibraryClasses.common.DXE_RUNTIME_DRIVER]
194  #
195  # Runtime
196  #
197!if $(SECURE_BOOT_ENABLE) == TRUE
198  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
199!endif
200
201################################################################################
202#
203# Pcd Section - list of all EDK II PCD Entries defined by this Platform
204#
205################################################################################
206[PcdsFeatureFlag]
207  gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|FALSE
208  gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE
209  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst|FALSE
210  gEfiMdeModulePkgTokenSpaceGuid.PcdVariableCollectStatistics|TRUE
211
212[PcdsFixedAtBuild]
213  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizeNonPopulateCapsule|0x0
214  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizePopulateCapsule|0x0
215  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000040
216  gEfiNt32PkgTokenSpaceGuid.PcdWinNtFirmwareFdSize|0x2a0000
217  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x1f
218  gEfiNt32PkgTokenSpaceGuid.PcdWinNtFirmwareVolume|L"..\\Fv\\Nt32.fd"
219  gEfiNt32PkgTokenSpaceGuid.PcdWinNtFirmwareBlockSize|0x10000
220  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x0f
221  gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
222!if $(SECURE_BOOT_ENABLE) == TRUE
223  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
224!endif
225
226!if $(SECURE_BOOT_ENABLE) == TRUE
227  # override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
228  gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x05
229  gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x05
230  gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x05
231!endif
232
233################################################################################
234#
235# Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
236#
237################################################################################
238[PcdsDynamicDefault.common.DEFAULT]
239  gEfiNt32PkgTokenSpaceGuid.PcdWinNtSerialPort|L"COM1!COM2"|VOID*|20
240  gEfiNt32PkgTokenSpaceGuid.PcdWinNtFileSystem|L".!..\..\..\..\EdkShellBinPkg\Bin\Ia32\Apps"|VOID*|106
241  gEfiNt32PkgTokenSpaceGuid.PcdWinNtGop|L"UGA Window 1!UGA Window 2"|VOID*|52
242  gEfiNt32PkgTokenSpaceGuid.PcdWinNtConsole|L"Bus Driver Console Window"|VOID*|52
243  gEfiNt32PkgTokenSpaceGuid.PcdWinNtVirtualDisk|L"FW;40960;512"|VOID*|26
244  gEfiNt32PkgTokenSpaceGuid.PcdWinNtMemorySize|L"64!64"|VOID*|12
245  gEfiNt32PkgTokenSpaceGuid.PcdWinNtPhysicalDisk|L"a:RW;2880;512!d:RO;307200;2048!j:RW;262144;512"|VOID*|100
246  gEfiNt32PkgTokenSpaceGuid.PcdWinNtUga|L"UGA Window 1!UGA Window 2"|VOID*|52
247
248  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
249  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
250  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0
251
252[PcdsDynamicHii.common.DEFAULT]
253  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupConOutColumn|L"SetupConsoleConfig"|gEfiGlobalVariableGuid|0x0|80
254  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdSetupConOutRow|L"SetupConsoleConfig"|gEfiGlobalVariableGuid|0x4|25
255  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|10
256  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel|L"HwErrRecSupport"|gEfiGlobalVariableGuid|0x0|1
257
258###################################################################################################
259#
260# Components Section - list of the modules and components that will be processed by compilation
261#                      tools and the EDK II tools to generate PE32/PE32+/Coff image files.
262#
263# Note: The EDK II DSC file is not used to specify how compiled binary images get placed
264#       into firmware volume images. This section is just a list of modules to compile from
265#       source into UEFI-compliant binaries.
266#       It is the FDF file that contains information on combining binary files into firmware
267#       volume images, whose concept is beyond UEFI and is described in PI specification.
268#       Binary modules do not need to be listed in this section, as they should be
269#       specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),
270#       Logo (Logo.bmp), and etc.
271#       There may also be modules listed in this section that are not required in the FDF file,
272#       When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
273#       generated for it, but the binary will not be put into any firmware volume.
274#
275###################################################################################################
276[Components.IA32]
277  ##
278  #  SEC Phase modules
279  ##
280  Nt32Pkg/Sec/SecMain.inf
281
282  ##
283  #  PEI Phase modules
284  ##
285  MdeModulePkg/Core/Pei/PeiMain.inf
286  MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
287    <LibraryClasses>
288      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
289  }
290  MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
291  MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
292  Nt32Pkg/WinNtOemHookStatusCodeHandlerPei/WinNtOemHookStatusCodeHandlerPei.inf
293  Nt32Pkg/BootModePei/BootModePei.inf
294  Nt32Pkg/StallPei/StallPei.inf
295  Nt32Pkg/WinNtFlashMapPei/WinNtFlashMapPei.inf
296  
297!if $(SECURE_BOOT_ENABLE) == TRUE
298  SecurityPkg/VariableAuthenticated/Pei/VariablePei.inf
299!else
300  MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
301!endif
302
303  Nt32Pkg/WinNtAutoScanPei/WinNtAutoScanPei.inf
304  Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf
305  Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocolPei.inf
306  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
307  ##
308  #  DXE Phase modules
309  ##
310  MdeModulePkg/Core/Dxe/DxeMain.inf {
311    <LibraryClasses>
312      NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf
313    <BuildOptions>
314      *_*_IA32_CC_FLAGS =
315  }
316
317  MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
318    <LibraryClasses>
319      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
320  }
321  Nt32Pkg/MetronomeDxe/MetronomeDxe.inf
322  Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
323  Nt32Pkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
324  MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
325  Nt32Pkg/FvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
326  MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf  {
327    <LibraryClasses>
328!if $(SECURE_BOOT_ENABLE) == TRUE
329      NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
330!endif 
331  }
332  MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
333  MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
334  MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
335  Nt32Pkg/WinNtThunkDxe/WinNtThunkDxe.inf
336  Nt32Pkg/CpuRuntimeDxe/CpuRuntimeDxe.inf
337  MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
338  Nt32Pkg/MiscSubClassPlatformDxe/MiscSubClassPlatformDxe.inf
339  Nt32Pkg/TimerDxe/TimerDxe.inf
340  MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
341  MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
342  Nt32Pkg/WinNtOemHookStatusCodeHandlerDxe/WinNtOemHookStatusCodeHandlerDxe.inf
343!if $(SECURE_BOOT_ENABLE) == TRUE
344  SecurityPkg/VariableAuthenticated/RuntimeDxe/VariableRuntimeDxe.inf 
345  SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
346!else
347  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
348!endif
349  MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
350  MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
351  MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
352  MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
353  MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf {
354    <LibraryClasses>
355      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
356  }
357  MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf {
358    <LibraryClasses>
359      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
360  }
361  MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf {
362    <LibraryClasses>
363      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
364  }
365  MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
366  MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
367  MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
368  MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
369  MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
370  MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf     ##This driver follows UEFI specification definition
371  MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf    ##This driver follows UEFI specification definition
372  IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf
373  Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriverDxe.inf {
374    <LibraryClasses>
375      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
376  }
377  Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIoDxe.inf
378  Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIoDxe.inf
379  Nt32Pkg/WinNtGopDxe/WinNtGopDxe.inf
380  Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystemDxe.inf
381  MdeModulePkg/Application/HelloWorld/HelloWorld.inf
382
383  #
384  # Network stack drivers
385  # To test network drivers, need network Io driver(SnpNt32Io.dll), please refer to NETWORK-IO Subproject.
386  #
387  MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf
388  MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf
389  MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf
390  MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf
391  MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
392  MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf
393  MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf
394  MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
395  MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
396  MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
397  MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
398  Nt32Pkg/SnpNt32Dxe/SnpNt32Dxe.inf
399
400  MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf
401
402  IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf
403  MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
404  MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
405  MdeModulePkg/Universal/PrintDxe/PrintDxe.inf
406  MdeModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf {
407    <LibraryClasses>
408      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
409  }
410  MdeModulePkg/Application/VariableInfo/VariableInfo.inf
411
412  MdeModulePkg/Universal/PlatformDriOverrideDxe/PlatformDriOverrideDxe.inf
413
414###################################################################################################
415#
416# BuildOptions Section - Define the module specific tool chain flags that should be used as
417#                        the default flags for a module. These flags are appended to any 
418#                        standard flags that are defined by the build process. They can be 
419#                        applied for any modules or only those modules with the specific 
420#                        module style (EDK or EDKII) specified in [Components] section.
421#
422###################################################################################################
423[BuildOptions]
424  DEBUG_*_IA32_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000 /ALIGN:4096 /FILEALIGN:4096 /SUBSYSTEM:CONSOLE
425  RELEASE_*_IA32_DLINK_FLAGS = /ALIGN:4096 /FILEALIGN:4096
426  *_*_IA32_CC_FLAGS = /D EFI_SPECIFICATION_VERSION=0x0002000A /D TIANO_RELEASE_VERSION=0x00080006
427
428#############################################################################################################
429# NOTE:
430# The following [Libraries.IA32] section is for building EDK module under the EDKII tool chain.
431# If you want build EDK module for Nt32 platform, please uncomment [Libraries.IA32] section and
432# libraries used by that EDK module.
433# Currently, Nt32 platform do not has any EDK style module
434#
435#
436#[Libraries.IA32]
437  #
438  # Libraries common to PEI and DXE
439  #
440  #  EdkCompatibilityPkg/Foundation/Efi/Guid/EfiGuidLib.inf
441  #  EdkCompatibilityPkg/Foundation/Framework/Guid/EdkFrameworkGuidLib.inf
442  #  EdkCompatibilityPkg/Foundation/Guid/EdkGuidLib.inf
443  #  EdkCompatibilityPkg/Foundation/Library/EfiCommonLib/EfiCommonLib.inf
444  #  EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/CpuIA32Lib.inf
445  #  EdkCompatibilityPkg/Foundation/Cpu/Itanium/CpuIa64Lib/CpuIA64Lib.inf
446  #  EdkCompatibilityPkg/Foundation/Library/CustomizedDecompress/CustomizedDecompress.inf
447  #  EdkCompatibilityPkg/Foundation/Library/CompilerStub/CompilerStubLib.inf
448  #  EdkCompatibilityPkg/Foundation/Library/Dxe/Hob/HobLib.inf
449
450  #
451  # PEI libraries
452  #
453  #  EdkCompatibilityPkg/Foundation/Framework/Ppi/EdkFrameworkPpiLib.inf
454  #  EdkCompatibilityPkg/Foundation/Ppi/EdkPpiLib.inf
455  #  EdkCompatibilityPkg/Foundation/Library/Pei/PeiLib/PeiLib.inf
456  #  EdkCompatibilityPkg/Foundation/Library/Pei/Hob/PeiHobLib.inf
457
458  #
459  # DXE libraries
460  #
461  #  EdkCompatibilityPkg/Foundation/Core/Dxe/ArchProtocol/ArchProtocolLib.inf
462  #  EdkCompatibilityPkg/Foundation/Efi/Protocol/EfiProtocolLib.inf
463  #  EdkCompatibilityPkg/Foundation/Framework/Protocol/EdkFrameworkProtocolLib.inf
464  #  EdkCompatibilityPkg/Foundation/Protocol/EdkProtocolLib.inf
465  #  EdkCompatibilityPkg/Foundation/Library/Dxe/EfiDriverLib/EfiDriverLib.inf
466  #  EdkCompatibilityPkg/Foundation/Library/RuntimeDxe/EfiRuntimeLib/EfiRuntimeLib.inf
467  #  EdkCompatibilityPkg/Foundation/Library/Dxe/Graphics/Graphics.inf
468  #  EdkCompatibilityPkg/Foundation/Library/Dxe/EfiIfrSupportLib/EfiIfrSupportLib.inf
469  #  EdkCompatibilityPkg/Foundation/Library/Dxe/Print/PrintLib.inf
470  #  EdkCompatibilityPkg/Foundation/Library/Dxe/EfiScriptLib/EfiScriptLib.inf
471  #  EdkCompatibilityPkg/Foundation/Library/Dxe/EfiUiLib/EfiUiLib.inf
472
473  #
474  # Print/Graphics Library consume SetupBrowser Print Protocol
475  #
476  #  EdkCompatibilityPkg/Foundation/Library/Dxe/PrintLite/PrintLib.inf
477  #  EdkCompatibilityPkg/Foundation/Library/Dxe/GraphicsLite/Graphics.inf
478
479