]> git.proxmox.com Git - mirror_edk2.git/blob - CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt
CryptoPkg/OpensslLib: remove OpenSSL version number from OpenSSL-HOWTO.txt
[mirror_edk2.git] / CryptoPkg / Library / OpensslLib / OpenSSL-HOWTO.txt
1
2 =============================================================================
3 Introduction
4 =============================================================================
5 OpenSSL is a well-known open source implementation of SSL/TLS protocols.
6 The core library implements the cryptographic and SSL/TLS functions and
7 also provides various utility functions. The OpenSSL library is widely used
8 in variety of security products development as base crypto provider.
9 (See http://www.openssl.org/ for more information about OpenSSL).
10 UEFI (Unified Extensible Firmware Interface) is a specification detailing
11 the interfaces between OS and platform firmware. Several security features
12 were introduced (e.g. Authenticated Variable Service, Driver Signing, etc)
13 from UEFI 2.2 (http://www.uefi.org/). These security features highly depend
14 on the cryptography.
15 This HOWTO documents OpenSSL building under UEFI/EDKII environment.
16
17 =============================================================================
18 OpenSSL-Version
19 =============================================================================
20 EDKII supports building with the latest release of OpenSSL.
21 NOTE: Only latest release version was fully validated.
22 And no guarantees on build & functionality if using other versions.
23
24 =============================================================================
25 HOW to Install OpenSSL for UEFI Building
26 =============================================================================
27 OpenSSL repository was added as one submodule of EDKII project.
28
29 The user can use the following commands to clone both main EDKII repo and
30 openssl submodule:
31 1) Add the "--recursive" flag to the git clone command:
32 $ git clone --recursive https://github.com/tianocore/edk2
33 or
34 2) Manually initialize and update the submodules after the clone operation
35 on main project:
36 $ git clone https://github.com/tianocore/edk2
37 $ git submodule update --init --recursive
38
39 And use the following combined commands to pull the remote submodule updates
40 (e.g. Updating the new supported OpenSSL release tag):
41 $ git pull --recurse-submodules && \
42 git submodule update --recursive
43
44 =============================================================================
45 About process_files.pl
46 =============================================================================
47 "process_files.pl" is one Perl script which runs the OpenSSL Configure,
48 then processes the resulting file list into our local OpensslLib.inf and
49 OpensslLibCrypto.inf.
50 This only needs to be done once by the maintainer / developer when
51 updating to a new version of OpenSSL (or changing options, etc.).
52 Normal users do not need do this, since the results are already stored in
53 the EDKII git repository for them.