1 dnl Process this file with autoconf to produce a configure script.
3 dnl $Id: configure.in,v 1.21 2007/02/28 12:00:11 mrsam Exp $
5 dnl Copyright 1998 - 2007 Double Precision, Inc. See COPYING for
6 dnl distribution information.
8 AC_INIT(libuserdb, 0.10, [courier-users@lists.sourceforge.net])
10 >confdefs.h # Kill PACKAGE_ macros.
12 LPATH="$PATH:/usr/local/bin"
14 AC_CONFIG_SRCDIR(userdb.c)
15 AM_INIT_AUTOMAKE([foreign no-define])
17 dnl Checks for programs.
23 AC_PATH_PROGS(PERL, perl5 perl, perl, $LPATH)
25 if test "$PERL" = "perl"
27 AC_MSG_ERROR(Perl not found.)
30 if test "$GCC" = "yes"
32 CFLAGS="$CFLAGS -Wall"
35 CFLAGS="$CFLAGS -I.. -I${srcdir}/.."
37 dnl Checks for libraries.
39 AC_ARG_WITH(userdb, [ ], userdb="$withval", userdb="/etc/userdb")
41 USERDB="`echo $userdb | tr '[a-z]' '[A-Z]'`"
44 AC_ARG_WITH(userdbmandir, [ ], mandir="$withval")
46 AC_ARG_WITH(userdbtmpdir, [ ], tmpdir="$withval", tmpdir="")
50 if test "$tmpdir" = ""
52 tmpdir=`echo "$userdb" | sed 's/\/[^\/]*$//'`
57 AC_SUBST(userdbtmpdir)
60 AC_ARG_WITH(makedatprog, [ ], makedat="$withval", makedat="$bindir/makedat")
63 if test -d ${srcdir}/../md5
65 AC_DEFINE_UNQUOTED(HAVE_MD5,1,[ Whether libmd5.a is present ])
66 MD5LIB=../md5/libmd5.la
72 if test -d ${srcdir}/../sha1
74 SHA1LIB=../sha1/libsha1.la
80 if test -d ${srcdir}/../libhmac
82 AC_DEFINE_UNQUOTED(HAVE_HMAC,1, [ Whether libhmac.a is present ])
83 HMACLIB=../libhmac/libhmac.la
89 dnl Checks for header files.
91 AC_CHECK_HEADERS(sys/stat.h sys/time.h unistd.h fcntl.h termios.h crypt.h)
94 dnl Checks for typedefs, structures, and compiler characteristics.
102 AC_CHECK_LIB(crypt, crypt, CRYPTLIBS="-lcrypt")
104 LIBS="$CRYPTLIBS $LIBS"
105 AC_CHECK_FUNC(crypt, AC_DEFINE_UNQUOTED(HAVE_CRYPT,1,
106 [ Whether the crypt() function is available ]))
108 AC_CACHE_CHECK([for crypt() prototype],userdb_cv_NEED_CRYPT_PROTOTYPE,
119 ], [], userdb_cv_NEED_CRYPT_PROTOTYPE=1,
120 userdb_cv_NEED_CRYPT_PROTOTYPE=0 )
124 AC_DEFINE_UNQUOTED(NEED_CRYPT_PROTOTYPE, $userdb_cv_NEED_CRYPT_PROTOTYPE,
125 [ Whether crypt() must be explicitly prototyped ])
128 AC_CHECK_FUNCS(isatty gettimeofday)
130 AC_ARG_WITH(random, [ --with-random=/dev/urandom - location of the system random file generator
131 --without-random - there is no system random file generator ],
139 AC_CACHE_CHECK([for random source],userdb_cv_RANDOM,
141 if test -c /dev/urandom
143 userdb_cv_RANDOM=/dev/urandom
145 if test -c /dev/random
147 userdb_cv_RANDOM=/dev/random
149 userdb_cv_RANDOM="none"
153 random="$userdb_cv_RANDOM"
160 if test "$random" != "none"
162 AC_DEFINE_UNQUOTED(RANDOM, "$random",
163 [ System random number generator ])
166 AM_CONDITIONAL(HAVE_SGML, test -d ${srcdir}/../docbook)
168 AC_OUTPUT(Makefile userdb.pl makeuserdb pw2userdb vchkpw2userdb)