Push @466c66341a996fd05f5aae7f084fb344d89fd60f

>-----Original Message-----
>From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
>Wang, Jian J
>Sent: Monday, June 03, 2019 10:46 PM
>To: Lu, XiaoyuX <xiaoyux...@intel.com>; devel@edk2.groups.io
>Cc: Ye, Ting <ting...@intel.com>
>Subject: Re: [edk2-devel] [PATCH v1 1/1] CryptoPkg: Fix build problem with
>XCODE
>
>Reviewed-by: Jian J Wang <jian.j.w...@intel.com>
>
>> -----Original Message-----
>> From: Lu, XiaoyuX
>> Sent: Monday, June 03, 2019 5:53 PM
>> To: devel@edk2.groups.io
>> Cc: Lu, XiaoyuX <xiaoyux...@intel.com>; Wang, Jian J
><jian.j.w...@intel.com>;
>> Ye, Ting <ting...@intel.com>
>> Subject: [PATCH v1 1/1] CryptoPkg: Fix build problem with XCODE
>>
>> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1089
>>
>> When building CryptoPkg with XCODE, blow error may result
>>
>> * usr/lib/clang/9.0.0/include/stdatomic.h:105:17:
>> error: unknown type name 'wchar_t'
>>
>> Since the C native atomics are C11 feature we can explicitly
>> use C99 to work around it.
>> add -std=c99 to avoid it
>>
>> * openssl/crypto/conf/conf_sap.c:71:12: error: variable 'ret' is
>>     uninitialized
>>     when used here [-Werror,-Wuninitialized]
>>
>> Suppress warnings in OpenSSL so we don't break the build with -Werror.
>> add -Wno-error=uninitialized to disalbe this warning
>>
>> Cc: Jian Wang <jian.j.w...@intel.com>
>> Cc: Ting Ye <ting...@intel.com>
>> Signed-off-by: Xiaoyu Lu <xiaoyux...@intel.com>
>> ---
>>  CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf    | 2 ++
>>  CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf     | 2 ++
>>  CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf | 2 ++
>>  CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf     | 2 +-
>>  CryptoPkg/Library/OpensslLib/OpensslLib.inf        | 4 ++--
>>  CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf  | 4 ++--
>>  6 files changed, 11 insertions(+), 5 deletions(-)
>>
>> diff --git a/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
>> b/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
>> index 2a581ceac70c..983635b46a96 100644
>> --- a/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
>> +++ b/CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
>> @@ -98,3 +98,5 @@ [BuildOptions]
>>    RVCT:*_*_ARM_CC_FLAGS = -JCryptoPkg/Include --diag_remark=1
>>
>>    GCC:*_CLANG38_*_CC_FLAGS = -std=c99
>> +
>> +  XCODE:*_*_*_CC_FLAGS = -std=c99
>> diff --git a/CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
>> b/CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
>> index 8fdc6920ec2e..aac75b8cf4f8 100644
>> --- a/CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
>> +++ b/CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
>> @@ -95,3 +95,5 @@ [BuildOptions]
>>    RVCT:*_*_ARM_CC_FLAGS = -JCryptoPkg/Include --diag_remark=1
>>
>>    GCC:*_CLANG38_*_CC_FLAGS = -std=c99
>> +
>> +  XCODE:*_*_*_CC_FLAGS = -std=c99
>> diff --git a/CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
>> b/CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
>> index 9d639fd01eae..82b0a485fbf8 100644
>> --- a/CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
>> +++ b/CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
>> @@ -103,3 +103,5 @@ [BuildOptions]
>>    RVCT:*_*_ARM_CC_FLAGS = -JCryptoPkg/Include --diag_remark=1
>>
>>    GCC:*_CLANG38_*_CC_FLAGS = -std=c99
>> +
>> +  XCODE:*_*_*_CC_FLAGS = -std=c99
>> diff --git a/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
>> b/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
>> index c9f4abb22aea..c2b62002790c 100644
>> --- a/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
>> +++ b/CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
>> @@ -97,6 +97,6 @@ [BuildOptions]
>>    #
>>    MSFT:*_*_*_CC_FLAGS = /wd4090
>>
>> -  XCODE:*_*_*_CC_FLAGS = -mmmx -msse
>> +  XCODE:*_*_*_CC_FLAGS = -mmmx -msse -std=c99
>>
>>    GCC:*_CLANG38_*_CC_FLAGS = -std=c99
>> diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
>> b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
>> index 39749518027c..128390d1e6a0 100644
>> --- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
>> +++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
>> @@ -623,8 +623,8 @@ [BuildOptions]
>>    # 3017: <entity> may be used before being set (NOTE: This was fixed in
>> OpenSSL 1.1 HEAD with
>>    #       commit d9b8b89bec4480de3a10bdaf9425db371c19145b, and can be
>> dropped then.)
>>    RVCT:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS) --
>> library_interface=aeabi_clib99 --
>>
>diag_suppress=1296,1295,550,1293,111,68,177,223,144,513,188,128,546,1,301
>> 7 -JCryptoPkg/Include
>> -  XCODE:*_*_IA32_CC_FLAGS   = -mmmx -msse -U_WIN32 -U_WIN64
>> $(OPENSSL_FLAGS) -w
>> -  XCODE:*_*_X64_CC_FLAGS    = -mmmx -msse -U_WIN32 -U_WIN64
>> $(OPENSSL_FLAGS) -w
>> +  XCODE:*_*_IA32_CC_FLAGS   = -mmmx -msse -U_WIN32 -U_WIN64
>> $(OPENSSL_FLAGS) -w -std=c99 -Wno-error=uninitialized
>> +  XCODE:*_*_X64_CC_FLAGS    = -mmmx -msse -U_WIN32 -U_WIN64
>> $(OPENSSL_FLAGS) -w -std=c99 -Wno-error=uninitialized
>>
>>    #
>>    # AARCH64 uses strict alignment and avoids SIMD registers for code that
>may
>> execute
>> diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
>> b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
>> index 8c290caacf1b..c954d7f00ee5 100644
>> --- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
>> +++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
>> @@ -579,8 +579,8 @@ [BuildOptions]
>>    # 3017: <entity> may be used before being set (NOTE: This was fixed in
>> OpenSSL 1.1 HEAD with
>>    #       commit d9b8b89bec4480de3a10bdaf9425db371c19145b, and can be
>> dropped then.)
>>    RVCT:*_*_ARM_CC_FLAGS     = $(OPENSSL_FLAGS) --
>> library_interface=aeabi_clib99 --
>>
>diag_suppress=1296,1295,550,1293,111,68,177,223,144,513,188,128,546,1,301
>> 7 -JCryptoPkg/Include
>> -  XCODE:*_*_IA32_CC_FLAGS   = -mmmx -msse -U_WIN32 -U_WIN64
>> $(OPENSSL_FLAGS) -w
>> -  XCODE:*_*_X64_CC_FLAGS    = -mmmx -msse -U_WIN32 -U_WIN64
>> $(OPENSSL_FLAGS) -w
>> +  XCODE:*_*_IA32_CC_FLAGS   = -mmmx -msse -U_WIN32 -U_WIN64
>> $(OPENSSL_FLAGS) -w -std=c99 -Wno-error=uninitialized
>> +  XCODE:*_*_X64_CC_FLAGS    = -mmmx -msse -U_WIN32 -U_WIN64
>> $(OPENSSL_FLAGS) -w -std=c99 -Wno-error=uninitialized
>>
>>    #
>>    # AARCH64 uses strict alignment and avoids SIMD registers for code that
>may
>> execute
>> --
>> 2.7.4
>
>
>


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#41843): https://edk2.groups.io/g/devel/message/41843
Mute This Topic: https://groups.io/mt/31908441/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to