In OpenSSL 1.1, all the public header files will reside directly in the include/openssl/ directory of the source tree, rather than being symbolic links. So we can just add that directory to our include path and not have to worry about copying files around.
In fact, that *already* works on POSIX-compliant systems, because the existing source release tarballs contain the required symlinks — they're not created by the configuration. So we can switch our own include setup now and kill the Install.sh for Linux, and change the Windows Install.cmd script to copy the files there too. When we update to 1.1, we can just kill Install.cmd completely (as well as the patching step too, hopefully.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: David Woodhouse <david.woodho...@intel.com> --- CryptoPkg/CryptoPkg.dec | 1 + CryptoPkg/Include/openssl/README | 1 - CryptoPkg/Library/OpensslLib/Install.cmd | 150 ++++++++++---------- CryptoPkg/Library/OpensslLib/Install.sh | 79 ----------- CryptoPkg/Library/OpensslLib/Patch-HOWTO.txt | 8 +- 5 files changed, 81 insertions(+), 158 deletions(-) diff --git a/CryptoPkg/CryptoPkg.dec b/CryptoPkg/CryptoPkg.dec index 4561f3f..05aad24 100644 --- a/CryptoPkg/CryptoPkg.dec +++ b/CryptoPkg/CryptoPkg.dec @@ -24,6 +24,7 @@ [Includes] Include + Library/OpensslLib/openssl-1.0.2e/include [LibraryClasses] ## @libraryclass Provides basic library functions for cryptographic primitives. diff --git a/CryptoPkg/Include/openssl/README b/CryptoPkg/Include/openssl/README deleted file mode 100644 index 1594010..0000000 --- a/CryptoPkg/Include/openssl/README +++ /dev/null @@ -1 +0,0 @@ -This directory contains all the public include files from the OpenSSL project. diff --git a/CryptoPkg/Library/OpensslLib/Install.cmd b/CryptoPkg/Library/OpensslLib/Install.cmd index b9b6fc6..e441ce5 100755 --- a/CryptoPkg/Library/OpensslLib/Install.cmd +++ b/CryptoPkg/Library/OpensslLib/Install.cmd @@ -1,77 +1,77 @@ cd openssl-1.0.2e -copy e_os2.h ..\..\..\Include\openssl -copy crypto\crypto.h ..\..\..\Include\openssl -copy crypto\opensslv.h ..\..\..\Include\openssl -copy crypto\opensslconf.h ..\..\..\Include\openssl -copy crypto\ebcdic.h ..\..\..\Include\openssl -copy crypto\symhacks.h ..\..\..\Include\openssl -copy crypto\ossl_typ.h ..\..\..\Include\openssl -copy crypto\objects\objects.h ..\..\..\Include\openssl -copy crypto\objects\obj_mac.h ..\..\..\Include\openssl -copy crypto\md4\md4.h ..\..\..\Include\openssl -copy crypto\md5\md5.h ..\..\..\Include\openssl -copy crypto\sha\sha.h ..\..\..\Include\openssl -copy crypto\mdc2\mdc2.h ..\..\..\Include\openssl -copy crypto\hmac\hmac.h ..\..\..\Include\openssl -copy crypto\ripemd\ripemd.h ..\..\..\Include\openssl -copy crypto\whrlpool\whrlpool.h ..\..\..\Include\openssl -copy crypto\des\des.h ..\..\..\Include\openssl -copy crypto\des\des_old.h ..\..\..\Include\openssl -copy crypto\aes\aes.h ..\..\..\Include\openssl -copy crypto\rc2\rc2.h ..\..\..\Include\openssl -copy crypto\rc4\rc4.h ..\..\..\Include\openssl -copy crypto\idea\idea.h ..\..\..\Include\openssl -copy crypto\bf\blowfish.h ..\..\..\Include\openssl -copy crypto\cast\cast.h ..\..\..\Include\openssl -copy crypto\camellia\camellia.h ..\..\..\Include\openssl -copy crypto\seed\seed.h ..\..\..\Include\openssl -copy crypto\modes\modes.h ..\..\..\Include\openssl -copy crypto\bn\bn.h ..\..\..\Include\openssl -copy crypto\ec\ec.h ..\..\..\Include\openssl -copy crypto\rsa\rsa.h ..\..\..\Include\openssl -copy crypto\dsa\dsa.h ..\..\..\Include\openssl -copy crypto\ecdsa\ecdsa.h ..\..\..\Include\openssl -copy crypto\dh\dh.h ..\..\..\Include\openssl -copy crypto\ecdh\ecdh.h ..\..\..\Include\openssl -copy crypto\dso\dso.h ..\..\..\Include\openssl -copy crypto\engine\engine.h ..\..\..\Include\openssl -copy crypto\buffer\buffer.h ..\..\..\Include\openssl -copy crypto\bio\bio.h ..\..\..\Include\openssl -copy crypto\stack\stack.h ..\..\..\Include\openssl -copy crypto\stack\safestack.h ..\..\..\Include\openssl -copy crypto\lhash\lhash.h ..\..\..\Include\openssl -copy crypto\rand\rand.h ..\..\..\Include\openssl -copy crypto\err\err.h ..\..\..\Include\openssl -copy crypto\evp\evp.h ..\..\..\Include\openssl -copy crypto\asn1\asn1.h ..\..\..\Include\openssl -copy crypto\asn1\asn1_mac.h ..\..\..\Include\openssl -copy crypto\asn1\asn1t.h ..\..\..\Include\openssl -copy crypto\pem\pem.h ..\..\..\Include\openssl -copy crypto\pem\pem2.h ..\..\..\Include\openssl -copy crypto\x509\x509.h ..\..\..\Include\openssl -copy crypto\x509\x509_vfy.h ..\..\..\Include\openssl -copy crypto\x509v3\x509v3.h ..\..\..\Include\openssl -copy crypto\conf\conf.h ..\..\..\Include\openssl -copy crypto\conf\conf_api.h ..\..\..\Include\openssl -copy crypto\txt_db\txt_db.h ..\..\..\Include\openssl -copy crypto\pkcs7\pkcs7.h ..\..\..\Include\openssl -copy crypto\pkcs12\pkcs12.h ..\..\..\Include\openssl -copy crypto\comp\comp.h ..\..\..\Include\openssl -copy crypto\ocsp\ocsp.h ..\..\..\Include\openssl -copy crypto\ui\ui.h ..\..\..\Include\openssl -copy crypto\ui\ui_compat.h ..\..\..\Include\openssl -copy crypto\krb5\krb5_asn.h ..\..\..\Include\openssl -copy crypto\cms\cms.h ..\..\..\Include\openssl -copy crypto\pqueue\pqueue.h ..\..\..\Include\openssl -copy crypto\ts\ts.h ..\..\..\Include\openssl -copy crypto\srp\srp.h ..\..\..\Include\openssl -copy crypto\cmac\cmac.h ..\..\..\Include\openssl -copy ssl\ssl.h ..\..\..\Include\openssl -copy ssl\ssl2.h ..\..\..\Include\openssl -copy ssl\ssl3.h ..\..\..\Include\openssl -copy ssl\ssl23.h ..\..\..\Include\openssl -copy ssl\tls1.h ..\..\..\Include\openssl -copy ssl\dtls1.h ..\..\..\Include\openssl -copy ssl\kssl.h ..\..\..\Include\openssl -copy ssl\srtp.h ..\..\..\Include\openssl +copy e_os2.h include\openssl +copy crypto\crypto.h include\openssl +copy crypto\opensslv.h include\openssl +copy crypto\opensslconf.h include\openssl +copy crypto\ebcdic.h include\openssl +copy crypto\symhacks.h include\openssl +copy crypto\ossl_typ.h include\openssl +copy crypto\objects\objects.h include\openssl +copy crypto\objects\obj_mac.h include\openssl +copy crypto\md4\md4.h include\openssl +copy crypto\md5\md5.h include\openssl +copy crypto\sha\sha.h include\openssl +copy crypto\mdc2\mdc2.h include\openssl +copy crypto\hmac\hmac.h include\openssl +copy crypto\ripemd\ripemd.h include\openssl +copy crypto\whrlpool\whrlpool.h include\openssl +copy crypto\des\des.h include\openssl +copy crypto\des\des_old.h include\openssl +copy crypto\aes\aes.h include\openssl +copy crypto\rc2\rc2.h include\openssl +copy crypto\rc4\rc4.h include\openssl +copy crypto\idea\idea.h include\openssl +copy crypto\bf\blowfish.h include\openssl +copy crypto\cast\cast.h include\openssl +copy crypto\camellia\camellia.h include\openssl +copy crypto\seed\seed.h include\openssl +copy crypto\modes\modes.h include\openssl +copy crypto\bn\bn.h include\openssl +copy crypto\ec\ec.h include\openssl +copy crypto\rsa\rsa.h include\openssl +copy crypto\dsa\dsa.h include\openssl +copy crypto\ecdsa\ecdsa.h include\openssl +copy crypto\dh\dh.h include\openssl +copy crypto\ecdh\ecdh.h include\openssl +copy crypto\dso\dso.h include\openssl +copy crypto\engine\engine.h include\openssl +copy crypto\buffer\buffer.h include\openssl +copy crypto\bio\bio.h include\openssl +copy crypto\stack\stack.h include\openssl +copy crypto\stack\safestack.h include\openssl +copy crypto\lhash\lhash.h include\openssl +copy crypto\rand\rand.h include\openssl +copy crypto\err\err.h include\openssl +copy crypto\evp\evp.h include\openssl +copy crypto\asn1\asn1.h include\openssl +copy crypto\asn1\asn1_mac.h include\openssl +copy crypto\asn1\asn1t.h include\openssl +copy crypto\pem\pem.h include\openssl +copy crypto\pem\pem2.h include\openssl +copy crypto\x509\x509.h include\openssl +copy crypto\x509\x509_vfy.h include\openssl +copy crypto\x509v3\x509v3.h include\openssl +copy crypto\conf\conf.h include\openssl +copy crypto\conf\conf_api.h include\openssl +copy crypto\txt_db\txt_db.h include\openssl +copy crypto\pkcs7\pkcs7.h include\openssl +copy crypto\pkcs12\pkcs12.h include\openssl +copy crypto\comp\comp.h include\openssl +copy crypto\ocsp\ocsp.h include\openssl +copy crypto\ui\ui.h include\openssl +copy crypto\ui\ui_compat.h include\openssl +copy crypto\krb5\krb5_asn.h include\openssl +copy crypto\cms\cms.h include\openssl +copy crypto\pqueue\pqueue.h include\openssl +copy crypto\ts\ts.h include\openssl +copy crypto\srp\srp.h include\openssl +copy crypto\cmac\cmac.h include\openssl +copy ssl\ssl.h include\openssl +copy ssl\ssl2.h include\openssl +copy ssl\ssl3.h include\openssl +copy ssl\ssl23.h include\openssl +copy ssl\tls1.h include\openssl +copy ssl\dtls1.h include\openssl +copy ssl\kssl.h include\openssl +copy ssl\srtp.h include\openssl cd .. diff --git a/CryptoPkg/Library/OpensslLib/Install.sh b/CryptoPkg/Library/OpensslLib/Install.sh deleted file mode 100755 index 5434395..0000000 --- a/CryptoPkg/Library/OpensslLib/Install.sh +++ /dev/null @@ -1,79 +0,0 @@ -#!/bin/sh - -cd openssl-1.0.2e -cp e_os2.h ../../../Include/openssl -cp crypto/crypto.h ../../../Include/openssl -cp crypto/opensslv.h ../../../Include/openssl -cp crypto/opensslconf.h ../../../Include/openssl -cp crypto/ebcdic.h ../../../Include/openssl -cp crypto/symhacks.h ../../../Include/openssl -cp crypto/ossl_typ.h ../../../Include/openssl -cp crypto/objects/objects.h ../../../Include/openssl -cp crypto/objects/obj_mac.h ../../../Include/openssl -cp crypto/md4/md4.h ../../../Include/openssl -cp crypto/md5/md5.h ../../../Include/openssl -cp crypto/sha/sha.h ../../../Include/openssl -cp crypto/mdc2/mdc2.h ../../../Include/openssl -cp crypto/hmac/hmac.h ../../../Include/openssl -cp crypto/ripemd/ripemd.h ../../../Include/openssl -cp crypto/whrlpool/whrlpool.h ../../../Include/openssl -cp crypto/des/des.h ../../../Include/openssl -cp crypto/des/des_old.h ../../../Include/openssl -cp crypto/aes/aes.h ../../../Include/openssl -cp crypto/rc2/rc2.h ../../../Include/openssl -cp crypto/rc4/rc4.h ../../../Include/openssl -cp crypto/idea/idea.h ../../../Include/openssl -cp crypto/bf/blowfish.h ../../../Include/openssl -cp crypto/cast/cast.h ../../../Include/openssl -cp crypto/camellia/camellia.h ../../../Include/openssl -cp crypto/seed/seed.h ../../../Include/openssl -cp crypto/modes/modes.h ../../../Include/openssl -cp crypto/bn/bn.h ../../../Include/openssl -cp crypto/ec/ec.h ../../../Include/openssl -cp crypto/rsa/rsa.h ../../../Include/openssl -cp crypto/dsa/dsa.h ../../../Include/openssl -cp crypto/ecdsa/ecdsa.h ../../../Include/openssl -cp crypto/dh/dh.h ../../../Include/openssl -cp crypto/ecdh/ecdh.h ../../../Include/openssl -cp crypto/dso/dso.h ../../../Include/openssl -cp crypto/engine/engine.h ../../../Include/openssl -cp crypto/buffer/buffer.h ../../../Include/openssl -cp crypto/bio/bio.h ../../../Include/openssl -cp crypto/stack/stack.h ../../../Include/openssl -cp crypto/stack/safestack.h ../../../Include/openssl -cp crypto/lhash/lhash.h ../../../Include/openssl -cp crypto/rand/rand.h ../../../Include/openssl -cp crypto/err/err.h ../../../Include/openssl -cp crypto/evp/evp.h ../../../Include/openssl -cp crypto/asn1/asn1.h ../../../Include/openssl -cp crypto/asn1/asn1_mac.h ../../../Include/openssl -cp crypto/asn1/asn1t.h ../../../Include/openssl -cp crypto/pem/pem.h ../../../Include/openssl -cp crypto/pem/pem2.h ../../../Include/openssl -cp crypto/x509/x509.h ../../../Include/openssl -cp crypto/x509/x509_vfy.h ../../../Include/openssl -cp crypto/x509v3/x509v3.h ../../../Include/openssl -cp crypto/conf/conf.h ../../../Include/openssl -cp crypto/conf/conf_api.h ../../../Include/openssl -cp crypto/txt_db/txt_db.h ../../../Include/openssl -cp crypto/pkcs7/pkcs7.h ../../../Include/openssl -cp crypto/pkcs12/pkcs12.h ../../../Include/openssl -cp crypto/comp/comp.h ../../../Include/openssl -cp crypto/ocsp/ocsp.h ../../../Include/openssl -cp crypto/ui/ui.h ../../../Include/openssl -cp crypto/ui/ui_compat.h ../../../Include/openssl -cp crypto/krb5/krb5_asn.h ../../../Include/openssl -cp crypto/cms/cms.h ../../../Include/openssl -cp crypto/pqueue/pqueue.h ../../../Include/openssl -cp crypto/ts/ts.h ../../../Include/openssl -cp crypto/srp/srp.h ../../../Include/openssl -cp crypto/cmac/cmac.h ../../../Include/openssl -cp ssl/ssl.h ../../../Include/openssl -cp ssl/ssl2.h ../../../Include/openssl -cp ssl/ssl3.h ../../../Include/openssl -cp ssl/ssl23.h ../../../Include/openssl -cp ssl/tls1.h ../../../Include/openssl -cp ssl/dtls1.h ../../../Include/openssl -cp ssl/kssl.h ../../../Include/openssl -cp ssl/srtp.h ../../../Include/openssl -cd .. diff --git a/CryptoPkg/Library/OpensslLib/Patch-HOWTO.txt b/CryptoPkg/Library/OpensslLib/Patch-HOWTO.txt index f575d71..f99510b 100644 --- a/CryptoPkg/Library/OpensslLib/Patch-HOWTO.txt +++ b/CryptoPkg/Library/OpensslLib/Patch-HOWTO.txt @@ -38,6 +38,11 @@ cryptography. This patch will enable openssl building under UEFI environment. uncheck the WinZip smart CR/LF conversion option (WINZIP: Options --> Configuration --> Miscellaneous --> "TAR file smart CR/LF conversion"). + NOTE: Windows systems do not support symbolic links, which are contained in + the OpenSSL source tree. To work around the limitation, the Install.cmd + script mentioned in the instructions below will copy the header files + to the OpenSSL include directory. + 3. Apply this patch: EDKII_openssl-1.0.2e.patch, and make installation For Windows Environment: @@ -56,6 +61,3 @@ cryptography. This patch will enable openssl building under UEFI environment. Patch utility is available from http://directory.fsf.org/project/patch/ 2) cd $(WORKSPACE)/CryptoPkg/Library/OpensslLib/openssl-1.0.2e 3) patch -p0 -i ../EDKII_openssl-1.0.2e.patch - 4) cd .. - 5) ./Install.sh - -- 2.5.0 -- David Woodhouse Open Source Technology Centre david.woodho...@intel.com Intel Corporation
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel