a66faf1c04c0d659ed5deeeb39f2b371798d3b88
[mirror_edk2.git] / CryptoPkg / Library / BaseCryptLib / BaseCryptLib.inf
1 ## @file\r
2 #  Cryptographic Library Instance for DXE_DRIVER.\r
3 #\r
4 #  Caution: This module requires additional review when modified.\r
5 #  This library will have external input - signature.\r
6 #  This external input must be validated carefully to avoid security issues such as\r
7 #  buffer overflow or integer overflow.\r
8 #\r
9 #  Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>\r
10 #  This program and the accompanying materials\r
11 #  are licensed and made available under the terms and conditions of the BSD License\r
12 #  which accompanies this distribution.  The full text of the license may be found at\r
13 #  http://opensource.org/licenses/bsd-license.php\r
14 #\r
15 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
16 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
17 #\r
18 ##\r
19 \r
20 [Defines]\r
21   INF_VERSION                    = 0x00010005\r
22   BASE_NAME                      = BaseCryptLib\r
23   MODULE_UNI_FILE                = BaseCryptLib.uni\r
24   FILE_GUID                      = be3bb803-91b6-4da0-bd91-a8b21c18ca5d\r
25   MODULE_TYPE                    = DXE_DRIVER\r
26   VERSION_STRING                 = 1.0\r
27   LIBRARY_CLASS                  = BaseCryptLib|DXE_DRIVER DXE_CORE UEFI_APPLICATION UEFI_DRIVER\r
28 \r
29 #\r
30 # The following information is for reference only and not required by the build tools.\r
31 #\r
32 #  VALID_ARCHITECTURES           = IA32 X64 IPF ARM AARCH64\r
33 #\r
34 \r
35 [Sources]\r
36   InternalCryptLib.h\r
37   Hash/CryptMd4.c\r
38   Hash/CryptMd5.c\r
39   Hash/CryptSha1.c\r
40   Hash/CryptSha256.c\r
41   Hash/CryptSha512.c\r
42   Hmac/CryptHmacMd5.c\r
43   Hmac/CryptHmacSha1.c\r
44   Cipher/CryptAes.c\r
45   Cipher/CryptTdes.c\r
46   Cipher/CryptArc4.c\r
47   Pk/CryptRsaBasic.c\r
48   Pk/CryptRsaExt.c\r
49   Pk/CryptPkcs7Sign.c\r
50   Pk/CryptPkcs7Verify.c\r
51   Pk/CryptDh.c\r
52   Pk/CryptX509.c\r
53   Pk/CryptAuthenticode.c\r
54   Pk/CryptTs.c\r
55   Pem/CryptPem.c\r
56 \r
57   SysCall/CrtWrapper.c\r
58   SysCall/TimerWrapper.c\r
59   SysCall/BaseMemAllocation.c\r
60 \r
61 [Sources.Ia32]\r
62   Rand/CryptRandTsc.c\r
63 \r
64 [Sources.X64]\r
65   Rand/CryptRandTsc.c\r
66 \r
67 [Sources.IPF]\r
68   Rand/CryptRandItc.c\r
69 \r
70 [Sources.ARM]\r
71   Rand/CryptRand.c\r
72 \r
73 [Sources.AARCH64]\r
74   Rand/CryptRand.c\r
75 \r
76 [Packages]\r
77   MdePkg/MdePkg.dec\r
78   CryptoPkg/CryptoPkg.dec\r
79 \r
80 [LibraryClasses]\r
81   BaseLib\r
82   BaseMemoryLib\r
83   MemoryAllocationLib\r
84   UefiRuntimeServicesTableLib\r
85   DebugLib\r
86   OpensslLib\r
87   IntrinsicLib\r
88   PrintLib\r
89 \r
90 #\r
91 # Remove these [BuildOptions] after this library is cleaned up\r
92 #\r
93 [BuildOptions]\r
94   # suppress the following warnings so we do not break the build with warnings-as-errors:\r
95   #   C4305: truncation from type1 to type2 (Introduced by RFC3161 Timestamp ASN.1 declarations)\r
96   MSFT:*_*_*_CC_FLAGS = /wd4305\r
97   GCC:*_GCC44_IA32_CC_FLAGS = "-D__cdecl=__attribute__((cdecl))" "-D__declspec(t)=__attribute__((t))"\r
98 \r
99   # -JCryptoPkg/Include : To disable the use of the system includes provided by RVCT\r
100   # --diag_remark=1     : Reduce severity of "#1-D: last line of file ends without a newline"\r
101   RVCT:*_*_ARM_CC_FLAGS = -JCryptoPkg/Include --diag_remark=1\r