| 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
|
|---|
| 9 |
|
|---|
| 10 | AC_LIBREPLACE_LOCATION_CHECKS
|
|---|
| 11 |
|
|---|
| 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)
|
|---|
| 17 |
|
|---|
| 18 | rootsbindir="\${SBINDIR}"
|
|---|
| 19 | lockdir="\${VARDIR}/locks"
|
|---|
| 20 | piddir="\${VARDIR}/locks"
|
|---|
| 21 | ncalrpcdir="\${VARDIR}/ncalrpc"
|
|---|
| 22 | test "${mandir}" || mandir="\${prefix}/man"
|
|---|
| 23 | logfilebase="\${VARDIR}"
|
|---|
| 24 | privatedir="\${prefix}/private"
|
|---|
| 25 | test "${libdir}" || libdir="\${prefix}/lib"
|
|---|
| 26 | modulesdir="${libdir}"
|
|---|
| 27 | pammodulesdir="${libdir}/security"
|
|---|
| 28 | configdir="${libdir}"
|
|---|
| 29 | swatdir="\${prefix}/swat"
|
|---|
| 30 | codepagedir="\${MODULESDIR}"
|
|---|
| 31 | statedir="\${LOCKDIR}"
|
|---|
| 32 | cachedir="\${LOCKDIR}"
|
|---|
| 33 | localedir="\${prefix}/share/locale"
|
|---|
| 34 |
|
|---|
| 35 | AC_ARG_WITH(fhs,
|
|---|
| 36 | [AS_HELP_STRING([--with-fhs],[Use FHS-compliant paths (default=no)])],
|
|---|
| 37 | [ case "$withval" in
|
|---|
| 38 | yes)
|
|---|
| 39 | lockdir="\${VARDIR}/lib/samba"
|
|---|
| 40 | piddir="\${VARDIR}/run"
|
|---|
| 41 | mandir="\${prefix}/share/man"
|
|---|
| 42 | logfilebase="\${VARDIR}/log/samba"
|
|---|
| 43 | privatedir="\${CONFIGDIR}/private"
|
|---|
| 44 | test "${libdir}" || libdir="\${prefix}/lib"
|
|---|
| 45 | modulesdir="${libdir}/samba"
|
|---|
| 46 | configdir="\${sysconfdir}/samba"
|
|---|
| 47 | swatdir="\${DATADIR}/samba/swat"
|
|---|
| 48 | codepagedir="\${MODULESDIR}"
|
|---|
| 49 | statedir="\${VARDIR}/lib/samba"
|
|---|
| 50 | cachedir="\${VARDIR}/lib/samba"
|
|---|
| 51 | ncalrpcdir="\${VARDIR}/ncalrpc"
|
|---|
| 52 | AC_DEFINE(FHS_COMPATIBLE, 1, [Whether to use fully FHS-compatible paths])
|
|---|
| 53 | ;;
|
|---|
| 54 | esac])
|
|---|
| 55 |
|
|---|
| 56 | #################################################
|
|---|
| 57 | # set private directory location
|
|---|
| 58 | AC_ARG_WITH(privatedir,
|
|---|
| 59 | [AS_HELP_STRING([--with-privatedir=DIR], [Where to put smbpasswd ($ac_default_prefix/private)])],
|
|---|
| 60 | [ case "$withval" in
|
|---|
| 61 | yes|no)
|
|---|
| 62 | #
|
|---|
| 63 | # Just in case anybody calls it without argument
|
|---|
| 64 | #
|
|---|
| 65 | AC_MSG_WARN([--with-privatedir called without argument - will use default])
|
|---|
| 66 | ;;
|
|---|
| 67 | * )
|
|---|
| 68 | privatedir="$withval"
|
|---|
| 69 | ;;
|
|---|
| 70 | esac])
|
|---|
| 71 |
|
|---|
| 72 | #################################################
|
|---|
| 73 | # set root sbin directory location
|
|---|
| 74 | AC_ARG_WITH(rootsbindir,
|
|---|
| 75 | [AS_HELP_STRING([--with-rootsbindir=DIR], [Which directory to use for root sbin ($ac_default_prefix/sbin)])],
|
|---|
| 76 | [ case "$withval" in
|
|---|
| 77 | yes|no)
|
|---|
| 78 | #
|
|---|
| 79 | # Just in case anybody calls it without argument
|
|---|
| 80 | #
|
|---|
| 81 | AC_MSG_WARN([--with-rootsbindir called without argument - will use default])
|
|---|
| 82 | ;;
|
|---|
| 83 | * )
|
|---|
| 84 | rootsbindir="$withval"
|
|---|
| 85 | ;;
|
|---|
| 86 | esac])
|
|---|
| 87 |
|
|---|
| 88 | #################################################
|
|---|
| 89 | # set lock directory location
|
|---|
| 90 | AC_ARG_WITH(lockdir,
|
|---|
| 91 | [AS_HELP_STRING([--with-lockdir=DIR], [Where to put lock files ($ac_default_prefix/var/locks)])],
|
|---|
| 92 | [ case "$withval" in
|
|---|
| 93 | yes|no)
|
|---|
| 94 | #
|
|---|
| 95 | # Just in case anybody calls it without argument
|
|---|
| 96 | #
|
|---|
| 97 | AC_MSG_WARN([--with-lockdir called without argument - will use default])
|
|---|
| 98 | ;;
|
|---|
| 99 | * )
|
|---|
| 100 | lockdir="$withval"
|
|---|
| 101 | ;;
|
|---|
| 102 | esac])
|
|---|
| 103 |
|
|---|
| 104 | #################################################
|
|---|
| 105 | # set state directory location
|
|---|
| 106 | AC_ARG_WITH(statedir,
|
|---|
| 107 | [AS_HELP_STRING([--with-statedir=DIR], [Where to put persistent state files ($ac_default_prefix/var/locks)])],
|
|---|
| 108 | [ case "$withval" in
|
|---|
| 109 | yes|no)
|
|---|
| 110 | #
|
|---|
| 111 | # Just in case anybody calls it without argument
|
|---|
| 112 | #
|
|---|
| 113 | AC_MSG_WARN([--with-statedir called without argument - will use default])
|
|---|
| 114 | ;;
|
|---|
| 115 | * )
|
|---|
| 116 | statedir="$withval"
|
|---|
| 117 | ;;
|
|---|
| 118 | esac])
|
|---|
| 119 |
|
|---|
| 120 | #################################################
|
|---|
| 121 | # set cache directory location
|
|---|
| 122 | AC_ARG_WITH(cachedir,
|
|---|
| 123 | [AS_HELP_STRING([--with-cachedir=DIR], [Where to put temporary cache files ($ac_default_prefix/var/locks)])],
|
|---|
| 124 | [ case "$withval" in
|
|---|
| 125 | yes|no)
|
|---|
| 126 | #
|
|---|
| 127 | # Just in case anybody calls it without argument
|
|---|
| 128 | #
|
|---|
| 129 | AC_MSG_WARN([--with-cachedir called without argument - will use default])
|
|---|
| 130 | ;;
|
|---|
| 131 | * )
|
|---|
| 132 | cachedir="$withval"
|
|---|
| 133 | ;;
|
|---|
| 134 | esac])
|
|---|
| 135 |
|
|---|
| 136 | #################################################
|
|---|
| 137 | # set pid directory location
|
|---|
| 138 | AC_ARG_WITH(piddir,
|
|---|
| 139 | [AS_HELP_STRING([--with-piddir=DIR], [Where to put pid files ($ac_default_prefix/var/locks)])],
|
|---|
| 140 | [ case "$withval" in
|
|---|
| 141 | yes|no)
|
|---|
| 142 | #
|
|---|
| 143 | # Just in case anybody calls it without argument
|
|---|
| 144 | #
|
|---|
| 145 | AC_MSG_WARN([--with-piddir called without argument - will use default])
|
|---|
| 146 | ;;
|
|---|
| 147 | * )
|
|---|
| 148 | piddir="$withval"
|
|---|
| 149 | ;;
|
|---|
| 150 | esac])
|
|---|
| 151 |
|
|---|
| 152 | #################################################
|
|---|
| 153 | # set ncalrpc directory location
|
|---|
| 154 | AC_ARG_WITH(ncalrpcdir,
|
|---|
| 155 | [AS_HELP_STRING([--with-ncalrpcdir=DIR], [Where to put ncalrpc sockets ($ac_default_prefix/var/ncalrpc)])],
|
|---|
| 156 | [ case "$withval" in
|
|---|
| 157 | yes|no)
|
|---|
| 158 | #
|
|---|
| 159 | # Just in case anybody calls it without argument
|
|---|
| 160 | #
|
|---|
| 161 | AC_MSG_WARN([--with-ncalrpcdir called without argument - will use default])
|
|---|
| 162 | ;;
|
|---|
| 163 | * )
|
|---|
| 164 | ncalrpcdir="$withval"
|
|---|
| 165 | ;;
|
|---|
| 166 | esac])
|
|---|
| 167 |
|
|---|
| 168 | #################################################
|
|---|
| 169 | # set SWAT directory location
|
|---|
| 170 | AC_ARG_WITH(swatdir,
|
|---|
| 171 | [AS_HELP_STRING([--with-swatdir=DIR], [Where to put SWAT files ($ac_default_prefix/swat)])],
|
|---|
| 172 | [ case "$withval" in
|
|---|
| 173 | yes|no)
|
|---|
| 174 | #
|
|---|
| 175 | # Just in case anybody does it
|
|---|
| 176 | #
|
|---|
| 177 | AC_MSG_WARN([--with-swatdir called without argument - will use default])
|
|---|
| 178 | ;;
|
|---|
| 179 | * )
|
|---|
| 180 | swatdir="$withval"
|
|---|
| 181 | ;;
|
|---|
| 182 | esac])
|
|---|
| 183 |
|
|---|
| 184 | #################################################
|
|---|
| 185 | # set configuration directory location
|
|---|
| 186 | AC_ARG_WITH(configdir,
|
|---|
| 187 | [AS_HELP_STRING([--with-configdir=DIR], [Where to put configuration files ($libdir)])],
|
|---|
| 188 | [ case "$withval" in
|
|---|
| 189 | yes|no)
|
|---|
| 190 | #
|
|---|
| 191 | # Just in case anybody does it
|
|---|
| 192 | #
|
|---|
| 193 | AC_MSG_WARN([--with-configdir called without argument - will use default])
|
|---|
| 194 | ;;
|
|---|
| 195 | * )
|
|---|
| 196 | configdir="$withval"
|
|---|
| 197 | ;;
|
|---|
| 198 | esac])
|
|---|
| 199 |
|
|---|
| 200 | #################################################
|
|---|
| 201 | # set log directory location
|
|---|
| 202 | AC_ARG_WITH(logfilebase,
|
|---|
| 203 | [AS_HELP_STRING([--with-logfilebase=DIR], [Where to put log files ($VARDIR)])],
|
|---|
| 204 | [ case "$withval" in
|
|---|
| 205 | yes|no)
|
|---|
| 206 | #
|
|---|
| 207 | # Just in case anybody does it
|
|---|
| 208 | #
|
|---|
| 209 | AC_MSG_WARN([--with-logfilebase called without argument - will use default])
|
|---|
| 210 | ;;
|
|---|
| 211 | * )
|
|---|
| 212 | logfilebase="$withval"
|
|---|
| 213 | ;;
|
|---|
| 214 | esac])
|
|---|
| 215 |
|
|---|
| 216 |
|
|---|
| 217 | #################################################
|
|---|
| 218 | # set shared modules (internal lib) directory location
|
|---|
| 219 | AC_ARG_WITH(modulesdir,
|
|---|
| 220 | [AS_HELP_STRING([--with-modulesdir=DIR], [Where to put shared modules ($libdir)])],
|
|---|
| 221 | [ case "$withval" in
|
|---|
| 222 | yes|no)
|
|---|
| 223 | #
|
|---|
| 224 | # Just in case anybody does it
|
|---|
| 225 | #
|
|---|
| 226 | AC_MSG_WARN([--with-modulesdir without argument - will use default])
|
|---|
| 227 | ;;
|
|---|
| 228 | * )
|
|---|
| 229 | modulesdir="$withval"
|
|---|
| 230 | ;;
|
|---|
| 231 | esac])
|
|---|
| 232 |
|
|---|
| 233 | #################################################
|
|---|
| 234 | # set PAM modules directory location
|
|---|
| 235 | AC_ARG_WITH(pammodulesdir,
|
|---|
| 236 | [AS_HELP_STRING([--with-pammodulesdir=DIR], [Which directory to use for PAM modules ($ac_default_prefix/$libdir/security)])],
|
|---|
| 237 | [ case "$withval" in
|
|---|
| 238 | yes|no)
|
|---|
| 239 | #
|
|---|
| 240 | # Just in case anybody calls it without argument
|
|---|
| 241 | #
|
|---|
| 242 | AC_MSG_WARN([--with-pammodulesdir called without argument - will use default])
|
|---|
| 243 | ;;
|
|---|
| 244 | * )
|
|---|
| 245 | pammodulesdir="$withval"
|
|---|
| 246 | ;;
|
|---|
| 247 | esac])
|
|---|
| 248 |
|
|---|
| 249 | #################################################
|
|---|
| 250 | # set man directory location
|
|---|
| 251 | AC_ARG_WITH(mandir,
|
|---|
| 252 | [AS_HELP_STRING([--with-mandir=DIR], [Where to put man pages ($mandir)])],
|
|---|
| 253 | [ case "$withval" in
|
|---|
| 254 | yes|no)
|
|---|
| 255 | #
|
|---|
| 256 | # Just in case anybody does it
|
|---|
| 257 | #
|
|---|
| 258 | AC_MSG_WARN([--with-mandir without argument - will use default])
|
|---|
| 259 | ;;
|
|---|
| 260 | * )
|
|---|
| 261 | mandir="$withval"
|
|---|
| 262 | ;;
|
|---|
| 263 | esac])
|
|---|
| 264 |
|
|---|
| 265 | ################################################
|
|---|
| 266 | # set locale directory location
|
|---|
| 267 | AC_ARG_WITH(localedir,
|
|---|
| 268 | [AS_HELP_STRING([--with-localedir=DIR],[Where to put po files ($ac_default_prefix/share/locale)])],
|
|---|
| 269 | [ case "$withval" in
|
|---|
| 270 | yes|no)
|
|---|
| 271 | #
|
|---|
| 272 | # Just in case anybody does it
|
|---|
| 273 | #
|
|---|
| 274 | AC_MSG_WARN([--with-localedir called without argument - will use default])
|
|---|
| 275 | ;;
|
|---|
| 276 | *)
|
|---|
| 277 | localedir="$withval"
|
|---|
| 278 | ;;
|
|---|
| 279 | esac])
|
|---|
| 280 |
|
|---|
| 281 | #################################################
|
|---|
| 282 | # set codepage directory location
|
|---|
| 283 | AC_ARG_WITH(codepagedir,
|
|---|
| 284 | [AS_HELP_STRING([--with-codepagedir=DIR], [Where to put codepages ($ac_default_prefix/lib/samba)])],
|
|---|
| 285 | [ case "$withval" in
|
|---|
| 286 | yes|no)
|
|---|
| 287 | #
|
|---|
| 288 | # Just in case anybody calls it without argument
|
|---|
| 289 | #
|
|---|
| 290 | AC_MSG_WARN([--with-codepagedir called without argument - will use default])
|
|---|
| 291 | ;;
|
|---|
| 292 | * )
|
|---|
| 293 | codepagedir="$withval"
|
|---|
| 294 | ;;
|
|---|
| 295 | esac])
|
|---|
| 296 |
|
|---|
| 297 |
|
|---|
| 298 | AC_SUBST(configdir)
|
|---|
| 299 | AC_SUBST(lockdir)
|
|---|
| 300 | AC_SUBST(piddir)
|
|---|
| 301 | AC_SUBST(ncalrpcdir)
|
|---|
| 302 | AC_SUBST(logfilebase)
|
|---|
| 303 | AC_SUBST(privatedir)
|
|---|
| 304 | AC_SUBST(swatdir)
|
|---|
| 305 | AC_SUBST(bindir)
|
|---|
| 306 | AC_SUBST(sbindir)
|
|---|
| 307 | AC_SUBST(codepagedir)
|
|---|
| 308 | AC_SUBST(statedir)
|
|---|
| 309 | AC_SUBST(cachedir)
|
|---|
| 310 | AC_SUBST(rootsbindir)
|
|---|
| 311 | AC_SUBST(pammodulesdir)
|
|---|
| 312 | AC_SUBST(modulesdir)
|
|---|
| 313 | AC_SUBST(localedir)
|
|---|
| 314 |
|
|---|
| 315 | #################################################
|
|---|
| 316 | # set prefix for 'make test'
|
|---|
| 317 | selftest_prefix="./st"
|
|---|
| 318 | AC_SUBST(selftest_prefix)
|
|---|
| 319 | AC_ARG_WITH(selftest-prefix,
|
|---|
| 320 | [AS_HELP_STRING([--with-selftest-prefix=DIR], [The prefix where make test will be run ($selftest_prefix)])],
|
|---|
| 321 | [ case "$withval" in
|
|---|
| 322 | yes|no)
|
|---|
| 323 | AC_MSG_WARN([--with-selftest-prefix called without argument - will use default])
|
|---|
| 324 | ;;
|
|---|
| 325 | * )
|
|---|
| 326 | selftest_prefix="$withval"
|
|---|
| 327 | ;;
|
|---|
| 328 | esac
|
|---|
| 329 | ])
|
|---|
| 330 |
|
|---|
| 331 | #################################################
|
|---|
| 332 | # set shrdir for 'make test'
|
|---|
| 333 | selftest_shrdir=""
|
|---|
| 334 | AC_SUBST(selftest_shrdir)
|
|---|
| 335 | AC_ARG_WITH(selftest-shrdir,
|
|---|
| 336 | [AS_HELP_STRING([--with-selftest-shrdir=DIR], [The share directory that make test will be run against ($selftest_shrdir)])],
|
|---|
| 337 | [ case "$withval" in
|
|---|
| 338 | yes|no)
|
|---|
| 339 | AC_MSG_WARN([--with-selftest-shrdir called without argument - will use default])
|
|---|
| 340 | ;;
|
|---|
| 341 | * )
|
|---|
| 342 | selftest_shrdir="-s $withval"
|
|---|
| 343 | ;;
|
|---|
| 344 | esac
|
|---|
| 345 | ])
|
|---|
| 346 |
|
|---|
| 347 | #################################################
|
|---|
| 348 | # set path of samba4's smbtorture
|
|---|
| 349 | smbtorture4_path=""
|
|---|
| 350 | AC_SUBST(smbtorture4_path)
|
|---|
| 351 | smbtorture4_option=""
|
|---|
| 352 | AC_SUBST(smbtorture4_option)
|
|---|
| 353 | AC_ARG_WITH(smbtorture4_path,
|
|---|
| 354 | [AS_HELP_STRING([--with-smbtorture4-path=PATH], [The path to a samba4 smbtorture for make test (none)])],
|
|---|
| 355 | [ case "$withval" in
|
|---|
| 356 | yes|no)
|
|---|
| 357 | AC_MSG_ERROR([--with-smbtorture4-path should take a path])
|
|---|
| 358 | ;;
|
|---|
| 359 | * )
|
|---|
| 360 | smbtorture4_path="$withval"
|
|---|
| 361 | if test -z "$smbtorture4_path" -a ! -f $smbtorture4_path; then
|
|---|
| 362 | AC_MSG_ERROR(['$smbtorture_path' does not exist!])
|
|---|
| 363 | fi
|
|---|
| 364 | smbtorture4_option="-t $withval"
|
|---|
| 365 | ;;
|
|---|
| 366 | esac
|
|---|
| 367 | ])
|
|---|
| 368 |
|
|---|
| 369 | #################################################
|
|---|
| 370 | # set custom conf for make test
|
|---|
| 371 | selftest_custom_conf=""
|
|---|
| 372 | AC_SUBST(selftest_custom_conf)
|
|---|
| 373 | AC_ARG_WITH(selftest_custom_conf,
|
|---|
| 374 | [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)])],
|
|---|
| 375 | [ case "$withval" in
|
|---|
| 376 | yes|no)
|
|---|
| 377 | AC_MSG_ERROR([--with-selftest-custom-conf should take a path])
|
|---|
| 378 | ;;
|
|---|
| 379 | * )
|
|---|
| 380 | selftest_custom_conf="$withval"
|
|---|
| 381 | if test -z "$selftest_custom_conf" -a ! -f $selftest_custom_conf; then
|
|---|
| 382 | AC_MSG_ERROR(['$selftest_custom_conf' does not exist!])
|
|---|
| 383 | fi
|
|---|
| 384 | selftest_custom_conf="-c $withval"
|
|---|
| 385 | ;;
|
|---|
| 386 | esac
|
|---|
| 387 | ])
|
|---|
| 388 |
|
|---|
| 389 | ## check for --enable-debug first before checking CFLAGS before
|
|---|
| 390 | ## so that we don't mix -O and -g
|
|---|
| 391 | debug=no
|
|---|
| 392 | AC_ARG_ENABLE(debug,
|
|---|
| 393 | [AS_HELP_STRING([--enable-debug], [Turn on compiler debugging information (default=no)])],
|
|---|
| 394 | [if eval "test x$enable_debug = xyes"; then
|
|---|
| 395 | debug=yes
|
|---|
| 396 | fi])
|
|---|
| 397 |
|
|---|
| 398 | AC_SUBST(developer)
|
|---|
| 399 | developer=no
|
|---|
| 400 | AC_ARG_ENABLE(developer, [AS_HELP_STRING([--enable-developer], [Turn on developer warnings and debugging (default=no)])],
|
|---|
| 401 | [if eval "test x$enable_developer = xyes"; then
|
|---|
| 402 | debug=yes
|
|---|
| 403 | developer=yes
|
|---|
| 404 | fi])
|
|---|
| 405 |
|
|---|
| 406 | krb5developer=no
|
|---|
| 407 | AC_ARG_ENABLE(krb5developer, [AS_HELP_STRING([--enable-krb5developer], [Turn on developer warnings and debugging, except -Wstrict-prototypes (default=no)])],
|
|---|
| 408 | [if eval "test x$enable_krb5developer = xyes"; then
|
|---|
| 409 | debug=yes
|
|---|
| 410 | developer=yes
|
|---|
| 411 | krb5_developer=yes
|
|---|
| 412 | fi])
|
|---|
| 413 |
|
|---|
| 414 | picky_developer=no
|
|---|
| 415 | AC_ARG_ENABLE(picky-developer, [AS_HELP_STRING([--enable-picky-developer], [Halt compilation on warnings])],
|
|---|
| 416 | [if eval "test x$enable_picky_developer = xyes"; then
|
|---|
| 417 | debug=yes
|
|---|
| 418 | developer=yes
|
|---|
| 419 | picky_developer=yes
|
|---|
| 420 | fi])
|
|---|
| 421 |
|
|---|
| 422 | AC_ARG_WITH(cfenc,
|
|---|
| 423 | [AS_HELP_STRING([--with-cfenc=HEADERDIR], [Use internal CoreFoundation encoding API for optimization (Mac OS X/Darwin only)])],
|
|---|
| 424 | [
|
|---|
| 425 | # May be in source $withval/CoreFoundation/StringEncodings.subproj.
|
|---|
| 426 | # Should have been in framework $withval/CoreFoundation.framework/Headers.
|
|---|
| 427 | for d in \
|
|---|
| 428 | $withval/CoreFoundation/StringEncodings.subproj \
|
|---|
| 429 | $withval/StringEncodings.subproj \
|
|---|
| 430 | $withval/CoreFoundation.framework/Headers \
|
|---|
| 431 | $withval/Headers \
|
|---|
| 432 | $withval
|
|---|
| 433 | do
|
|---|
| 434 | if test -r $d/CFStringEncodingConverter.h; then
|
|---|
| 435 | ln -sfh $d include/CoreFoundation
|
|---|
| 436 | fi
|
|---|
| 437 | done
|
|---|
| 438 | ])
|
|---|
| 439 |
|
|---|