From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.31501.1650901932689621085 for ; Mon, 25 Apr 2022 08:52:13 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: pierre.gondois@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D1F571FB; Mon, 25 Apr 2022 08:52:11 -0700 (PDT) Received: from [10.57.43.253] (unknown [10.57.43.253]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 662E13F774; Mon, 25 Apr 2022 08:52:10 -0700 (PDT) Message-ID: <3e276e6c-420d-8c5b-bca0-5aae9be302bd@arm.com> Date: Mon, 25 Apr 2022 17:52:44 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: [edk2-devel] [PATCH 3/4] CryptoPkg: Make EC source file config-able To: devel@edk2.groups.io, yi1.li@intel.com, Jiewen Yao , bob.c.feng@intel.com, Sami Mujawar References: From: "PierreGondois" In-Reply-To: Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable Hello Yi1, Jiewen, and Bob, As you mentioned in the cover letter, this patch relies on the following = patch bf9230a9f3dd ("BaseTools: Add the FeatureFlagExpression usage to the Sour= ce Section") https://github.com/tianocore/edk2/commit/bf9230a9f3dde065c3c8b4175ccd32e4= 4e8f0362 I just wanted to signal that this patch is currently not in https://github.com/tianocore/edk2-basetools It is thus not in any edk2basetools python module: the latest version of = the edk2-basetools python module won't support the new build feature (cf = pip-requirements.txt). Thus someone who: -relies on the edk2basetools python module -tries to build an edk2 module relying on OpenSSL will have a build break. For instance, I get the following error when building: build -a AARCH64 -t GCC5 -p SecurityPkg/SecurityPkg.dsc ... "[some_path]/edk2/BaseTools/Bin/gcc_aarch64_linux_extdep/bin/aarch64-none= -linux-gnu-gcc" @[some_path]/Build/SbsaQemu/DEBUG_GCC5/AARCH64/CryptoPkg= /Library/OpensslLib/OpensslLib/OUTPUT/cc_resp.txt -c -o [some_path]/Buil= d/SbsaQemu/DEBUG_GCC5/AARCH64/CryptoPkg/Library/OpensslLib/OpensslLib/OUT= PUT/openssl/crypto/ec/curve25519.obj [some_path]/edk2/CryptoPkg/Library/= OpensslLib/openssl/crypto/ec/curve25519.c In file included from [some_path]/edk2/CryptoPkg/Library/OpensslLib/opens= sl/crypto/ec/curve25519.c:11: [some_path]/edk2/CryptoPkg/Library/OpensslLib/openssl/crypto/ec/ec_local.= h:48:24: error: unknown type name =E2=80=98EC_GROUP=E2=80=99 48 | int (*group_init) (EC_GROUP *); This is due to the build system trying to build a file in $(OPENSSL_PATH)= /crypto/ec/* even though gEfiCryptoPkgTokenSpaceGuid.PcdEcEnabled is set = to FALSE by default. The new Pcd feature to build files conditionally on = a Pcd value is not handled yet. The edk2 CI doesn't seem to build modules relying on OpenSSL due to the C= ONTINUOUS_INTEGRATION flag, explaining why the patch passed the CI I thin= k. I added Bob as I think he knows more about BaseTools. Regards, Pierre On 4/18/22 15:03, yi1 li via groups.io wrote: > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3D3679 > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3D3828 >=20 > Use PCD gEfiCryptoPkgTokenSpaceGuid.PcdEcEnabled to config-able > source files list in OpensslLib.inf and OpensslLibCrypto.inf. > If PcdEcEnabled equals to FALSE, this file will not be compiled. >=20 > Signed-off-by: yi1 li > --- > CryptoPkg/CryptoPkg.dec | 4 + > .../Library/Include/openssl/opensslconf.h | 7 +- > CryptoPkg/Library/OpensslLib/OpensslLib.inf | 95 ++++++++++--------= - > .../Library/OpensslLib/OpensslLibCrypto.inf | 95 ++++++++++--------= - > 4 files changed, 108 insertions(+), 93 deletions(-) >=20 > diff --git a/CryptoPkg/CryptoPkg.dec b/CryptoPkg/CryptoPkg.dec > index 5888941bab4c..ebec64050b71 100644 > --- a/CryptoPkg/CryptoPkg.dec > +++ b/CryptoPkg/CryptoPkg.dec > @@ -81,5 +81,9 @@ > # @ValidList 0x80000001 | 0x00000001, 0x00000002, 0x00000004, 0x000= 00008, 0x00000010 > gEfiCryptoPkgTokenSpaceGuid.PcdHashApiLibPolicy|0x00000002|UINT32|0= x00000001 > =20 > + ## Enable/Disable the ECC feature in openssl library. The default is= disabled. > + # If ECC feature is disabled, all related source files will not be = compiled. > + gEfiCryptoPkgTokenSpaceGuid.PcdEcEnabled|FALSE|BOOLEAN|0x0000003 > + > [UserExtensions.TianoCore."ExtraFiles"] > CryptoPkgExtra.uni > diff --git a/CryptoPkg/Library/Include/openssl/opensslconf.h b/CryptoPk= g/Library/Include/openssl/opensslconf.h > index 7ea976b2252e..1485b8c9f108 100644 > --- a/CryptoPkg/Library/Include/openssl/opensslconf.h > +++ b/CryptoPkg/Library/Include/openssl/opensslconf.h > @@ -9,7 +9,7 @@ > * in the file LICENSE in the source distribution or at > * https://www.openssl.org/source/license.html > */ > - > +#include > #include > =20 > #ifdef __cplusplus > @@ -55,6 +55,11 @@ extern "C" { > #ifndef OPENSSL_NO_DSA > #define OPENSSL_NO_DSA > #endif > +#if !FixedPcdGetBool (PcdEcEnabled) > + #ifndef OPENSSL_NO_EC > +#define OPENSSL_NO_EC > + #endif > +#endif > #ifndef OPENSSL_NO_IDEA > #define OPENSSL_NO_IDEA > #endif > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf b/CryptoPkg/Li= brary/OpensslLib/OpensslLib.inf > index 1d67ed55e1b1..459ac4864a4e 100644 > --- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf > +++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf > @@ -199,43 +199,43 @@ > $(OPENSSL_PATH)/crypto/dso/dso_vms.c > $(OPENSSL_PATH)/crypto/dso/dso_win32.c > $(OPENSSL_PATH)/crypto/ebcdic.c > - $(OPENSSL_PATH)/crypto/ec/curve25519.c > - $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.c > - $(OPENSSL_PATH)/crypto/ec/curve448/curve448.c > - $(OPENSSL_PATH)/crypto/ec/curve448/curve448_tables.c > - $(OPENSSL_PATH)/crypto/ec/curve448/eddsa.c > - $(OPENSSL_PATH)/crypto/ec/curve448/f_generic.c > - $(OPENSSL_PATH)/crypto/ec/curve448/scalar.c > - $(OPENSSL_PATH)/crypto/ec/ec2_oct.c > - $(OPENSSL_PATH)/crypto/ec/ec2_smpl.c > - $(OPENSSL_PATH)/crypto/ec/ec_ameth.c > - $(OPENSSL_PATH)/crypto/ec/ec_asn1.c > - $(OPENSSL_PATH)/crypto/ec/ec_check.c > - $(OPENSSL_PATH)/crypto/ec/ec_curve.c > - $(OPENSSL_PATH)/crypto/ec/ec_cvt.c > - $(OPENSSL_PATH)/crypto/ec/ec_err.c > - $(OPENSSL_PATH)/crypto/ec/ec_key.c > - $(OPENSSL_PATH)/crypto/ec/ec_kmeth.c > - $(OPENSSL_PATH)/crypto/ec/ec_lib.c > - $(OPENSSL_PATH)/crypto/ec/ec_mult.c > - $(OPENSSL_PATH)/crypto/ec/ec_oct.c > - $(OPENSSL_PATH)/crypto/ec/ec_pmeth.c > - $(OPENSSL_PATH)/crypto/ec/ec_print.c > - $(OPENSSL_PATH)/crypto/ec/ecdh_kdf.c > - $(OPENSSL_PATH)/crypto/ec/ecdh_ossl.c > - $(OPENSSL_PATH)/crypto/ec/ecdsa_ossl.c > - $(OPENSSL_PATH)/crypto/ec/ecdsa_sign.c > - $(OPENSSL_PATH)/crypto/ec/ecdsa_vrf.c > - $(OPENSSL_PATH)/crypto/ec/eck_prn.c > - $(OPENSSL_PATH)/crypto/ec/ecp_mont.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nist.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nistp224.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nistp256.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nistp521.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nistputil.c > - $(OPENSSL_PATH)/crypto/ec/ecp_oct.c > - $(OPENSSL_PATH)/crypto/ec/ecp_smpl.c > - $(OPENSSL_PATH)/crypto/ec/ecx_meth.c > + $(OPENSSL_PATH)/crypto/ec/curve25519.c |*|*|*|gEfiCryptoPkgToke= nSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.c |*|*|*|gEfiC= ryptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448.c |*|*|*|gEfiCryptoP= kgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448_tables.c |*|*|*|gEf= iCryptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/eddsa.c |*|*|*|gEfiCryptoPkg= TokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/f_generic.c |*|*|*|gEfiCrypt= oPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/scalar.c |*|*|*|gEfiCryptoPkg= TokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec2_oct.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec2_smpl.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_ameth.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_asn1.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_check.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_curve.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_cvt.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_err.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_key.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_kmeth.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_lib.c |*|*|*|gEfiCryptoPkgTokenSpac= eGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_mult.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_oct.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_pmeth.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_print.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdh_kdf.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdh_ossl.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdsa_ossl.c |*|*|*|gEfiCryptoPkgToke= nSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdsa_sign.c |*|*|*|gEfiCryptoPkgToke= nSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdsa_vrf.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/eck_prn.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_mont.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nist.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp224.c |*|*|*|gEfiCryptoPkgTo= kenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp256.c |*|*|*|gEfiCryptoPkgTo= kenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp521.c |*|*|*|gEfiCryptoPkgTo= kenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nistputil.c |*|*|*|gEfiCryptoPkgTo= kenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_oct.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_smpl.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecx_meth.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > $(OPENSSL_PATH)/crypto/err/err.c > $(OPENSSL_PATH)/crypto/err/err_prn.c > $(OPENSSL_PATH)/crypto/evp/bio_b64.c > @@ -533,15 +533,15 @@ > $(OPENSSL_PATH)/crypto/conf/conf_local.h > $(OPENSSL_PATH)/crypto/dh/dh_local.h > $(OPENSSL_PATH)/crypto/dso/dso_local.h > - $(OPENSSL_PATH)/crypto/ec/ec_local.h > - $(OPENSSL_PATH)/crypto/ec/curve448/curve448_local.h > - $(OPENSSL_PATH)/crypto/ec/curve448/curve448utils.h > - $(OPENSSL_PATH)/crypto/ec/curve448/ed448.h > - $(OPENSSL_PATH)/crypto/ec/curve448/field.h > - $(OPENSSL_PATH)/crypto/ec/curve448/point_448.h > - $(OPENSSL_PATH)/crypto/ec/curve448/word.h > - $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/arch_intrinsics.h > - $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.h > + $(OPENSSL_PATH)/crypto/ec/ec_local.h |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448_local.h |*|*|*|gEfiC= ryptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448utils.h |*|*|*|gEfiC= ryptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/ed448.h |*|*|*|gEfiCryptoPkg= TokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/field.h |*|*|*|gEfiCryptoPkg= TokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/point_448.h |*|*|*|gEfiCrypt= oPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/word.h |*|*|*|gEfiCryptoPkgTo= kenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/arch_intrinsics.h |*= |*|*|gEfiCryptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.h |*|*|*|gEfiC= ryptoPkgTokenSpaceGuid.PcdEcEnabled > $(OPENSSL_PATH)/crypto/evp/evp_local.h > $(OPENSSL_PATH)/crypto/hmac/hmac_local.h > $(OPENSSL_PATH)/crypto/lhash/lhash_local.h > @@ -633,6 +633,9 @@ > [LibraryClasses.ARM] > ArmSoftFloatLib > =20 > +[Pcd] > + gEfiCryptoPkgTokenSpaceGuid.PcdEcEnabled ## CONSUMES > + > [BuildOptions] > # > # Disables the following Visual Studio compiler warnings brought by= openssl source, > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf b/Crypto= Pkg/Library/OpensslLib/OpensslLibCrypto.inf > index 66ca5b1250c1..c9d69a368e3c 100644 > --- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > +++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > @@ -199,43 +199,43 @@ > $(OPENSSL_PATH)/crypto/dso/dso_vms.c > $(OPENSSL_PATH)/crypto/dso/dso_win32.c > $(OPENSSL_PATH)/crypto/ebcdic.c > - $(OPENSSL_PATH)/crypto/ec/curve25519.c > - $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.c > - $(OPENSSL_PATH)/crypto/ec/curve448/curve448.c > - $(OPENSSL_PATH)/crypto/ec/curve448/curve448_tables.c > - $(OPENSSL_PATH)/crypto/ec/curve448/eddsa.c > - $(OPENSSL_PATH)/crypto/ec/curve448/f_generic.c > - $(OPENSSL_PATH)/crypto/ec/curve448/scalar.c > - $(OPENSSL_PATH)/crypto/ec/ec2_oct.c > - $(OPENSSL_PATH)/crypto/ec/ec2_smpl.c > - $(OPENSSL_PATH)/crypto/ec/ec_ameth.c > - $(OPENSSL_PATH)/crypto/ec/ec_asn1.c > - $(OPENSSL_PATH)/crypto/ec/ec_check.c > - $(OPENSSL_PATH)/crypto/ec/ec_curve.c > - $(OPENSSL_PATH)/crypto/ec/ec_cvt.c > - $(OPENSSL_PATH)/crypto/ec/ec_err.c > - $(OPENSSL_PATH)/crypto/ec/ec_key.c > - $(OPENSSL_PATH)/crypto/ec/ec_kmeth.c > - $(OPENSSL_PATH)/crypto/ec/ec_lib.c > - $(OPENSSL_PATH)/crypto/ec/ec_mult.c > - $(OPENSSL_PATH)/crypto/ec/ec_oct.c > - $(OPENSSL_PATH)/crypto/ec/ec_pmeth.c > - $(OPENSSL_PATH)/crypto/ec/ec_print.c > - $(OPENSSL_PATH)/crypto/ec/ecdh_kdf.c > - $(OPENSSL_PATH)/crypto/ec/ecdh_ossl.c > - $(OPENSSL_PATH)/crypto/ec/ecdsa_ossl.c > - $(OPENSSL_PATH)/crypto/ec/ecdsa_sign.c > - $(OPENSSL_PATH)/crypto/ec/ecdsa_vrf.c > - $(OPENSSL_PATH)/crypto/ec/eck_prn.c > - $(OPENSSL_PATH)/crypto/ec/ecp_mont.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nist.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nistp224.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nistp256.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nistp521.c > - $(OPENSSL_PATH)/crypto/ec/ecp_nistputil.c > - $(OPENSSL_PATH)/crypto/ec/ecp_oct.c > - $(OPENSSL_PATH)/crypto/ec/ecp_smpl.c > - $(OPENSSL_PATH)/crypto/ec/ecx_meth.c > + $(OPENSSL_PATH)/crypto/ec/curve25519.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.c |*|*|*|gEfiCry= ptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448.c |*|*|*|gEfiCryptoPkg= TokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448_tables.c |*|*|*|gEfiC= ryptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/eddsa.c |*|*|*|gEfiCryptoPkgTo= kenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/f_generic.c |*|*|*|gEfiCryptoP= kgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/scalar.c |*|*|*|gEfiCryptoPkgTo= kenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec2_oct.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec2_smpl.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_ameth.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_asn1.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_check.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_curve.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_cvt.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_err.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_key.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_kmeth.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_lib.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_mult.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_oct.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_pmeth.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ec_print.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdh_kdf.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdh_ossl.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdsa_ossl.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdsa_sign.c |*|*|*|gEfiCryptoPkgTokenS= paceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecdsa_vrf.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/eck_prn.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_mont.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nist.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp224.c |*|*|*|gEfiCryptoPkgToke= nSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp256.c |*|*|*|gEfiCryptoPkgToke= nSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nistp521.c |*|*|*|gEfiCryptoPkgToke= nSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_nistputil.c |*|*|*|gEfiCryptoPkgToke= nSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_oct.c |*|*|*|gEfiCryptoPkgTokenSpace= Guid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecp_smpl.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/ecx_meth.c |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > $(OPENSSL_PATH)/crypto/err/err.c > $(OPENSSL_PATH)/crypto/err/err_prn.c > $(OPENSSL_PATH)/crypto/evp/bio_b64.c > @@ -533,15 +533,15 @@ > $(OPENSSL_PATH)/crypto/conf/conf_local.h > $(OPENSSL_PATH)/crypto/dh/dh_local.h > $(OPENSSL_PATH)/crypto/dso/dso_local.h > - $(OPENSSL_PATH)/crypto/ec/ec_local.h > - $(OPENSSL_PATH)/crypto/ec/curve448/curve448_local.h > - $(OPENSSL_PATH)/crypto/ec/curve448/curve448utils.h > - $(OPENSSL_PATH)/crypto/ec/curve448/ed448.h > - $(OPENSSL_PATH)/crypto/ec/curve448/field.h > - $(OPENSSL_PATH)/crypto/ec/curve448/point_448.h > - $(OPENSSL_PATH)/crypto/ec/curve448/word.h > - $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/arch_intrinsics.h > - $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.h > + $(OPENSSL_PATH)/crypto/ec/ec_local.h |*|*|*|gEfiCryptoPkgTokenSpa= ceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448_local.h |*|*|*|gEfiCry= ptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/curve448utils.h |*|*|*|gEfiCry= ptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/ed448.h |*|*|*|gEfiCryptoPkgTo= kenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/field.h |*|*|*|gEfiCryptoPkgTo= kenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/point_448.h |*|*|*|gEfiCryptoP= kgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/word.h |*|*|*|gEfiCryptoPkgToke= nSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/arch_intrinsics.h |*|*= |*|gEfiCryptoPkgTokenSpaceGuid.PcdEcEnabled > + $(OPENSSL_PATH)/crypto/ec/curve448/arch_32/f_impl.h |*|*|*|gEfiCry= ptoPkgTokenSpaceGuid.PcdEcEnabled > $(OPENSSL_PATH)/crypto/evp/evp_local.h > $(OPENSSL_PATH)/crypto/hmac/hmac_local.h > $(OPENSSL_PATH)/crypto/lhash/lhash_local.h > @@ -582,6 +582,9 @@ > [LibraryClasses.ARM] > ArmSoftFloatLib > =20 > +[Pcd] > + gEfiCryptoPkgTokenSpaceGuid.PcdEcEnabled ## CONSUMES > + > [BuildOptions] > # > # Disables the following Visual Studio compiler warnings brought by= openssl source,