1 | ## @file
|
---|
2 | # Cryptographic Library Package for UEFI Security Implementation.
|
---|
3 | # PEIM, DXE Driver, and SMM Driver with all crypto services enabled.
|
---|
4 | #
|
---|
5 | # Copyright (c) 2009 - 2022, Intel Corporation. All rights reserved.<BR>
|
---|
6 | # Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>
|
---|
7 | # Copyright (c) 2022, Loongson Technology Corporation Limited. All rights reserved.<BR>
|
---|
8 | # SPDX-License-Identifier: BSD-2-Clause-Patent
|
---|
9 | #
|
---|
10 | ##
|
---|
11 |
|
---|
12 | ################################################################################
|
---|
13 | #
|
---|
14 | # Defines Section - statements that will be processed to create a Makefile.
|
---|
15 | #
|
---|
16 | ################################################################################
|
---|
17 | [Defines]
|
---|
18 | PLATFORM_NAME = CryptoPkg
|
---|
19 | PLATFORM_GUID = E1063286-6C8C-4c25-AEF0-67A9A5B6E6B6
|
---|
20 | PLATFORM_VERSION = 0.98
|
---|
21 | DSC_SPECIFICATION = 0x00010005
|
---|
22 | SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64|RISCV64|LOONGARCH64
|
---|
23 | BUILD_TARGETS = DEBUG|RELEASE|NOOPT
|
---|
24 | SKUID_IDENTIFIER = DEFAULT
|
---|
25 |
|
---|
26 | #
|
---|
27 | # Flavor of PEI, DXE, SMM modules to build.
|
---|
28 | # Must be one of ALL, NONE, MIN_PEI, MIN_DXE_MIN_SMM, TARGET_UINT_TESTS.
|
---|
29 | # Default is ALL that is used for package build verification.
|
---|
30 | # ALL - Build PEIM, DXE, and SMM drivers. Protocols and PPIs
|
---|
31 | # publish all services.
|
---|
32 | # NONE - Build PEIM, DXE, and SMM drivers. Protocols and PPIs
|
---|
33 | # publish no services. Used to verify compiler/linker
|
---|
34 | # optimizations are working correctly.
|
---|
35 | # MIN_PEI - Build PEIM with PPI that publishes minimum required
|
---|
36 | # services.
|
---|
37 | # MIN_DXE_MIN_SMM - Build DXE and SMM drivers with Protocols that publish
|
---|
38 | # minimum required services.
|
---|
39 | # TARGET_UNIT_TESTS - Build target-based unit tests
|
---|
40 | #
|
---|
41 | DEFINE CRYPTO_SERVICES = ALL
|
---|
42 | !if $(CRYPTO_SERVICES) IN "ALL NONE MIN_PEI MIN_DXE_MIN_SMM TARGET_UNIT_TESTS"
|
---|
43 | !else
|
---|
44 | !error CRYPTO_SERVICES must be set to one of ALL NONE MIN_PEI MIN_DXE_MIN_SMM TARGET_UNIT_TESTS.
|
---|
45 | !endif
|
---|
46 |
|
---|
47 | #
|
---|
48 | # Define different OUTPUT_DIRECTORY for each CRYPTO_SERVICES profile
|
---|
49 | #
|
---|
50 | !if $(CRYPTO_SERVICES) == ALL
|
---|
51 | OUTPUT_DIRECTORY = Build/CryptoPkg/All
|
---|
52 | !endif
|
---|
53 | !if $(CRYPTO_SERVICES) == NONE
|
---|
54 | OUTPUT_DIRECTORY = Build/CryptoPkg/None
|
---|
55 | !endif
|
---|
56 | !if $(CRYPTO_SERVICES) == MIN_PEI
|
---|
57 | OUTPUT_DIRECTORY = Build/CryptoPkg/MinPei
|
---|
58 | !endif
|
---|
59 | !if $(CRYPTO_SERVICES) == MIN_DXE_MIN_SMM
|
---|
60 | OUTPUT_DIRECTORY = Build/CryptoPkg/MinDxeMinSmm
|
---|
61 | !endif
|
---|
62 | !if $(CRYPTO_SERVICES) == TARGET_UNIT_TESTS
|
---|
63 | OUTPUT_DIRECTORY = Build/CryptoPkg/TagetUnitTests
|
---|
64 | !endif
|
---|
65 |
|
---|
66 | #
|
---|
67 | # Define FILE_GUID names/values for CryptoPei, CryptopDxe, and CryptoSmm
|
---|
68 | # drivers that are linked with different OpensslLib instances
|
---|
69 | #
|
---|
70 | DEFINE PEI_CRYPTO_GUID = C693A250-6B36-49B9-B7F3-7283F8136A72
|
---|
71 | DEFINE PEI_STD_GUID = EBD49F5C-6D8B-40D1-A56D-9AFA485A8661
|
---|
72 | DEFINE PEI_FULL_GUID = D51FCE59-6860-49C0-9B35-984470735D17
|
---|
73 | DEFINE PEI_STD_ACCEL_GUID = DCC9CB49-7BE2-47C6-864E-6DCC932360F9
|
---|
74 | DEFINE PEI_FULL_ACCEL_GUID = A10827AD-7598-4955-B661-52EE2B62B057
|
---|
75 | DEFINE DXE_CRYPTO_GUID = 31C17C54-325D-47D5-8622-888098F10E44
|
---|
76 | DEFINE DXE_STD_GUID = ADD6D05A-52A2-437B-98E7-DBFDA89352CD
|
---|
77 | DEFINE DXE_FULL_GUID = AA83B296-F6EA-447F-B013-E80E98629CF8
|
---|
78 | DEFINE DXE_STD_ACCEL_GUID = 9FBDAD27-910C-4229-9EFF-A93BB5FE18C6
|
---|
79 | DEFINE DXE_FULL_ACCEL_GUID = 41A491D1-A972-468B-A299-DABF415A43B7
|
---|
80 | DEFINE SMM_CRYPTO_GUID = 1A1C9E13-5722-4636-AB73-31328EDE8BAF
|
---|
81 | DEFINE SMM_STD_GUID = E4D7D1E3-E886-4412-A442-EFD6F2502DD3
|
---|
82 | DEFINE SMM_FULL_GUID = 1930CE7E-6598-48ED-8AB1-EBE7E85EC254
|
---|
83 | DEFINE SMM_STD_ACCEL_GUID = 828959D3-CEA6-4B79-B1FC-5AFA0D7F2144
|
---|
84 | DEFINE SMM_FULL_ACCEL_GUID = C1760694-AB3A-4532-8C6D-52D8F86EB1AA
|
---|
85 |
|
---|
86 | !if $(CRYPTO_SERVICES) == TARGET_UNIT_TESTS
|
---|
87 | !include UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc
|
---|
88 | !endif
|
---|
89 |
|
---|
90 | ################################################################################
|
---|
91 | #
|
---|
92 | # Library Class section - list of all Library Classes needed by this Platform.
|
---|
93 | #
|
---|
94 | ################################################################################
|
---|
95 |
|
---|
96 | !include MdePkg/MdeLibs.dsc.inc
|
---|
97 |
|
---|
98 | [LibraryClasses]
|
---|
99 | BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
|
---|
100 | BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
|
---|
101 | DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
|
---|
102 | SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf
|
---|
103 | SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
|
---|
104 | TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
|
---|
105 | RngLib|MdePkg/Library/BaseRngLibNull/BaseRngLibNull.inf
|
---|
106 | PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
|
---|
107 | DebugLib|MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
|
---|
108 | DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
|
---|
109 | OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
|
---|
110 | HashApiLib|CryptoPkg/Library/BaseHashApiLib/BaseHashApiLib.inf
|
---|
111 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
|
---|
112 | IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
|
---|
113 |
|
---|
114 | [LibraryClasses.IA32, LibraryClasses.X64, LibraryClasses.AARCH64]
|
---|
115 | RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf
|
---|
116 |
|
---|
117 | [LibraryClasses.ARM, LibraryClasses.AARCH64]
|
---|
118 | ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
|
---|
119 | #
|
---|
120 | # It is not possible to prevent the ARM compiler for generic intrinsic functions.
|
---|
121 | # This library provides the instrinsic functions generate by a given compiler.
|
---|
122 | # [LibraryClasses.ARM, LibraryClasses.AARCH64] and NULL mean link this library
|
---|
123 | # into all ARM and AARCH64 images.
|
---|
124 | #
|
---|
125 | NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
|
---|
126 |
|
---|
127 | # Add support for stack protector
|
---|
128 | NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
|
---|
129 |
|
---|
130 | [LibraryClasses.ARM]
|
---|
131 | ArmSoftFloatLib|ArmPkg/Library/ArmSoftFloatLib/ArmSoftFloatLib.inf
|
---|
132 |
|
---|
133 | [LibraryClasses.common.SEC]
|
---|
134 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf
|
---|
135 | TlsLib|CryptoPkg/Library/TlsLibNull/TlsLibNull.inf
|
---|
136 |
|
---|
137 | [LibraryClasses.common.PEIM]
|
---|
138 | PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
|
---|
139 | PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
|
---|
140 | PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
|
---|
141 | MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
|
---|
142 | HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
|
---|
143 | PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
|
---|
144 | ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
|
---|
145 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
|
---|
146 | TlsLib|CryptoPkg/Library/TlsLibNull/TlsLibNull.inf
|
---|
147 |
|
---|
148 | [LibraryClasses.IA32.PEIM, LibraryClasses.X64.PEIM]
|
---|
149 | PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
|
---|
150 |
|
---|
151 | [LibraryClasses.common.DXE_DRIVER]
|
---|
152 | UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
|
---|
153 | UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
|
---|
154 | UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
|
---|
155 | MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
|
---|
156 | ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
|
---|
157 | PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
|
---|
158 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
|
---|
159 | TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
|
---|
160 |
|
---|
161 | [LibraryClasses.common.DXE_SMM_DRIVER]
|
---|
162 | UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
|
---|
163 | UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
|
---|
164 | SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
|
---|
165 | MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf
|
---|
166 | MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
|
---|
167 | ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
|
---|
168 | PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
|
---|
169 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
|
---|
170 | TlsLib|CryptoPkg/Library/TlsLibNull/TlsLibNull.inf
|
---|
171 |
|
---|
172 | [LibraryClasses.common.UEFI_APPLICATION]
|
---|
173 | UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
|
---|
174 | UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
|
---|
175 | UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
|
---|
176 | MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
|
---|
177 | ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
|
---|
178 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
|
---|
179 |
|
---|
180 | ################################################################################
|
---|
181 | #
|
---|
182 | # Pcd Section - list of all EDK II PCD Entries defined by this Platform
|
---|
183 | #
|
---|
184 | ################################################################################
|
---|
185 | [PcdsFixedAtBuild]
|
---|
186 | gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f
|
---|
187 | gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
|
---|
188 | gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06
|
---|
189 |
|
---|
190 | #
|
---|
191 | # For ALL and TARGET_UINT_TESTS profiles, enable all non-deprecated families
|
---|
192 | # and services in PcdCryptoServiceFamilyEnable.
|
---|
193 | #
|
---|
194 | !if $(CRYPTO_SERVICES) IN "ALL TARGET_UINT_TESTS"
|
---|
195 | [PcdsFixedAtBuild]
|
---|
196 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.HmacSha256.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
197 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.HmacSha384.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
198 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
199 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Dh.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
200 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Random.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
201 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
202 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha1.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
203 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha256.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
204 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha384.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
205 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha512.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
206 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.X509.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
207 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.GetContextSize | TRUE
|
---|
208 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.Init | TRUE
|
---|
209 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.CbcEncrypt | TRUE
|
---|
210 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.CbcDecrypt | TRUE
|
---|
211 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Arc4.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
212 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sm3.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
213 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Hkdf.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
214 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Tls.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
215 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.TlsSet.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
216 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.TlsGet.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
217 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.RsaPss.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
218 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.ParallelHash.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
219 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.AeadAesGcm.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
220 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Bn.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
221 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Ec.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
222 | !endif
|
---|
223 |
|
---|
224 | #
|
---|
225 | # Enable minimum set of families/services in PcdCryptoServiceFamilyEnable
|
---|
226 | # required by typical PEI phase.
|
---|
227 | #
|
---|
228 | !if $(CRYPTO_SERVICES) == MIN_PEI
|
---|
229 | [PcdsFixedAtBuild]
|
---|
230 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.HmacSha256.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
231 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.HmacSha384.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
232 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha1.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
233 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha256.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
234 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha384.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
235 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha512.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
236 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sm3.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
237 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Services.Pkcs1Verify | TRUE
|
---|
238 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Services.New | TRUE
|
---|
239 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Services.Free | TRUE
|
---|
240 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Services.SetKey | TRUE
|
---|
241 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Services.Pkcs5HashPassword | TRUE
|
---|
242 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.GetContextSize | TRUE
|
---|
243 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.Init | TRUE
|
---|
244 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.CbcEncrypt | TRUE
|
---|
245 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.CbcDecrypt | TRUE
|
---|
246 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Hkdf.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
247 | !endif
|
---|
248 |
|
---|
249 | #
|
---|
250 | # Enable minimum set of families/services in PcdCryptoServiceFamilyEnable
|
---|
251 | # required by typical DXE and SMM phases.
|
---|
252 | #
|
---|
253 | !if $(CRYPTO_SERVICES) == MIN_DXE_MIN_SMM
|
---|
254 | [PcdsFixedAtBuild]
|
---|
255 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.HmacSha256.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
256 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.HmacSha384.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
257 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Services.Pkcs1v2Encrypt | TRUE
|
---|
258 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Services.Pkcs5HashPassword | TRUE
|
---|
259 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Services.Pkcs7Verify | TRUE
|
---|
260 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Services.VerifyEKUsInPkcs7Signature | TRUE
|
---|
261 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Services.Pkcs7GetSigners | TRUE
|
---|
262 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Services.Pkcs7FreeSigners | TRUE
|
---|
263 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Services.AuthenticodeVerify | TRUE
|
---|
264 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Random.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
265 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Services.Pkcs1Verify | TRUE
|
---|
266 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Services.New | TRUE
|
---|
267 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Services.Free | TRUE
|
---|
268 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Services.SetKey | TRUE
|
---|
269 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Rsa.Services.GetPublicKeyFromX509 | TRUE
|
---|
270 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha1.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
271 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha256.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
272 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Sha256.Services.HashAll | FALSE
|
---|
273 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.X509.Services.GetSubjectName | TRUE
|
---|
274 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.X509.Services.GetCommonName | TRUE
|
---|
275 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.X509.Services.GetOrganizationName | TRUE
|
---|
276 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.X509.Services.GetTBSCert | TRUE
|
---|
277 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Tls.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
278 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.TlsSet.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
279 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.TlsGet.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
280 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.GetContextSize | TRUE
|
---|
281 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.Init | TRUE
|
---|
282 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.CbcEncrypt | TRUE
|
---|
283 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Aes.Services.CbcDecrypt | TRUE
|
---|
284 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.AeadAesGcm.Services.Encrypt | TRUE
|
---|
285 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.AeadAesGcm.Services.Decrypt | TRUE
|
---|
286 | gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Hkdf.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
|
---|
287 | !endif
|
---|
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 |
|
---|
308 | #
|
---|
309 | # If profile is TARGET_UNIT_TESTS, then build target-based unit tests
|
---|
310 | # using the OpensslLib, BaseCryptLib, and TlsLib with the largest set of
|
---|
311 | # available services.
|
---|
312 | #
|
---|
313 | !if $(CRYPTO_SERVICES) == TARGET_UNIT_TESTS
|
---|
314 | [Components.IA32, Components.X64, Components.ARM, Components.AARCH64]
|
---|
315 | #
|
---|
316 | # Target based unit tests
|
---|
317 | #
|
---|
318 | CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibShell.inf {
|
---|
319 | <LibraryClasses>
|
---|
320 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFull.inf
|
---|
321 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
|
---|
322 | TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
|
---|
323 | <BuildOptions>
|
---|
324 | MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096 /FILEALIGN:4096 /SUBSYSTEM:CONSOLE
|
---|
325 | MSFT:DEBUG_*_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000
|
---|
326 | MSFT:DEBUG_*_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000
|
---|
327 | MSFT:NOOPT_*_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000
|
---|
328 | }
|
---|
329 |
|
---|
330 | [Components.IA32, Components.X64]
|
---|
331 | CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibShell.inf {
|
---|
332 | <Defines>
|
---|
333 | FILE_GUID = B91B9A95-4D52-4501-A98F-A1711C14ED93
|
---|
334 | <LibraryClasses>
|
---|
335 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf
|
---|
336 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
|
---|
337 | TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
|
---|
338 | <BuildOptions>
|
---|
339 | MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096 /FILEALIGN:4096 /SUBSYSTEM:CONSOLE
|
---|
340 | MSFT:DEBUG_*_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000
|
---|
341 | MSFT:DEBUG_*_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000
|
---|
342 | MSFT:NOOPT_*_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000
|
---|
343 | }
|
---|
344 |
|
---|
345 | [Components.RISCV64]
|
---|
346 | CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibShell.inf {
|
---|
347 | <LibraryClasses>
|
---|
348 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
|
---|
349 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
|
---|
350 | TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
|
---|
351 | }
|
---|
352 | !endif
|
---|
353 |
|
---|
354 | #
|
---|
355 | # If profile is ALL, then do verification build of all library instances.
|
---|
356 | #
|
---|
357 | !if $(CRYPTO_SERVICES) == ALL
|
---|
358 | [Components]
|
---|
359 | #
|
---|
360 | # Build verification of all library instances
|
---|
361 | #
|
---|
362 | CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
|
---|
363 | CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf
|
---|
364 | CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
|
---|
365 | CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
|
---|
366 | CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
|
---|
367 | CryptoPkg/Library/BaseCryptLibMbedTls/BaseCryptLib.inf
|
---|
368 | CryptoPkg/Library/BaseCryptLibMbedTls/SecCryptLib.inf
|
---|
369 | CryptoPkg/Library/BaseCryptLibMbedTls/PeiCryptLib.inf
|
---|
370 | CryptoPkg/Library/BaseCryptLibMbedTls/SmmCryptLib.inf
|
---|
371 | CryptoPkg/Library/BaseCryptLibMbedTls/RuntimeCryptLib.inf
|
---|
372 | CryptoPkg/Library/BaseCryptLibMbedTls/TestBaseCryptLib.inf
|
---|
373 | CryptoPkg/Library/MbedTlsLib/MbedTlsLib.inf
|
---|
374 | CryptoPkg/Library/MbedTlsLib/MbedTlsLibFull.inf
|
---|
375 | CryptoPkg/Library/BaseCryptLibNull/BaseCryptLibNull.inf
|
---|
376 | CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
|
---|
377 | CryptoPkg/Library/TlsLib/TlsLib.inf
|
---|
378 | CryptoPkg/Library/TlsLibNull/TlsLibNull.inf
|
---|
379 | CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
|
---|
380 | CryptoPkg/Library/OpensslLib/OpensslLib.inf
|
---|
381 | CryptoPkg/Library/OpensslLib/OpensslLibFull.inf
|
---|
382 | CryptoPkg/Library/BaseHashApiLib/BaseHashApiLib.inf
|
---|
383 | CryptoPkg/Library/BaseCryptLibOnProtocolPpi/PeiCryptLib.inf
|
---|
384 | CryptoPkg/Library/BaseCryptLibOnProtocolPpi/DxeCryptLib.inf
|
---|
385 | CryptoPkg/Library/BaseCryptLibOnProtocolPpi/SmmCryptLib.inf
|
---|
386 | #
|
---|
387 | # Build verification of target-based unit tests
|
---|
388 | #
|
---|
389 | CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibShell.inf {
|
---|
390 | <LibraryClasses>
|
---|
391 | UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf
|
---|
392 | UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibNull/UnitTestPersistenceLibNull.inf
|
---|
393 | UnitTestResultReportLib|UnitTestFrameworkPkg/Library/UnitTestResultReportLib/UnitTestResultReportLibConOut.inf
|
---|
394 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
|
---|
395 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
|
---|
396 | TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
|
---|
397 | }
|
---|
398 |
|
---|
399 | [Components.IA32, Components.X64]
|
---|
400 | #
|
---|
401 | # Build verification of IA32/X64 specific libraries
|
---|
402 | #
|
---|
403 | CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf
|
---|
404 | CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf
|
---|
405 | !endif
|
---|
406 |
|
---|
407 | #
|
---|
408 | # If profile is ALL or NONE or MIN_PEI, then build CryptoPei with all supported
|
---|
409 | # OpensslLib instances.
|
---|
410 | #
|
---|
411 | !if $(CRYPTO_SERVICES) in "ALL NONE MIN_PEI"
|
---|
412 | [Components]
|
---|
413 | #
|
---|
414 | # CryptoPei with OpensslLib instance without SSL or EC services
|
---|
415 | #
|
---|
416 | CryptoPkg/Driver/CryptoPei.inf {
|
---|
417 | <Defines>
|
---|
418 | FILE_GUID = $(PEI_CRYPTO_GUID)
|
---|
419 | <LibraryClasses>
|
---|
420 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
|
---|
421 | }
|
---|
422 | #
|
---|
423 | # CryptoPei with OpensslLib instance without EC services
|
---|
424 | #
|
---|
425 | CryptoPkg/Driver/CryptoPei.inf {
|
---|
426 | <Defines>
|
---|
427 | FILE_GUID = $(PEI_STD_GUID)
|
---|
428 | <LibraryClasses>
|
---|
429 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
|
---|
430 | }
|
---|
431 | [Components.IA32, Components.X64, Components.ARM, Components.AARCH64]
|
---|
432 | #
|
---|
433 | # CryptoPei with OpensslLib instance with all services
|
---|
434 | #
|
---|
435 | CryptoPkg/Driver/CryptoPei.inf {
|
---|
436 | <Defines>
|
---|
437 | FILE_GUID = $(PEI_FULL_GUID)
|
---|
438 | <LibraryClasses>
|
---|
439 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFull.inf
|
---|
440 | }
|
---|
441 |
|
---|
442 | [Components.IA32, Components.X64]
|
---|
443 | #
|
---|
444 | # CryptoPei with IA32/X64 performance optimized OpensslLib instance without EC services
|
---|
445 | # IA32/X64 assembly optimizations required larger alignments
|
---|
446 | #
|
---|
447 | CryptoPkg/Driver/CryptoPei.inf {
|
---|
448 | <Defines>
|
---|
449 | FILE_GUID = $(PEI_STD_ACCEL_GUID)
|
---|
450 | <LibraryClasses>
|
---|
451 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf
|
---|
452 | <BuildOptions>
|
---|
453 | MSFT:*_*_IA32_DLINK_FLAGS = /ALIGN:64
|
---|
454 | MSFT:*_*_X64_DLINK_FLAGS = /ALIGN:256
|
---|
455 | }
|
---|
456 |
|
---|
457 | #
|
---|
458 | # CryptoPei with IA32/X64 performance optimized OpensslLib instance all services
|
---|
459 | # IA32/X64 assembly optimizations required larger alignments
|
---|
460 | #
|
---|
461 | CryptoPkg/Driver/CryptoPei.inf {
|
---|
462 | <Defines>
|
---|
463 | FILE_GUID = $(PEI_FULL_ACCEL_GUID)
|
---|
464 | <LibraryClasses>
|
---|
465 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf
|
---|
466 | <BuildOptions>
|
---|
467 | MSFT:*_*_IA32_DLINK_FLAGS = /ALIGN:4096
|
---|
468 | MSFT:*_*_X64_DLINK_FLAGS = /ALIGN:4096
|
---|
469 | }
|
---|
470 | !endif
|
---|
471 |
|
---|
472 | #
|
---|
473 | # If profile is ALL or NONE or MIN_DXE_MIN_SMM, then build CryptoDxe and
|
---|
474 | # CryptoSmm using all supported OpensslLib instances.
|
---|
475 | #
|
---|
476 | !if $(CRYPTO_SERVICES) in "ALL NONE MIN_DXE_MIN_SMM"
|
---|
477 | [Components]
|
---|
478 | #
|
---|
479 | # CryptoDxe with OpensslLib instance with no SSL or EC services
|
---|
480 | #
|
---|
481 | CryptoPkg/Driver/CryptoDxe.inf {
|
---|
482 | <Defines>
|
---|
483 | FILE_GUID = $(DXE_CRYPTO_GUID)
|
---|
484 | <LibraryClasses>
|
---|
485 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
|
---|
486 | TlsLib|CryptoPkg/Library/TlsLibNull/TlsLibNull.inf
|
---|
487 | }
|
---|
488 | #
|
---|
489 | # CryptoDxe with OpensslLib instance with no EC services
|
---|
490 | #
|
---|
491 | CryptoPkg/Driver/CryptoDxe.inf {
|
---|
492 | <Defines>
|
---|
493 | FILE_GUID = $(DXE_STD_GUID)
|
---|
494 | <LibraryClasses>
|
---|
495 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
|
---|
496 | }
|
---|
497 | [Components.IA32, Components.X64, Components.ARM, Components.AARCH64]
|
---|
498 | #
|
---|
499 | # CryptoDxe with OpensslLib instance with all services
|
---|
500 | #
|
---|
501 | CryptoPkg/Driver/CryptoDxe.inf {
|
---|
502 | <Defines>
|
---|
503 | FILE_GUID = $(DXE_FULL_GUID)
|
---|
504 | <LibraryClasses>
|
---|
505 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFull.inf
|
---|
506 | }
|
---|
507 |
|
---|
508 | [Components.IA32, Components.X64]
|
---|
509 | #
|
---|
510 | # CryptoDxe with IA32/X64 performance optimized OpensslLib instance with no EC services
|
---|
511 | # with TLS feature enabled.
|
---|
512 | # IA32/X64 assembly optimizations required larger alignments
|
---|
513 | #
|
---|
514 | CryptoPkg/Driver/CryptoDxe.inf {
|
---|
515 | <Defines>
|
---|
516 | FILE_GUID = $(DXE_STD_ACCEL_GUID)
|
---|
517 | <LibraryClasses>
|
---|
518 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf
|
---|
519 | <BuildOptions>
|
---|
520 | MSFT:*_*_IA32_DLINK_FLAGS = /ALIGN:64
|
---|
521 | MSFT:*_*_X64_DLINK_FLAGS = /ALIGN:256
|
---|
522 | }
|
---|
523 | #
|
---|
524 | # CryptoDxe with IA32/X64 performance optimized OpensslLib instance with all services.
|
---|
525 | # IA32/X64 assembly optimizations required larger alignments
|
---|
526 | #
|
---|
527 | CryptoPkg/Driver/CryptoDxe.inf {
|
---|
528 | <Defines>
|
---|
529 | FILE_GUID = $(DXE_FULL_ACCEL_GUID)
|
---|
530 | <LibraryClasses>
|
---|
531 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf
|
---|
532 | <BuildOptions>
|
---|
533 | MSFT:*_*_IA32_DLINK_FLAGS = /ALIGN:4096
|
---|
534 | MSFT:*_*_X64_DLINK_FLAGS = /ALIGN:4096
|
---|
535 | }
|
---|
536 | #
|
---|
537 | # CryptoSmm with OpensslLib instance with no SSL or EC services
|
---|
538 | #
|
---|
539 | CryptoPkg/Driver/CryptoSmm.inf {
|
---|
540 | <Defines>
|
---|
541 | FILE_GUID = $(SMM_CRYPTO_GUID)
|
---|
542 | <LibraryClasses>
|
---|
543 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
|
---|
544 | }
|
---|
545 | #
|
---|
546 | # CryptoSmm with OpensslLib instance with no SSL services
|
---|
547 | #
|
---|
548 | CryptoPkg/Driver/CryptoSmm.inf {
|
---|
549 | <Defines>
|
---|
550 | FILE_GUID = $(SMM_STD_GUID)
|
---|
551 | <LibraryClasses>
|
---|
552 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
|
---|
553 | }
|
---|
554 | #
|
---|
555 | # CryptoSmm with OpensslLib instance with no all services
|
---|
556 | #
|
---|
557 | CryptoPkg/Driver/CryptoSmm.inf {
|
---|
558 | <Defines>
|
---|
559 | FILE_GUID = $(SMM_FULL_GUID)
|
---|
560 | <LibraryClasses>
|
---|
561 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFull.inf
|
---|
562 | }
|
---|
563 | #
|
---|
564 | # CryptoSmm with IA32/X64 performance optimized OpensslLib instance with no EC services
|
---|
565 | # IA32/X64 assembly optimizations required larger alignments
|
---|
566 | #
|
---|
567 | CryptoPkg/Driver/CryptoSmm.inf {
|
---|
568 | <Defines>
|
---|
569 | FILE_GUID = $(SMM_STD_ACCEL_GUID)
|
---|
570 | <LibraryClasses>
|
---|
571 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf
|
---|
572 | <BuildOptions>
|
---|
573 | MSFT:*_*_IA32_DLINK_FLAGS = /ALIGN:64
|
---|
574 | MSFT:*_*_X64_DLINK_FLAGS = /ALIGN:256
|
---|
575 | }
|
---|
576 | #
|
---|
577 | # CryptoSmm with IA32/X64 performance optimized OpensslLib instance with all services
|
---|
578 | # IA32/X64 assembly optimizations required larger alignments
|
---|
579 | #
|
---|
580 | CryptoPkg/Driver/CryptoSmm.inf {
|
---|
581 | <Defines>
|
---|
582 | FILE_GUID = $(SMM_FULL_ACCEL_GUID)
|
---|
583 | <LibraryClasses>
|
---|
584 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf
|
---|
585 | <BuildOptions>
|
---|
586 | MSFT:*_*_IA32_DLINK_FLAGS = /ALIGN:4096
|
---|
587 | MSFT:*_*_X64_DLINK_FLAGS = /ALIGN:4096
|
---|
588 | }
|
---|
589 | !endif
|
---|
590 |
|
---|
591 | [BuildOptions]
|
---|
592 | RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
|
---|
593 | *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES
|
---|