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