Patch from open source community for CryptoPkg to allow it to build for ARM using...
[mirror_edk2.git] / CryptoPkg / CryptoPkg.dsc
1 ## @file\r
2 #  Cryptographic Library Package for UEFI Security Implementation.\r
3 #\r
4 #  Copyright (c) 2009 - 2010, 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|EBC|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   PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf\r
42   UefiLib|MdePkg/Library/UefiLib/UefiLib.inf\r
43   DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf\r
44   UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf\r
45   UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf\r
46   UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf\r
47   UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf\r
48   UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf\r
49 \r
50   IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r
51   OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf\r
52 \r
53 [LibraryClasses.ARM]\r
54   #\r
55   # It is not possible to prevent the ARM compiler for generic intrinsic functions.\r
56   # This library provides the instrinsic functions generate by a given compiler.\r
57   # [LibraryClasses.ARM] and NULL mean link this library into all ARM images.\r
58   #\r
59   NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
60 \r
61 [LibraryClasses.common.PEIM]\r
62   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf\r
63 \r
64 [LibraryClasses.common.DXE_DRIVER]\r
65   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
66 \r
67 [LibraryClasses.common.DXE_RUNTIME_DRIVER]\r
68   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf\r
69 \r
70 [LibraryClasses.common.DXE_SAL_DRIVER]\r
71   BaseCryptLib|CryptoPkg/Library/BaseCryptLibRuntimeCryptProtocol/BaseCryptLibRuntimeCryptProtocol.inf\r
72 \r
73 [LibraryClasses.common.UEFI_DRIVER]\r
74   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
75 \r
76 [LibraryClasses.common.UEFI_APPLICATION]\r
77   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
78 \r
79 ################################################################################\r
80 #\r
81 # Pcd Section - list of all EDK II PCD Entries defined by this Platform\r
82 #\r
83 ################################################################################\r
84 [PcdsFeatureFlag]\r
85   gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|TRUE\r
86   gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|TRUE\r
87 \r
88 [PcdsFixedAtBuild]\r
89   gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f\r
90   gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000\r
91   gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06\r
92 \r
93 ###################################################################################################\r
94 #\r
95 # Components Section - list of the modules and components that will be processed by compilation\r
96 #                      tools and the EDK II tools to generate PE32/PE32+/Coff image files.\r
97 #\r
98 # Note: The EDK II DSC file is not used to specify how compiled binary images get placed\r
99 #       into firmware volume images. This section is just a list of modules to compile from\r
100 #       source into UEFI-compliant binaries.\r
101 #       It is the FDF file that contains information on combining binary files into firmware\r
102 #       volume images, whose concept is beyond UEFI and is described in PI specification.\r
103 #       Binary modules do not need to be listed in this section, as they should be\r
104 #       specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),\r
105 #       Logo (Logo.bmp), and etc.\r
106 #       There may also be modules listed in this section that are not required in the FDF file,\r
107 #       When a module listed here is excluded from FDF file, then UEFI-compliant binary will be\r
108 #       generated for it, but the binary will not be put into any firmware volume.\r
109 #\r
110 ###################################################################################################\r
111 [Components]\r
112   CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
113   CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf\r
114   CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf\r
115 \r
116   CryptoPkg/Application/Cryptest/Cryptest.inf\r
117 \r
118   CryptoPkg/CryptRuntimeDxe/CryptRuntimeDxe.inf\r
119 \r
120 [Components.IA32, Components.X64]\r
121   CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf\r
122 \r
123 [Components.IPF]\r
124   CryptoPkg/Library/BaseCryptLibRuntimeCryptProtocol/BaseCryptLibRuntimeCryptProtocol.inf\r