Debianization.
[become] / configure.in
CommitLineData
b0f66028 1dnl -*-m4-*-
c4f2d992 2dnl
b0f66028 3dnl $Id: configure.in,v 1.20 2003/11/29 23:39:16 mdw Exp $
c4f2d992 4dnl
5dnl Source for auto configuration for `become'
6dnl
c758e654 7dnl (c) 1998 Mark Wooding
c4f2d992 8dnl
9
03f996bd 10dnl----- Licensing notice ---------------------------------------------------
c4f2d992 11dnl
12dnl This file is part of `become'
13dnl
14dnl `Become' is free software; you can redistribute it and/or modify
15dnl it under the terms of the GNU General Public License as published by
16dnl the Free Software Foundation; either version 2 of the License, or
17dnl (at your option) any later version.
18dnl
19dnl `Become' is distributed in the hope that it will be useful,
20dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
21dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22dnl GNU General Public License for more details.
23dnl
24dnl You should have received a copy of the GNU General Public License
03f996bd 25dnl along with `become'; if not, write to the Free Software Foundation,
26dnl Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
c4f2d992 27
28dnl----- Revision history ---------------------------------------------------
29dnl
30dnl $Log: configure.in,v $
b0f66028 31dnl Revision 1.20 2003/11/29 23:39:16 mdw
32dnl Debianization.
33dnl
f60a3434 34dnl Revision 1.19 2003/10/12 00:14:44 mdw
35dnl Major overhaul. Now uses DSA signatures rather than the bogus symmetric
36dnl encrypt-and-hope thing. Integrated with mLib and Catacomb.
37dnl
98661ef5 38dnl Revision 1.18 1999/07/28 09:30:12 mdw
39dnl Use new-fangled mdw_TYPE_SSIZE_T macro.
40dnl
b6ea915c 41dnl Revision 1.17 1999/05/04 16:25:19 mdw
42dnl Fixes for new version of automake.
43dnl
44dnl Revision 1.16 1998/06/18 15:15:45 mdw
b24e27ea 45dnl Set version number properly. D'oh.
46dnl
82399d0a 47dnl Revision 1.15 1998/06/18 15:11:36 mdw
48dnl Change patchlevel. Check for @sigprocmask@, for improved @noise__shell@
49dnl function.
50dnl
b1b19a1e 51dnl Revision 1.14 1998/06/08 11:22:16 mdw
52dnl Step version number and date.
53dnl
b0ac4e9d 54dnl Revision 1.13 1998/04/23 13:34:10 mdw
55dnl Release version.
56dnl
45732897 57dnl Revision 1.12 1998/04/23 13:09:24 mdw
58dnl Add new option to disable networking.
59dnl
07981d85 60dnl Revision 1.11 1998/02/20 17:55:56 mdw
61dnl Fix default HTML directory.
62dnl
c758e654 63dnl Revision 1.10 1998/01/12 16:45:21 mdw
64dnl Fix copyright date.
65dnl
66dnl Revision 1.9 1997/09/18 11:24:27 mdw
df962e20 67dnl Add `conf' directory. Add an `htmldir' installation directory too.
68dnl
69dnl Revision 1.8 1997/09/17 10:36:30 mdw
f36dccc8 70dnl Remove `set.c'. No longer necessary.
71dnl
ffbfa517 72dnl Revision 1.7 1997/09/09 18:18:41 mdw
73dnl Check for setgroups(2), to see whether subsidiary group lists need to be
74dnl fiddled with.
f81d049a 75dnl
f36dccc8 76dnl Revision 1.6 1997/09/08 13:41:14 mdw
77dnl Check for `setreuid' for changing permissions.
78dnl
79dnl Revision 1.5 1997/09/05 11:45:18 mdw
80dnl Add support for different login styles, and environment variable
81dnl manipulation in a safe and useful way.
82dnl
83dnl Revision 1.4 1997/08/20 16:10:56 mdw
84dnl Lowercase `mdw_' prefixes to macros. Add a `--with-etcdir=PATH'
85dnl option. Update `stamp-h' as required by the Automake docs (silly
86dnl me).
87dnl
1bda7a39 88dnl Revision 1.3 1997/08/07 09:34:32 mdw
f81d049a 89dnl Added `ElectricFence' support, and support for the `deep' package
90dnl structure.
1bda7a39 91dnl
03f996bd 92dnl Revision 1.2 1997/08/04 10:24:21 mdw
93dnl Sources placed under CVS control.
c4f2d992 94dnl
1bda7a39 95dnl Revision 1.1 1997/07/21 13:47:51 mdw
96dnl Initial revision
97dnl
c4f2d992 98
f60a3434 99AC_INIT(src/become.c)
100AM_INIT_AUTOMAKE(become, 1.4.0)
b6ea915c 101AM_CONFIG_HEADER(config.h)
c4f2d992 102
103dnl --- Check for compilers and things ---
104
105AC_PROG_CC
b6ea915c 106mdw_GCC_FLAGS
107AM_PROG_LEX
c4f2d992 108AC_CHECK_PROG(AR, ar, ar)
109AC_PROG_RANLIB
110AC_PROG_YACC
c4f2d992 111
387501ae 112dnl --- Set default become style ---
113
114AC_ARG_ENABLE([style],
ffbfa517 115[ --enable-style=STYLE set default style to preserve, setuser, or login],
f36dccc8 116[case "$enableval" in
387501ae 117 preserve) style="l_preserve" ;;
ffbfa517 118 su|setuser) style="l_setuser" ;;
387501ae 119 login) style="l_login" ;;
f36dccc8 120 *) AC_MSG_ERROR([unknown login style: choose preserve, setuser, or login])
121 ;;
387501ae 122esac],
123[style="l_preserve"])
124AC_DEFINE_UNQUOTED(DEFAULT_LOGIN_STYLE, $style)
125
45732897 126dnl --- Choose networking options ---
127
128AC_ARG_ENABLE([network],
129[ --disable-network disable the client-server bits of the program],
130 [if test "$enableval" = "no"; then
131 AC_DEFINE(NONETWORK)
132 fi])
133
f81d049a 134dnl --- Set configuration directory ---
135
136AC_ARG_WITH([etcdir],
137[ --with-etcdir=PATH set directory for configuration and key files
138 [default is /etc/become]],
139[etcdir="$withval"], [etcdir="/etc/become"])
140AC_SUBST(etcdir)
b0f66028 141
142AC_ARG_WITH([pidfile],
143[ --with-pidfile=PATH set filename for pidfile
144 [default is ETCDIR/become/pid]],
145[pidfile="$withval"], [pidfile="${etcdir}/become.pid"])
146AC_SUBST(pidfile)
f81d049a 147
df962e20 148AC_ARG_WITH([htmldir],
149[ --with-htmldir=PATH set directory for HTML documentation
150 [default is PREFIX/html/become]],
07981d85 151[htmldir="$withval"], [htmldir='${prefix}/html/become'])
df962e20 152AC_SUBST(htmldir)
153
b0f66028 154mdw_DEFINE_PATHS([
155 mdw_DEFINE_PATH([ETCDIR], [$etcdir])
156 mdw_DEFINE_PATH([file_PID], [$pidfile])
157])
158
c4f2d992 159dnl --- Debugging stuff ---
160
f60a3434 161mdw_OPT_EFENCE
162mdw_OPT_NDEBUG
163mdw_OPT_TRACE
c4f2d992 164
f36dccc8 165dnl --- Libraries ---
166
f60a3434 167mdw_MLIB(2.0.1)
168mdw_CATACOMB(2.0.1)
169
f36dccc8 170mdw_CHECK_MANYLIBS(socket, socket,,
c758e654 171 [AC_MSG_ERROR([Socket library not found])])
f36dccc8 172
173mdw_CHECK_MANYLIBS(gethostbyname, resolv nsl,,
c758e654 174 [AC_MSG_ERROR([Resolver library not found])])
f36dccc8 175
176mdw_CHECK_MANYLIBS(yp_all, nsl, AC_DEFINE(HAVE_YP))
177
82399d0a 178dnl --- Other functions ---
179
180AC_CHECK_FUNCS(sigprocmask)
181
f36dccc8 182dnl --- Types ---
183
184AC_TYPE_PID_T
185AC_TYPE_UID_T
98661ef5 186mdw_TYPE_SSIZE_T
f36dccc8 187
f36dccc8 188dnl --- Set the path separator ---
189
190AC_DEFINE(PATHSEP, '/')
191
192dnl --- Check for some useful functions ---
193
194AC_CHECK_FUNCS(setreuid setgroups)
195AC_CHECK_FUNCS(getrusage vtimes)
196
c4f2d992 197dnl --- Done ---
198
b6ea915c 199AC_OUTPUT(Makefile conf/Makefile src/Makefile manual/Makefile)
c4f2d992 200
201dnl----- That's all, folks --------------------------------------------------