Mercurial > noffle
view configure.in @ 165:8ea6b5ddc5a5 noffle
[svn] * src/lock.h,src/lock.c,src/noffle.c: Add lazy lock release. Only release
the lock and close the databases if (a) another process signals us
SIGUSR1 indicating it wants the lock, or (b) it is explicitly requested by
a call to new function Lock_syncDatabases(). When waiting for the lock,
SIGUSR1 the holding process every second. This is all an attempt to
minimise the number of times we need to close and open the database.
When (ha!) the database is replaced by something that can handle
multiple simultaneous writers (with appropriate locking) this won't
be necessary.
author | bears |
---|---|
date | Thu, 25 Jan 2001 13:38:31 +0000 |
parents | fd821441f016 |
children | 98bbe33d13b8 |
line wrap: on
line source
dnl --------------------------------------------------------------------------- dnl Process this file with autoconf to produce a configure script. dnl --------------------------------------------------------------------------- AC_INIT(src/noffle.c) AC_PREREQ(2.13) PACKAGE=noffle VERSION=1.0pre7develop AM_CONFIG_HEADER(config.h) AM_INIT_AUTOMAKE($PACKAGE,$VERSION) dnl AM_MAINTAINER_MODE AC_DEFINE(_GNU_SOURCE) AC_LANG_C dnl --------------------------------------------------------------------------- dnl Checks for programs. dnl --------------------------------------------------------------------------- AC_PROG_CC AC_PROG_GCC_TRADITIONAL AC_PROG_INSTALL AC_PROG_MAKE_SET AC_PATH_PROG(SENDMAILPROG, sendmail, 'notfound', /usr/sbin:/usr/lib:$PATH) if test "x$SENDMAILPROG" = "xnotfound"; then AC_MSG_ERROR(sendmail program not found in /usr/lib:/usr/sbin:$PATH .) fi dnl --------------------------------------------------------------------------- dnl System checks. dnl --------------------------------------------------------------------------- AC_AIX AC_ISC_POSIX AC_MINIX dnl --------------------------------------------------------------------------- dnl Checks for libraries. dnl --------------------------------------------------------------------------- # Whenever both -lsocket and -lnsl are needed, it seems to be always the # case that gethostbyname requires -lnsl. So, check -lnsl first, for it # to be in LIBS before the setsockopt checks are performed. *However*, # on SINIX-N 5.43, this is false, and gethostent seems to be a better # candidate. So, let's use it below instead of gethostbyname, and see. # [ This is ripped from GNU tar. ] AC_CHECK_FUNC(gethostent) if test $ac_cv_func_gethostent = no; then AC_CHECK_LIB(nsl, gethostent) fi AC_CHECK_FUNC(setsockopt) if test $ac_cv_func_setsockopt = no; then AC_CHECK_LIB(socket, setsockopt) fi AC_CHECK_LIB(gdbm, gdbm_open) dnl --------------------------------------------------------------------------- dnl Checks for header files. dnl --------------------------------------------------------------------------- AC_HEADER_STDC AC_HEADER_DIRENT AC_CHECK_HEADERS(gdbm.h syslog.h sys/resource.h sys/utsname.h) AC_CHECK_HEADERS(fnmatch.h errno.h getopt.h time.h sys/time.h signal.h) AC_CHECK_HEADERS(netdb.h sys/socket.h fcntl.h limits.h unistd.h) dnl --------------------------------------------------------------------------- dnl Checks for typedefs, structures, and compiler characteristics. dnl --------------------------------------------------------------------------- AC_C_CONST AC_TYPE_SIZE_T AC_HEADER_TIME AC_STRUCT_TM AC_CACHE_CHECK(socklen_t, noffle_cv_type_socklen_t, AC_TRY_COMPILE([ #include <sys/types.h> #include <sys/socket.h> ], [ socklen_t s; ], noffle_cv_type_socklen_t=yes, noffle_cv_type_socklen_t=no) ) if test "x$noffle_cv_type_socklen_t" = "xno" then AC_DEFINE_UNQUOTED(socklen_t, unsigned int) fi dnl --------------------------------------------------------------------------- dnl Checks for library functions. dnl --------------------------------------------------------------------------- AC_TYPE_SIGNAL AC_FUNC_STRFTIME AC_FUNC_FNMATCH AC_CHECK_FUNCS(fdopen vsnprintf snprintf __vsnprintf __snprintf) AC_CHECK_FUNCS(gethostname mkdir mktime select socket strerror strstr uname) dnl --------------------------------------------------------------------------- dnl Checks for system services. dnl --------------------------------------------------------------------------- dnl --------------------------------------------------------------------------- dnl Handle user-specified configure options dnl --------------------------------------------------------------------------- AC_ARG_ENABLE(debug, [ NOFFLE options: --enable-debug=[no/min/yes] turn on debugging [default=min]], , enable_debug=min) if test "x$enable_debug" = "xyes" && test "x$GCC" = "xyes"; then CFLAGS="$CFLAGS \ -Wall -O2 -g -pedantic -ansi -W -Wtraditional -Wshadow -Wpointer-arith \ -Wcast-qual -Wcast-align -Wwrite-strings -Wconversion \ -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes \ -Wmissing-declarations -Wnested-externs -Winline \ -D__USE_BSD -D__USE_XOPEN_EXTENDED -D__USE_POSIX -DDEBUG" else dnl Do nothing if --enable-debug=no if test "x$enable_debug" != "xno" && test "x$GCC" = "xyes"; then CFLAGS="$CFLAGS \ -Wall -O2 -g -pedantic -ansi -W -Wtraditional -Wshadow \ -Wcast-align -Wwrite-strings \ -Wstrict-prototypes -Wmissing-prototypes \ -Wmissing-declarations -Wnested-externs -Winline \ -D__USE_BSD -D__USE_XOPEN_EXTENDED -D__USE_POSIX -DDEBUG" fi fi # [ This is adapted from mutt. ] AC_ARG_WITH(docdir, [ --with-docdir=PATH specify where to put the documentation ], [noffle_cv_docdir=$withval], [ AC_CACHE_CHECK(where to put the documentation, noffle_cv_docdir, [if test x$prefix = xNONE; then noffle_cv_prefix=$ac_default_prefix else noffle_cv_prefix=$prefix fi noffle_cv_docdir=$noffle_cv_prefix/doc/noffle ]) ]) dnl --------------------------------------------------------------------------- dnl Unquoted defines and substituted variables. dnl --------------------------------------------------------------------------- CONFIGFILE="/etc/noffle.conf" AC_DEFINE_UNQUOTED(CONFIGFILE,"$CONFIGFILE") AC_SUBST(CONFIGFILE) dnl NOFFLE_EXPAND_DIR(VARNAME, DIR) dnl expands occurrences of ${prefix} and ${exec_prefix} in the given DIR, dnl and assigns the resulting string to VARNAME dnl example: NOFFLE_EXPAND_DIR(LOCALEDIR, "$datadir/locale") dnl eg, then: AC_DEFINE_UNQUOTED(LOCALEDIR, "$LOCALEDIR") dnl by Alexandre Oliva dnl from http://www.cygnus.com/ml/automake/1998-Aug/0040.html AC_DEFUN(NOFFLE_EXPAND_DIR, [ $1=$2 $1=`( test "x$prefix" = xNONE && prefix="$ac_default_prefix" test "x$exec_prefix" = xNONE && exec_prefix="${prefix}" eval echo \""[$]$1"\" )` ]) SPOOLDIR="/var/spool/$PACKAGE" AC_DEFINE_UNQUOTED(SPOOLDIR, "$SPOOLDIR") AC_SUBST(SPOOLDIR) DOCDIR=$noffle_cv_docdir AC_SUBST(DOCDIR) AC_DEFINE_UNQUOTED(SENDMAILPROG, "$SENDMAILPROG") dnl --------------------------------------------------------------------------- dnl Output files. dnl --------------------------------------------------------------------------- AC_OUTPUT(Makefile src/Makefile docs/Makefile)