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