CryptoPkg/OpensslLib: fix VS2017 build failure
authorWang, Jian J <jian.j.wang@intel.com>
Tue, 4 Jun 2019 21:18:44 +0000 (05:18 +0800)
committerLiming Gao <liming.gao@intel.com>
Wed, 5 Jun 2019 08:21:35 +0000 (16:21 +0800)
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1878

This issue is specific to VS2017 which tries to resolve symbol referenced
by a symbol not really referenced eventually.

ossl_init_load_crypto_strings
-> err_load_crypto_strings_int (not really referenced)
-> ERR_load_OSSL_STORE_strings

Because OPENSSL_NO_ERR and OPENSSL_NO_AUTOERRINIT are not defined by
default, err_load_crypto_strings_int() will not be actually referenced
by ossl_init_load_crypto_strings().

Since err_load_crypto_strings_int() is not actually referenced at all,
the fix can be done simply by removing crypto/err/err_all.c from build.

Cc: Dandan Bi <dandan.bi@intel.com>
Cc: Xiaoyu Lu <xiaoyux.lu@intel.com>
Signed-off-by: Jian J Wang <jian.j.wang@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
CryptoPkg/Library/OpensslLib/OpensslLib.inf
CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf

index 378fa65..5a2424f 100644 (file)
   $(OPENSSL_PATH)/crypto/dso/dso_win32.c\r
   $(OPENSSL_PATH)/crypto/ebcdic.c\r
   $(OPENSSL_PATH)/crypto/err/err.c\r
-  $(OPENSSL_PATH)/crypto/err/err_all.c\r
   $(OPENSSL_PATH)/crypto/err/err_prn.c\r
   $(OPENSSL_PATH)/crypto/evp/bio_b64.c\r
   $(OPENSSL_PATH)/crypto/evp/bio_enc.c\r
index 24d3d96..588da4c 100644 (file)
   $(OPENSSL_PATH)/crypto/dso/dso_win32.c\r
   $(OPENSSL_PATH)/crypto/ebcdic.c\r
   $(OPENSSL_PATH)/crypto/err/err.c\r
-  $(OPENSSL_PATH)/crypto/err/err_all.c\r
   $(OPENSSL_PATH)/crypto/err/err_prn.c\r
   $(OPENSSL_PATH)/crypto/evp/bio_b64.c\r
   $(OPENSSL_PATH)/crypto/evp/bio_enc.c\r