dnl -*-m4-*- dnl dnl $Id$ dnl dnl Source for auto configuration for `become' dnl dnl (c) 1998 Mark Wooding dnl dnl----- Licensing notice --------------------------------------------------- dnl dnl This file is part of `become' dnl dnl `Become' is free software; you can redistribute it and/or modify dnl it under the terms of the GNU General Public License as published by dnl the Free Software Foundation; either version 2 of the License, or dnl (at your option) any later version. dnl dnl `Become' is distributed in the hope that it will be useful, dnl but WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the dnl GNU General Public License for more details. dnl dnl You should have received a copy of the GNU General Public License dnl along with `become'; if not, write to the Free Software Foundation, dnl Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. AC_INIT(src/become.c) AM_INIT_AUTOMAKE(become, 1.4.0) AM_CONFIG_HEADER(config.h) dnl --- Check for compilers and things --- AC_PROG_CC mdw_GCC_FLAGS AM_PROG_LEX AC_CHECK_PROG(AR, ar, ar) AC_PROG_RANLIB AC_PROG_YACC dnl --- Set default become style --- AC_ARG_ENABLE([style], [ --enable-style=STYLE set default style to preserve, setuser, or login], [case "$enableval" in preserve) style="l_preserve" ;; su|setuser) style="l_setuser" ;; login) style="l_login" ;; *) AC_MSG_ERROR([unknown login style: choose preserve, setuser, or login]) ;; esac], [style="l_preserve"]) AC_DEFINE_UNQUOTED([DEFAULT_LOGIN_STYLE], [$style], [Default login style: l_preserve, l_setuser or l_login.]) dnl --- Choose networking options --- AC_ARG_ENABLE([network], [ --disable-network disable the client-server bits of the program], [if test "$enableval" = "no"; then AC_DEFINE([NONETWORK], [1], [Define to disable network support.]) fi]) dnl --- Set configuration directory --- AC_ARG_WITH([etcdir], [ --with-etcdir=PATH set directory for configuration and key files [default is /etc/become]], [etcdir="$withval"], [etcdir="/etc/become"]) AC_SUBST(etcdir) AC_ARG_WITH([pidfile], [ --with-pidfile=PATH set filename for pidfile [default is ETCDIR/become/pid]], [pidfile="$withval"], [pidfile="${etcdir}/become.pid"]) AC_SUBST(pidfile) AC_ARG_WITH([htmldir], [ --with-htmldir=PATH set directory for HTML documentation [default is PREFIX/html/become]], [htmldir="$withval"], [htmldir='${prefix}/html/become']) AC_SUBST(htmldir) AH_TEMPLATE([ETCDIR], [Where Become should look for its configuration.]) AH_TEMPLATE([file_PID], [Where Become should write its process-id.]) mdw_DEFINE_PATHS([ mdw_DEFINE_PATH([ETCDIR], [$etcdir]) mdw_DEFINE_PATH([file_PID], [$pidfile]) ]) dnl --- Debugging stuff --- mdw_OPT_EFENCE mdw_OPT_NDEBUG mdw_OPT_TRACE dnl --- Libraries --- mdw_MLIB(2.0.1) mdw_CATACOMB(2.1.0) mdw_CHECK_MANYLIBS(socket, socket,, [AC_MSG_ERROR([Socket library not found.])]) mdw_CHECK_MANYLIBS(gethostbyname, resolv nsl,, [AC_MSG_ERROR([Resolver library not found.])]) mdw_CHECK_MANYLIBS([yp_all], [nsl], [AC_DEFINE([HAVE_YP], [1], [Define if you have (and want to use) the Yellow Peril.])]) dnl --- Other functions --- AC_CHECK_FUNCS([sigprocmask]) dnl --- Types --- AC_TYPE_PID_T AC_TYPE_UID_T mdw_TYPE_SSIZE_T dnl --- Set the path separator --- AC_DEFINE([PATHSEP], ['/'], [Your operating system's path separator.]) dnl --- Check for some useful functions --- AC_CHECK_FUNCS(setreuid setgroups) AC_CHECK_FUNCS(getrusage vtimes) dnl --- Done --- AC_OUTPUT(Makefile conf/Makefile src/Makefile manual/Makefile) dnl----- That's all, folks --------------------------------------------------