ArmPkg: only attempt buildin MmCommunicationDxe for AArch64
[mirror_edk2.git] / SignedCapsulePkg / SignedCapsulePkg.dsc
1 ## @file
2 # This package provides EDKII capsule related support.
3 #
4 # Copyright (c) 2016 - 2019, Intel Corporation. All rights reserved.<BR>
5 #
6 # SPDX-License-Identifier: BSD-2-Clause-Patent
7 #
8 ##
9
10 [Defines]
11 PLATFORM_NAME = SignedCapsulePkg
12 PLATFORM_GUID = 164E16D7-B56A-416D-92FF-0A63983733F6
13 PLATFORM_VERSION = 0.96
14 DSC_SPECIFICATION = 0x00010005
15 OUTPUT_DIRECTORY = Build/SignedCapsulePkg
16 SUPPORTED_ARCHITECTURES = AARCH64|ARM|IA32|X64
17 BUILD_TARGETS = DEBUG|RELEASE|NOOPT
18 SKUID_IDENTIFIER = DEFAULT
19
20 [LibraryClasses]
21 #
22 # Entry point
23 #
24 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
25 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
26 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
27 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
28 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
29 #
30 # Basic
31 #
32 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
33 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
34 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
35 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
36 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
37 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
38 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
39 PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
40 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
41 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
42 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
43 SortLib|MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf
44 #
45 # UEFI & PI
46 #
47 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
48 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
49 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
50 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
51 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
52 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
53 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
54 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
55 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
56 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
57 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
58 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
59 #
60 # Generic Modules
61 #
62 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
63 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
64 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
65 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
66 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
67 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
68 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
69 CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
70 #
71 # Misc
72 #
73 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
74 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
75 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
76 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
77 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
78 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
79 PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
80 ResetSystemLib|MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf
81 SmbusLib|MdePkg/Library/DxeSmbusLib/DxeSmbusLib.inf
82 S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
83 CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf
84 PlatformBootManagerLib|MdeModulePkg/Library/PlatformBootManagerLibNull/PlatformBootManagerLibNull.inf
85 PciHostBridgeLib|MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf
86 TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
87 AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
88 VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
89 FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
90
91 EdkiiSystemCapsuleLib|SignedCapsulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.inf
92 IniParsingLib|SignedCapsulePkg/Library/IniParsingLib/IniParsingLib.inf
93 PlatformFlashAccessLib|SignedCapsulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessLibNull.inf
94
95 [LibraryClasses.ARM]
96 ArmSoftFloatLib|ArmPkg/Library/ArmSoftFloatLib/ArmSoftFloatLib.inf
97
98 [LibraryClasses.AARCH64, LibraryClasses.ARM]
99 #
100 # It is not possible to prevent the ARM compiler for generic intrinsic functions.
101 # This library provides the instrinsic functions generate by a given compiler.
102 # And NULL mean link this library into all ARM images.
103 #
104 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
105
106 # Add support for GCC stack protector
107 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
108
109 [LibraryClasses.common.PEI_CORE]
110 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
111 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
112
113 [LibraryClasses.common.PEIM]
114 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
115 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
116 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf
117 !ifdef CONTINUOUS_INTEGRATION
118 BaseCryptLib|CryptoPkg/Library/BaseCryptLibNull/BaseCryptLibNull.inf
119 !else
120 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
121 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
122 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
123 !endif
124
125 [LibraryClasses.common.DXE_CORE]
126 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
127 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
128
129 [LibraryClasses.common.DXE_DRIVER]
130 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
131 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
132 !ifdef CONTINUOUS_INTEGRATION
133 BaseCryptLib|CryptoPkg/Library/BaseCryptLibNull/BaseCryptLibNull.inf
134 !else
135 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
136 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
137 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
138 !endif
139
140 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf
141
142 [LibraryClasses.common.DXE_RUNTIME_DRIVER]
143 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
144 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
145 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
146 !ifdef CONTINUOUS_INTEGRATION
147 BaseCryptLib|CryptoPkg/Library/BaseCryptLibNull/BaseCryptLibNull.inf
148 !else
149 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
150 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
151 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
152 !endif
153
154 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf
155
156 [LibraryClasses.common.SMM_CORE]
157 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
158 MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf
159 SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf
160 SmmCorePlatformHookLib|MdeModulePkg/Library/SmmCorePlatformHookLibNull/SmmCorePlatformHookLibNull.inf
161 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
162
163 [LibraryClasses.common.DXE_SMM_DRIVER]
164 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
165 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
166 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
167 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
168 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
169 !ifdef CONTINUOUS_INTEGRATION
170 BaseCryptLib|CryptoPkg/Library/BaseCryptLibNull/BaseCryptLibNull.inf
171 !else
172 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
173 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
174 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
175 !endif
176
177 [LibraryClasses.common.UEFI_DRIVER]
178 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
179 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
180 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
181 !ifdef CONTINUOUS_INTEGRATION
182 BaseCryptLib|CryptoPkg/Library/BaseCryptLibNull/BaseCryptLibNull.inf
183 !else
184 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
185 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
186 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
187 !endif
188
189 [LibraryClasses.common.UEFI_APPLICATION]
190 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
191 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
192 DebugLib|MdePkg/Library/UefiDebugLibStdErr/UefiDebugLibStdErr.inf
193 !ifdef CONTINUOUS_INTEGRATION
194 BaseCryptLib|CryptoPkg/Library/BaseCryptLibNull/BaseCryptLibNull.inf
195 !else
196 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
197 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
198 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
199 !endif
200
201 [PcdsFixedAtBuild]
202 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f
203 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06
204
205 [PcdsDynamicExDefault]
206 gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareImageDescriptor|{0x0}|VOID*|0x100
207
208 ###################################################################################################
209 #
210 # Components Section - list of the modules and components that will be processed by compilation
211 # tools and the EDK II tools to generate PE32/PE32+/Coff image files.
212 #
213 # Note: The EDK II DSC file is not used to specify how compiled binary images get placed
214 # into firmware volume images. This section is just a list of modules to compile from
215 # source into UEFI-compliant binaries.
216 # It is the FDF file that contains information on combining binary files into firmware
217 # volume images, whose concept is beyond UEFI and is described in PI specification.
218 # Binary modules do not need to be listed in this section, as they should be
219 # specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),
220 # Logo (Logo.bmp), and etc.
221 # There may also be modules listed in this section that are not required in the FDF file,
222 # When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
223 # generated for it, but the binary will not be put into any firmware volume.
224 #
225 ###################################################################################################
226
227 [Components]
228 SignedCapsulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.inf
229 SignedCapsulePkg/Library/IniParsingLib/IniParsingLib.inf
230 SignedCapsulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessLibNull.inf
231
232 SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReportDxe.inf {
233 <LibraryClasses>
234 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
235 }
236 SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdateDxe.inf {
237 <LibraryClasses>
238 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
239 }
240 SignedCapsulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadPei.inf {
241 <LibraryClasses>
242 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibRsa2048Sha256/FmpAuthenticationLibRsa2048Sha256.inf
243 }
244
245 [BuildOptions]
246 *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES