1 dnl This file contains the common configuration code which would
2 dnl otherwise be duplicated between configure and configure-libafs.
4 dnl NB: Because this code is a macro, references to positional shell
5 dnl parameters must be done like $[]1 instead of $1
7 AC_DEFUN(OPENAFS_CONFIGURE_COMMON,[
12 #BOZO_SAVE_CORES pam sia
13 AC_ARG_WITH(afs-sysname,
14 [ --with-afs-sysname=sys use sys for the afs sysname]
16 AC_ARG_ENABLE( obsolete,
17 [ --enable-obsolete enable obsolete portions of AFS (mpp, ntp and package)],, enable_obsolete="no")
18 AC_ARG_ENABLE( insecure,
19 [ --enable-insecure enable insecure portions of AFS (ftpd, inetd, rcp, rlogind and rsh)],, enable_insecure="no")
21 [ --disable-afsdb disable AFSDB RR support],, enable_afsdb="yes")
22 AC_ARG_ENABLE( bos-restricted-mode,
23 [ --enable-bos-restricted-mode enable bosserver restricted mode which disables certain bosserver functionality],, enable_bos_restricted_mode="no")
24 AC_ARG_ENABLE( bos-new-config,
25 [ --enable-bos-new-config enable bosserver pickup of BosConfig.new on restarts],, enable_bos_new_config="no")
26 AC_ARG_ENABLE( largefile-fileserver,
27 [ --enable-largefile-filesever enable large file support in fileserver],, enable_largefile_fileserver="no")
28 AC_ARG_ENABLE( namei-fileserver,
29 [ --enable-namei-fileserver force compilation of namei fileserver in preference to inode fileserver],, enable_namei_fileserver="no")
30 AC_ARG_ENABLE( fast-restart,
31 [ --enable-fast-restart enable fast startup of file server without salvaging],, enable_fast_restart="no")
32 AC_ARG_ENABLE( bitmap-later,
33 [ --enable-bitmap-later enable fast startup of file server by not reading bitmap till needed],, enable_bitmap_later="no")
34 AC_ARG_ENABLE( full-vos-listvol-switch,
35 [ --enable-full-vos-listvol-switch enable vos full listvol switch for formatted output],, enable_full_vos_listvol_switch="no")
36 AC_ARG_WITH(dux-kernel-headers,
37 [ --with-dux-kernel-headers=path use the kernel headers found at path(optional, defaults to first match in /usr/sys)]
39 AC_ARG_WITH(linux-kernel-headers,
40 [ --with-linux-kernel-headers=path use the kernel headers found at path(optional, defaults to /usr/src/linux)]
42 AC_ARG_ENABLE(kernel-module,
43 [ --disable-kernel-module disable compilation of the kernel module (defaults to enabled)],, enable_kernel_module="yes"
45 AC_ARG_ENABLE(redhat-buildsys,
46 [ --enable-redhat-buildsys enable compilation of the redhat build system kernel (defaults to disabled)],, enable_redhat_buildsys="no"
48 AC_ARG_ENABLE(transarc-paths,
49 [ --enable-transarc-paths Use Transarc style paths like /usr/afs and /usr/vice],, enable_transarc_paths="no"
51 AC_ARG_ENABLE(tivoli-tsm,
52 [ --enable-tivoli-tsm Enable use of the Tivoli TSM API libraries for butc support],, enable_tivoli_tsm="no"
54 AC_ARG_ENABLE(debug-kernel,
55 [ --enable-debug-kernel enable compilation of the kernel module with debugging information (defaults to disabled)],, enable_debug_kernel="no"
57 AC_ARG_ENABLE(optimize-kernel,
58 [ --disable-optimize-kernel disable compilation of the kernel module with optimization (defaults based on platform)],, enable_optimize_kernel="yes"
61 [ --enable-debug enable compilation of the user space code with debugging information (defaults to disabled)],, enable_debug="no"
63 AC_ARG_ENABLE(optimize,
64 [ --disable-optimize disable optimization for compilation of the user space code (defaults to enabled)],, enable_optimize="yes"
66 AC_ARG_ENABLE(debug-lwp,
67 [ --enable-debug-lwp enable compilation of the LWP code with debugging information (defaults to disabled)],, enable_debug_lwp="no"
69 AC_ARG_ENABLE(optimize-lwp,
70 [ --disable-optimize-lwp disable optimization for compilation of the LWP code (defaults to enabled)],, enable_optimize_lwp="yes"
78 dnl Various compiler setup.
83 dnl Checks for programs.
90 OPENAFS_CHECK_BIGENDIAN
92 AC_MSG_CHECKING(your OS)
97 if test "x$enable_redhat_buildsys" = "xyes"; then
98 AC_DEFINE(ENABLE_REDHAT_BUILDSYS, 1, [define if you have redhat buildsystem])
100 if test "x$enable_kernel_module" = "xyes"; then
101 if test "x$with_linux_kernel_headers" != "x"; then
102 LINUX_KERNEL_PATH="$with_linux_kernel_headers"
104 LINUX_KERNEL_PATH="/usr/src/linux"
106 if test -f "$LINUX_KERNEL_PATH/include/linux/version.h"; then
107 linux_kvers=`fgrep UTS_RELEASE $LINUX_KERNEL_PATH/include/linux/version.h |awk 'BEGIN { FS="\"" } { print $[]2 }'|tail -1`
108 if test "x$linux_kvers" = "x"; then
109 if test -f "$LINUX_KERNEL_PATH/include/linux/version-up.h"; then
110 linux_kvers=`fgrep UTS_RELEASE $LINUX_KERNEL_PATH/include/linux/version-up.h |awk 'BEGIN { FS="\"" } { print $[]2 }'|tail -1`
111 if test "x$linux_kvers" = "x"; then
113 AC_MSG_ERROR(Linux headers lack version definition [2])
116 LINUX_VERSION="$linux_kvers"
119 AC_MSG_ERROR(Linux headers lack version definition)
123 LINUX_VERSION="$linux_kvers"
126 enable_kernel_module="no"
128 if test ! -f "$LINUX_KERNEL_PATH/include/linux/autoconf.h"; then
129 enable_kernel_module="no"
131 if test "x$enable_kernel_module" = "xno"; then
132 if test "x$with_linux_kernel_headers" != "x"; then
133 AC_MSG_ERROR(No usable linux headers found at $LINUX_KERNEL_PATH)
136 AC_MSG_WARN(No usable linux headers found at $LINUX_KERNEL_PATH so disabling kernel module)
141 if test "x$enable_kernel_module" = "xyes"; then
142 if test "x$enable_debug_kernel" = "xno"; then
143 LINUX_GCC_KOPTS="$LINUX_GCC_KOPTS -fomit-frame-pointer"
145 OPENAFS_GCC_SUPPORTS_MARCH
146 AC_SUBST(P5PLUS_KOPTS)
147 OPENAFS_GCC_NEEDS_NO_STRENGTH_REDUCE
148 OPENAFS_GCC_NEEDS_NO_STRICT_ALIASING
149 OPENAFS_GCC_SUPPORTS_NO_COMMON
150 OPENAFS_GCC_SUPPORTS_PIPE
151 AC_SUBST(LINUX_GCC_KOPTS)
152 ifdef([OPENAFS_CONFIGURE_LIBAFS],
153 [LINUX_BUILD_VNODE_FROM_INODE(src/config,afs)],
154 [LINUX_BUILD_VNODE_FROM_INODE(${srcdir}/src/config,src/afs/LINUX,${srcdir}/src/afs/LINUX)]
156 LINUX_COMPLETION_H_EXISTS
157 LINUX_DEFINES_FOR_EACH_PROCESS
158 LINUX_DEFINES_PREV_TASK
159 LINUX_EXPORTS_TASKLIST_LOCK
160 LINUX_FS_STRUCT_ADDRESS_SPACE_HAS_PAGE_LOCK
161 LINUX_FS_STRUCT_ADDRESS_SPACE_HAS_GFP_MASK
162 LINUX_FS_STRUCT_INODE_HAS_I_TRUNCATE_SEM
163 LINUX_FS_STRUCT_INODE_HAS_I_DIRTY_DATA_BUFFERS
164 LINUX_FS_STRUCT_INODE_HAS_I_DEVICES
165 LINUX_INODE_SETATTR_RETURN_TYPE
167 LINUX_RECALC_SIGPENDING_ARG_TYPE
168 LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_PARENT
169 LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_REAL_PARENT
170 LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_SIGMASK_LOCK
172 if test "x$ac_cv_linux_config_modversions" = "xno"; then
173 AC_MSG_WARN([Cannot determine sys_call_table status. assuming it's exported])
174 ac_cv_linux_exports_sys_call_table=yes
176 LINUX_EXPORTS_INIT_MM
177 LINUX_EXPORTS_KALLSYMS_ADDRESS
178 LINUX_EXPORTS_KALLSYMS_SYMBOL
179 LINUX_EXPORTS_SYS_CALL_TABLE
180 LINUX_EXPORTS_SYS_CHDIR
181 LINUX_EXPORTS_SYS_CLOSE
182 if test "x$ac_cv_linux_exports_sys_call_table" = "xno"; then
183 linux_syscall_method=none
184 if test "x$ac_cv_linux_exports_init_mm" = "xyes"; then
185 linux_syscall_method=scan
186 if test "x$ac_cv_linux_exports_kallsyms_address" = "xyes"; then
187 linux_syscall_method=scan_with_kallsyms_address
190 if test "x$ac_cv_linux_exports_kallsyms_symbol" = "xyes"; then
191 linux_syscall_method=kallsyms_symbol
193 if test "x$linux_syscall_method" = "xnone"; then
194 AC_MSG_ERROR([no available sys_call_table access method])
196 if test "x$ac_cv_linux_exports_sys_chdir" = "xyes" ; then
197 AC_DEFINE(EXPORTED_SYS_CHDIR, 1, [define if your linux kernel exports sys_chdir])
199 if test "x$ac_cv_linux_exports_sys_close" = "xyes" ; then
200 AC_DEFINE(EXPORTED_SYS_CLOSE, 1, [define if your linux kernel exports sys_close])
204 if test "x$ac_cv_linux_exports_tasklist_lock" = "xyes" ; then
205 AC_DEFINE(EXPORTED_TASKLIST_LOCK, 1, [define if your linux kernel exports tasklist_lock])
207 if test "x$ac_cv_linux_exports_sys_call_table" = "xyes"; then
208 AC_DEFINE(EXPORTED_SYS_CALL_TABLE)
210 if test "x$ac_cv_linux_exports_kallsyms_symbol" = "xyes"; then
211 AC_DEFINE(EXPORTED_KALLSYMS_SYMBOL)
213 if test "x$ac_cv_linux_exports_kallsyms_address" = "xyes"; then
214 AC_DEFINE(EXPORTED_KALLSYMS_ADDRESS)
216 if test "x$ac_cv_linux_completion_h_exists" = "xyes" ; then
217 AC_DEFINE(COMPLETION_H_EXISTS, 1, [define if completion_h exists])
219 if test "x$ac_cv_linux_defines_for_each_process" = "xyes" ; then
220 AC_DEFINE(DEFINED_FOR_EACH_PROCESS, 1, [define if for_each_process defined])
222 if test "x$ac_cv_linux_defines_prev_task" = "xyes" ; then
223 AC_DEFINE(DEFINED_PREV_TASK, 1, [define if prev_task defined])
225 if test "x$ac_cv_linux_func_inode_setattr_returns_int" = "xyes" ; then
226 AC_DEFINE(INODE_SETATTR_NOT_VOID, 1, [define if your setattr return return non-void])
228 if test "x$ac_cv_linux_fs_struct_address_space_has_page_lock" = "xyes"; then
229 AC_DEFINE(STRUCT_ADDRESS_SPACE_HAS_PAGE_LOCK, 1, [define if your struct address_space has page_lock])
231 if test "x$ac_cv_linux_fs_struct_address_space_has_gfp_mask" = "xyes"; then
232 AC_DEFINE(STRUCT_ADDRESS_SPACE_HAS_GFP_MASK, 1, [define if your struct address_space has gfp_mask])
234 if test "x$ac_cv_linux_fs_struct_inode_has_i_truncate_sem" = "xyes"; then
235 AC_DEFINE(STRUCT_INODE_HAS_I_TRUNCATE_SEM, 1, [define if your struct inode has truncate_sem])
237 if test "x$ac_cv_linux_fs_struct_inode_has_i_devices" = "xyes"; then
238 AC_DEFINE(STRUCT_INODE_HAS_I_DEVICES, 1, [define if you struct inode has i_devices])
240 if test "x$ac_cv_linux_fs_struct_inode_has_i_dirty_data_buffers" = "xyes"; then
241 AC_DEFINE(STRUCT_INODE_HAS_I_DIRTY_DATA_BUFFERS, 1, [define if your struct inode has data_buffers])
243 if test "x$ac_cv_linux_func_recalc_sigpending_takes_void" = "xyes"; then
244 AC_DEFINE(RECALC_SIGPENDING_TAKES_VOID, 1, [define if your recalc_sigpending takes void])
246 if test "x$ac_cv_linux_sched_struct_task_struct_has_parent" = "xyes"; then
247 AC_DEFINE(STRUCT_TASK_STRUCT_HAS_PARENT, 1, [define if your struct task_struct has parent])
249 if test "x$ac_cv_linux_sched_struct_task_struct_has_real_parent" = "xyes"; then
250 AC_DEFINE(STRUCT_TASK_STRUCT_HAS_REAL_PARENT, 1, [define if your struct task_struct has real_parent])
252 if test "x$ac_cv_linux_sched_struct_task_struct_has_sigmask_lock" = "xyes"; then
253 AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIGMASK_LOCK, 1, [define if your struct task_struct has sigmask_lock])
261 SOLARIS_UFSVFS_HAS_DQRWLOCK
262 SOLARIS_PROC_HAS_P_COREFILE
266 enable_kernel_module=no
274 if test -d /usr/include/sys/SN/SN1; then
275 IRIX_BUILD_IP35="IP35"
282 AC_MSG_RESULT(rs_aix)
286 AC_MSG_RESULT(alpha_dux)
287 if test "x$enable_kernel_module" = "xyes"; then
288 if test "x$with_dux_kernel_headers" != "x"; then
289 HEADER_RT=`ls ${with_dux_kernel_headers}/rt_preempt.h | head -1 | sed 's,/rt_preempt.h,,;s,/usr/sys/,,'`
291 HEADER_RT=`ls /usr/sys/*/rt_preempt.h | head -1 | sed 's,/rt_preempt.h,,;s,/usr/sys/,,'`
294 if test "$HEADER_RT" = "*" ; then
295 AC_MSG_ERROR([Need a configured kernel directory])
297 AC_SUBST([HEADER_RT])
301 AC_MSG_RESULT(ppc_darwin)
305 AC_MSG_RESULT(i386_fbsd)
313 AC_MSG_RESULT(i386_obsd)
316 AC_MSG_RESULT($system)
320 if test "x$with_afs_sysname" != "x"; then
321 AFS_SYSNAME="$with_afs_sysname"
323 AC_MSG_CHECKING(your AFS sysname)
325 i386-unknown-openbsd3.1)
326 AFS_SYSNAME="i386_obsd31"
329 AFS_SYSNAME="i386_fbsd_42"
332 AFS_SYSNAME="i386_fbsd_43"
335 AFS_SYSNAME="i386_fbsd_44"
338 AFS_SYSNAME="i386_fbsd_45"
341 AFS_SYSNAME="i386_fbsd_46"
344 AFS_SYSNAME="i386_fbsd_47"
347 AFS_PARAM_COMMON=param.nbsd15.h
348 AFS_SYSNAME="i386_nbsd15"
351 AFS_PARAM_COMMON=param.nbsd15.h
352 AFS_SYSNAME="alpha_nbsd15"
355 AFS_PARAM_COMMON=param.nbsd16.h
356 AFS_SYSNAME="i386_nbsd16"
359 AFS_PARAM_COMMON=param.nbsd16.h
360 AFS_SYSNAME="alpha_nbsd16"
363 AFS_SYSNAME="hp_ux110"
366 AFS_SYSNAME="hp_ux102"
368 powerpc-apple-darwin1.2*)
369 AFS_SYSNAME="ppc_darwin_12"
371 powerpc-apple-darwin1.3*)
372 AFS_SYSNAME="ppc_darwin_13"
374 powerpc-apple-darwin1.4*)
375 AFS_SYSNAME="ppc_darwin_14"
377 powerpc-apple-darwin5.1*)
378 AFS_SYSNAME="ppc_darwin_14"
380 powerpc-apple-darwin5.2*)
381 AFS_SYSNAME="ppc_darwin_14"
383 powerpc-apple-darwin5.3*)
384 AFS_SYSNAME="ppc_darwin_14"
386 powerpc-apple-darwin5.4*)
387 AFS_SYSNAME="ppc_darwin_14"
389 powerpc-apple-darwin5.5*)
390 AFS_SYSNAME="ppc_darwin_14"
392 powerpc-apple-darwin6.0*)
393 AFS_SYSNAME="ppc_darwin_60"
395 powerpc-apple-darwin6.1*)
396 AFS_SYSNAME="ppc_darwin_60"
398 powerpc-apple-darwin6.2*)
399 AFS_SYSNAME="ppc_darwin_60"
401 sparc-sun-solaris2.5*)
402 AFS_SYSNAME="sun4x_55"
404 sparc-sun-solaris2.6)
405 AFS_SYSNAME="sun4x_56"
407 sparc-sun-solaris2.7)
408 AFS_SYSNAME="sun4x_57"
410 sparc-sun-solaris2.8)
411 AFS_SYSNAME="sun4x_58"
413 sparc-sun-solaris2.9)
414 AFS_SYSNAME="sun4x_59"
417 AFS_SYSNAME="sun4_413"
420 AFS_SYSNAME="sunx86_57"
423 AFS_SYSNAME="sunx86_58"
426 AFS_SYSNAME="sunx86_59"
429 AFS_SYSNAME="alpha_dux40"
432 AFS_SYSNAME="alpha_dux50"
435 AFS_SYSNAME="alpha_dux51"
441 AFS_SYSNAME="ia64_linuxXX"
444 AFS_SYSNAME="ppc_linuxXX"
447 AFS_SYSNAME="alpha_linux_XX"
450 AFS_SYSNAME="s390_linuxXX"
453 AFS_SYSNAME="sparc_linuxXX"
456 AFS_SYSNAME="sparc64_linuxXX"
459 AFS_SYSNAME="i386_linuxXX"
462 AFS_SYSNAME="parisc_linuxXX"
465 AFS_SYSNAME="rs_aix42"
468 AFS_SYSNAME="rs_aix42"
471 AC_MSG_ERROR(An AFS sysname is required)
477 AFS_SYSKVERS=`echo $LINUX_VERSION | awk -F\. '{print $[]1 $[]2}'`
478 if test "x${AFS_SYSKVERS}" = "x"; then
479 AC_MSG_ERROR(Couldn't guess your Linux version. Please use the --with-afs-sysname option to configure an AFS sysname.)
481 _AFS_SYSNAME=`echo $AFS_SYSNAME|sed s/XX\$/$AFS_SYSKVERS/`
482 AFS_SYSNAME="$_AFS_SYSNAME"
485 AC_MSG_RESULT($AFS_SYSNAME)
490 DARWIN_PLIST=src/libafs/afs.${AFS_SYSNAME}.plist
491 DARWIN_INFOFILE=afs.${AFS_SYSNAME}.plist
492 dnl the test below fails on darwin, even if the CPPFLAGS below
493 dnl are added. the headers from Kernel.Framework must be used
494 dnl when KERNEL is defined.
496 dnl really, such a thing isn't guaranteed to work on any
497 dnl platform until the kernel cflags from MakefileProto are
498 dnl known to configure
499 AC_DEFINE(HAVE_STRUCT_BUF, 1, [define if you have a struct buf])
502 AC_MSG_CHECKING(for definition of struct buf)
503 dnl save_CPPFLAGS="$CPPFLAGS"
504 dnl CPPFLAGS="$CPPFLAGS -DKERNEL -D_KERNEL -D__KERNEL -D__KERNEL__"
505 AC_CACHE_VAL(ac_cv_have_struct_buf, [
506 ac_cv_have_struct_buf=no
508 [#include <sys/buf.h>],
510 printf("%d\n", sizeof(x));],
511 ac_cv_have_struct_buf=yes,)
514 dnl CPPFLAGS="$save_CPPFLAGS"
515 AC_MSG_RESULT($ac_cv_have_struct_buf)
516 if test "$ac_cv_have_struct_buf" = yes; then
517 AC_DEFINE(HAVE_STRUCT_BUF, 1, [define if you have a struct buf])
523 AC_CACHE_VAL(ac_cv_sockaddr_len,
525 AC_MSG_CHECKING([if struct sockaddr has sa_len field])
526 AC_TRY_COMPILE( [#include <sys/types.h>
527 #include <sys/socket.h>],
529 a->sa_len=0;], ac_cv_sockaddr_len=yes, ac_cv_sockaddr_len=no)
530 AC_MSG_RESULT($ac_cv_sockaddr_len)])
531 if test "$ac_cv_sockaddr_len" = "yes"; then
532 AC_DEFINE(STRUCT_SOCKADDR_HAS_SA_LEN, 1, [define if you struct sockaddr sa_len])
534 if test "x${MKAFS_OSTYPE}" = "xIRIX"; then
535 echo Skipping library tests because they confuse Irix.
537 AC_CHECK_FUNCS(socket)
539 if test "$ac_cv_func_socket" = no; then
540 for lib in socket inet; do
541 if test "$HAVE_SOCKET" != 1; then
542 AC_CHECK_LIB(${lib}, socket,LIBS="$LIBS -l$lib";HAVE_SOCKET=1;AC_DEFINE(HAVE_SOCKET, 1, [define if you have socket]))
547 AC_CHECK_FUNCS(connect)
549 if test "$ac_cv_func_connect" = no; then
551 if test "$HAVE_CONNECT" != 1; then
552 AC_CHECK_LIB(${lib}, connect,LIBS="$LIBS -l$lib";HAVE_CONNECT=1;AC_DEFINE(HAVE_CONNECT, 1, [define if you have connect]))
557 AC_CHECK_FUNCS(gethostbyname)
558 if test "$ac_cv_func_gethostbyname" = no; then
559 for lib in dns nsl resolv; do
560 if test "$HAVE_GETHOSTBYNAME" != 1; then
561 AC_CHECK_LIB(${lib}, gethostbyname, LIBS="$LIBS -l$lib";HAVE_GETHOSTBYNAME=1;AC_DEFINE(HAVE_GETHOSTBYNAME, 1, [define if you have gethostbyname]))
566 AC_CHECK_FUNCS(res_search)
567 if test "$ac_cv_func_res_search" = no; then
568 for lib in dns nsl resolv; do
569 if test "$HAVE_RES_SEARCH" != 1; then
570 AC_CHECK_LIB(${lib}, res_search, LIBS="$LIBS -l$lib";HAVE_RES_SEARCH=1;AC_DEFINE(HAVE_RES_SEARCH, 1, [define if you have res_search]))
573 if test "$HAVE_RES_SEARCH" = 1; then
574 LIB_res_search="-l$lib"
580 AC_CHECK_LIB(pthread, pthread_attr_init,
581 PTHREAD_LIBS="-lpthread")
582 if test "x$PTHREAD_LIBS" = xerror; then
583 AC_CHECK_LIB(pthreads, pthread_attr_init,
584 PTHREAD_LIBS="-lpthreads")
586 if test "x$PTHREAD_LIBS" = xerror; then
587 AC_CHECK_LIB(c_r, pthread_attr_init,
588 PTHREAD_LIBS="-lc_r")
590 if test "x$PTHREAD_LIBS" = xerror; then
591 AC_CHECK_FUNC(pthread_attr_init, PTHREAD_LIBS="")
593 if test "x$PTHREAD_LIBS" = xerror; then
594 AC_MSG_WARN(*** Unable to locate working posix thread library ***)
596 AC_SUBST(PTHREAD_LIBS)
599 if test "$enable_obsolete" = "yes"; then
604 if test "$enable_insecure" = "yes"; then
609 if test "$enable_fast_restart" = "yes"; then
610 AC_DEFINE(FAST_RESTART, 1, [define if you want to have fast restart])
613 if test "$enable_bitmap_later" = "yes"; then
614 AC_DEFINE(BITMAP_LATER, 1, [define if you want to salvager to check bitmasks later])
617 if test "$enable_full_vos_listvol_switch" = "yes"; then
618 AC_DEFINE(FULL_LISTVOL_SWITCH, 1, [define if you want to want listvol switch])
621 if test "$enable_bos_restricted_mode" = "yes"; then
622 AC_DEFINE(BOS_RESTRICTED_MODE, 1, [define if you want to want bos restricted mode])
625 if test "$enable_bos_new_config" = "yes"; then
626 AC_DEFINE(BOS_NEW_CONFIG, 1, [define if you want to enable automatic renaming of BosConfig.new to BosConfig at startup])
629 if test "$enable_largefile_fileserver" = "yes"; then
630 AC_DEFINE(AFS_LARGEFILE_ENV)
633 if test "$enable_namei_fileserver" = "yes"; then
634 AC_DEFINE(AFS_NAMEI_ENV, 1, [define if you want to want namei fileserver])
637 if test "$enable_afsdb" = "yes"; then
638 LIB_AFSDB="$LIB_res_search"
639 AC_DEFINE(AFS_AFSDB_ENV, 1, [define if you want to want search afsdb rr])
643 AC_MSG_CHECKING(for tivoli tsm butc support)
645 if test "$enable_tivoli_tsm" = "yes"; then
646 XBSADIR1=/usr/tivoli/tsm/client/api/bin/xopen
647 XBSADIR2=/opt/tivoli/tsm/client/api/bin/xopen
649 if test -e "$XBSADIR1/xbsa.h"; then
650 XBSA_CFLAGS="-Dxbsa -I$XBSADIR1"
651 AC_MSG_RESULT([yes, $XBSA_CFLAGS])
652 elif test -e "$XBSADIR2/xbsa.h"; then
653 XBSA_CFLAGS="-Dxbsa -I$XBSADIR2"
654 AC_MSG_RESULT([yes, $XBSA_CFLAGS])
656 AC_MSG_RESULT([no, missing xbsa.h header file])
661 AC_SUBST(XBSA_CFLAGS)
663 dnl checks for header files.
667 AC_CHECK_HEADERS(stdlib.h string.h unistd.h fcntl.h sys/time.h sys/file.h)
668 AC_CHECK_HEADERS(netinet/in.h netdb.h sys/fcntl.h sys/mnttab.h sys/mntent.h)
669 AC_CHECK_HEADERS(mntent.h sys/vfs.h sys/param.h sys/fs_types.h)
670 AC_CHECK_HEADERS(sys/mount.h strings.h termios.h signal.h)
671 AC_CHECK_HEADERS(windows.h malloc.h winsock2.h direct.h io.h)
672 AC_CHECK_HEADERS(security/pam_modules.h siad.h usersec.h ucontext.h)
674 AC_CHECK_FUNCS(utimes random srandom getdtablesize snprintf re_comp re_exec)
675 AC_CHECK_FUNCS(setprogname getprogname sigaction)
676 AC_CHECK_TYPE(ssize_t, int)
679 AC_CHECK_FUNCS(timegm)
681 dnl Directory PATH handling
682 if test "x$enable_transarc_paths" = "xyes" ; then
683 afsconfdir=${afsconfdir=/usr/afs/etc}
684 viceetcdir=${viceetcdir=/usr/vice/etc}
685 afskerneldir=${afskerneldir=${viceetcdir}}
686 afssrvbindir=${afssrvbindir=/usr/afs/bin}
687 afssrvsbindir=${afssrvsbindir=/usr/afs/bin}
688 afssrvlibexecdir=${afssrvlibexecdir=/usr/afs/bin}
689 afsdbdir=${afsdbdir=/usr/afs/db}
690 afslogsdir=${afslogsdir=/usr/afs/logs}
691 afslocaldir=${afslocaldir=/usr/afs/local}
692 afsbackupdir=${afsbackupdir=/usr/afs/backup}
693 afsbosconfigdir=${afsbosconfigdir=/usr/afs/local}
695 afsconfdir=${afsconfdir='${sysconfdir}/openafs/server'}
696 viceetcdir=${viceetcdir='${sysconfdir}/openafs'}
697 afskerneldir=${afskerneldir='${libdir}/openafs'}
698 afssrvbindir=${afssrvbindir='${bindir}'}
699 afssrvsbindir=${afssrvsbindir='${sbindir}'}
700 afssrvlibexecdir=${afssrvlibexecdir='${libexecdir}/openafs'}
701 afsdbdir=${afsdbdir='${localstatedir}/openafs/db'}
702 afslogsdir=${afslogsdir='${localstatedir}/openafs/logs'}
703 afslocaldir=${afslocaldir='${localstatedir}/openafs'}
704 afsbackupdir=${afsbackupdir='${localstatedir}/openafs/backup'}
705 afsbosconfigdir=${afsbosconfigdir='${sysconfdir}/openafs'}
709 AC_SUBST(afskerneldir)
710 AC_SUBST(afssrvbindir)
711 AC_SUBST(afssrvsbindir)
712 AC_SUBST(afssrvlibexecdir)
715 AC_SUBST(afslocaldir)
716 AC_SUBST(afsbackupdir)
717 AC_SUBST(afsbosconfigdir)
719 if test "x$enable_kernel_module" = "xyes"; then
720 ENABLE_KERNEL_MODULE=libafs
723 AC_SUBST(AFS_SYSNAME)
724 AC_SUBST(AFS_PARAM_COMMON)
725 AC_SUBST(ENABLE_KERNEL_MODULE)
727 AC_SUBST(LINUX_KERNEL_PATH)
728 AC_SUBST(LINUX_VERSION)
729 AC_SUBST(MKAFS_OSTYPE)
735 AC_SUBST(WITH_OBSOLETE)
736 AC_SUBST(WITH_INSECURE)
737 AC_SUBST(DARWIN_INFOFILE)
738 AC_SUBST(IRIX_BUILD_IP35)
742 TOP_SRCDIR="${srcdir}/src"
744 dnl If we're using ./configure, need a more reasonable TOP_SRCDIR, since relative links don't work everywhere
750 TOP_SRCDIR=${SRCDIR_PARENT}/src
753 TOP_OBJDIR="${SRCDIR_PARENT}"
754 TOP_INCDIR="${SRCDIR_PARENT}/include"
755 TOP_LIBDIR="${SRCDIR_PARENT}/lib"
756 if test "${DEST}x" = "x"; then
757 DEST="${SRCDIR_PARENT}/${AFS_SYSNAME}/dest"