-dnl $Id: configure.in,v 1.103 2001-09-07 13:44:37 rufustfirefly Exp $
+dnl $Id: configure.in,v 1.118 2001-10-25 20:37:04 srittau Exp $
dnl configure.in for netatalk
+dnl Check for SSL
+AC_DEFUN([AM_PATH_SSL], [
+ tryssl=yes
+
+ 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
+ tryssl=no
+ fi
+ ]
+ )
+
+ SSL_CFLAGS=""
+ SSL_LIBS=""
+ compile_ssl=no
+
+ 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
+ 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"
+ if test "$need_dash_r" = "yes"; then
+ SSL_LIBS="$SSL_LIBS -R$ssldir/lib -R$ssldir"
+ fi
+ AC_MSG_RESULT([$ssldir (enabling RANDNUM and DHX support)])
+
+ dnl Check for the crypto library:
+ AC_CHECK_LIB(crypto, main)
+ dnl Check for "DES" library (for SSLeay, not openssl):
+ AC_CHECK_LIB(des, main)
+
+ dnl FIXME: do that temporarily
+ LDFLAGS="$LDFLAGS -L$ssldir/lib -L$ssldir"
+ CFLAGS="$CFLAGS -I$ssldir/include -I$ssldir/include/openssl"
+ if test "$need_dash_r" = "yes"; then
+ LIBS="$LIBS -R$ssldir/lib -R$ssldir"
+ fi
+
+ AC_DEFINE(OPENSSL_DHX, 1)
+ AC_DEFINE(UAM_DHX, 1)
+ compile_ssl=yes
+ break
+ fi
+ done
+ if test "x$compile_ssl" = "xno"; then
+ AC_MSG_RESULT([no])
+ fi
+ fi
+ AC_SUBST(SSL_CFLAGS)
+ AC_SUBST(SSL_LIBS)
+])
+
+
+
AC_INIT(bin/adv1tov2/adv1tov2.c)
NETATALK_VERSION=`cat VERSION`
AC_HEADER_DIRENT
AC_HEADER_STDC
AC_HEADER_SYS_WAIT
-AC_CHECK_HEADERS(fcntl.h limits.h stdint.h strings.h sys/fcntl.h sys/file.h sys/ioctl.h sys/time.h sys/mnttab.h sys/statvfs.h sys/stat.h sys/vfs.h mntent.h syslog.h unistd.h termios.h sys/termios.h netdb.h sgtty.h ufs/quota.h mount.h sys/mount.h statfs.h sys/types.h dlfcn.h errno.h sys/errno.h)
+AC_CHECK_HEADERS(fcntl.h limits.h stdint.h strings.h sys/fcntl.h sys/file.h sys/ioctl.h sys/time.h sys/mnttab.h sys/statvfs.h sys/stat.h sys/vfs.h mntent.h syslog.h unistd.h termios.h sys/termios.h netdb.h sgtty.h ufs/quota.h mount.h sys/mount.h statfs.h sys/types.h dlfcn.h errno.h sys/errno.h security/pam_appl.h)
AC_CHECK_HEADER(sys/cdefs.h,,
AC_MSG_RESULT([enabling generic cdefs.h from tree])
CFLAGS="-I\$(top_srcdir)/sys/generic $CFLAGS"
)
AC_ARG_WITH(config-dir,
- [ --with-config-dir=DIR obsolete - use --pkgconfdir],
+ [ --with-config-dir=DIR obsolete - use --with-pkgconfdir],
sysconfdir="$withval",
if test "x$prefix" = "xNONE"; then
sysconfdir="$ac_default_prefix/etc"
AC_ARG_WITH(pkgconfdir,
[ --with-pkgconfdir=DIR package specific configuration in DIR
- [default=SYSCONF/netatalk]],
+ [[SYSCONF/netatalk]]],
PKGCONFDIR="$withval",
PKGCONFDIR="${sysconfdir}/netatalk"
)
AC_ARG_WITH(cracklib,
- [ --with-cracklib=dict enable/set location of cracklib dictionary],
+ [ --with-cracklib=DICT enable/set location of cracklib dictionary],
if test "x$withval" != "xno" ; then
cracklib="$withval"
AC_CHECK_LIB(crack, main,
dnl Check for CNID DB support
AC_ARG_ENABLE(cnid-db,
- [ --enable-cnid-db use persistent cnid database per volume (EXPERIMENTAL) ],
+ [ --enable-cnid-db use persistent cnid database per volume (EXPERIMENTAL) ],
if test "x$enableval" = "xyes"; then
dnl Now we need DB3
db3_required="yes"
)
db3_found=no
-for db3dir in "" $trydb3dir /usr /usr /usr/local ; do
- if test -f "$db3dir/include/db3/db.h" ; then
- LDFLAGS="$LDFLAGS -L$db3dir/lib -ldb3"
- CFLAGS="$CFLAGS -I$db3dir/include/db3"
+for db3dir in "" $trydb3dir "$trydb3dir/include" /usr/local/BerkeleyDB.3.3/include /usr/include/db3 /usr/local/include/db3 ; do
+ if test -f "$db3dir/db.h" ; then
+ db3libdir="`echo $db3dir | sed 's/include\/db3$/lib/'`"
+ db3libdir="`echo $db3libdir | sed 's/include$/lib/'`"
+ LDFLAGS="$LDFLAGS -L$db3libdir"
+ CFLAGS="$CFLAGS -I$db3dir"
dnl If we require DB3, die if we don't have it
if test "x$db3_required" != "xno"; then
fi
AC_ARG_WITH(did,
- [ --with-did=[scheme] set DID scheme (last,mtab)],
+ [ --with-did=SCHEME set DID scheme (last,mtab)],
if test "x$withval" != "xno" ; then
if test "$withval" = "last"; then
AC_DEFINE(USE_LASTDID, 1)
msg_dir=""
AC_ARG_WITH(message-dir,
- [ --with-msg-dir=path path to message files [default=$ac_prefix_default/etc/msg]],
+ [ --with-msg-dir=PATH path to message files [[PKGCONF/msg]]],
msg_dir="$withval"
if test x"$msg_dir" = "x"; then
msg_dir="${PKGCONFDIR}/msg"
fi
AC_DEFINE_UNQUOTED(SERVERTEXT, "$msg_dir",
- [path to message dir [default=$ac_prefix_default/etc/msg]])
+ [path to message dir [[PKGCONF/msg]]])
SERVERTEXT="$msg_dir"
AC_SUBST(SERVERTEXT)
)
-AC_CHECK_LIB(pam, pam_start,
- AC_DEFINE(USE_PAM, 1)
- LIBS="$LIBS -lpam"
- compile_pam=yes
+AC_ARG_ENABLE(srvloc,
+ [ --enable-srvloc turn on Server Location Protocol support (EXPERIMENTAL)],
+ srvloc=$enableval,
+ srvloc=no
)
+dnl Conditional for optional server location protocol support (used by OS X)
+AM_CONDITIONAL(USE_SRVLOC, test "x$srvloc" != "xno")
+if test "x$srvloc" != "xno"; then
+ for slpdir in "" $srvloc /usr /usr/local ; do
+ if test -f "$slpdir/include/slp.h" ; then
+ LDFLAGS="$LDFLAGS -L$slpdir/lib -lslp"
+ CFLAGS="$CFLAGS -I$slpdir/include"
+ AC_CHECK_LIB(slp,SLPOpen)
+ AC_CHECK_FUNCS(SLPReg SLPDereg SLPClose)
+ AC_DEFINE(USE_SRVLOC, 1)
+ break
+ fi
+ done
+fi
+
+# Check for PAM libs
+AC_MSG_CHECKING([whether PAM support should be enabled])
AC_ARG_WITH(pam,
- [ --without-pam disable password authentication modules support],
- compile_pam=no
+ [ --with-pam enable PAM support],
+ [PAM_MSG="$withval"],
+ [PAM_MSG="yes"]
+)
+AC_MSG_RESULT($PAM_MSG)
+use_pam_so=yes
+compile_pam=yes
+
+if test "x$PAM_MSG" = "xyes"; then
+ if test "x$ac_cv_header_security_pam_appl_h" = "xyes" ; then
+
+ AC_CHECK_LIB(pam, pam_set_item,
+ [PAPD_LIBS="$PAPD_LIBS -lpam"; AFPD_LIBS="$AFPD_LIBS -lpam"; use_pam_so=yes; compile_pam=yes; AC_DEFINE(USE_PAM)],
+ [use_pam_so=no; compile_pam=no]
+ )
+ fi
+else
use_pam_so=no
- AC_DEFINE(USE_PAM, 0)
- AC_MSG_RESULT([disabling pam modules support])
-)
-if test "x$compile_pam" = "xyes"; then
- use_pam_so=yes
- AC_MSG_RESULT([enabling pam modules support])
+ compile_pam=no
fi
-shadowpw=no
+AC_MSG_CHECKING([whether shadow support should be enabled])
AC_ARG_WITH(shadow,
[ --with-shadow enable shadow password support],
- AC_MSG_RESULT([enabling shadow password support])
- AC_DEFINE(SHADOWPW)
- shadowpw=yes
+ [shadowpw="$withval"],
+ [shadowpw=no]
)
+if test "x$shadowpw" = "xyes"; then
+ AC_DEFINE(SHADOWPW)
+fi
+AC_MSG_RESULT([$shadowpw])
AC_ARG_ENABLE(shell-check,
[ --disable-shell-check disable checking for a valid shell],
fi
)
+AC_MSG_CHECKING([whether flock locks should be enabled])
AC_ARG_WITH(flock-locks,
[ --with-flock-locks enable flock locks support],
- AC_MSG_RESULT([enabling flock locks])
- AC_DEFINE(USE_FLOCK_LOCKS)
+ [flock_locks="$withval"],
+ [flock_locks="no"]
)
+if test "x$flock_locks" = "xyes"; then
+ AC_DEFINE(USE_FLOCK_LOCKS)
+fi
+AC_MSG_RESULT([$flock_locks])
AC_ARG_WITH(tcp-wrappers,
[ --with-tcp-wrappers enable TCP wrappers support],
)
dnl ----- timelord compilation (disabled by default)
+AC_MSG_CHECKING([whether timelord should be compiled])
compile_timelord=no
AC_ARG_ENABLE(timelord,
[ --enable-timelord enable compilation of timelord server],
- if test "$enableval" = "yes"; then
- compile_timelord=yes
- fi
- AC_MSG_RESULT([enabling timelord compilation])
+ [compile_timelord="$enableval"],
+ [compile_timelord="no"]
)
+AC_MSG_RESULT([$compile_timelord])
AC_ARG_WITH(uams-path,
- [ --with-uams-path=path path to UAMs [default=PKGCONF/uams]],
+ [ --with-uams-path=PATH path to UAMs [[PKGCONF/uams]]],
uams_path="$withval",
uams_path="${PKGCONFDIR}/uams"
)
dnl post-FHS substitutions, etc
dnl --------------------------------------------------------------------------
-***** UAMS_PATH
+dnl ***** UAMS_PATH
AC_DEFINE_UNQUOTED(UAMS_PATH, "${uams_path}",
[path to UAMs [default=PKGCONF/uams]])
UAMS_PATH="${uams_path}"
dnl ----- NetBSD does not have crypt.h, uses unistd.h -----
AC_DEFINE(UAM_DHX, 1)
- AC_DEFINE(UAM_RNDNUM, 1)
- compile_dhx=yes
- compile_ssl=yes
AC_DEFINE(NO_CRYPT_H, 1)
fi
dnl ----- OpenBSD does not have crypt.h, uses unistd.h -----
AC_DEFINE(UAM_DHX, 1)
- AC_DEFINE(UAM_RNDNUM, 1)
- compile_dhx=yes
- compile_ssl=yes
AC_DEFINE(NO_CRYPT_H, 1)
fi
fi
dnl -- look for openssl
-tryssl=yes
-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
- tryssl=no
- fi
- ]
-)
-
-if test "$tryssl" = "yes"; then
- 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
- if test -f "$ssldir/include/openssl/cast.h" ; then
- LDFLAGS="$LDFLAGS -L$ssldir/lib -L$ssldir"
- CFLAGS="$CFLAGS -I$ssldir/include -I$ssldir/include/openssl"
- if test "$need_dash_r" = "yes"; then
- LIBS="$LIBS -R$ssldir/lib -R$ssldir"
- fi
-
- dnl Check for the crypto library:
- AC_CHECK_LIB(crypto, main)
- dnl LIBS="$LIBS -lcrypto"
- dnl Check for "DES" library (for SSLeay, not openssl):
- AC_CHECK_LIB(des, main)
-
- AC_DEFINE(OPENSSL_DHX, 1)
- AC_DEFINE(UAM_DHX, 1)
- AC_DEFINE(UAM_RNDNUM, 1)
- compile_dhx=yes
- compile_ssl=yes
- AC_MSG_RESULT([Found ssl and enabling RANDNUM and DHX support "$ssldir"])
- break
- fi
- done
-fi
+AM_PATH_SSL
dnl --------------------- check for building PGP UAM module
dnl --------------------- check for building Kerberos v4 UAM module
AC_ARG_ENABLE(krb4-uam,
- [ --enable-krb4-uam enable build of Kerberos v4 UAM module],
+ [ --enable-krb4-uam enable build of Kerberos v4 UAM module],
if test "$enableval" = "yes"; then
AC_DEFINE(UAM_KRB4, 1)
compile_kerberos=yes
)
dnl --------------------- overwrite the config files . . . or not.
-files="AppleVolumes.default AppleVolumes.system atalkd.conf netatalk.conf netatalk.pamd papd.conf afpd.conf"
-
+AC_MSG_CHECKING([whether configuration files should be overwritten])
AC_ARG_ENABLE(overwrite,
- [ --enable-overwrite Overwrite configuration files
- default=PKGCONFDIR],
- [
- OVERWRITE="$files"
- AC_MSG_RESULT([Overwrite configuration files])
- ],
-
- [
- for f in $files ; do
- if test -f "${PKGCONFDIR}/$f" ;
- then :;
- else OVERWRITE="${OVERWRITE} $f";
- fi
- done
- AC_MSG_RESULT([Don't overwrite existing configuration files])
- ]
+ [ --enable-overwrite overwrite configuration files],
+ [OVERWRITE_CONFIG="${enable_overwrite}"],
+ [OVERWRITE_CONFIG="no"]
)
+AC_MSG_RESULT([$OVERWRITE_CONFIG])
dnl --------------------- last minute substitutions
AC_SUBST(CFLAGS)
AC_SUBST(LDSHAREDFLAGS)
AC_SUBST(PKGCONFDIR)
-AC_SUBST(OVERWRITE)
+AC_SUBST(OVERWRITE_CONFIG)
AM_CONDITIONAL(SOLARIS_MODULE, test x$solaris_module = xyes)
AM_CONDITIONAL(COMPILE_TIMELORD, test x$compile_timelord = xyes)
-AM_CONDITIONAL(USE_DHX, test x$compile_dhx = xyes)
+AM_CONDITIONAL(USE_DHX, test x$compile_ssl = xyes)
AM_CONDITIONAL(USE_KERBEROS, test x$compile_kerberos = xyes)
AM_CONDITIONAL(USE_PAM_SO, test x$use_pam_so = xyes)
AM_CONDITIONAL(USE_PAM, test x$compile_pam = xyes)