diff options
author | 2023-10-10 14:33:42 +0000 | |
---|---|---|
committer | 2023-10-10 14:33:42 +0000 | |
commit | af1a266670d040d2f4083ff309d732d648afba2a (patch) | |
tree | 2fc46203448ddcc6f81546d379abfaeb323575e9 /roms/edk2/CryptoPkg/Library/OpensslLib/openssl/NOTES.PERL | |
parent | e02cda008591317b1625707ff8e115a4841aa889 (diff) |
Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec
Diffstat (limited to 'roms/edk2/CryptoPkg/Library/OpensslLib/openssl/NOTES.PERL')
-rw-r--r-- | roms/edk2/CryptoPkg/Library/OpensslLib/openssl/NOTES.PERL | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/roms/edk2/CryptoPkg/Library/OpensslLib/openssl/NOTES.PERL b/roms/edk2/CryptoPkg/Library/OpensslLib/openssl/NOTES.PERL new file mode 100644 index 000000000..42c612772 --- /dev/null +++ b/roms/edk2/CryptoPkg/Library/OpensslLib/openssl/NOTES.PERL @@ -0,0 +1,119 @@ + TOC + === + + - Notes on Perl + - Notes on Perl on Windows + - Notes on Perl modules we use + - Notes on installing a perl module + + Notes on Perl + ------------- + + For our scripts, we rely quite a bit on Perl, and increasingly on + some core Perl modules. These Perl modules are part of the Perl + source, so if you build Perl on your own, you should be set. + + However, if you install Perl as binary packages, the outcome might + differ, and you may have to check that you do get the core modules + installed properly. We do not claim to know them all, but experience + has told us the following: + + - on Linux distributions based on Debian, the package 'perl' will + install the core Perl modules as well, so you will be fine. + - on Linux distributions based on RPMs, you will need to install + 'perl-core' rather than just 'perl'. + + You MUST have at least Perl version 5.10.0 installed. This minimum + requirement is due to our use of regexp backslash sequence \R among + other features that didn't exist in core Perl before that version. + + Notes on Perl on Windows + ------------------------ + + There are a number of build targets that can be viewed as "Windows". + Indeed, there are VC-* configs targeting VisualStudio C, as well as + MinGW and Cygwin. The key recommendation is to use "matching" Perl, + one that matches build environment. For example, if you will build + on Cygwin be sure to use the Cygwin package manager to install Perl. + For MSYS builds use the MSYS provided Perl. For VC-* builds we + recommend ActiveState Perl, available from + http://www.activestate.com/ActivePerl. + + Notes on Perl on VMS + -------------------- + + You will need to install Perl separately. One way to do so is to + download the source from http://perl.org/, unpacking it, reading + README.vms and follow the instructions. Another way is to download a + .PCSI file from http://www.vmsperl.com/ and install it using the + POLYCENTER install tool. + + Notes on Perl modules we use + ---------------------------- + + We make increasing use of Perl modules, and do our best to limit + ourselves to core Perl modules to keep the requirements down. There + are just a few exceptions: + + Test::More We require the minimum version to be 0.96, which + appeared in Perl 5.13.4, because that version was + the first to have all the features we're using. + This module is required for testing only! If you + don't plan on running the tests, you don't need to + bother with this one. + + Text::Template This module is not part of the core Perl modules. + As a matter of fact, the core Perl modules do not + include any templating module to date. + This module is absolutely needed, configuration + depends on it. + + To avoid unnecessary initial hurdles, we have bundled a copy of the + following modules in our source. They will work as fallbacks if + these modules aren't already installed on the system. + + Text::Template + + Notes on installing a perl module + --------------------------------- + + There are a number of ways to install a perl module. In all + descriptions below, Text::Template will serve as an example. + + 1. for Linux users, the easiest is to install with the use of your + favorite package manager. Usually, all you need to do is search + for the module name and to install the package that comes up. + + On Debian based Linux distributions, it would go like this: + + $ apt-cache search Text::Template + ... + libtext-template-perl - perl module to process text templates + $ sudo apt-get install libtext-template-perl + + Perl modules in Debian based distributions use package names like + the name of the module in question, with "lib" prepended and + "-perl" appended. + + 2. Install using CPAN. This is very easy, but usually requires root + access: + + $ cpan -i Text::Template + + Note that this runs all the tests that the module to be installed + comes with. This is usually a smooth operation, but there are + platforms where a failure is indicated even though the actual tests + were successful. Should that happen, you can force an + installation regardless (that should be safe since you've already + seen the tests succeed!): + + $ cpan -f -i Text::Template + + Note: on VMS, you must quote any argument that contains upper case + characters, so the lines above would be: + + $ cpan -i "Text::Template" + + and: + + $ cpan -f -i "Text::Template" |