Add a header, kill a warning.
[become] / configure.in
index 7dc5995..ff93341 100644 (file)
@@ -1,13 +1,13 @@
 dnl -*-fundamental-*-
 dnl
-dnl $Id: configure.in,v 1.1 1997/07/21 13:47:51 mdw Exp $
+dnl $Id: configure.in,v 1.19 2003/10/12 00:14:44 mdw Exp $
 dnl
 dnl Source for auto configuration for `become'
 dnl
-dnl (c) 1997 Mark Wooding
+dnl (c) 1998 Mark Wooding
 dnl
 
-dnl----- Licencing notice ---------------------------------------------------
+dnl----- Licensing notice ---------------------------------------------------
 dnl 
 dnl This file is part of `become'
 dnl 
@@ -22,82 +22,167 @@ 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
-dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+dnl along with `become'; if not, write to the Free Software Foundation,
+dnl Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 dnl----- Revision history ---------------------------------------------------
 dnl
 dnl $Log: configure.in,v $
-dnl Revision 1.1  1997/07/21 13:47:51  mdw
+dnl Revision 1.19  2003/10/12 00:14:44  mdw
+dnl Major overhaul.  Now uses DSA signatures rather than the bogus symmetric
+dnl encrypt-and-hope thing.  Integrated with mLib and Catacomb.
+dnl
+dnl Revision 1.18  1999/07/28 09:30:12  mdw
+dnl Use new-fangled mdw_TYPE_SSIZE_T macro.
+dnl
+dnl Revision 1.17  1999/05/04 16:25:19  mdw
+dnl Fixes for new version of automake.
+dnl
+dnl Revision 1.16  1998/06/18  15:15:45  mdw
+dnl Set version number properly.  D'oh.
+dnl
+dnl Revision 1.15  1998/06/18 15:11:36  mdw
+dnl Change patchlevel.  Check for @sigprocmask@, for improved @noise__shell@
+dnl function.
+dnl
+dnl Revision 1.14  1998/06/08 11:22:16  mdw
+dnl Step version number and date.
+dnl
+dnl Revision 1.13  1998/04/23 13:34:10  mdw
+dnl Release version.
+dnl
+dnl Revision 1.12  1998/04/23 13:09:24  mdw
+dnl Add new option to disable networking.
+dnl
+dnl Revision 1.11  1998/02/20 17:55:56  mdw
+dnl Fix default HTML directory.
+dnl
+dnl Revision 1.10  1998/01/12 16:45:21  mdw
+dnl Fix copyright date.
+dnl
+dnl Revision 1.9  1997/09/18  11:24:27  mdw
+dnl Add `conf' directory.  Add an `htmldir' installation directory too.
+dnl
+dnl Revision 1.8  1997/09/17  10:36:30  mdw
+dnl Remove `set.c'.  No longer necessary.
+dnl
+dnl Revision 1.7  1997/09/09 18:18:41  mdw
+dnl Check for setgroups(2), to see whether subsidiary group lists need to be
+dnl fiddled with.
+dnl
+dnl Revision 1.6  1997/09/08  13:41:14  mdw
+dnl Check for `setreuid' for changing permissions.
+dnl
+dnl Revision 1.5  1997/09/05  11:45:18  mdw
+dnl Add support for different login styles, and environment variable
+dnl manipulation in a safe and useful way.
+dnl
+dnl Revision 1.4  1997/08/20  16:10:56  mdw
+dnl Lowercase `mdw_' prefixes to macros.  Add a `--with-etcdir=PATH'
+dnl option.  Update `stamp-h' as required by the Automake docs (silly
+dnl me).
+dnl
+dnl Revision 1.3  1997/08/07 09:34:32  mdw
+dnl Added `ElectricFence' support, and support for the `deep' package
+dnl structure.
+dnl
+dnl Revision 1.2  1997/08/04 10:24:21  mdw
+dnl Sources placed under CVS control.
+dnl
+dnl Revision 1.1  1997/07/21  13:47:51  mdw
 dnl Initial revision
 dnl
 
-AC_INIT(icrypt.c)
-AC_CONFIG_HEADER(config.h)
-VERSION=1.1 AC_SUBST(VERSION)
-AC_DEFINE(VERSION, "1.1 (22 February 1997)")
+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
-AC_PROG_INSTALL
-AC_PROG_LEX
+mdw_GCC_FLAGS
+AM_PROG_LEX
 AC_CHECK_PROG(AR, ar, ar)
 AC_PROG_RANLIB
 AC_PROG_YACC
-if test "$ac_cv_prog_gcc" = "yes"; then
-  CFLAGS="$CFLAGS -pedantic -Wall"
-fi
 
-dnl --- Libraries ---
+dnl --- Set default become style ---
 
-AC_CHECK_LIB(socket, socket)
-MDW_LIB_RESOLVER
+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)
 
-dnl --- Types ---
+dnl --- Choose networking options ---
 
-AC_TYPE_PID_T
-AC_TYPE_UID_T
+AC_ARG_ENABLE([network],
+[  --disable-network      disable the client-server bits of the program],
+  [if test "$enableval" = "no"; then
+    AC_DEFINE(NONETWORK)
+  fi])
 
-dnl --- Check on endianness ---
+dnl --- Set configuration directory ---
 
-AC_C_BIGENDIAN(yes)
+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_DEFINE_UNQUOTED(ETCDIR, "$etcdir")
 
-dnl --- Check on type sizes ---
+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)
 
-AC_CHECK_SIZEOF(int)
+dnl --- Debugging stuff ---
 
-dnl --- Set the path separator ---
+mdw_OPT_EFENCE
+mdw_OPT_NDEBUG
+mdw_OPT_TRACE
 
-AC_DEFINE(PATHSEP, '/')
+dnl --- Libraries ---
 
-dnl --- Debugging stuff ---
+mdw_MLIB(2.0.1)
+mdw_CATACOMB(2.0.1)
 
-AC_ARG_ENABLE(debugging,
-  [--enable-debugging    spews vast swathes of useless information],
-  [if test "$enableval" = "no"; then
-    AC_DEFINE(NDEBUG, 1)
-  fi],
-  AC_DEFINE(NDEBUG, 1))
+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])])
 
-dnl --- Yell^H^H^H^HNetwork Information System ---
+mdw_CHECK_MANYLIBS(yp_all, nsl, AC_DEFINE(HAVE_YP))
 
-AC_ARG_ENABLE(yp,
-  [--enable-yp           read user names using ypcat],
-  [if test "$enableval" != "no"; then
-    AC_DEFINE(HAVE_YP, 1)
-  fi],
-  MDW_CHECK_YP)
+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, '/')
 
-dnl --- Define where things get put ---
+dnl --- Check for some useful functions ---
 
-mdw_save_prefix="$prefix"
-test "x$prefix" = "xNONE" && prefix="$ac_default_prefix"
-AC_DEFINE_UNQUOTED(ETCDIR, "`eval echo ${sysconfdir}`")
-prefix="$mdw_save_prefix"
+AC_CHECK_FUNCS(setreuid setgroups)
+AC_CHECK_FUNCS(getrusage vtimes)
 
 dnl --- Done ---
 
-AC_OUTPUT(Makefile)
+AC_OUTPUT(Makefile conf/Makefile src/Makefile manual/Makefile)
 
 dnl----- That's all, folks --------------------------------------------------