Use `uid_t' instead of `int' for uids and gids. Not quite sure why I
[become] / configure.in
1 dnl -*-fundamental-*-
2 dnl
3 dnl $Id: configure.in,v 1.7 1997/09/09 18:18:41 mdw Exp $
4 dnl
5 dnl Source for auto configuration for `become'
6 dnl
7 dnl (c) 1997 Mark Wooding
8 dnl
9
10 dnl----- Licensing notice ---------------------------------------------------
11 dnl
12 dnl This file is part of `become'
13 dnl
14 dnl `Become' is free software; you can redistribute it and/or modify
15 dnl it under the terms of the GNU General Public License as published by
16 dnl the Free Software Foundation; either version 2 of the License, or
17 dnl (at your option) any later version.
18 dnl
19 dnl `Become' is distributed in the hope that it will be useful,
20 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
21 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 dnl GNU General Public License for more details.
23 dnl
24 dnl You should have received a copy of the GNU General Public License
25 dnl along with `become'; if not, write to the Free Software Foundation,
26 dnl Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
27
28 dnl----- Revision history ---------------------------------------------------
29 dnl
30 dnl $Log: configure.in,v $
31 dnl Revision 1.7 1997/09/09 18:18:41 mdw
32 dnl Check for setgroups(2), to see whether subsidiary group lists need to be
33 dnl fiddled with.
34 dnl
35 # Revision 1.6 1997/09/08 13:41:14 mdw
36 # Check for `setreuid' for changing permissions.
37 #
38 # Revision 1.5 1997/09/05 11:45:18 mdw
39 # Add support for different login styles, and environment variable
40 # manipulation in a safe and useful way.
41 #
42 # Revision 1.4 1997/08/20 16:10:56 mdw
43 # Lowercase `mdw_' prefixes to macros. Add a `--with-etcdir=PATH'
44 # option. Update `stamp-h' as required by the Automake docs (silly
45 # me).
46 #
47 dnl Revision 1.3 1997/08/07 09:34:32 mdw
48 dnl Added `ElectricFence' support, and support for the `deep' package
49 dnl structure.
50 dnl
51 dnl Revision 1.2 1997/08/04 10:24:21 mdw
52 dnl Sources placed under CVS control.
53 dnl
54 dnl Revision 1.1 1997/07/21 13:47:51 mdw
55 dnl Initial revision
56 dnl
57
58 AC_INIT(src/icrypt.c)
59 AC_CONFIG_HEADER(config.h)
60 PACKAGE=become VERSION=1.2-pre
61 AC_SUBST(PACKAGE)
62 AC_SUBST(VERSION)
63 AC_DEFINE(VERSION, "1.2-pre (9 September 1997)")
64
65 dnl --- Check for compilers and things ---
66
67 AC_PROG_CC
68 AC_PROG_INSTALL
69 AC_PROG_LEX
70 AC_CHECK_PROG(AR, ar, ar)
71 AC_PROG_RANLIB
72 AC_PROG_MAKE_SET
73 AC_PROG_YACC
74 AC_ARG_PROGRAM
75 if test "$ac_cv_prog_gcc" = "yes"; then
76 CFLAGS="$CFLAGS -pedantic -Wall"
77 fi
78
79 dnl --- Libraries ---
80
81 mdw_CHECK_MANYLIBS(socket, socket,,
82 AC_MSG_ERROR([Socket library not found]))
83
84 mdw_CHECK_MANYLIBS(gethostbyname, resolv nsl,,
85 AC_MSG_ERROR([Resolver library not found]))
86
87 mdw_CHECK_MANYLIBS(yp_all, nsl, AC_DEFINE(HAVE_YP))
88
89 dnl --- Types ---
90
91 AC_TYPE_PID_T
92 AC_TYPE_UID_T
93 AC_CHECK_TYPE(ssize_t, int)
94
95 dnl --- Check on type sizes ---
96
97 AC_CHECK_SIZEOF(int, 2)
98
99 dnl --- Set the path separator ---
100
101 AC_DEFINE(PATHSEP, '/')
102
103 dnl --- Check for some useful functions ---
104
105 AC_CHECK_FUNCS(setreuid setgroups)
106 AC_CHECK_FUNCS(getrusage vtimes)
107
108 dnl --- Set default become style ---
109
110 AC_ARG_ENABLE([style],
111 [ --enable-style=STYLE set default style to preserve, setuser, or login],
112 [case "$withval" in
113 preserve) style="l_preserve" ;;
114 su|setuser) style="l_setuser" ;;
115 login) style="l_login" ;;
116 esac],
117 [style="l_preserve"])
118 AC_DEFINE_UNQUOTED(DEFAULT_LOGIN_STYLE, $style)
119
120 dnl --- Set configuration directory ---
121
122 AC_ARG_WITH([etcdir],
123 [ --with-etcdir=PATH set directory for configuration and key files
124 [default is /etc/become]],
125 [etcdir="$withval"], [etcdir="/etc/become"])
126 AC_SUBST(etcdir)
127 AC_DEFINE_UNQUOTED(ETCDIR, "$etcdir")
128
129 dnl --- Debugging stuff ---
130
131 AC_ARG_WITH(electric-fence,
132 [ --with-electric-fence link programs with Electric Fence],
133 [if test "$withval" = "yes"; then
134 AC_CHECK_LIB(efence, malloc)
135 fi])
136
137 AC_ARG_ENABLE(debugging,
138 [ --enable-debugging spews vast swathes of useless information],
139 [if test "$enableval" = "no"; then
140 AC_DEFINE(NDEBUG, 1)
141 fi],
142 AC_DEFINE(NDEBUG, 1))
143
144 AC_ARG_ENABLE(tracing,
145 [ --enable-tracing enable output of tracing information],
146 [if test "$enableval" = "yes"; then
147 AC_DEFINE(TRACING)
148 fi],
149 AC_DEFINE(TRACING))
150
151 dnl --- Done ---
152
153 AC_OUTPUT(Makefile src/Makefile manual/Makefile,
154 [test -z "$CONFIG_HEADERS" || echo timestamp >stamp-h])
155
156 dnl----- That's all, folks --------------------------------------------------