X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=macros%2Fssl-check.m4;h=8a58142be879c1a8402dce97797e67feadee1ab6;hb=9b34bfcf9852eb6aaeeff55dca4b14cdf66b2dfd;hp=c9fbbe813dde71b7d09382f0e326bf20149a114a;hpb=362c62cd45e6100542be104c2b52ffb3083d40a7;p=netatalk.git diff --git a/macros/ssl-check.m4 b/macros/ssl-check.m4 index c9fbbe81..8a58142b 100644 --- a/macros/ssl-check.m4 +++ b/macros/ssl-check.m4 @@ -1,35 +1,60 @@ -dnl $Id: ssl-check.m4,v 1.3 2001-11-13 15:43:41 srittau Exp $ dnl Autoconf macro to check for SSL or OpenSSL -AC_DEFUN([AC_PATH_SSL], [ - tryssl=yes - tryssldir= +AC_DEFUN([AC_NETATALK_CRYPT], [ + saveLIBS=$LIBS + LIBS="" + CRYPT_LIBS="" + + AC_CHECK_HEADERS(crypt.h) + AC_CHECK_LIB(crypt, main) + + CRYPT_LIBS=$LIBS + LIBS=$saveLIBS + + AC_SUBST(CRYPT_LIBS) +]) + + +AC_DEFUN([AC_NETATALK_PATH_SSL], [ AC_ARG_WITH(ssl-dir, [ --with-ssl-dir=PATH specify path to OpenSSL installation (must contain lib and include dirs)], [ - if test "x$withval" != "xno"; then - tryssldir="$withval" - else + if test "x$withval" = "xno"; then tryssl=no + elif test "x$withval" = "xyes"; then + tryssl=yes + tryssldir= + else + dnl FIXME: should only try in $withval + tryssl=yes + tryssldir="$withval" fi - ] + ], [tryssl=yes] ) SSL_CFLAGS="" SSL_LIBS="" - compile_ssl=no + saved_LIBS=$LIBS + saved_CFLAGS=$CFLAGS + neta_cv_have_openssl=no +dnl compile_ssl=no + + dnl make sure atalk_libname is defined beforehand + [[ -n "$atalk_libname" ]] || AC_MSG_ERROR([internal error, atalk_libname undefined]) if test "$tryssl" = "yes"; then AC_MSG_CHECKING([for SSL]) - for ssldir in "" $tryssldir /usr /usr/local/openssl /usr/lib/openssl /usr/local/ssl /usr/lib/ssl /usr/local /usr/pkg /opt /opt/openssl /usr/local/ssl ; do + for ssldir in "" $tryssldir /usr /usr/local/openssl /usr/$atalk_libname/openssl /usr/local/ssl /usr/$atalk_libname/ssl /usr/local /usr/pkg /opt /opt/openssl /usr/local/ssl ; do if test -f "$ssldir/include/openssl/cast.h" ; then SSL_CFLAGS="$SSL_CFLAGS -I$ssldir/include -I$ssldir/include/openssl" - SSL_LIBS="$SSL_LIBS -L$ssldir/lib -L$ssldir -lcrypto" + SSL_LIBS="$SSL_LIBS -L$ssldir/$atalk_libname -L$ssldir -lcrypto" if test "x$need_dash_r" = "xyes"; then - SSL_LIBS="$SSL_LIBS -R$ssldir/lib -R$ssldir" + SSL_LIBS="$SSL_LIBS -R$ssldir/$atalk_libname -R$ssldir" fi AC_MSG_RESULT([$ssldir (enabling RANDNUM and DHX support)]) + CFLAGS="$CFLAGS $SSL_CFLAGS" + LIBS="$LIBS $SSL_LIBS" dnl FIXME: The following looks crude and probably doesn't work properly. dnl Check for the crypto library: @@ -37,16 +62,22 @@ dnl FIXME: The following looks crude and probably doesn't work properly. dnl Check for "DES" library (for SSLeay, not openssl): AC_CHECK_LIB(des, main) - AC_DEFINE(OPENSSL_DHX, 1) - AC_DEFINE(UAM_DHX, 1) - compile_ssl=yes + AC_DEFINE(OPENSSL_DHX, 1, [Define if the OpenSSL DHX modules should be built]) + AC_DEFINE(UAM_DHX, 1, [Define if the DHX UAM modules should be compiled]) + neta_cv_have_openssl=yes + neta_cv_compile_dhx=yes + CFLAGS=$saved_CFLAGS + LIBS=$saved_LIBS break fi done - if test "x$compile_ssl" = "xno"; then + if test "x$neta_cv_have_openssl" = "xno"; then AC_MSG_RESULT([no]) fi fi + CFLAGS_REMOVE_USR_INCLUDE(SSL_CFLAGS) + LIB_REMOVE_USR_LIB(SSL_LIBS) AC_SUBST(SSL_CFLAGS) AC_SUBST(SSL_LIBS) + LIBS=$saved_LIBS ])