fix-indent-bug-with-lock-macros-part-three-20040818
[openafs.git] / acinclude.m4
1 dnl This file contains the common configuration code which would
2 dnl otherwise be duplicated between configure and configure-libafs.
3 dnl
4 dnl NB: Because this code is a macro, references to positional shell
5 dnl parameters must be done like $[]1 instead of $1
6
7 AC_DEFUN([OPENAFS_CONFIGURE_COMMON],[
8
9 AC_CANONICAL_HOST
10 SRCDIR_PARENT=`pwd`
11
12 #BOZO_SAVE_CORES pam sia
13 AC_ARG_WITH(afs-sysname,
14 [  --with-afs-sysname=sys    use sys for the afs sysname]
15 )
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")
20 AC_ARG_ENABLE( afsdb,
21 [  --disable-afsdb                      disable AFSDB RR support],, enable_afsdb="yes")
22 AC_ARG_ENABLE( pam,
23 [  --disable-pam                        disable PAM support],, enable_pam="yes")
24 AC_ARG_ENABLE( bos-restricted-mode,
25 [  --enable-bos-restricted-mode         enable bosserver restricted mode which disables certain bosserver functionality],, enable_bos_restricted_mode="no")
26 AC_ARG_ENABLE( bos-new-config,
27 [  --enable-bos-new-config              enable bosserver pickup of BosConfig.new on restarts],, enable_bos_new_config="no")
28 AC_ARG_ENABLE( largefile-fileserver,
29 [  --enable-largefile-fileserver        enable large file support in fileserver],, enable_largefile_fileserver="no")
30 AC_ARG_ENABLE( namei-fileserver,
31 [  --enable-namei-fileserver            force compilation of namei fileserver in preference to inode fileserver],, enable_namei_fileserver="no")
32 AC_ARG_ENABLE( supergroups,
33 [  --enable-supergroups                 enable support for nested pts groups],, enable_supergroups="no")
34 AC_ARG_ENABLE( fast-restart,
35 [  --enable-fast-restart                enable fast startup of file server without salvaging],, enable_fast_restart="no")
36 AC_ARG_ENABLE( bitmap-later,
37 [  --enable-bitmap-later                enable fast startup of file server by not reading bitmap till needed],, enable_bitmap_later="no")
38 AC_ARG_ENABLE( full-vos-listvol-switch,
39 [  --disable-full-vos-listvol-switch    disable vos full listvol switch for formatted output],, enable_full_vos_listvol_switch="yes")
40 AC_ARG_WITH(dux-kernel-headers,
41 [  --with-dux-kernel-headers=path       use the kernel headers found at path(optional, defaults to first match in /usr/sys)]
42 )
43 AC_ARG_WITH(linux-kernel-headers,
44 [  --with-linux-kernel-headers=path     use the kernel headers found at path(optional, defaults to /usr/src/linux)]
45 )
46 AC_ARG_WITH(bsd-kernel-headers,
47 [  --with-bsd-kernel-headers=path       use the kernel headers found at path(optional, defaults to /usr/src/sys)]
48 )
49 AC_ARG_WITH(bsd-kernel-build,
50 [  --with-bsd-kernel-build=path         use the kernel build found at path(optional, defaults to KSRC/i386/compile/GENERIC)]
51 )
52 AC_ARG_ENABLE(kernel-module,
53 [  --disable-kernel-module              disable compilation of the kernel module (defaults to enabled)],, enable_kernel_module="yes"
54 )
55 AC_ARG_ENABLE(redhat-buildsys,
56 [  --enable-redhat-buildsys             enable compilation of the redhat build system kernel (defaults to disabled)],, enable_redhat_buildsys="no"
57 )
58 AC_ARG_ENABLE(transarc-paths,
59 [  --enable-transarc-paths                      Use Transarc style paths like /usr/afs and /usr/vice],, enable_transarc_paths="no"
60 )
61 AC_ARG_ENABLE(tivoli-tsm,
62 [  --enable-tivoli-tsm                  Enable use of the Tivoli TSM API libraries for butc support],, enable_tivoli_tsm="no"
63 )
64 AC_ARG_ENABLE(debug-kernel,
65 [  --enable-debug-kernel                enable compilation of the kernel module with debugging information (defaults to disabled)],, enable_debug_kernel="no"
66 )
67 AC_ARG_ENABLE(optimize-kernel,
68 [  --disable-optimize-kernel            disable compilation of the kernel module with optimization (defaults based on platform)],, enable_optimize_kernel="yes"
69 )
70 AC_ARG_ENABLE(debug,
71 [  --enable-debug                       enable compilation of the user space code with debugging information (defaults to disabled)],, enable_debug="no"
72 )
73 AC_ARG_ENABLE(optimize,
74 [  --disable-optimize                   disable optimization for compilation of the user space code (defaults to enabled)],, enable_optimize="yes"
75 )
76 AC_ARG_ENABLE(debug-lwp,
77 [  --enable-debug-lwp                   enable compilation of the LWP code with debugging information (defaults to disabled)],, enable_debug_lwp="no"
78 )
79 AC_ARG_ENABLE(optimize-lwp,
80 [  --disable-optimize-lwp               disable optimization for compilation of the LWP code (defaults to enabled)],, enable_optimize_lwp="yes"
81 )
82
83 enable_login="no"
84
85 dnl weird ass systems
86 AC_AIX
87 AC_ISC_POSIX
88 AC_MINIX
89
90 dnl Various compiler setup.
91 AC_TYPE_PID_T
92 AC_TYPE_SIZE_T
93 AC_TYPE_SIGNAL
94 COMPILER_HAS_FUNCTION_MACRO
95
96 dnl Checks for programs.
97 AC_PROG_INSTALL
98 AC_PROG_LN_S
99 AC_PROG_RANLIB
100 AC_PROG_YACC
101 AM_PROG_LEX
102
103 OPENAFS_CHECK_BIGENDIAN
104
105 AC_MSG_CHECKING(your OS)
106 system=$host
107 case $system in
108         *-linux*)
109                 MKAFS_OSTYPE=LINUX
110                 if test "x$enable_redhat_buildsys" = "xyes"; then
111                  AC_DEFINE(ENABLE_REDHAT_BUILDSYS, 1, [define if you have redhat buildsystem])
112                 fi
113                 if test "x$enable_kernel_module" = "xyes"; then
114                  if test "x$with_linux_kernel_headers" != "x"; then
115                    LINUX_KERNEL_PATH="$with_linux_kernel_headers"
116                  else
117                    LINUX_KERNEL_PATH="/usr/src/linux-2.4"
118                    if test ! -f "$LINUX_KERNEL_PATH/include/linux/version.h"; then
119                      LINUX_KERNEL_PATH="/usr/src/linux"
120                    fi
121                  fi
122                  if test -f "$LINUX_KERNEL_PATH/include/linux/version.h"; then
123                   linux_kvers=`fgrep UTS_RELEASE $LINUX_KERNEL_PATH/include/linux/version.h |awk 'BEGIN { FS="\"" } { print $[]2 }'|tail -n 1`
124                   if test "x$linux_kvers" = "x"; then
125                     if test -f "$LINUX_KERNEL_PATH/include/linux/version-up.h"; then
126                       linux_kvers=`fgrep UTS_RELEASE $LINUX_KERNEL_PATH/include/linux/version-up.h |awk 'BEGIN { FS="\"" } { print $[]2 }'|tail -n 1`
127                       if test "x$linux_kvers" = "x"; then
128
129                         AC_MSG_ERROR(Linux headers lack version definition [2])
130                         exit 1
131                       else
132                         LINUX_VERSION="$linux_kvers"
133                       fi
134                     else
135                       AC_MSG_ERROR(Linux headers lack version definition)
136                       exit 1
137                     fi
138                   else
139                     LINUX_VERSION="$linux_kvers"
140                   fi
141                  else
142                     enable_kernel_module="no"
143                  fi
144                  if test ! -f "$LINUX_KERNEL_PATH/include/linux/autoconf.h"; then
145                      enable_kernel_module="no"
146                  fi
147                  if test "x$enable_kernel_module" = "xno"; then
148                   if test "x$with_linux_kernel_headers" != "x"; then
149                    AC_MSG_ERROR(No usable linux headers found at $LINUX_KERNEL_PATH)
150                    exit 1
151                   else
152                    AC_MSG_WARN(No usable linux headers found at $LINUX_KERNEL_PATH so disabling kernel module)
153                   fi
154                  fi
155                  dnl do we need to determine SUBARCH from autoconf.h
156                  SUBARCH=default
157                 fi
158                 AC_MSG_RESULT(linux)
159                 if test "x$enable_kernel_module" = "xyes"; then
160                  if test "x$enable_debug_kernel" = "xno"; then
161                         LINUX_GCC_KOPTS="$LINUX_GCC_KOPTS -fomit-frame-pointer"
162                  fi
163                  OPENAFS_GCC_SUPPORTS_MARCH
164                  AC_SUBST(P5PLUS_KOPTS)
165                  OPENAFS_GCC_NEEDS_NO_STRENGTH_REDUCE
166                  OPENAFS_GCC_NEEDS_NO_STRICT_ALIASING
167                  OPENAFS_GCC_SUPPORTS_NO_COMMON
168                  OPENAFS_GCC_SUPPORTS_PIPE
169                  AC_SUBST(LINUX_GCC_KOPTS)
170                  ifdef([OPENAFS_CONFIGURE_LIBAFS],
171                    [LINUX_BUILD_VNODE_FROM_INODE(src/config,afs)],
172                    [LINUX_BUILD_VNODE_FROM_INODE(${srcdir}/src/config,src/afs/LINUX,${srcdir}/src/afs/LINUX)]
173                  )
174                  LINUX_COMPLETION_H_EXISTS
175                  LINUX_DEFINES_FOR_EACH_PROCESS
176                  LINUX_DEFINES_PREV_TASK
177                  LINUX_EXPORTS_TASKLIST_LOCK
178                  LINUX_FS_STRUCT_ADDRESS_SPACE_HAS_PAGE_LOCK
179                  LINUX_FS_STRUCT_ADDRESS_SPACE_HAS_GFP_MASK
180                  LINUX_FS_STRUCT_INODE_HAS_I_ALLOC_SEM
181                  LINUX_FS_STRUCT_INODE_HAS_I_TRUNCATE_SEM
182                  LINUX_FS_STRUCT_INODE_HAS_I_DIRTY_DATA_BUFFERS
183                  LINUX_FS_STRUCT_INODE_HAS_I_DEVICES
184                  LINUX_FS_STRUCT_INODE_HAS_I_SECURITY
185                  LINUX_INODE_SETATTR_RETURN_TYPE
186                  LINUX_KERNEL_LINUX_SYSCALL_H
187                  LINUX_KERNEL_SELINUX
188                  LINUX_NEED_RHCONFIG
189                  LINUX_RECALC_SIGPENDING_ARG_TYPE
190                  LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_PARENT
191                  LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_REAL_PARENT
192                  LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_SIG
193                  LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_SIGHAND
194                  LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_SIGMASK_LOCK
195                  LINUX_WHICH_MODULES
196                  if test "x$ac_cv_linux_config_modversions" = "xno"; then
197                    AC_MSG_WARN([Cannot determine sys_call_table status. assuming it isn't exported])
198                    ac_cv_linux_exports_sys_call_table=no
199                    if test -f "$LINUX_KERNEL_PATH/include/asm/ia32_unistd.h"; then
200                      ac_cv_linux_exports_ia32_sys_call_table=yes
201                    fi
202                  else
203                    LINUX_EXPORTS_INIT_MM
204                    LINUX_EXPORTS_KALLSYMS_ADDRESS
205                    LINUX_EXPORTS_KALLSYMS_SYMBOL
206                    LINUX_EXPORTS_SYS_CALL_TABLE
207                    LINUX_EXPORTS_IA32_SYS_CALL_TABLE
208                    LINUX_EXPORTS_SYS_CHDIR
209                    LINUX_EXPORTS_SYS_CLOSE
210                    LINUX_EXPORTS_SYS_WAIT4
211                    if test "x$ac_cv_linux_exports_sys_call_table" = "xno"; then
212                          linux_syscall_method=none
213                          if test "x$ac_cv_linux_exports_init_mm" = "xyes"; then
214                             linux_syscall_method=scan
215                             if test "x$ac_cv_linux_exports_kallsyms_address" = "xyes"; then
216                                linux_syscall_method=scan_with_kallsyms_address
217                             fi
218                          fi
219                          if test "x$ac_cv_linux_exports_kallsyms_symbol" = "xyes"; then
220                             linux_syscall_method=kallsyms_symbol
221                          fi
222                          if test "x$linux_syscall_method" = "xnone"; then
223                         AC_MSG_ERROR([no available sys_call_table access method])
224                          fi
225                    fi
226                  fi
227                  if test -f "$LINUX_KERNEL_PATH/include/linux/in_systm.h"; then
228                   AC_DEFINE(HAVE_IN_SYSTM_H, 1, [define if you have in_systm.h header file])
229                  fi
230                  if test -f "$LINUX_KERNEL_PATH/include/linux/mm_inline.h"; then
231                   AC_DEFINE(HAVE_MM_INLINE_H, 1, [define if you have mm_inline.h header file])
232                  fi
233                  if test -f "$LINUX_KERNEL_PATH/include/linux/in_systm.h"; then
234                   AC_DEFINE(HAVE_IN_SYSTM_H, 1, [define if you have in_systm.h header file])
235                  fi
236                  if test "x$ac_cv_linux_exports_sys_chdir" = "xyes" ; then
237                   AC_DEFINE(EXPORTED_SYS_CHDIR, 1, [define if your linux kernel exports sys_chdir])
238                  fi
239                  if test "x$ac_cv_linux_exports_sys_close" = "xyes" ; then
240                   AC_DEFINE(EXPORTED_SYS_CLOSE, 1, [define if your linux kernel exports sys_close])
241                  fi
242                  if test "x$ac_cv_linux_exports_sys_wait4" = "xyes" ; then
243                   AC_DEFINE(EXPORTED_SYS_WAIT4, 1, [define if your linux kernel exports sys_wait4])
244                  fi
245                  if test "x$ac_cv_linux_exports_tasklist_lock" = "xyes" ; then
246                   AC_DEFINE(EXPORTED_TASKLIST_LOCK, 1, [define if your linux kernel exports tasklist_lock])
247                  fi
248                  if test "x$ac_cv_linux_exports_sys_call_table" = "xyes"; then
249                   AC_DEFINE(EXPORTED_SYS_CALL_TABLE)
250                  fi
251                  if test "x$ac_cv_linux_exports_ia32_sys_call_table" = "xyes"; then
252                   AC_DEFINE(EXPORTED_IA32_SYS_CALL_TABLE)
253                  fi
254                  if test "x$ac_cv_linux_exports_kallsyms_symbol" = "xyes"; then
255                   AC_DEFINE(EXPORTED_KALLSYMS_SYMBOL)
256                  fi
257                  if test "x$ac_cv_linux_exports_kallsyms_address" = "xyes"; then
258                   AC_DEFINE(EXPORTED_KALLSYMS_ADDRESS)
259                  fi
260                  if test "x$ac_cv_linux_completion_h_exists" = "xyes" ; then
261                   AC_DEFINE(COMPLETION_H_EXISTS, 1, [define if completion_h exists])
262                  fi
263                  if test "x$ac_cv_linux_defines_for_each_process" = "xyes" ; then
264                   AC_DEFINE(DEFINED_FOR_EACH_PROCESS, 1, [define if for_each_process defined])
265                  fi
266                  if test "x$ac_cv_linux_defines_prev_task" = "xyes" ; then
267                   AC_DEFINE(DEFINED_PREV_TASK, 1, [define if prev_task defined])
268                  fi
269                  if test "x$ac_cv_linux_func_inode_setattr_returns_int" = "xyes" ; then
270                   AC_DEFINE(INODE_SETATTR_NOT_VOID, 1, [define if your setattr return return non-void])
271                  fi
272                  if test "x$ac_cv_linux_fs_struct_address_space_has_page_lock" = "xyes"; then 
273                   AC_DEFINE(STRUCT_ADDRESS_SPACE_HAS_PAGE_LOCK, 1, [define if your struct address_space has page_lock])
274                  fi
275                  if test "x$ac_cv_linux_fs_struct_address_space_has_gfp_mask" = "xyes"; then 
276                   AC_DEFINE(STRUCT_ADDRESS_SPACE_HAS_GFP_MASK, 1, [define if your struct address_space has gfp_mask])
277                  fi
278                  if test "x$ac_cv_linux_fs_struct_inode_has_i_truncate_sem" = "xyes"; then 
279                   AC_DEFINE(STRUCT_INODE_HAS_I_TRUNCATE_SEM, 1, [define if your struct inode has truncate_sem])
280                  fi
281                  if test "x$ac_cv_linux_fs_struct_inode_has_i_alloc_sem" = "xyes"; then 
282                   AC_DEFINE(STRUCT_INODE_HAS_I_ALLOC_SEM, 1, [define if your struct inode has alloc_sem])
283                  fi
284                  if test "x$ac_cv_linux_fs_struct_inode_has_i_devices" = "xyes"; then 
285                   AC_DEFINE(STRUCT_INODE_HAS_I_DEVICES, 1, [define if you struct inode has i_devices])
286                  fi
287                  if test "x$ac_cv_linux_fs_struct_inode_has_i_security" = "xyes"; then 
288                   AC_DEFINE(STRUCT_INODE_HAS_I_SECURITY, 1, [define if you struct inode has i_security])
289                  fi
290                  if test "x$ac_cv_linux_fs_struct_inode_has_i_dirty_data_buffers" = "xyes"; then 
291                   AC_DEFINE(STRUCT_INODE_HAS_I_DIRTY_DATA_BUFFERS, 1, [define if your struct inode has data_buffers])
292                  fi
293                  if test "x$ac_cv_linux_func_recalc_sigpending_takes_void" = "xyes"; then 
294                   AC_DEFINE(RECALC_SIGPENDING_TAKES_VOID, 1, [define if your recalc_sigpending takes void])
295                  fi
296                  if test "x$ac_cv_linux_kernel_is_selinux" = "xyes" ; then
297                   AC_DEFINE(LINUX_KERNEL_IS_SELINUX, 1, [define if your linux kernel uses SELinux features])
298                  fi
299                  if test "x$ac_linux_syscall" = "xyes" ; then
300                   AC_DEFINE(HAVE_KERNEL_LINUX_SYSCALL_H, 1, [define if your linux kernel has linux/syscall.h])
301                  fi
302                  if test "x$ac_cv_linux_sched_struct_task_struct_has_parent" = "xyes"; then 
303                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_PARENT, 1, [define if your struct task_struct has parent])
304                  fi
305                  if test "x$ac_cv_linux_sched_struct_task_struct_has_real_parent" = "xyes"; then 
306                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_REAL_PARENT, 1, [define if your struct task_struct has real_parent])
307                  fi
308                  if test "x$ac_cv_linux_sched_struct_task_struct_has_sigmask_lock" = "xyes"; then 
309                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIGMASK_LOCK, 1, [define if your struct task_struct has sigmask_lock])
310                  fi
311                  if test "x$ac_cv_linux_sched_struct_task_struct_has_sighand" = "xyes"; then 
312                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIGHAND, 1, [define if your struct task_struct has sighand])
313                  fi
314                  if test "x$ac_cv_linux_sched_struct_task_struct_has_sig" = "xyes"; then 
315                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIG, 1, [define if your struct task_struct has sig])
316                  fi
317                 :
318                 fi
319                 ;;
320         *-solaris*)
321                 MKAFS_OSTYPE=SOLARIS
322                 AC_MSG_RESULT(sun4)
323                 SOLARIS_UFSVFS_HAS_DQRWLOCK
324                 SOLARIS_PROC_HAS_P_COREFILE
325                 SOLARIS_FS_HAS_FS_ROLLED
326                 ;;
327         *-sunos*)
328                 MKAFS_OSTYPE=SUNOS
329                 enable_kernel_module=no
330                 AC_MSG_RESULT(sun4)
331                 ;;
332         *-hpux*)
333                 MKAFS_OSTYPE=HPUX
334                 AC_MSG_RESULT(hp_ux)
335                 ;;
336         *-irix*)
337                 if test -d /usr/include/sys/SN/SN1; then
338                  IRIX_BUILD_IP35="IP35"
339                 fi
340                 MKAFS_OSTYPE=IRIX
341                 AC_MSG_RESULT(sgi)
342                 ;;
343         *-aix*)
344                 MKAFS_OSTYPE=AIX
345                 AC_MSG_RESULT(rs_aix)
346                 ;;
347         *-osf*)
348                 MKAFS_OSTYPE=DUX
349                 AC_MSG_RESULT(alpha_dux)
350                 if test "x$enable_kernel_module" = "xyes"; then
351                  if test "x$with_dux_kernel_headers" != "x"; then
352                    HEADER_RT=`ls ${with_dux_kernel_headers}/rt_preempt.h | head -1 | sed 's,/rt_preempt.h,,;s,/usr/sys/,,'`
353                  else
354                    HEADER_RT=`ls /usr/sys/*/rt_preempt.h | head -1 | sed 's,/rt_preempt.h,,;s,/usr/sys/,,'`
355                  fi
356                 fi
357                 if test "$HEADER_RT" = "*" ; then
358                         AC_MSG_ERROR([Need a configured kernel directory])
359                 fi
360                 AC_SUBST([HEADER_RT])
361                 ;;
362         *-darwin*)
363                 MKAFS_OSTYPE=DARWIN
364                 AC_MSG_RESULT(ppc_darwin)
365                 ;;
366         *-freebsd*)
367                 MKAFS_OSTYPE=FBSD
368                 AC_MSG_RESULT(i386_fbsd)
369                 ;;
370         *-netbsd*)
371                 MKAFS_OSTYPE=NBSD
372                 AC_MSG_RESULT(nbsd)
373                 ;;
374         *-openbsd*)
375                 MKAFS_OSTYPE=OBSD
376                 AC_MSG_RESULT(i386_obsd)
377                 ;;
378         *)
379                 AC_MSG_RESULT($system)
380                 ;;
381 esac
382
383 if test "x$with_afs_sysname" != "x"; then
384         AFS_SYSNAME="$with_afs_sysname"
385 else
386         AC_MSG_CHECKING(your AFS sysname)
387         case $host in
388                 i?86-*-openbsd3.1)
389                         AFS_SYSNAME="i386_obsd31"
390                         ;;
391                 i?86-*-openbsd3.2)
392                         AFS_SYSNAME="i386_obsd32"
393                         ;;
394                 i?86-*-openbsd3.3)
395                         AFS_SYSNAME="i386_obsd33"
396                         ;;
397                 i?86-*-openbsd3.4)
398                         AFS_SYSNAME="i386_obsd34"
399                         ;;
400                 i?86-*-openbsd3.5)
401                         AFS_SYSNAME="i386_obsd35"
402                         ;;
403                 i?86-*-freebsd4.2*)
404                         AFS_SYSNAME="i386_fbsd_42"
405                         ;;
406                 i?86-*-freebsd4.3*)
407                         AFS_SYSNAME="i386_fbsd_43"
408                         ;;
409                 i?86-*-freebsd4.4*)
410                         AFS_SYSNAME="i386_fbsd_44"
411                         ;;
412                 i?86-*-freebsd4.5*)
413                         AFS_SYSNAME="i386_fbsd_45"
414                         ;;
415                 i?86-*-freebsd4.6*)
416                         AFS_SYSNAME="i386_fbsd_46"
417                         ;;
418                 i?86-*-freebsd4.7*)
419                         AFS_SYSNAME="i386_fbsd_47"
420                         ;;
421                 i?86-*-freebsd5.0*)
422                         AFS_SYSNAME="i386_fbsd_50"
423                         ;;
424                 i?86-*-freebsd5.1*)
425                         AFS_SYSNAME="i386_fbsd_51"
426                         ;;
427                 i?86-*-freebsd5.2*)
428                         AFS_SYSNAME="i386_fbsd_52"
429                         ;;
430                 i?86-*-netbsd*1.5*)
431                         AFS_PARAM_COMMON=param.nbsd15.h
432                         AFS_SYSNAME="i386_nbsd15"
433                         ;;
434                 alpha-*-netbsd*1.5*)
435                         AFS_PARAM_COMMON=param.nbsd15.h
436                         AFS_SYSNAME="alpha_nbsd15"
437                         ;;
438                 i?86-*-netbsd*1.6[[M-Z]]*)
439                         AFS_PARAM_COMMON=param.nbsd20.h
440                         AFS_SYSNAME="i386_nbsd20"
441                         ;;
442                 powerpc-*-netbsd*1.6[[M-Z]]*)
443                         AFS_PARAM_COMMON=param.nbsd20.h
444                         AFS_SYSNAME="ppc_nbsd20"
445                         ;;
446                 i?86-*-netbsd*2.0*)
447                         AFS_PARAM_COMMON=param.nbsd20.h
448                         AFS_SYSNAME="i386_nbsd20"
449                         ;;
450                 powerpc-*-netbsd*2.0*)
451                         AFS_PARAM_COMMON=param.nbsd20.h
452                         AFS_SYSNAME="ppc_nbsd20"
453                         ;;
454                 i?86-*-netbsd*1.6*)
455                         AFS_PARAM_COMMON=param.nbsd16.h
456                         AFS_SYSNAME="i386_nbsd16"
457                         ;;
458                 alpha-*-netbsd*1.6*)
459                         AFS_PARAM_COMMON=param.nbsd16.h
460                         AFS_SYSNAME="alpha_nbsd16"
461                         ;;
462                 powerpc-*-netbsd*1.6*)
463                         AFS_PARAM_COMMON=param.nbsd16.h
464                         AFS_SYSNAME="ppc_nbsd16"
465                         ;;
466                 hppa*-hp-hpux11.0*)
467                         AFS_SYSNAME="hp_ux110"
468                         ;;
469                 hppa*-hp-hpux11.11)
470                         AFS_SYSNAME="hp_ux11i"
471                         ;;
472                 ia64-hp-hpux11.22)
473                         AFS_SYSNAME="ia64_hpux1122"
474                         ;;
475                 ia64-hp-hpux*)
476                         AFS_SYSNAME="ia64_hpux1123"
477                         ;;
478                 hppa*-hp-hpux10*)
479                         AFS_SYSNAME="hp_ux102"
480                         ;;
481                 powerpc-apple-darwin1.2*)
482                         AFS_SYSNAME="ppc_darwin_12"
483                         ;;
484                 powerpc-apple-darwin1.3*)
485                         AFS_SYSNAME="ppc_darwin_13"
486                         ;;
487                 powerpc-apple-darwin1.4*)
488                         AFS_SYSNAME="ppc_darwin_14"
489                         ;;
490                 powerpc-apple-darwin5.1*)
491                         AFS_SYSNAME="ppc_darwin_14"
492                         ;;
493                 powerpc-apple-darwin5.2*)
494                         AFS_SYSNAME="ppc_darwin_14"
495                         ;;
496                 powerpc-apple-darwin5.3*)
497                         AFS_SYSNAME="ppc_darwin_14"
498                         ;;
499                 powerpc-apple-darwin5.4*)
500                         AFS_SYSNAME="ppc_darwin_14"
501                         ;;
502                 powerpc-apple-darwin5.5*)
503                         AFS_SYSNAME="ppc_darwin_14"
504                         ;;
505                 powerpc-apple-darwin6.0*)
506                         AFS_SYSNAME="ppc_darwin_60"
507                         ;;
508                 powerpc-apple-darwin6.1*)
509                         AFS_SYSNAME="ppc_darwin_60"
510                         ;;
511                 powerpc-apple-darwin6.2*)
512                         AFS_SYSNAME="ppc_darwin_60"
513                         ;;
514                 powerpc-apple-darwin6.3*)
515                         AFS_SYSNAME="ppc_darwin_60"
516                         ;;
517                 powerpc-apple-darwin6.4*)
518                         AFS_SYSNAME="ppc_darwin_60"
519                         ;;
520                 powerpc-apple-darwin6.5*)
521                         AFS_SYSNAME="ppc_darwin_60"
522                         ;;
523                 powerpc-apple-darwin7.0*)
524                         AFS_SYSNAME="ppc_darwin_70"
525                         ;;
526                 powerpc-apple-darwin7.1*)
527                         AFS_SYSNAME="ppc_darwin_70"
528                         ;;
529                 powerpc-apple-darwin7.2*)
530                         AFS_SYSNAME="ppc_darwin_70"
531                         ;;
532                 powerpc-apple-darwin7.3*)
533                         AFS_SYSNAME="ppc_darwin_70"
534                         ;;
535                 powerpc-apple-darwin7.4*)
536                         AFS_SYSNAME="ppc_darwin_70"
537                         ;;
538                 powerpc-apple-darwin7.5*)
539                         AFS_SYSNAME="ppc_darwin_70"
540                         ;;
541                 sparc-sun-solaris2.5*)
542                         AFS_SYSNAME="sun4x_55"
543                         enable_login="yes"
544                         ;;
545                 sparc-sun-solaris2.6)
546                         AFS_SYSNAME="sun4x_56"
547                         ;;
548                 sparc-sun-solaris2.7)
549                         AFS_SYSNAME="sun4x_57"
550                         ;;
551                 sparc-sun-solaris2.8)
552                         AFS_SYSNAME="sun4x_58"
553                         ;;
554                 sparc-sun-solaris2.9)
555                         AFS_SYSNAME="sun4x_59"
556                         ;;
557                 sparc-sun-solaris2.10)
558                         AFS_SYSNAME="sun4x_510"
559                         ;;
560                 sparc-sun-sunos4*)
561                         AFS_SYSNAME="sun4_413"
562                         enable_login="yes"
563                         ;;
564                 i386-pc-solaris2.7)
565                         AFS_SYSNAME="sunx86_57"
566                         ;;
567                 i386-pc-solaris2.8)
568                         AFS_SYSNAME="sunx86_58"
569                         ;;
570                 i386-pc-solaris2.9)
571                         AFS_SYSNAME="sunx86_59"
572                         ;;
573                 i386-pc-solaris2.10)
574                         AFS_SYSNAME="sunx86_510"
575                         ;;
576                 alpha*-dec-osf4.0*)
577                         AFS_SYSNAME="alpha_dux40"
578                         ;;
579                 alpha*-dec-osf5.0*)
580                         AFS_SYSNAME="alpha_dux50"
581                         ;;
582                 alpha*-dec-osf5.1*)
583                         AFS_SYSNAME="alpha_dux51"
584                         ;;
585                 mips-sgi-irix6.5)
586                         AFS_SYSNAME="sgi_65"
587                         ;;
588                 ia64-*-linux*)
589                         AFS_SYSNAME="ia64_linuxXX"
590                         ;;
591                 powerpc-*-linux*)
592                         AFS_SYSNAME="ppc_linuxXX"
593                         ;;
594                 powerpc64-*-linux*)
595                         AFS_SYSNAME="ppc64_linuxXX"
596                         ;;
597                 alpha*-linux*)
598                         AFS_SYSNAME="alpha_linux_XX"
599                         ;;
600                 s390-*-linux*)
601                         AFS_SYSNAME="s390_linuxXX"
602                         ;;
603                 s390x-*-linux*)
604                         AFS_SYSNAME="s390x_linuxXX"
605                         ;;
606                 sparc-*-linux*)
607                         AFS_SYSNAME="sparc_linuxXX"
608                         ;;
609                 sparc64-*-linux*)
610                         AFS_SYSNAME="sparc64_linuxXX"
611                         ;;
612                 i?86-*-linux*)
613                         AFS_SYSNAME="i386_linuxXX"
614                         ;;
615                 parisc-*-linux-gnu)
616                         AFS_SYSNAME="parisc_linuxXX"
617                         enable_pam="no"
618                         ;;
619                 power*-ibm-aix4.2*)
620                         AFS_SYSNAME="rs_aix42"
621                         ;;
622                 power*-ibm-aix4.3*)
623                         AFS_SYSNAME="rs_aix42"
624                         ;;
625                 power*-ibm-aix5.1*)
626                         AFS_SYSNAME="rs_aix51"
627                         ;;
628                 power*-ibm-aix5.2*)
629                         AFS_SYSNAME="rs_aix52"
630                         ;;
631                 x86_64-*-linux-gnu)
632                         AFS_SYSNAME="amd64_linuxXX"
633                         enable_pam="no"
634                         ;;
635                 *)
636                         AC_MSG_ERROR(An AFS sysname is required)
637                         exit 1
638                         ;;
639         esac
640         case $AFS_SYSNAME in
641                 *_linux*)
642                         AFS_SYSKVERS=`echo $LINUX_VERSION | awk -F\. '{print $[]1 $[]2}'`
643                         if test "x${AFS_SYSKVERS}" = "x"; then
644                          AC_MSG_ERROR(Couldn't guess your Linux version. Please use the --with-afs-sysname option to configure an AFS sysname.)
645                         fi
646                         _AFS_SYSNAME=`echo $AFS_SYSNAME|sed s/XX\$/$AFS_SYSKVERS/`
647                         AFS_SYSNAME="$_AFS_SYSNAME"
648                         save_CPPFLAGS="$CPPFLAGS"
649                         CPPFLAGS="-I${LINUX_KERNEL_PATH}/include $CPPFLAGS"
650                         AC_TRY_COMPILE(
651                          [#include <linux/autoconf.h>],
652                          [#ifndef CONFIG_USERMODE
653                           #error not UML
654                           #endif],
655                          ac_cv_linux_is_uml=yes,)
656                         if test "${ac_cv_linux_is_uml}" = yes; then
657                          _AFS_SYSNAME=`echo $AFS_SYSNAME|sed s/linux/umlinux/`
658                         fi
659                         CPPFLAGS="$save_CPPFLAGS"
660                         AFS_SYSNAME="$_AFS_SYSNAME"
661                         ;;
662         esac
663         AC_MSG_RESULT($AFS_SYSNAME)
664 fi
665
666 case $AFS_SYSNAME in
667         *_darwin*)
668                 DARWIN_PLIST=src/libafs/afs.${AFS_SYSNAME}.plist
669                 DARWIN_INFOFILE=afs.${AFS_SYSNAME}.plist
670                 dnl the test below fails on darwin, even if the CPPFLAGS below
671                 dnl are added. the headers from Kernel.Framework must be used
672                 dnl when KERNEL is defined.
673
674                 dnl really, such a thing isn't guaranteed to work on any 
675                 dnl platform until the kernel cflags from MakefileProto are
676                 dnl known to configure
677                 AC_DEFINE(HAVE_STRUCT_BUF, 1, [define if you have a struct buf])
678                 ;;
679         *)
680 AC_MSG_CHECKING(for definition of struct buf)
681 dnl save_CPPFLAGS="$CPPFLAGS"
682 dnl CPPFLAGS="$CPPFLAGS -DKERNEL -D_KERNEL -D__KERNEL -D__KERNEL__"
683 AC_CACHE_VAL(ac_cv_have_struct_buf, [
684         ac_cv_have_struct_buf=no
685         AC_TRY_COMPILE(
686                 [#include <sys/buf.h>],
687                 [struct buf x;
688                 printf("%d\n", sizeof(x));],
689                 ac_cv_have_struct_buf=yes,)
690         ]
691 )
692 dnl CPPFLAGS="$save_CPPFLAGS"
693 AC_MSG_RESULT($ac_cv_have_struct_buf)
694 if test "$ac_cv_have_struct_buf" = yes; then
695         AC_DEFINE(HAVE_STRUCT_BUF, 1, [define if you have a struct buf])
696 fi
697 ;;
698 esac
699
700
701 AC_CACHE_VAL(ac_cv_sockaddr_len,
702 [
703 AC_MSG_CHECKING([if struct sockaddr has sa_len field])
704 AC_TRY_COMPILE( [#include <sys/types.h>
705 #include <sys/socket.h>],
706 [struct sockaddr *a;
707 a->sa_len=0;], ac_cv_sockaddr_len=yes, ac_cv_sockaddr_len=no)
708 AC_MSG_RESULT($ac_cv_sockaddr_len)])
709 if test "$ac_cv_sockaddr_len" = "yes"; then
710    AC_DEFINE(STRUCT_SOCKADDR_HAS_SA_LEN, 1, [define if you struct sockaddr sa_len])
711 fi
712 if test "x${MKAFS_OSTYPE}" = "xIRIX"; then
713         echo Skipping library tests because they confuse Irix.
714 else
715   AC_CHECK_FUNCS(socket)
716
717   if test "$ac_cv_func_socket" = no; then
718     for lib in socket inet; do
719         if test "$HAVE_SOCKET" != 1; then
720                 AC_CHECK_LIB(${lib}, socket,LIBS="$LIBS -l$lib";HAVE_SOCKET=1;AC_DEFINE(HAVE_SOCKET, 1, [define if you have socket]))
721         fi
722     done
723   fi
724   
725   AC_CHECK_FUNCS(connect)       
726
727   if test "$ac_cv_func_connect" = no; then
728     for lib in nsl; do
729         if test "$HAVE_CONNECT" != 1; then
730                 AC_CHECK_LIB(${lib}, connect,LIBS="$LIBS -l$lib";HAVE_CONNECT=1;AC_DEFINE(HAVE_CONNECT, 1, [define if you have connect]))
731         fi
732     done
733   fi
734
735   AC_CHECK_FUNCS(gethostbyname)
736   if test "$ac_cv_func_gethostbyname" = no; then
737         for lib in dns nsl resolv; do
738           if test "$HAVE_GETHOSTBYNAME" != 1; then
739             AC_CHECK_LIB(${lib}, gethostbyname, LIBS="$LIBS -l$lib";HAVE_GETHOSTBYNAME=1;AC_DEFINE(HAVE_GETHOSTBYNAME, 1, [define if you have gethostbyname]))
740           fi
741         done    
742   fi    
743
744   dnl darwin wants it, aix hates it
745   AC_MSG_CHECKING(for the useability of arpa/nameser_compat.h)
746   AC_TRY_COMPILE([
747   #include <stdlib.h>
748   #include <stdio.h>
749   #include <sys/types.h>
750   #include <sys/socket.h>
751   #include <netinet/in.h>
752   #include <arpa/inet.h>
753   #include <arpa/nameser.h>
754   #include <arpa/nameser_compat.h>
755   #include <resolv.h>
756   ], [static int i; i = 0;],
757   [AC_MSG_RESULT(yes)
758    AC_DEFINE(HAVE_ARPA_NAMESER_COMPAT_H)],
759   [AC_MSG_RESULT(no)
760    ])
761
762   openafs_save_libs="$LIBS"
763   AC_MSG_CHECKING([for res_search])
764   AC_FUNC_RES_SEARCH
765
766   if test "$ac_cv_func_res_search" = no; then
767       for lib in dns nsl resolv; do
768         if test "$ac_cv_func_res_search" != yes; then
769           LIBS="-l$lib $LIBS"
770           AC_FUNC_RES_SEARCH
771           LIBS="$openafs_save_libs"
772         fi
773       done    
774       if test "$ac_cv_func_res_search" = yes; then
775         LIB_res_search="-l$lib"       
776         AC_DEFINE(HAVE_RES_SEARCH, 1, [])
777         AC_MSG_RESULT([yes, in lib$lib])
778       else
779         AC_MSG_RESULT(no)
780       fi
781   else
782     AC_DEFINE(HAVE_RES_SEARCH, 1, [])
783     AC_MSG_RESULT(yes)
784   fi
785   
786 fi
787
788 PTHREAD_LIBS=error
789 AC_CHECK_LIB(pthread, pthread_attr_init,
790              PTHREAD_LIBS="-lpthread")
791 if test "x$PTHREAD_LIBS" = xerror; then
792         AC_CHECK_LIB(pthreads, pthread_attr_init,
793                 PTHREAD_LIBS="-lpthreads")
794 fi
795 if test "x$PTHREAD_LIBS" = xerror; then
796         AC_CHECK_LIB(c_r, pthread_attr_init,
797                 PTHREAD_LIBS="-lc_r")
798 fi
799 if test "x$PTHREAD_LIBS" = xerror; then
800         AC_CHECK_FUNC(pthread_attr_init, PTHREAD_LIBS="")
801 fi
802 if test "x$PTHREAD_LIBS" = xerror; then
803         AC_MSG_WARN(*** Unable to locate working posix thread library ***)
804 fi
805 AC_SUBST(PTHREAD_LIBS)
806
807 WITH_OBSOLETE=NO
808 if test "$enable_obsolete" = "yes"; then
809         WITH_OBSOLETE=YES
810 fi
811
812 WITH_INSECURE=NO
813 if test "$enable_insecure" = "yes"; then
814         WITH_INSECURE=YES
815 fi
816
817 if test "x$with_bsd_kernel_headers" != "x"; then
818         BSD_KERNEL_PATH="$with_bsd_kernel_headers"
819 else
820         BSD_KERNEL_PATH="/usr/src/sys"
821 fi
822
823 if test "x$with_bsd_kernel_build" != "x"; then
824         BSD_KERNEL_BUILD="$with_bsd_kernel_build"
825 else
826         case $AFS_SYSNAME in
827                 i386_fbsd_4?)
828                         BSD_KERNEL_BUILD="${BSD_KERNEL_PATH}/compile/GENERIC"
829                         ;;
830                 i386_fbsd_5?)
831                         BSD_KERNEL_BUILD="${BSD_KERNEL_PATH}/i386/compile/GENERIC"
832                         ;;
833         esac
834 fi
835
836 # Fast restart
837 if test "$enable_supergroups" = "yes"; then
838         AC_DEFINE(SUPERGROUPS, 1, [define if you want to have support for nested pts groups])
839 fi
840
841 if test "$enable_fast_restart" = "yes"; then
842         AC_DEFINE(FAST_RESTART, 1, [define if you want to have fast restart])
843 fi
844
845 if test "$enable_bitmap_later" = "yes"; then
846         AC_DEFINE(BITMAP_LATER, 1, [define if you want to salvager to check bitmasks later])
847 fi
848
849 if test "$enable_full_vos_listvol_switch" = "yes"; then
850         AC_DEFINE(FULL_LISTVOL_SWITCH, 1, [define if you want to want listvol switch])
851 fi
852
853 if test "$enable_bos_restricted_mode" = "yes"; then
854         AC_DEFINE(BOS_RESTRICTED_MODE, 1, [define if you want to want bos restricted mode])
855 fi
856
857 if test "$enable_bos_new_config" = "yes"; then
858         AC_DEFINE(BOS_NEW_CONFIG, 1, [define if you want to enable automatic renaming of BosConfig.new to BosConfig at startup])
859 fi
860
861 if test "$enable_largefile_fileserver" = "yes"; then
862         AC_DEFINE(AFS_LARGEFILE_ENV, 1, [define if you want large file fileserver])
863 fi
864
865 if test "$enable_namei_fileserver" = "yes"; then
866         AC_DEFINE(AFS_NAMEI_ENV, 1, [define if you want to want namei fileserver])
867 fi
868
869 if test "$enable_afsdb" = "yes"; then
870         LIB_AFSDB="$LIB_res_search"
871         AC_DEFINE(AFS_AFSDB_ENV, 1, [define if you want to want search afsdb rr])
872 fi
873
874 dnl check for tivoli
875 AC_MSG_CHECKING(for tivoli tsm butc support)
876 XBSA_CFLAGS=""
877 if test "$enable_tivoli_tsm" = "yes"; then
878         XBSADIR1=/usr/tivoli/tsm/client/api/bin/xopen
879         XBSADIR2=/opt/tivoli/tsm/client/api/bin/xopen
880
881         if test -e "$XBSADIR1/xbsa.h"; then
882                 XBSA_CFLAGS="-Dxbsa -I$XBSADIR1"
883                 AC_MSG_RESULT([yes, $XBSA_CFLAGS])
884         elif test -e "$XBSADIR2/xbsa.h"; then
885                 XBSA_CFLAGS="-Dxbsa -I$XBSADIR2"
886                 AC_MSG_RESULT([yes, $XBSA_CFLAGS])
887         else
888                 AC_MSG_RESULT([no, missing xbsa.h header file])
889         fi
890 else
891         AC_MSG_RESULT([no])
892 fi
893 AC_SUBST(XBSA_CFLAGS)
894
895 dnl checks for header files.
896 AC_HEADER_STDC
897 AC_HEADER_SYS_WAIT
898 AC_HEADER_DIRENT
899 AC_CHECK_HEADERS(stdlib.h string.h unistd.h fcntl.h sys/time.h sys/file.h)
900 AC_CHECK_HEADERS(netinet/in.h netdb.h sys/fcntl.h sys/mnttab.h sys/mntent.h)
901 AC_CHECK_HEADERS(mntent.h sys/vfs.h sys/param.h sys/fs_types.h sys/fstyp.h)
902 AC_CHECK_HEADERS(sys/mount.h strings.h termios.h signal.h)
903 AC_CHECK_HEADERS(windows.h malloc.h winsock2.h direct.h io.h sys/user.h)
904 AC_CHECK_HEADERS(security/pam_modules.h siad.h usersec.h ucontext.h regex.h)
905
906 if test "$ac_cv_header_security_pam_modules_h" = yes -a "$enable_pam" = yes; then
907         HAVE_PAM="yes"
908 else
909         HAVE_PAM="no"
910 fi
911 AC_SUBST(HAVE_PAM)
912
913 if test "$enable_login" = yes; then
914         BUILD_LOGIN="yes"
915 else
916         BUILD_LOGIN="no"
917 fi
918 AC_SUBST(BUILD_LOGIN)
919
920 AC_CHECK_FUNCS(utimes random srandom getdtablesize snprintf strlcat strlcpy re_comp re_exec)
921 AC_CHECK_FUNCS(setprogname getprogname sigaction mkstemp vsnprintf strerror)
922
923 AC_CHECK_FUNCS(regcomp regexec regerror)
924 AC_MSG_CHECKING([for POSIX regex library])
925 if test "$ac_cv_header_regex_h" = "yes" && \
926         test "$ac_cv_func_regcomp" = "yes" && \
927         test "$ac_cv_func_regexec" = "yes" && \
928         test "$ac_cv_func_regerror" = "yes"; then
929     AC_DEFINE(HAVE_POSIX_REGEX, 1, [define if you have POSIX regex library])
930     AC_MSG_RESULT(yes)
931 else
932     AC_MSG_RESULT(no)
933 fi
934         
935 AC_CHECK_TYPE(ssize_t, int)
936 AC_SIZEOF_TYPE(long)
937
938 AC_CHECK_FUNCS(timegm)
939
940 dnl Directory PATH handling
941 if test "x$enable_transarc_paths" = "xyes"  ; then 
942     afsconfdir=${afsconfdir=/usr/afs/etc}
943     viceetcdir=${viceetcdir=/usr/vice/etc}
944     afskerneldir=${afskerneldir=${viceetcdir}}
945     afssrvbindir=${afssrvbindir=/usr/afs/bin}
946     afssrvsbindir=${afssrvsbindir=/usr/afs/bin}
947     afssrvlibexecdir=${afssrvlibexecdir=/usr/afs/bin}
948     afsdbdir=${afsdbdir=/usr/afs/db}
949     afslogsdir=${afslogsdir=/usr/afs/logs}
950     afslocaldir=${afslocaldir=/usr/afs/local}
951     afsbackupdir=${afsbackupdir=/usr/afs/backup}
952     afsbosconfigdir=${afsbosconfigdir=/usr/afs/local}
953 else 
954     afsconfdir=${afsconfdir='${sysconfdir}/openafs/server'}
955     viceetcdir=${viceetcdir='${sysconfdir}/openafs'}
956     afskerneldir=${afskerneldir='${libdir}/openafs'}
957     afssrvbindir=${afssrvbindir='${bindir}'}
958     afssrvsbindir=${afssrvsbindir='${sbindir}'}
959     afssrvlibexecdir=${afssrvlibexecdir='${libexecdir}/openafs'}
960     afsdbdir=${afsdbdir='${localstatedir}/openafs/db'}
961     afslogsdir=${afslogsdir='${localstatedir}/openafs/logs'}
962     afslocaldir=${afslocaldir='${localstatedir}/openafs'}
963     afsbackupdir=${afsbackupdir='${localstatedir}/openafs/backup'}
964     afsbosconfigdir=${afsbosconfigdir='${sysconfdir}/openafs'}
965 fi
966 AC_SUBST(afsconfdir)
967 AC_SUBST(viceetcdir)
968 AC_SUBST(afskerneldir)
969 AC_SUBST(afssrvbindir)
970 AC_SUBST(afssrvsbindir)
971 AC_SUBST(afssrvlibexecdir)
972 AC_SUBST(afsdbdir)
973 AC_SUBST(afslogsdir)
974 AC_SUBST(afslocaldir)
975 AC_SUBST(afsbackupdir)
976 AC_SUBST(afsbosconfigdir)
977
978 if test "x$enable_kernel_module" = "xyes"; then
979 ENABLE_KERNEL_MODULE=libafs
980 fi
981
982 AC_SUBST(AFS_SYSNAME)
983 AC_SUBST(AFS_PARAM_COMMON)
984 AC_SUBST(ENABLE_KERNEL_MODULE)
985 AC_SUBST(LIB_AFSDB)
986 AC_SUBST(LINUX_KERNEL_PATH)
987 AC_SUBST(BSD_KERNEL_PATH)
988 AC_SUBST(BSD_KERNEL_BUILD)
989 AC_SUBST(LINUX_VERSION)
990 AC_SUBST(MKAFS_OSTYPE)
991 AC_SUBST(TOP_OBJDIR)
992 AC_SUBST(TOP_SRCDIR)
993 AC_SUBST(TOP_INCDIR)
994 AC_SUBST(TOP_LIBDIR)
995 AC_SUBST(DEST)
996 AC_SUBST(WITH_OBSOLETE)
997 AC_SUBST(WITH_INSECURE)
998 AC_SUBST(DARWIN_INFOFILE)
999 AC_SUBST(IRIX_BUILD_IP35)
1000
1001 OPENAFS_OSCONF
1002
1003 TOP_SRCDIR="${srcdir}/src"
1004 dnl
1005 dnl If we're using ./configure, need a more reasonable TOP_SRCDIR, since relative links don't work everywhere
1006 dnl
1007 case $TOP_SRCDIR in
1008         /*)
1009                 ;;
1010         *)
1011                 TOP_SRCDIR=`cd $TOP_SRCDIR; pwd`
1012                 ;;
1013 esac
1014
1015 TOP_OBJDIR="${SRCDIR_PARENT}"
1016 TOP_INCDIR="${SRCDIR_PARENT}/include"
1017 TOP_LIBDIR="${SRCDIR_PARENT}/lib"
1018 if test "${DEST}x" = "x"; then
1019         DEST="${SRCDIR_PARENT}/${AFS_SYSNAME}/dest"
1020 fi
1021
1022 HELPER_SPLINT="${TOP_SRCDIR}/helper-splint.sh"
1023 HELPER_SPLINTCFG="${TOP_SRCDIR}/splint.cfg"
1024 AC_SUBST(HELPER_SPLINT)
1025 AC_SUBST(HELPER_SPLINTCFG)
1026
1027
1028 ])