summaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
authorDaniel Baumann <daniel@debian.org>2024-11-21 17:49:05 +0100
committerDaniel Baumann <daniel@debian.org>2024-11-21 17:49:05 +0100
commit4a8e45026e0f5de7d9711cfe1ddd23518b1d17db (patch)
tree3f0f2bf5c60c901954649edcbf7611328575ff29 /configure.ac
parentInitial commit. (diff)
downloadcryptopant-4a8e45026e0f5de7d9711cfe1ddd23518b1d17db.tar.xz
cryptopant-4a8e45026e0f5de7d9711cfe1ddd23518b1d17db.zip
Adding upstream version 1.3.1.upstream/1.3.1upstream
Signed-off-by: Daniel Baumann <daniel@debian.org>
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac107
1 files changed, 107 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..5d16851
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,107 @@
+m4_define([cryptopANT_major_version], [1])
+m4_define([cryptopANT_minor_version], [3])
+m4_define([cryptopANT_micro_version], [1])
+m4_define([cryptopANT_version], [cryptopANT_major_version.cryptopANT_minor_version.cryptopANT_micro_version])
+
+#format: current:revision:age
+#If the library source code has changed at all since the last update, then increment revision (‘c:r:a’ becomes ‘c:r+1:a’).
+#If any interfaces have been added, removed, or changed since the last update, increment current, and set revision to 0.
+#If any interfaces have been added since the last public release, then increment age.
+#If any interfaces have been removed or changed since the last public release, then set age to 0.
+#see also https://autotools.io/libtool/version.html
+m4_define([cryptopANT_library_version], ["1:4:0"])
+
+AC_INIT([cryptopANT], [cryptopANT_version], [ant@isi.edu], [cryptopANT])
+dnl m4_pattern_allow(AC_CONFIG_MACRO_DIRS)
+AC_CONFIG_MACRO_DIR([m4])
+AC_CONFIG_HEADERS([src/config.h])
+AC_PROG_CC
+AC_C_BIGENDIAN()
+AM_PROG_CC_C_O
+
+# Check headers
+AC_CHECK_HEADERS([openssl/blowfish.h], HAVE_OPENSSL=1, HAVE_OPENSSL=0)
+AC_CHECK_HEADERS([openssl/sha.h],, HAVE_OPENSSL=0)
+AC_CHECK_HEADERS([openssl/aes.h],, HAVE_OPENSSL=0)
+AC_CHECK_HEADERS([openssl/md5.h],, HAVE_OPENSSL=0)
+AC_CHECK_HEADERS([openssl/evp.h],, HAVE_OPENSSL=0)
+AC_CHECK_HEADERS([openssl/provider.h],, HAVE_OPENSSL=0)
+AC_CHECK_HEADERS([openssl/err.h],, HAVE_OPENSSL=0)
+AC_CHECK_HEADERS([openssl/core_names.h],, HAVE_OPENSSL=0)
+
+# Check for POSIX regular expressions support.
+AC_CHECK_HEADERS([regex.h], HAVE_REGEX_H=1, HAVE_REGEX_H=0)
+
+if test "x$HAVE_REGEX_H" = "x1"; then
+ AC_CHECK_FUNCS([regcomp regexec],, HAVE_REGEX=0)
+else
+ HAVE_REGEX=0
+fi
+if test "x$HAVE_REGEX_H" = "x0"; then
+ AC_MSG_FAILURE([regex library is not found: make sure glibc-devel is installed])
+fi
+if test "x$HAVE_OPENSSL_H" = "x0"; then
+ AC_MSG_FAILURE([ssl is not found: make sure openssl-devel is installed])
+fi
+AC_CHECK_LIB([crypto], [EVP_CIPHER_CTX_new],, HAVE_OPENSSL=0)
+AC_CHECK_LIB([crypto], [EVP_MD_CTX_new],, HAVE_OPENSSL=0)
+if test "x$HAVE_OPENSSL" = "x0"; then
+ AC_MSG_FAILURE([ssl is not found: make sure openssl library version 3.1.0 or higher is installed])
+fi
+
+AC_DEFINE([HAVE_S6_ADDR32], [0], [S6_ADDR32 is present in in6_addr when defined])
+AC_DEFINE([HAVE__U6_ADDR32], [0], [U6_ADDR32 is present in in6_addr when defined])
+AC_CHECK_MEMBER([struct in6_addr.s6_addr32],
+ [AC_DEFINE([HAVE_S6_ADDR32], [1])],
+ [
+ AC_CHECK_MEMBER([struct in6_addr.__u6_addr.__u6_addr32],
+ [AC_DEFINE([HAVE__U6_ADDR32], [1])],
+ [AC_MSG_ERROR([CAN'T find s6_addr32])],
+ [#include <netinet/in.h>])
+ ], [#include <netinet/in.h>])
+
+AC_CHECK_FUNCS([strlcpy])
+
+AC_C_CONST
+AC_TYPE_SIZE_T
+AC_TYPE_UINT32_T
+
+# Check --enable-warn-all
+AC_ARG_ENABLE([warn-all], [AS_HELP_STRING([--enable-warn-all], [Enable all compiler warnings])], [AX_CFLAGS_WARN_ALL()])
+
+# Check --with-extra-cflags
+AC_ARG_WITH([extra-cflags], [AS_HELP_STRING([--with-extra-cflags=CFLAGS], [Add extra CFLAGS])], [
+ AC_MSG_NOTICE([appending extra CFLAGS... $withval])
+ AS_VAR_APPEND(CFLAGS, [" $withval"])
+])
+
+# Check --with-extra-ldflags
+AC_ARG_WITH([extra-ldflags], [AS_HELP_STRING([--with-extra-ldflags=CFLAGS], [Add extra LDFLAGS])], [
+ AC_MSG_NOTICE([appending extra LDFLAGS... $withval])
+ AS_VAR_APPEND(LDFLAGS, [" $withval"])
+])
+
+# Check --with-scramble_ips
+build_scramble_ips=no
+AC_ARG_WITH([scramble_ips], [AS_HELP_STRING([--with-scramble_ips], [Also build scramble_ips tool])], [
+ build_scramble_ips=$withval
+ AS_IF([test "x$build_scramble_ips" = "xyes"],
+ [AC_MSG_NOTICE([Building tool "scramble_ips"])],
+ [AC_MSG_NOTICE([Not building tool "scramble_ips"])]
+ )
+])
+AM_CONDITIONAL([BUILD_SCRAMBLE_IPS], [test "x$build_scramble_ips" = "xyes"])
+
+AC_CONFIG_FILES([Makefile cryptopANT.spec])
+AC_ENABLE_SHARED
+AC_ENABLE_STATIC
+AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects])
+m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
+LT_INIT
+
+AC_SUBST([PACKAGE_VERSION], [cryptopANT_version])
+AC_SUBST([PACKAGE_VERSION_MAJOR], [cryptopANT_major_version])
+AC_SUBST([PACKAGE_VERSION_MINOR], [cryptopANT_minor_version])
+AC_SUBST([PACKAGE_VERSION_MICRO], [cryptopANT_micro_version])
+AC_SUBST([CRYPTOPANT_LIBRARY_VERSION], [cryptopANT_library_version])
+AC_OUTPUT