2008-02-19 19:01:49 +03:00
dnl
dnl Samba3 build environment path checks
dnl
dnl Copyright (C) Michael Adam 2008
dnl
dnl Released under the GNU General Public License
dnl http://www.gnu.org/licenses/
dnl
AC_LIBREPLACE_LOCATION_CHECKS
#################################################
# Directory handling stuff to support both the
# legacy SAMBA directories and FHS compliant
# ones...
AC_PREFIX_DEFAULT(/usr/local/samba)
rootsbindir="\${SBINDIR}"
lockdir="\${VARDIR}/locks"
piddir="\${VARDIR}/locks"
2008-09-22 21:24:59 +04:00
ncalrpcdir="\${VARDIR}/ncalrpc"
2008-02-19 19:01:49 +03:00
test "${mandir}" || mandir="\${prefix}/man"
logfilebase="\${VARDIR}"
privatedir="\${prefix}/private"
test "${libdir}" || libdir="\${prefix}/lib"
2008-08-15 16:38:41 +04:00
modulesdir="${libdir}"
pammodulesdir="${libdir}/security"
configdir="${libdir}"
2008-02-19 19:01:49 +03:00
swatdir="\${prefix}/swat"
2008-08-15 02:36:49 +04:00
codepagedir="\${MODULESDIR}"
2008-02-19 19:01:49 +03:00
statedir="\${LOCKDIR}"
cachedir="\${LOCKDIR}"
2008-10-30 12:53:52 +03:00
localedir="\${prefix}/share/locale"
2008-02-19 19:01:49 +03:00
AC_ARG_WITH(fhs,
[AS_HELP_STRING([--with-fhs],[Use FHS-compliant paths (default=no)])],
[ case "$withval" in
yes)
lockdir="\${VARDIR}/lib/samba"
piddir="\${VARDIR}/run"
mandir="\${prefix}/share/man"
logfilebase="\${VARDIR}/log/samba"
privatedir="\${CONFIGDIR}/private"
2008-08-15 17:55:17 +04:00
test "${libdir}" || libdir="\${prefix}/lib"
modulesdir="${libdir}/samba"
2008-02-19 19:01:49 +03:00
configdir="\${sysconfdir}/samba"
swatdir="\${DATADIR}/samba/swat"
2008-08-15 02:36:49 +04:00
codepagedir="\${MODULESDIR}"
2008-02-19 19:01:49 +03:00
statedir="\${VARDIR}/lib/samba"
cachedir="\${VARDIR}/lib/samba"
2008-09-22 21:24:59 +04:00
ncalrpcdir="\${VARDIR}/ncalrpc"
2008-02-19 19:01:49 +03:00
AC_DEFINE(FHS_COMPATIBLE, 1, [Whether to use fully FHS-compatible paths])
;;
esac])
#################################################
# set private directory location
AC_ARG_WITH(privatedir,
[AS_HELP_STRING([--with-privatedir=DIR], [Where to put smbpasswd ($ac_default_prefix/private)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody calls it without argument
#
AC_MSG_WARN([--with-privatedir called without argument - will use default])
;;
* )
privatedir="$withval"
;;
esac])
#################################################
# set root sbin directory location
AC_ARG_WITH(rootsbindir,
[AS_HELP_STRING([--with-rootsbindir=DIR], [Which directory to use for root sbin ($ac_default_prefix/sbin)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody calls it without argument
#
AC_MSG_WARN([--with-rootsbindir called without argument - will use default])
;;
* )
rootsbindir="$withval"
;;
esac])
#################################################
# set lock directory location
AC_ARG_WITH(lockdir,
[AS_HELP_STRING([--with-lockdir=DIR], [Where to put lock files ($ac_default_prefix/var/locks)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody calls it without argument
#
AC_MSG_WARN([--with-lockdir called without argument - will use default])
;;
* )
lockdir="$withval"
;;
esac])
2009-01-08 22:18:13 +03:00
#################################################
# set state directory location
AC_ARG_WITH(statedir,
[AS_HELP_STRING([--with-statedir=DIR], [Where to put persistent state files ($ac_default_prefix/var/locks)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody calls it without argument
#
AC_MSG_WARN([--with-statedir called without argument - will use default])
;;
* )
statedir="$withval"
;;
esac])
#################################################
# set cache directory location
AC_ARG_WITH(cachedir,
[AS_HELP_STRING([--with-cachedir=DIR], [Where to put temporary cache files ($ac_default_prefix/var/locks)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody calls it without argument
#
AC_MSG_WARN([--with-cachedir called without argument - will use default])
;;
* )
cachedir="$withval"
;;
esac])
2008-02-19 19:01:49 +03:00
#################################################
# set pid directory location
AC_ARG_WITH(piddir,
[AS_HELP_STRING([--with-piddir=DIR], [Where to put pid files ($ac_default_prefix/var/locks)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody calls it without argument
#
AC_MSG_WARN([--with-piddir called without argument - will use default])
;;
* )
piddir="$withval"
;;
esac])
2008-09-22 21:24:59 +04:00
#################################################
# set ncalrpc directory location
AC_ARG_WITH(ncalprcdir,
[AS_HELP_STRING([--with-ncalprcdir=DIR], [Where to put ncalrpc sockets ($ac_default_prefix/var/ncalrpc)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody calls it without argument
#
AC_MSG_WARN([--with-ncalrpcdir called without argument - will use default])
;;
* )
ncalrpcdir="$withval"
;;
esac])
2008-02-19 19:01:49 +03:00
#################################################
# set SWAT directory location
AC_ARG_WITH(swatdir,
[AS_HELP_STRING([--with-swatdir=DIR], [Where to put SWAT files ($ac_default_prefix/swat)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody does it
#
AC_MSG_WARN([--with-swatdir called without argument - will use default])
;;
* )
swatdir="$withval"
;;
esac])
#################################################
# set configuration directory location
AC_ARG_WITH(configdir,
[AS_HELP_STRING([--with-configdir=DIR], [Where to put configuration files ($libdir)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody does it
#
AC_MSG_WARN([--with-configdir called without argument - will use default])
;;
* )
configdir="$withval"
;;
esac])
#################################################
# set log directory location
AC_ARG_WITH(logfilebase,
[AS_HELP_STRING([--with-logfilebase=DIR], [Where to put log files ($VARDIR)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody does it
#
AC_MSG_WARN([--with-logfilebase called without argument - will use default])
;;
* )
logfilebase="$withval"
;;
esac])
2008-08-15 02:36:49 +04:00
#################################################
# set shared modules (internal lib) directory location
AC_ARG_WITH(modulesdir,
[AS_HELP_STRING([--with-modulesdir=DIR], [Where to put shared modules ($libdir)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody does it
#
AC_MSG_WARN([--with-modulesdir without argument - will use default])
;;
* )
modulesdir="$withval"
;;
esac])
2008-02-19 19:01:49 +03:00
#################################################
# set PAM modules directory location
AC_ARG_WITH(pammodulesdir,
[AS_HELP_STRING([--with-pammodulesdir=DIR], [Which directory to use for PAM modules ($ac_default_prefix/$libdir/security)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody calls it without argument
#
AC_MSG_WARN([--with-pammodulesdir called without argument - will use default])
;;
* )
pammodulesdir="$withval"
;;
esac])
#################################################
# set man directory location
AC_ARG_WITH(mandir,
[AS_HELP_STRING([--with-mandir=DIR], [Where to put man pages ($mandir)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody does it
#
AC_MSG_WARN([--with-mandir without argument - will use default])
;;
* )
mandir="$withval"
;;
esac])
2008-10-30 12:53:52 +03:00
################################################
# set locale directory location
AC_ARG_WITH(localedir,
[ --with-localedir=DIR Where to put po files ($ac_default_prefix/share/locale)],
[ case "$withval" in
yes|no)
#
# Just in case anybody does it
#
AC_MSG_WARN([--with-localedir called without argument - will use default])
;;
*)
localedir="$withval"
;;
esac])
2009-09-23 02:48:44 +04:00
#################################################
# set codepage directory location
AC_ARG_WITH(codepagedir,
[AS_HELP_STRING([--with-codepagedir=DIR], [Where to put codepages ($ac_default_prefix/lib/samba)])],
[ case "$withval" in
yes|no)
#
# Just in case anybody calls it without argument
#
AC_MSG_WARN([--with-codepagedir called without argument - will use default])
;;
* )
codepagedir="$withval"
;;
esac])
2008-10-30 12:53:52 +03:00
2008-02-19 19:01:49 +03:00
AC_SUBST(configdir)
AC_SUBST(lockdir)
AC_SUBST(piddir)
2008-09-22 21:24:59 +04:00
AC_SUBST(ncalrpcdir)
2008-02-19 19:01:49 +03:00
AC_SUBST(logfilebase)
AC_SUBST(privatedir)
AC_SUBST(swatdir)
AC_SUBST(bindir)
AC_SUBST(sbindir)
AC_SUBST(codepagedir)
AC_SUBST(statedir)
AC_SUBST(cachedir)
AC_SUBST(rootsbindir)
AC_SUBST(pammodulesdir)
2008-08-15 02:36:49 +04:00
AC_SUBST(modulesdir)
2008-10-30 12:53:52 +03:00
AC_SUBST(localedir)
2008-02-19 19:01:49 +03:00
#################################################
# set prefix for 'make test'
selftest_prefix="./st"
AC_SUBST(selftest_prefix)
AC_ARG_WITH(selftest-prefix,
[AS_HELP_STRING([--with-selftest-prefix=DIR], [The prefix where make test will be run ($selftest_prefix)])],
[ case "$withval" in
yes|no)
AC_MSG_WARN([--with-selftest-prefix called without argument - will use default])
;;
* )
selftest_prefix="$withval"
;;
esac
])
2008-11-12 05:46:21 +03:00
#################################################
# set shrdir for 'make test'
selftest_shrdir=""
AC_SUBST(selftest_shrdir)
AC_ARG_WITH(selftest-shrdir,
[AS_HELP_STRING([--with-selftest-shrdir=DIR], [The share directory that make test will be run against ($selftest_shrdir)])],
[ case "$withval" in
yes|no)
AC_MSG_WARN([--with-selftest-shrdir called without argument - will use default])
;;
* )
2009-01-27 03:50:31 +03:00
selftest_shrdir="-s $withval"
2008-11-12 05:46:21 +03:00
;;
esac
])
2008-02-19 19:01:49 +03:00
#################################################
# set path of samba4's smbtorture
smbtorture4_path=""
AC_SUBST(smbtorture4_path)
2009-02-03 02:08:24 +03:00
smbtorture4_option=""
AC_SUBST(smbtorture4_option)
2008-02-19 19:01:49 +03:00
AC_ARG_WITH(smbtorture4_path,
[AS_HELP_STRING([--with-smbtorture4-path=PATH], [The path to a samba4 smbtorture for make test (none)])],
[ case "$withval" in
yes|no)
AC_MSG_ERROR([--with-smbtorture4-path should take a path])
;;
* )
smbtorture4_path="$withval"
if test -z "$smbtorture4_path" -a ! -f $smbtorture4_path; then
AC_MSG_ERROR(['$smbtorture_path' does not exist!])
fi
2009-02-03 02:08:24 +03:00
smbtorture4_option="-t $withval"
2008-02-19 19:01:49 +03:00
;;
esac
])
2009-01-26 01:38:44 +03:00
#################################################
# set custom conf for make test
selftest_custom_conf=""
AC_SUBST(selftest_custom_conf)
AC_ARG_WITH(selftest_custom_conf,
[AS_HELP_STRING([--with-selftest-custom-conf=PATH], [An optional custom smb.conf that is included in the server smb.conf during make test(none)])],
[ case "$withval" in
yes|no)
AC_MSG_ERROR([--with-selftest-custom-conf should take a path])
;;
* )
selftest_custom_conf="$withval"
if test -z "$selftest_custom_conf" -a ! -f $selftest_custom_conf; then
AC_MSG_ERROR(['$selftest_custom_conf' does not exist!])
fi
2009-01-27 03:50:31 +03:00
selftest_custom_conf="-c $withval"
2009-01-26 01:38:44 +03:00
;;
esac
])
2008-02-19 19:01:49 +03:00
## check for --enable-debug first before checking CFLAGS before
## so that we don't mix -O and -g
debug=no
AC_ARG_ENABLE(debug,
[AS_HELP_STRING([--enable-debug], [Turn on compiler debugging information (default=no)])],
[if eval "test x$enable_debug = xyes"; then
debug=yes
fi])
2008-10-21 19:23:48 +04:00
AC_SUBST(developer)
2008-02-19 19:01:49 +03:00
developer=no
AC_ARG_ENABLE(developer, [AS_HELP_STRING([--enable-developer], [Turn on developer warnings and debugging (default=no)])],
[if eval "test x$enable_developer = xyes"; then
debug=yes
developer=yes
fi])
krb5developer=no
AC_ARG_ENABLE(krb5developer, [AS_HELP_STRING([--enable-krb5developer], [Turn on developer warnings and debugging, except -Wstrict-prototypes (default=no)])],
[if eval "test x$enable_krb5developer = xyes"; then
debug=yes
developer=yes
krb5_developer=yes
fi])
2008-07-04 00:45:07 +04:00
picky_developer=no
AC_ARG_ENABLE(picky-developer, [AS_HELP_STRING([--enable-picky-developer], [Halt compilation on warnings])],
[if eval "test x$enable_picky_developer = xyes"; then
debug=yes
developer=yes
picky_developer=yes
fi])
2008-02-19 19:01:49 +03:00
AC_ARG_WITH(cfenc,
[AS_HELP_STRING([--with-cfenc=HEADERDIR], [Use internal CoreFoundation encoding API for optimization (Mac OS X/Darwin only)])],
[
# May be in source $withval/CoreFoundation/StringEncodings.subproj.
# Should have been in framework $withval/CoreFoundation.framework/Headers.
for d in \
$withval/CoreFoundation/StringEncodings.subproj \
$withval/StringEncodings.subproj \
$withval/CoreFoundation.framework/Headers \
$withval/Headers \
$withval
do
if test -r $d/CFStringEncodingConverter.h; then
ln -sfh $d include/CoreFoundation
fi
done
])