72 lines
1.8 KiB
Plaintext
72 lines
1.8 KiB
Plaintext
|
|
AC_PREREQ(2.6)
|
|
AC_INIT([codecrypt], [1.7.5])
|
|
AC_CONFIG_AUX_DIR(.) # because of libtoolize
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
|
|
AM_INIT_AUTOMAKE()
|
|
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES])
|
|
|
|
CFLAGS="$CFLAGS"
|
|
CXXFLAGS="$CXXFLAGS"
|
|
LDFLAGS="$LDFLAGS"
|
|
|
|
LT_INIT
|
|
|
|
AM_PROG_CC_C_O
|
|
AC_PROG_CXX
|
|
AC_PROG_CPP
|
|
AC_PROG_INSTALL
|
|
|
|
#check for compilable GMP presence
|
|
AC_CHECK_HEADERS([gmp.h], , AC_MSG_ERROR([Codecrypt requires gmp.h]))
|
|
AC_CHECK_LIB(gmp, __gmpz_init, , AC_MSG_ERROR([Codecrypt requires libgmp]))
|
|
|
|
#check for FFTW library presence
|
|
AC_CHECK_HEADERS([fftw3.h], , AC_MSG_ERROR([Codecrypt requires fftw3.h]))
|
|
AC_CHECK_LIB(fftw3, fftw_plan_dft_1d, , AC_MSG_ERROR([Codecrypt requires libfftw3]))
|
|
|
|
#check whether to build with crypto++
|
|
AC_ARG_WITH([cryptopp],
|
|
AC_HELP_STRING([--with-cryptopp],[Build algorithms that need Crypto++ support]),
|
|
[WITH_CRYPTOPP=$withval],
|
|
[WITH_CRYPTOPP=yes])
|
|
|
|
#and check crypto++
|
|
if test "$WITH_CRYPTOPP" = "yes"; then
|
|
|
|
PKG_CHECK_MODULES([CRYPTOPP],[libcrypto++])
|
|
|
|
#crypto++ headers are either in include/crypto++ or include/cryptopp,
|
|
#the information is otherwise unavailable from standard configuration
|
|
#means. Please report/add more tests if you encounter distros that
|
|
#place them elsewhere.
|
|
AC_LANG_PUSH([C++])
|
|
AC_CHECK_HEADER([crypto++/config.h],
|
|
AC_DEFINE([CRYPTOPP_DIR_PLUS], [1]),
|
|
AC_DEFINE([CRYPTOPP_DIR_PLUS], [0])
|
|
)
|
|
AC_LANG_POP([C++])
|
|
|
|
AC_DEFINE([HAVE_CRYPTOPP], [1])
|
|
else
|
|
AC_DEFINE([HAVE_CRYPTOPP], [0])
|
|
fi
|
|
|
|
#check for standard functions
|
|
AC_CHECK_FUNCS([memset mkdir], , AC_MSG_ERROR([Required function missing]))
|
|
|
|
#unixy headers
|
|
AC_CHECK_HEADERS([fcntl.h inttypes.h stddef.h stdlib.h string.h sys/file.h unistd.h], , AC_MSG_ERROR([Required header file missing]))
|
|
|
|
#other used stuff
|
|
AC_CHECK_HEADER_STDBOOL
|
|
AC_C_INLINE
|
|
AC_TYPE_SIZE_T
|
|
AC_TYPE_UINT32_T
|
|
AC_TYPE_UINT64_T
|
|
AC_TYPE_UINT8_T
|
|
|
|
AC_CONFIG_FILES([Makefile])
|
|
AC_OUTPUT
|