49e2acd927ce9eb806cc10f3a1fd89a9ddd081e2 configure: Improve rationale for WERROR_CFLAGS (Tim Ruffing) 8dc4b03341c85a3be91e559d05771c51e60b0eba ci: Add a C++ job that compiles the public headers without -fpermissive (Tim Ruffing) 51f296a46c0b318b8dd572ef9ac3bb3a4140ae63 ci: Run persistent wineserver to speed up wine (Tim Ruffing) 3fb3269c22c25de3b720ad139dcf4e3cff9eda1a ci: Add 32-bit MinGW64 build (Tim Ruffing) 9efc2e5221560d19dd750e0ba32c03d4ee091227 ci: Add MSVC builds (Tim Ruffing) 2be6ba0fedd0d2d62ba6f346d7ced7abde0d66e4 configure: Convince autotools to work with MSVC's archiver lib.exe (Tim Ruffing) bd81f4140a4228b1df3a9f631e2d207a197ae614 schnorrsig bench: Suppress a stupid warning in MSVC (Tim Ruffing) 09f3d71c51a9621653d766e2fe7e657534e57bd6 configure: Add a few CFLAGS for MSVC (Tim Ruffing) 3b4f3d0d46dd278fbe4ffa68b1b6e14e3ea3b17f build: Reject C++ compilers in the preprocessor (Tim Ruffing) 1cc09414149d0c0c6a4a500d83efc3bd66f3ebcd configure: Don't abort if the compiler does not define __STDC__ (Tim Ruffing) cca8cbbac84624fd350efc4086af25a06dcf8090 configure: Output message when checking for valgrind (Tim Ruffing) 1a6be5745fcf9f90e4218b73712b71ea06361792 bench: Make benchmarks compile on MSVC (Tim Ruffing) Pull request description: ACKs for top commit: jonasnick: ACK 49e2acd927ce9eb806cc10f3a1fd89a9ddd081e2 Tree-SHA512: 986c498fb218231fff3519167d34a92e11dea6a4383788a9723be105c20578cd483c6b06ba5686c6669e3a02cfeebc29b8e5f1428552ebf4ec67fa7a86957548
56 lines
1.8 KiB
Plaintext
56 lines
1.8 KiB
Plaintext
dnl escape "$0x" below using the m4 quadrigaph @S|@, and escape it again with a \ for the shell.
|
|
AC_DEFUN([SECP_64BIT_ASM_CHECK],[
|
|
AC_MSG_CHECKING(for x86_64 assembly availability)
|
|
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
|
#include <stdint.h>]],[[
|
|
uint64_t a = 11, tmp;
|
|
__asm__ __volatile__("movq \@S|@0x100000000,%1; mulq %%rsi" : "+a"(a) : "S"(tmp) : "cc", "%rdx");
|
|
]])],[has_64bit_asm=yes],[has_64bit_asm=no])
|
|
AC_MSG_RESULT([$has_64bit_asm])
|
|
])
|
|
|
|
AC_DEFUN([SECP_VALGRIND_CHECK],[
|
|
AC_MSG_CHECKING([for valgrind support])
|
|
if test x"$has_valgrind" != x"yes"; then
|
|
CPPFLAGS_TEMP="$CPPFLAGS"
|
|
CPPFLAGS="$VALGRIND_CPPFLAGS $CPPFLAGS"
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
|
#include <valgrind/memcheck.h>
|
|
]], [[
|
|
#if defined(NVALGRIND)
|
|
# error "Valgrind does not support this platform."
|
|
#endif
|
|
]])], [has_valgrind=yes; AC_DEFINE(HAVE_VALGRIND,1,[Define this symbol if valgrind is installed, and it supports the host platform])])
|
|
fi
|
|
AC_MSG_RESULT($has_valgrind)
|
|
])
|
|
|
|
dnl SECP_TRY_APPEND_CFLAGS(flags, VAR)
|
|
dnl Append flags to VAR if CC accepts them.
|
|
AC_DEFUN([SECP_TRY_APPEND_CFLAGS], [
|
|
AC_MSG_CHECKING([if ${CC} supports $1])
|
|
SECP_TRY_APPEND_CFLAGS_saved_CFLAGS="$CFLAGS"
|
|
CFLAGS="$1 $CFLAGS"
|
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[char foo;]])], [flag_works=yes], [flag_works=no])
|
|
AC_MSG_RESULT($flag_works)
|
|
CFLAGS="$SECP_TRY_APPEND_CFLAGS_saved_CFLAGS"
|
|
if test x"$flag_works" = x"yes"; then
|
|
$2="$$2 $1"
|
|
fi
|
|
unset flag_works
|
|
AC_SUBST($2)
|
|
])
|
|
|
|
dnl SECP_SET_DEFAULT(VAR, default, default-dev-mode)
|
|
dnl Set VAR to default or default-dev-mode, depending on whether dev mode is enabled
|
|
AC_DEFUN([SECP_SET_DEFAULT], [
|
|
if test "${enable_dev_mode+set}" != set; then
|
|
AC_MSG_ERROR([[Set enable_dev_mode before calling SECP_SET_DEFAULT]])
|
|
fi
|
|
if test x"$enable_dev_mode" = x"yes"; then
|
|
$1="$3"
|
|
else
|
|
$1="$2"
|
|
fi
|
|
])
|