configure.ac revision 1.43
1# $NetBSD: configure.ac,v 1.43 2020/04/18 19:27:49 jhigh Exp $ 2# 3# Process this file with autoconf to produce a configure script. 4 5AC_INIT([netpgp],[20140220],[Alistair Crooks <agc@netbsd.org> c0596823]) 6AC_PREREQ(2.69) 7AC_REVISION([$Revision: 1.43 $]) 8 9AS_SHELL_SANITIZE 10 11AC_CONFIG_SRCDIR([src/netpgp/netpgp.c]) 12AC_CONFIG_AUX_DIR([buildaux]) 13AC_CONFIG_HEADER([src/lib/config.h]) 14 15AM_INIT_AUTOMAKE([-Wall -Werror foreign]) 16AM_MAINTAINER_MODE 17 18AC_CANONICAL_HOST 19CANONICAL_HOST=$host 20AC_SUBST([CANONICAL_HOST]) 21 22# Checks for programs. 23# 24AC_PROG_MAKE_SET 25AC_PROG_AWK 26AC_PROG_CC 27AC_PROG_INSTALL 28AC_PROG_LIBTOOL 29AC_PROG_LN_S 30 31dnl based on AC_PROG_RANLIB from autoconf 32m4_ifndef([AC_PROG_AR],[dnl 33AN_MAKEVAR([AR], [AC_PROG_AR]) 34AN_PROGRAM([ar], [AC_PROG_AR]) 35AC_DEFUN([AC_PROG_AR], 36[AC_CHECK_TOOL(AR, ar, :)]) 37]) 38 39AC_PROG_AR 40 41# Compiler characteristics 42# 43AC_MSG_CHECKING([if using gcc]) 44AS_IF([test "$GCC" = "yes"], 45 [WARNCFLAGS="-Werror -Wall -Wpointer-arith" 46 AC_MSG_RESULT([yes; adding to CFLAGS: "$WARNCFLAGS"])], 47 [WARNCFLAGS="" 48 AC_MSG_RESULT([no])]) 49AC_SUBST([WARNCFLAGS]) 50 51# try to see if we need to link with -ldl 52AC_SEARCH_LIBS(dlopen, dl) 53 54# Checks for header files. 55# 56AC_HEADER_STDC 57AC_CHECK_HEADERS([CommonCrypto/CommonDigest.h]) 58AC_CHECK_HEADERS([dmalloc.h direct.h errno.h fcntl.h \ 59 inttypes.h limits.h malloc.h zlib.h]) 60AC_CHECK_HEADERS([openssl/aes.h openssl/bn.h openssl/camellia.h openssl/cast.h \ 61 openssl/des.h openssl/dsa.h openssl/err.h openssl/idea.h \ 62 openssl/md5.h openssl/rand.h openssl/rsa.h openssl/sha.h \ 63 openssl/err.h openssl/sha.h openssl/blowfish.h]) 64AC_CHECK_HEADERS([sys/cdefs.h sys/file.h sys/mman.h sys/param.h \ 65 sys/resource.h sys/uio.h]) 66 67AC_CHECK_HEADERS([bzlib.h], 68 [], 69 [AC_MSG_FAILURE([missing <bzlib.h>; is bzip2 installed?])]) 70 71# Checks for typedefs, structures, and compiler characteristics. 72# 73AC_TYPE_LONG_LONG_INT 74AC_TYPE_SIZE_T 75AC_TYPE_UINT16_T 76AC_TYPE_UINT32_T 77AC_TYPE_UINT64_T 78AC_TYPE_UINT8_T 79 80# check for openssl 81m4_include([ax_check_openssl.m4]) 82 83AX_CHECK_OPENSSL([LIBS="$LIBS $OPENSSL_LIBS" INCLUDES="$INCLUDES $OPENSSL_INCLUDES"], 84 [AC_MSG_ERROR([Missing OpenSSL])]) 85 86AC_CHECK_TYPES([SHA256_CTX], 87 [], 88 [AC_MSG_FAILURE([missing SHA256_CTX; is openssl 0.9.8 or newer installed?])], 89 [[ 90#if defined(HAVE_SYS_TYPES_H) 91#include <sys/types.h> 92#endif 93#if defined(HAVE_OPENSSL_SHA_H) 94#include <openssl/sha.h> 95#endif 96#if defined(HAVE_COMMONCRYPTO_COMMONDIGEST_H) 97#define COMMON_DIGEST_FOR_OPENSSL 1 98#include <CommonCrypto/CommonDigest.h> 99#endif 100]]) 101 102# Checks for library functions. 103# 104AC_SEARCH_LIBS([gzopen], [z]) 105AC_SEARCH_LIBS([BZ2_bzDecompress], [bz2]) 106AC_SEARCH_LIBS([RSA_public_encrypt], [crypto]) 107 108# Initialize the testsuite 109# 110AC_CONFIG_TESTDIR([tests]) 111AM_MISSING_PROG([AUTOM4TE], [autom4te]) 112 113# Generate the Makefiles 114# 115AC_CONFIG_FILES([ 116 Makefile 117 include/Makefile 118 src/Makefile 119 src/libmj/Makefile 120 src/lib/Makefile 121 src/netpgp/Makefile 122 src/netpgpkeys/Makefile 123 tests/Makefile 124 tests/atlocal 125]) 126AC_OUTPUT 127 128# Display feature results 129# 130AC_MSG_NOTICE([ === Configuration results ===]) 131AC_MSG_NOTICE([Version: $PACKAGE_VERSION]) 132AC_MSG_NOTICE([C compiler: $CC]) 133AC_MSG_NOTICE([Warning CFLAGS: $WARNCFLAGS]) 134AC_MSG_NOTICE([=============================]) 135