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