vendor/libsodium/configure.ac in rbnacl-libsodium-0.5.0.1 vs vendor/libsodium/configure.ac in rbnacl-libsodium-0.6.0

- old
+ new

@@ -1,7 +1,7 @@ AC_PREREQ([2.65]) -AC_INIT([libsodium],[0.5.0], +AC_INIT([libsodium],[0.6.0], [https://github.com/jedisct1/libsodium/issues], [libsodium], [https://github.com/jedisct1/libsodium]) AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_SRCDIR([src/libsodium/sodium/version.c]) @@ -13,14 +13,14 @@ AC_SUBST(VERSION) ISODATE=`date +%Y-%m-%d` AC_SUBST(ISODATE) -SODIUM_LIBRARY_VERSION_MAJOR=5 +SODIUM_LIBRARY_VERSION_MAJOR=6 SODIUM_LIBRARY_VERSION_MINOR=0 DLL_VERSION=5 -SODIUM_LIBRARY_VERSION=10:0:0 +SODIUM_LIBRARY_VERSION=11:0:1 # | | | # +------+ | +---+ # | | | # current:revision:age # | | | @@ -270,10 +270,18 @@ _mm_cvtpd_ps(_mm_setzero_pd())); ]])], [AC_MSG_RESULT(yes) AC_DEFINE([HAVE_PMMINTRIN_H], [1], [sse3 is available])], [AC_MSG_RESULT(no)]) + AC_MSG_CHECKING(for SSSE3 instructions set) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ +#pragma GCC target("ssse3") +#include <tmmintrin.h> +]], [[ __m64 x = _mm_abs_pi32(_m_from_int(0)); ]])], + [AC_MSG_RESULT(yes) + AC_DEFINE([HAVE_TMMINTRIN_H], [1], [ssse3 is available])], + [AC_MSG_RESULT(no)]) ]) AC_CHECK_HEADERS([sys/mman.h]) dnl Checks for typedefs, structures, and compiler characteristics. @@ -329,10 +337,14 @@ # error clang doesn't properly compile smult_curve25519_donna_c64.c #endif #ifndef NATIVE_LITTLE_ENDIAN # error donna_c64 currently requires a little endian CPU #endif +#ifdef EMSCRIPTEN +# error emscripten currently supports only shift operations on integers \ +# larger than 64 bits +#endif #include <stdint.h> typedef unsigned uint128_t __attribute__((mode(TI))); void fcontract(uint128_t *t) { *t += 0x8000000000000 - 1; } @@ -361,27 +373,26 @@ HAVE_CPUID_V=1], [AC_MSG_RESULT(no)]) ]) AC_SUBST(HAVE_CPUID_V) +AC_MSG_CHECKING(if weak symbols are supported) +AC_LINK_IFELSE([AC_LANG_PROGRAM([[ +__attribute__((weak)) void __dummy(void *x) { } +void f(void *x) { __dummy(x); } +]], [[ ]] +)], +[AC_MSG_RESULT(yes) + AC_DEFINE([HAVE_WEAK_SYMBOLS], [1], [weak symbols are supported])], +[AC_MSG_RESULT(no)]) + AS_CASE([$host_cpu], [i*86 | x86_64 | powerpc* | s390*], [AC_MSG_NOTICE([data alignment is not required on this target])], [*], [AC_MSG_NOTICE([data alignment is required on this target]) AC_DEFINE([CPU_ALIGNED_ACCESS_REQUIRED], [1], [data alignment is required])] ) - -AC_MSG_CHECKING(for memset_s) -AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ -#include <string.h> -]], [[ -char dummy[42]; -(void) memset_s(dummy, (rsize_t) sizeof dummy, 0, (rsize_t) sizeof dummy); -]])], -[AC_MSG_RESULT(yes) - AC_DEFINE([HAVE_MEMSET_S], [1], [memset_s is available])], -[AC_MSG_RESULT(no)]) dnl Checks for functions and headers AC_CHECK_FUNC(clock_gettime, , [AC_CHECK_LIB(rt, clock_gettime)]) AC_CHECK_FUNC(fegetenv, , [AC_CHECK_LIB(m, fegetenv)])