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