chiark / gitweb /
Change directory after becoming someone else, instead of before. This
[become] / configure.in
... / ...
CommitLineData
1dnl -*-fundamental-*-
2dnl
3dnl $Id: configure.in,v 1.9 1997/09/18 11:24:27 mdw Exp $
4dnl
5dnl Source for auto configuration for `become'
6dnl
7dnl (c) 1997 Mark Wooding
8dnl
9
10dnl----- Licensing notice ---------------------------------------------------
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
25dnl along with `become'; if not, write to the Free Software Foundation,
26dnl Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
27
28dnl----- Revision history ---------------------------------------------------
29dnl
30dnl $Log: configure.in,v $
31dnl Revision 1.9 1997/09/18 11:24:27 mdw
32dnl Add `conf' directory. Add an `htmldir' installation directory too.
33dnl
34dnl Revision 1.8 1997/09/17 10:36:30 mdw
35dnl Remove `set.c'. No longer necessary.
36dnl
37dnl Revision 1.7 1997/09/09 18:18:41 mdw
38dnl Check for setgroups(2), to see whether subsidiary group lists need to be
39dnl fiddled with.
40dnl
41dnl Revision 1.6 1997/09/08 13:41:14 mdw
42dnl Check for `setreuid' for changing permissions.
43dnl
44dnl Revision 1.5 1997/09/05 11:45:18 mdw
45dnl Add support for different login styles, and environment variable
46dnl manipulation in a safe and useful way.
47dnl
48dnl Revision 1.4 1997/08/20 16:10:56 mdw
49dnl Lowercase `mdw_' prefixes to macros. Add a `--with-etcdir=PATH'
50dnl option. Update `stamp-h' as required by the Automake docs (silly
51dnl me).
52dnl
53dnl Revision 1.3 1997/08/07 09:34:32 mdw
54dnl Added `ElectricFence' support, and support for the `deep' package
55dnl structure.
56dnl
57dnl Revision 1.2 1997/08/04 10:24:21 mdw
58dnl Sources placed under CVS control.
59dnl
60dnl Revision 1.1 1997/07/21 13:47:51 mdw
61dnl Initial revision
62dnl
63
64AC_INIT(src/icrypt.c)
65AC_CONFIG_HEADER(config.h)
66PACKAGE=become VERSION=1.2-pre
67AC_SUBST(PACKAGE)
68AC_SUBST(VERSION)
69AC_DEFINE(VERSION, "1.2-pre (17 September 1997)")
70
71dnl --- Check for compilers and things ---
72
73AC_PROG_CC
74AC_PROG_INSTALL
75AC_PROG_LEX
76AC_CHECK_PROG(AR, ar, ar)
77AC_PROG_RANLIB
78AC_PROG_MAKE_SET
79AC_PROG_YACC
80AC_ARG_PROGRAM
81if test "$GCC" = "yes"; then
82 CFLAGS="$CFLAGS -pedantic -Wall"
83fi
84
85dnl --- Set default become style ---
86
87AC_ARG_ENABLE([style],
88[ --enable-style=STYLE set default style to preserve, setuser, or login],
89[case "$enableval" in
90 preserve) style="l_preserve" ;;
91 su|setuser) style="l_setuser" ;;
92 login) style="l_login" ;;
93 *) AC_MSG_ERROR([unknown login style: choose preserve, setuser, or login])
94 ;;
95esac],
96[style="l_preserve"])
97AC_DEFINE_UNQUOTED(DEFAULT_LOGIN_STYLE, $style)
98
99dnl --- Set configuration directory ---
100
101AC_ARG_WITH([etcdir],
102[ --with-etcdir=PATH set directory for configuration and key files
103 [default is /etc/become]],
104[etcdir="$withval"], [etcdir="/etc/become"])
105AC_SUBST(etcdir)
106AC_DEFINE_UNQUOTED(ETCDIR, "$etcdir")
107
108AC_ARG_WITH([htmldir],
109[ --with-htmldir=PATH set directory for HTML documentation
110 [default is PREFIX/html/become]],
111[htmldir="$withval"], [htmldir="${prefix}/html/become"])
112AC_SUBST(htmldir)
113
114dnl --- Debugging stuff ---
115
116AC_ARG_WITH(electric-fence,
117[ --with-electric-fence link programs with Electric Fence],
118 [if test "$withval" = "yes"; then
119 AC_CHECK_LIB(efence, malloc)
120 fi])
121
122AC_ARG_ENABLE(debugging,
123[ --enable-debugging spews vast swathes of useless information],
124 [if test "$enableval" = "no"; then
125 AC_DEFINE(NDEBUG, 1)
126 fi],
127 AC_DEFINE(NDEBUG, 1))
128
129AC_ARG_ENABLE(tracing,
130[ --enable-tracing enable output of tracing information],
131 [if test "$enableval" = "yes"; then
132 AC_DEFINE(TRACING)
133 fi],
134 AC_DEFINE(TRACING))
135
136dnl --- Libraries ---
137
138mdw_CHECK_MANYLIBS(socket, socket,,
139 AC_MSG_ERROR([Socket library not found]))
140
141mdw_CHECK_MANYLIBS(gethostbyname, resolv nsl,,
142 AC_MSG_ERROR([Resolver library not found]))
143
144mdw_CHECK_MANYLIBS(yp_all, nsl, AC_DEFINE(HAVE_YP))
145
146dnl --- Types ---
147
148AC_TYPE_PID_T
149AC_TYPE_UID_T
150AC_CHECK_TYPE(ssize_t, int)
151
152dnl --- Check on type sizes ---
153
154AC_CHECK_SIZEOF(int, 2)
155
156dnl --- Set the path separator ---
157
158AC_DEFINE(PATHSEP, '/')
159
160dnl --- Check for some useful functions ---
161
162AC_CHECK_FUNCS(setreuid setgroups)
163AC_CHECK_FUNCS(getrusage vtimes)
164
165dnl --- Done ---
166
167AC_OUTPUT(Makefile conf/Makefile src/Makefile manual/Makefile,
168 [test -z "$CONFIG_HEADERS" || echo timestamp >stamp-h])
169
170dnl----- That's all, folks --------------------------------------------------