f2670513a65ec157b8e8c85650cd66f07184976b
[mirror_edk2.git] / CryptoPkg / CryptoPkg.dsc
1 ## @file\r
2 #  Cryptographic Library Package for UEFI Security Implementation.\r
3 #\r
4 #  Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>\r
5 #  SPDX-License-Identifier: BSD-2-Clause-Patent\r
6 #\r
7 ##\r
8 \r
9 ################################################################################\r
10 #\r
11 # Defines Section - statements that will be processed to create a Makefile.\r
12 #\r
13 ################################################################################\r
14 [Defines]\r
15   PLATFORM_NAME                  = CryptoPkg\r
16   PLATFORM_GUID                  = E1063286-6C8C-4c25-AEF0-67A9A5B6E6B6\r
17   PLATFORM_VERSION               = 0.98\r
18   DSC_SPECIFICATION              = 0x00010005\r
19   OUTPUT_DIRECTORY               = Build/CryptoPkg\r
20   SUPPORTED_ARCHITECTURES        = IA32|X64|ARM|AARCH64\r
21   BUILD_TARGETS                  = DEBUG|RELEASE|NOOPT\r
22   SKUID_IDENTIFIER               = DEFAULT\r
23 \r
24 ################################################################################\r
25 #\r
26 # Library Class section - list of all Library Classes needed by this Platform.\r
27 #\r
28 ################################################################################\r
29 [LibraryClasses]\r
30   BaseLib|MdePkg/Library/BaseLib/BaseLib.inf\r
31   BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf\r
32   MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
33   PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
34   DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf\r
35   DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf\r
36   PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf\r
37   UefiLib|MdePkg/Library/UefiLib/UefiLib.inf\r
38   DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf\r
39   UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf\r
40   UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf\r
41   UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf\r
42   UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf\r
43   UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf\r
44 \r
45   IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r
46   OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf\r
47 \r
48 [LibraryClasses.ARM, LibraryClasses.AARCH64]\r
49   #\r
50   # It is not possible to prevent the ARM compiler for generic intrinsic functions.\r
51   # This library provides the instrinsic functions generate by a given compiler.\r
52   # [LibraryClasses.ARM, LibraryClasses.AARCH64] and NULL mean link this library\r
53   # into all ARM and AARCH64 images.\r
54   #\r
55   NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
56 \r
57   # Add support for stack protector\r
58   NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf\r
59 \r
60 [LibraryClasses.ARM]\r
61   ArmSoftFloatLib|ArmPkg/Library/ArmSoftFloatLib/ArmSoftFloatLib.inf\r
62 \r
63 [LibraryClasses.common.PEIM]\r
64   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf\r
65 \r
66 [LibraryClasses.common.DXE_DRIVER]\r
67   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
68 \r
69 [LibraryClasses.common.DXE_RUNTIME_DRIVER]\r
70   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf\r
71 \r
72 [LibraryClasses.common.DXE_SMM_DRIVER]\r
73   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf\r
74 \r
75 [LibraryClasses.common.UEFI_DRIVER]\r
76   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
77 \r
78 [LibraryClasses.common.UEFI_APPLICATION]\r
79   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
80 \r
81 ################################################################################\r
82 #\r
83 # Pcd Section - list of all EDK II PCD Entries defined by this Platform\r
84 #\r
85 ################################################################################\r
86 [PcdsFeatureFlag]\r
87   gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|TRUE\r
88   gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|TRUE\r
89 \r
90 [PcdsFixedAtBuild]\r
91   gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f\r
92   gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000\r
93   gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06\r
94 \r
95 ###################################################################################################\r
96 #\r
97 # Components Section - list of the modules and components that will be processed by compilation\r
98 #                      tools and the EDK II tools to generate PE32/PE32+/Coff image files.\r
99 #\r
100 # Note: The EDK II DSC file is not used to specify how compiled binary images get placed\r
101 #       into firmware volume images. This section is just a list of modules to compile from\r
102 #       source into UEFI-compliant binaries.\r
103 #       It is the FDF file that contains information on combining binary files into firmware\r
104 #       volume images, whose concept is beyond UEFI and is described in PI specification.\r
105 #       Binary modules do not need to be listed in this section, as they should be\r
106 #       specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),\r
107 #       Logo (Logo.bmp), and etc.\r
108 #       There may also be modules listed in this section that are not required in the FDF file,\r
109 #       When a module listed here is excluded from FDF file, then UEFI-compliant binary will be\r
110 #       generated for it, but the binary will not be put into any firmware volume.\r
111 #\r
112 ###################################################################################################\r
113 [Components]\r
114   CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
115   CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf\r
116   CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf\r
117   CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r
118   CryptoPkg/Library/TlsLib/TlsLib.inf\r
119   CryptoPkg/Library/OpensslLib/OpensslLib.inf\r
120   CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf\r
121 \r
122 [Components.IA32, Components.X64]\r
123   CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf\r
124 \r
125 [BuildOptions]\r
126   *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES\r