Fix broken compiler under Apple Clang for ARMv8

Undefined symbols for architecture arm64:

  "CryptoPP::CRC32_Update_ARMV8(unsigned char const*, unsigned long, unsigned int&)", referenced from:

      CryptoPP::CRC32::Update(unsigned char const*, unsigned long) in libcryptopp.a(crc.o)

  "CryptoPP::CRC32C_Update_ARMV8(unsigned char const*, unsigned long, unsigned int&)", referenced from:

      CryptoPP::CRC32C::Update(unsigned char const*, unsigned long) in libcryptopp.a(crc.o)

ld: symbol(s) not found for architecture arm64

clang: error: linker command failed with exit code 1 (use -v to see invocation)

make: *** [cryptest.exe] Error 1
pull/461/head
Jeffrey Walton 2017-08-10 22:08:40 -04:00
parent 4a6cdc34a5
commit 0b31e7ff5e
No known key found for this signature in database
GPG Key ID: B36AB348921B1838
1 changed files with 1 additions and 1 deletions

View File

@ -546,7 +546,7 @@ NAMESPACE_END
// LLVM Clang requires 3.5. Apple Clang is unknown at the moment.
// Microsoft plans to support ARM-64, but its not clear how to detect it.
// TODO: Add MSC_VER and ARM-64 platform define when available
#if !defined(CRYPTOPP_ARM_CRC32_AVAILABLE) && !defined(CRYPTOPP_DISABLE_ASM)
#if !defined(CRYPTOPP_ARM_CRC32_AVAILABLE) && !defined(CRYPTOPP_DISABLE_ASM) && !defined(__apple_build_version__)
# if defined(__ARM_FEATURE_CRC32) || (CRYPTOPP_MSC_VERSION >= 1910) || \
defined(__aarch32__) || defined(__aarch64__)
# define CRYPTOPP_ARM_CRC32_AVAILABLE 1