configure: Add --with-modulesdir to accompany --with-libdir.
[Samba.git] / source3 / m4 / check_path.m4
blobc39efc66f515b7780ae14893879085e741cd738e
1 dnl
2 dnl Samba3 build environment path checks
3 dnl
4 dnl Copyright (C) Michael Adam 2008
5 dnl
6 dnl Released under the GNU General Public License
7 dnl http://www.gnu.org/licenses/
8 dnl
10 AC_LIBREPLACE_LOCATION_CHECKS
12 #################################################
13 # Directory handling stuff to support both the
14 # legacy SAMBA directories and FHS compliant
15 # ones...
16 AC_PREFIX_DEFAULT(/usr/local/samba)
18 rootsbindir="\${SBINDIR}"
19 lockdir="\${VARDIR}/locks"
20 piddir="\${VARDIR}/locks"
21 test "${mandir}" || mandir="\${prefix}/man"
22 logfilebase="\${VARDIR}"
23 privatedir="\${prefix}/private"
24 test "${libdir}" || libdir="\${prefix}/lib"
25 modulesdir="\${LIBDIR}"
26 pammodulesdir="\${LIBDIR}/security"
27 configdir="\${LIBDIR}"
28 swatdir="\${prefix}/swat"
29 codepagedir="\${MODULESDIR}"
30 statedir="\${LOCKDIR}"
31 cachedir="\${LOCKDIR}"
33 AC_ARG_WITH(fhs,
34 [AS_HELP_STRING([--with-fhs],[Use FHS-compliant paths (default=no)])],
35 [ case "$withval" in
36   yes)
37     lockdir="\${VARDIR}/lib/samba"
38     piddir="\${VARDIR}/run"
39     mandir="\${prefix}/share/man"
40     logfilebase="\${VARDIR}/log/samba"
41     privatedir="\${CONFIGDIR}/private"
42     test "${libdir}" || libdir="\${prefix}/lib/samba"
43     modulesdir="\${LIBDIR}"
44     configdir="\${sysconfdir}/samba"
45     swatdir="\${DATADIR}/samba/swat"
46     codepagedir="\${MODULESDIR}"
47     statedir="\${VARDIR}/lib/samba"
48     cachedir="\${VARDIR}/lib/samba"
49     AC_DEFINE(FHS_COMPATIBLE, 1, [Whether to use fully FHS-compatible paths])
50     ;;
51   esac])
53 #################################################
54 # set private directory location
55 AC_ARG_WITH(privatedir,
56 [AS_HELP_STRING([--with-privatedir=DIR], [Where to put smbpasswd ($ac_default_prefix/private)])],
57 [ case "$withval" in
58   yes|no)
59   #
60   # Just in case anybody calls it without argument
61   #
62     AC_MSG_WARN([--with-privatedir called without argument - will use default])
63   ;;
64   * )
65     privatedir="$withval"
66     ;;
67   esac])
69 #################################################
70 # set root sbin directory location
71 AC_ARG_WITH(rootsbindir,
72 [AS_HELP_STRING([--with-rootsbindir=DIR], [Which directory to use for root sbin ($ac_default_prefix/sbin)])],
73 [ case "$withval" in
74   yes|no)
75   #
76   # Just in case anybody calls it without argument
77   #
78     AC_MSG_WARN([--with-rootsbindir called without argument - will use default])
79   ;;
80   * )
81     rootsbindir="$withval"
82     ;;
83   esac])
85 #################################################
86 # set lock directory location
87 AC_ARG_WITH(lockdir,
88 [AS_HELP_STRING([--with-lockdir=DIR], [Where to put lock files ($ac_default_prefix/var/locks)])],
89 [ case "$withval" in
90   yes|no)
91   #
92   # Just in case anybody calls it without argument
93   #
94     AC_MSG_WARN([--with-lockdir called without argument - will use default])
95   ;;
96   * )
97     lockdir="$withval"
98     ;;
99   esac])
101 #################################################
102 # set pid directory location
103 AC_ARG_WITH(piddir,
104 [AS_HELP_STRING([--with-piddir=DIR], [Where to put pid files ($ac_default_prefix/var/locks)])],
105 [ case "$withval" in
106   yes|no)
107   #
108   # Just in case anybody calls it without argument
109   #
110     AC_MSG_WARN([--with-piddir called without argument - will use default])
111   ;;
112   * )
113     piddir="$withval"
114     ;;
115   esac])
117 #################################################
118 # set SWAT directory location
119 AC_ARG_WITH(swatdir,
120 [AS_HELP_STRING([--with-swatdir=DIR], [Where to put SWAT files ($ac_default_prefix/swat)])],
121 [ case "$withval" in
122   yes|no)
123   #
124   # Just in case anybody does it
125   #
126     AC_MSG_WARN([--with-swatdir called without argument - will use default])
127   ;;
128   * )
129     swatdir="$withval"
130     ;;
131   esac])
133 #################################################
134 # set configuration directory location
135 AC_ARG_WITH(configdir,
136 [AS_HELP_STRING([--with-configdir=DIR], [Where to put configuration files ($libdir)])],
137 [ case "$withval" in
138   yes|no)
139   #
140   # Just in case anybody does it
141   #
142     AC_MSG_WARN([--with-configdir called without argument - will use default])
143   ;;
144   * )
145     configdir="$withval"
146     ;;
147   esac])
149 #################################################
150 # set log directory location
151 AC_ARG_WITH(logfilebase,
152 [AS_HELP_STRING([--with-logfilebase=DIR], [Where to put log files ($VARDIR)])],
153 [ case "$withval" in
154   yes|no)
155   #
156   # Just in case anybody does it
157   #
158     AC_MSG_WARN([--with-logfilebase called without argument - will use default])
159   ;;
160   * )
161     logfilebase="$withval"
162     ;;
163   esac])
166 #################################################
167 # set ctdb source directory location
168 AC_ARG_WITH(ctdb,
169 [AS_HELP_STRING([--with-ctdb=DIR], [Where to find ctdb sources])],
170 [ case "$withval" in
171   yes|no)
172     AC_MSG_WARN([--with-ctdb called without argument])
173   ;;
174   * )
175     ctdbdir="$withval"
176     ;;
177   esac])
179 #################################################
180 # set lib directory location
181 AC_ARG_WITH(libdir,
182 [AS_HELP_STRING([--with-libdir=DIR], [Where to put libdir ($libdir)])],
183 [ case "$withval" in
184   yes|no)
185   #
186   # Just in case anybody does it
187   #
188     AC_MSG_WARN([--with-libdir without argument - will use default])
189   ;;
190   * )
191     libdir="$withval"
192     ;;
193   esac])
195 #################################################
196 # set shared modules (internal lib) directory location
197 AC_ARG_WITH(modulesdir,
198 [AS_HELP_STRING([--with-modulesdir=DIR], [Where to put shared modules ($libdir)])],
199 [ case "$withval" in
200   yes|no)
201   #
202   # Just in case anybody does it
203   #
204     AC_MSG_WARN([--with-modulesdir without argument - will use default])
205   ;;
206   * )
207     modulesdir="$withval"
208     ;;
209   esac])
211 #################################################
212 # set PAM modules directory location
213 AC_ARG_WITH(pammodulesdir,
214 [AS_HELP_STRING([--with-pammodulesdir=DIR], [Which directory to use for PAM modules ($ac_default_prefix/$libdir/security)])],
215 [ case "$withval" in
216   yes|no)
217   #
218   # Just in case anybody calls it without argument
219   #
220     AC_MSG_WARN([--with-pammodulesdir called without argument - will use default])
221   ;;
222   * )
223     pammodulesdir="$withval"
224     ;;
225   esac])
227 #################################################
228 # set man directory location
229 AC_ARG_WITH(mandir,
230 [AS_HELP_STRING([--with-mandir=DIR], [Where to put man pages ($mandir)])],
231 [ case "$withval" in
232   yes|no)
233   #
234   # Just in case anybody does it
235   #
236     AC_MSG_WARN([--with-mandir without argument - will use default])
237   ;;
238   * )
239     mandir="$withval"
240     ;;
241   esac])
243 AC_SUBST(configdir)
244 AC_SUBST(lockdir)
245 AC_SUBST(piddir)
246 AC_SUBST(logfilebase)
247 AC_SUBST(ctdbdir)
248 AC_SUBST(privatedir)
249 AC_SUBST(swatdir)
250 AC_SUBST(bindir)
251 AC_SUBST(sbindir)
252 AC_SUBST(codepagedir)
253 AC_SUBST(statedir)
254 AC_SUBST(cachedir)
255 AC_SUBST(rootsbindir)
256 AC_SUBST(pammodulesdir)
257 AC_SUBST(modulesdir)
259 #################################################
260 # set prefix for 'make test'
261 selftest_prefix="./st"
262 AC_SUBST(selftest_prefix)
263 AC_ARG_WITH(selftest-prefix,
264 [AS_HELP_STRING([--with-selftest-prefix=DIR], [The prefix where make test will be run ($selftest_prefix)])],
265 [ case "$withval" in
266   yes|no)
267     AC_MSG_WARN([--with-selftest-prefix called without argument - will use default])
268   ;;
269   * )
270     selftest_prefix="$withval"
271     ;;
272   esac
275 #################################################
276 # set path of samba4's smbtorture
277 smbtorture4_path=""
278 AC_SUBST(smbtorture4_path)
279 AC_ARG_WITH(smbtorture4_path,
280 [AS_HELP_STRING([--with-smbtorture4-path=PATH], [The path to a samba4 smbtorture for make test (none)])],
281 [ case "$withval" in
282   yes|no)
283     AC_MSG_ERROR([--with-smbtorture4-path should take a path])
284   ;;
285   * )
286     smbtorture4_path="$withval"
287     if test -z "$smbtorture4_path" -a ! -f $smbtorture4_path; then
288         AC_MSG_ERROR(['$smbtorture_path' does not  exist!])
289     fi
290   ;;
291  esac
294 ## check for --enable-debug first before checking CFLAGS before
295 ## so that we don't mix -O and -g
296 debug=no
297 AC_ARG_ENABLE(debug,
298 [AS_HELP_STRING([--enable-debug], [Turn on compiler debugging information (default=no)])],
299     [if eval "test x$enable_debug = xyes"; then
300         debug=yes
301     fi])
303 developer=no
304 AC_ARG_ENABLE(developer, [AS_HELP_STRING([--enable-developer], [Turn on developer warnings and debugging (default=no)])],
305     [if eval "test x$enable_developer = xyes"; then
306         debug=yes
307         developer=yes
308     fi])
310 krb5developer=no
311 AC_ARG_ENABLE(krb5developer, [AS_HELP_STRING([--enable-krb5developer], [Turn on developer warnings and debugging, except -Wstrict-prototypes (default=no)])],
312     [if eval "test x$enable_krb5developer = xyes"; then
313         debug=yes
314         developer=yes
315         krb5_developer=yes
316     fi])
318 picky_developer=no
319 AC_ARG_ENABLE(picky-developer, [AS_HELP_STRING([--enable-picky-developer], [Halt compilation on warnings])],
320     [if eval "test x$enable_picky_developer = xyes"; then
321         debug=yes
322         developer=yes
323         picky_developer=yes
324     fi])
326 AC_ARG_WITH(cfenc,
327 [AS_HELP_STRING([--with-cfenc=HEADERDIR], [Use internal CoreFoundation encoding API for optimization (Mac OS X/Darwin only)])],
329 # May be in source $withval/CoreFoundation/StringEncodings.subproj.
330 # Should have been in framework $withval/CoreFoundation.framework/Headers.
331 for d in \
332     $withval/CoreFoundation/StringEncodings.subproj \
333     $withval/StringEncodings.subproj \
334     $withval/CoreFoundation.framework/Headers \
335     $withval/Headers \
336     $withval
338     if test -r $d/CFStringEncodingConverter.h; then
339         ln -sfh $d include/CoreFoundation
340     fi
341 done