From b0420b32d71aecde21179e3114057395fc7cf5cd Mon Sep 17 00:00:00 2001 From: Frank Denis Date: Fri, 15 Sep 2017 18:28:42 +0200 Subject: [PATCH] Define SODIUM_EXPORT_WEAK instead of adding __attribute__((weak)) tags --- src/libsodium/include/sodium/export.h | 6 ++++++ src/libsodium/include/sodium/runtime.h | 20 ++++++++++---------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/libsodium/include/sodium/export.h b/src/libsodium/include/sodium/export.h index bee18a78..6d202bc7 100644 --- a/src/libsodium/include/sodium/export.h +++ b/src/libsodium/include/sodium/export.h @@ -11,6 +11,7 @@ #ifdef SODIUM_STATIC # define SODIUM_EXPORT +# define SODIUM_EXPORT_WEAK #else # if defined(_MSC_VER) # ifdef SODIUM_DLL_EXPORT @@ -31,6 +32,11 @@ # define SODIUM_EXPORT __attribute__ ((visibility ("default"))) # endif # endif +# ifdef __ELF__ +# define SODIUM_EXPORT_WEAK SODIUM_EXPORT __attribute__((weak)) +# else +# define SODIUM_EXPORT_WEAK SODIUM_EXPORT +# endif #endif #ifndef CRYPTO_ALIGN diff --git a/src/libsodium/include/sodium/runtime.h b/src/libsodium/include/sodium/runtime.h index aefa5c04..d35083d9 100644 --- a/src/libsodium/include/sodium/runtime.h +++ b/src/libsodium/include/sodium/runtime.h @@ -8,34 +8,34 @@ extern "C" { #endif -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_neon(void); -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_sse2(void); -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_sse3(void); -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_ssse3(void); -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_sse41(void); -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_avx(void); -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_avx2(void); -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_avx512f(void); -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_pclmul(void); -SODIUM_EXPORT __attribute__((weak)) +SODIUM_EXPORT_WEAK int sodium_runtime_has_aesni(void); /* ------------------------------------------------------------------------- */