diff options
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 240 |
1 files changed, 240 insertions, 0 deletions
diff --git a/configure.in b/configure.in new file mode 100644 index 000000000..725be81e6 --- /dev/null +++ b/configure.in @@ -0,0 +1,240 @@ +dnl configure.in for linux strongSwan +dnl Copyright (C) 2006 Martin Willi +dnl Hochschule fuer Technik Rapperswil +dnl +dnl This program is free software; you can redistribute it and/or modify it +dnl under the terms of the GNU General Public License as published by the +dnl Free Software Foundation; either version 2 of the License, or (at your +dnl option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>. +dnl +dnl This program is distributed in the hope that it will be useful, but +dnl WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +dnl or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +dnl for more details. + +dnl =========================== +dnl initialize & set some vars +dnl =========================== + +AC_INIT(strongSwan,4.1.1) +AM_INIT_AUTOMAKE(tar-ustar) +AC_C_BIGENDIAN +AC_SUBST(confdir, '${sysconfdir}') + +dnl ================================= +dnl check --enable-xxx & --with-xxx +dnl ================================= + + +AC_ARG_WITH( + [default-pkcs11], + AS_HELP_STRING([--with-default-pkcs11=lib],[set the default PKCS11 library other than "/usr/lib/opensc-pkcs11.so"]), + [AC_DEFINE_UNQUOTED(PKCS11_DEFAULT_LIB, "$withval")], + [AC_DEFINE_UNQUOTED(PKCS11_DEFAULT_LIB, "/usr/lib/opensc-pkcs11.so")] +) + +AC_ARG_WITH( + [xauth-module], + AS_HELP_STRING([--with-xauth-module=lib],[set the path to the XAUTH module]), + [AC_DEFINE_UNQUOTED(XAUTH_DEFAULT_LIB, "$withval")], +) + +AC_ARG_WITH( + [random-device], + AS_HELP_STRING([--with-random-device=dev],[set the device for real random data other than "/dev/random"]), + [AC_DEFINE_UNQUOTED(DEV_RANDOM, "$withval")], + [AC_DEFINE_UNQUOTED(DEV_RANDOM, "/dev/random")] +) +AC_ARG_WITH( + [resolv-conf], + AS_HELP_STRING([--with-resolv-conf=file],[set the file to store DNS server information other than "sysconfdir/resolv.conf"]), + [AC_DEFINE_UNQUOTED(RESOLV_CONF, "$withval")], + [AC_DEFINE_UNQUOTED(RESOLV_CONF, "${sysconfdir}/resolv.conf")] +) + +AC_ARG_WITH( + [urandom-device], + AS_HELP_STRING([--with-urandom-device=dev],[set the device for pseudo random data other than "/dev/urandom"]), + [AC_DEFINE_UNQUOTED(DEV_URANDOM, "$withval")], + [AC_DEFINE_UNQUOTED(DEV_URANDOM, "/dev/urandom")] +) + +AC_ARG_WITH( + [ipsecdir], + AS_HELP_STRING([--with-ipsecdir=dir],[installation path for ipsec tools other than "libexecdir/ipsec"]), + [AC_SUBST(ipsecdir, "$withval")], + [AC_SUBST(ipsecdir, "${libexecdir}/ipsec")] +) + +AC_ARG_WITH( + [piddir], + AS_HELP_STRING([--with-piddir=dir],[path for PID and UNIX socket files other than "/var/run"]), + [AC_SUBST(piddir, "$withval")], + [AC_SUBST(piddir, "/var/run")] +) + +AC_ARG_WITH( + [eapdir], + AS_HELP_STRING([--with-eapdir=dir],[path for pluggable EAP modules other than "ipsecdir/eap"]), + [AC_SUBST(eapdir, "$withval")], + [AC_SUBST(eapdir, "${ipsecdir}/eap")] +) + +AC_ARG_WITH( + [sim-reader], + AS_HELP_STRING([--with-sim-reader=library.so],[library containing the sim_run_alg() function for EAP-SIM]), + [AC_DEFINE_UNQUOTED(SIM_READER_LIB, "$withval")] +) + +AC_ARG_ENABLE( + [http], + AS_HELP_STRING([--enable-http],[enable OCSP and fetching of Certificates and CRLs over HTTP (default is NO). Requires libcurl.]), + [if test x$enableval = xyes; then + http=true + AC_DEFINE(LIBCURL) + fi] +) +AM_CONDITIONAL(USE_LIBCURL, test x$http = xtrue) + +AC_ARG_ENABLE( + [ldap], + AS_HELP_STRING([--enable-ldap],[enable fetching of CRLs from LDAP (default is NO). Requires openLDAP.]), + [if test x$enableval = xyes; then + ldap=true + AC_DEFINE(LIBLDAP) + fi] +) +AM_CONDITIONAL(USE_LIBLDAP, test x$ldap = xtrue) + +AC_ARG_ENABLE( + [smartcard], + AS_HELP_STRING([--enable-smartcard],[enable smartcard support (default is NO).]), + [if test x$enableval = xyes; then + smartcard=true + AC_DEFINE(SMARTCARD) + fi] +) +AM_CONDITIONAL(USE_SMARTCARD, test x$smartcard = xtrue) + +AC_ARG_ENABLE( + [cisco-quirks], + AS_HELP_STRING([--enable-cisco-quirks],[enable support of Cisco VPN client (default is NO).]), + [if test x$enableval = xyes; then + cisco_quirks=true + fi] +) +AM_CONDITIONAL(USE_CISCO_QUIRKS, test x$cisco_quirks = xtrue) + +AC_ARG_ENABLE( + [leak-detective], + AS_HELP_STRING([--enable-leak-detective],[enable malloc hooks to find memory leaks (default is NO).]), + [if test x$enableval = xyes; then + leak_detective=true + fi] +) +AM_CONDITIONAL(USE_LEAK_DETECTIVE, test x$leak_detective = xtrue) + +AC_ARG_ENABLE( + [eap-sim], + AS_HELP_STRING([--enable-eap-sim],[build SIM authenication module for EAP (default is NO).]), + [if test x$enableval = xyes; then + eap_sim=true + fi] +) +AM_CONDITIONAL(BUILD_EAP_SIM, test x$eap_sim = xtrue) + +AC_ARG_ENABLE( + [nat-transport], + AS_HELP_STRING([--enable-nat-transport],[enable NAT traversal with IPsec transport mode (default is NO).]), + [if test x$enableval = xyes; then + nat_transport=true + fi] +) +AM_CONDITIONAL(USE_NAT_TRANSPORT, test x$nat_transport = xtrue) + +AC_ARG_ENABLE( + [vendor-id], + AS_HELP_STRING([--disable-vendor-id],[disable the sending of the strongSwan vendor ID (default is NO).]), + [if test x$enableval = xyes; then + vendor_id=true + else + vendor_id=false + fi], + vendor_id=true +) +AM_CONDITIONAL(USE_VENDORID, test x$vendor_id = xtrue) + +dnl ========================= +dnl check required programs +dnl ========================= + +AC_PROG_INSTALL +AC_PROG_LIBTOOL +AC_PROG_LEX +AC_PROG_YACC +AC_PROG_CC() +AC_PATH_PROG([GPERF], [gperf], [], [$PATH:/bin:/usr/bin:/usr/local/bin]) +AC_PATH_PROG([PERL], [perl], [], [$PATH:/bin:/usr/bin:/usr/local/bin]) + +dnl ========================== +dnl check required libraries +dnl ========================== + +AC_CHECK_FUNCS(backtrace) +AC_CHECK_FUNCS(getifaddrs) + +AC_HAVE_LIBRARY([gmp],[LIBS="$LIBS"],[AC_MSG_ERROR([GNU Multi Precision library gmp not found])]) +if test "$ldap" = "true"; then + AC_HAVE_LIBRARY([ldap],[LIBS="$LIBS"],[AC_MSG_ERROR([LDAP enabled, but library ldap not found])]) + AC_HAVE_LIBRARY([lber],[LIBS="$LIBS"],[AC_MSG_ERROR([LDAP enabled, but library lber not found])]) +fi +if test "$http" = "true"; then + AC_HAVE_LIBRARY([curl],[LIBS="$LIBS"],[AC_MSG_ERROR([HTTP enabled, but library curl not found])]) +fi + + +dnl ============================= +dnl check required header files +dnl ============================= + + +AC_MSG_CHECKING([gmp.h version >= 4.1.4]) +AC_TRY_COMPILE( + [#include "gmp.h"], + [ + #if (__GNU_MP_VERSION*100 + __GNU_MP_VERSION_MINOR*10 + __GNU_MP_VERSION_PATCHLEVEL) < 414 + #error bad gmp + #endif + ], + [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); AC_MSG_ERROR([No usable gmp.h found!])] +) +if test "$ldap" = "true"; then + AC_CHECK_HEADER([ldap.h],,[AC_MSG_ERROR([LDAP enabled, but ldap.h not found!])]) +fi +if test "$http" = "true"; then + AC_CHECK_HEADER([curl/curl.h],,[AC_MSG_ERROR([HTTP enabled, but curl.h not found!])]) +fi + +dnl ============================== +dnl build Makefiles +dnl ============================== + +AC_OUTPUT( + Makefile + src/Makefile + src/libstrongswan/Makefile + src/libcrypto/Makefile + src/libfreeswan/Makefile + src/pluto/Makefile + src/whack/Makefile + src/charon/Makefile +dnl src/charon/testing/Makefile + src/stroke/Makefile + src/ipsec/Makefile + src/starter/Makefile + src/_updown/Makefile + src/_updown_espmark/Makefile + src/_copyright/Makefile + src/openac/Makefile + src/scepclient/Makefile +) |