fix-indent-bug-with-lock-macros-part-two-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 "x$ac_cv_linux_exports_sys_chdir" = "xyes" ; then
228                   AC_DEFINE(EXPORTED_SYS_CHDIR, 1, [define if your linux kernel exports sys_chdir])
229                  fi
230                  if test "x$ac_cv_linux_exports_sys_close" = "xyes" ; then
231                   AC_DEFINE(EXPORTED_SYS_CLOSE, 1, [define if your linux kernel exports sys_close])
232                  fi
233                  if test "x$ac_cv_linux_exports_sys_wait4" = "xyes" ; then
234                   AC_DEFINE(EXPORTED_SYS_WAIT4, 1, [define if your linux kernel exports sys_wait4])
235                  fi
236                  if test "x$ac_cv_linux_exports_tasklist_lock" = "xyes" ; then
237                   AC_DEFINE(EXPORTED_TASKLIST_LOCK, 1, [define if your linux kernel exports tasklist_lock])
238                  fi
239                  if test "x$ac_cv_linux_exports_sys_call_table" = "xyes"; then
240                   AC_DEFINE(EXPORTED_SYS_CALL_TABLE)
241                  fi
242                  if test "x$ac_cv_linux_exports_ia32_sys_call_table" = "xyes"; then
243                   AC_DEFINE(EXPORTED_IA32_SYS_CALL_TABLE)
244                  fi
245                  if test "x$ac_cv_linux_exports_kallsyms_symbol" = "xyes"; then
246                   AC_DEFINE(EXPORTED_KALLSYMS_SYMBOL)
247                  fi
248                  if test "x$ac_cv_linux_exports_kallsyms_address" = "xyes"; then
249                   AC_DEFINE(EXPORTED_KALLSYMS_ADDRESS)
250                  fi
251                  if test "x$ac_cv_linux_completion_h_exists" = "xyes" ; then
252                   AC_DEFINE(COMPLETION_H_EXISTS, 1, [define if completion_h exists])
253                  fi
254                  if test "x$ac_cv_linux_defines_for_each_process" = "xyes" ; then
255                   AC_DEFINE(DEFINED_FOR_EACH_PROCESS, 1, [define if for_each_process defined])
256                  fi
257                  if test "x$ac_cv_linux_defines_prev_task" = "xyes" ; then
258                   AC_DEFINE(DEFINED_PREV_TASK, 1, [define if prev_task defined])
259                  fi
260                  if test "x$ac_cv_linux_func_inode_setattr_returns_int" = "xyes" ; then
261                   AC_DEFINE(INODE_SETATTR_NOT_VOID, 1, [define if your setattr return return non-void])
262                  fi
263                  if test "x$ac_cv_linux_fs_struct_address_space_has_page_lock" = "xyes"; then 
264                   AC_DEFINE(STRUCT_ADDRESS_SPACE_HAS_PAGE_LOCK, 1, [define if your struct address_space has page_lock])
265                  fi
266                  if test "x$ac_cv_linux_fs_struct_address_space_has_gfp_mask" = "xyes"; then 
267                   AC_DEFINE(STRUCT_ADDRESS_SPACE_HAS_GFP_MASK, 1, [define if your struct address_space has gfp_mask])
268                  fi
269                  if test "x$ac_cv_linux_fs_struct_inode_has_i_truncate_sem" = "xyes"; then 
270                   AC_DEFINE(STRUCT_INODE_HAS_I_TRUNCATE_SEM, 1, [define if your struct inode has truncate_sem])
271                  fi
272                  if test "x$ac_cv_linux_fs_struct_inode_has_i_alloc_sem" = "xyes"; then 
273                   AC_DEFINE(STRUCT_INODE_HAS_I_ALLOC_SEM, 1, [define if your struct inode has alloc_sem])
274                  fi
275                  if test "x$ac_cv_linux_fs_struct_inode_has_i_devices" = "xyes"; then 
276                   AC_DEFINE(STRUCT_INODE_HAS_I_DEVICES, 1, [define if you struct inode has i_devices])
277                  fi
278                  if test "x$ac_cv_linux_fs_struct_inode_has_i_security" = "xyes"; then 
279                   AC_DEFINE(STRUCT_INODE_HAS_I_SECURITY, 1, [define if you struct inode has i_security])
280                  fi
281                  if test "x$ac_cv_linux_fs_struct_inode_has_i_dirty_data_buffers" = "xyes"; then 
282                   AC_DEFINE(STRUCT_INODE_HAS_I_DIRTY_DATA_BUFFERS, 1, [define if your struct inode has data_buffers])
283                  fi
284                  if test "x$ac_cv_linux_func_recalc_sigpending_takes_void" = "xyes"; then 
285                   AC_DEFINE(RECALC_SIGPENDING_TAKES_VOID, 1, [define if your recalc_sigpending takes void])
286                  fi
287                  if test "x$ac_cv_linux_kernel_is_selinux" = "xyes" ; then
288                   AC_DEFINE(LINUX_KERNEL_IS_SELINUX, 1, [define if your linux kernel uses SELinux features])
289                  fi
290                  if test "x$ac_linux_syscall" = "xyes" ; then
291                   AC_DEFINE(HAVE_KERNEL_LINUX_SYSCALL_H, 1, [define if your linux kernel has linux/syscall.h])
292                  fi
293                  if test "x$ac_cv_linux_sched_struct_task_struct_has_parent" = "xyes"; then 
294                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_PARENT, 1, [define if your struct task_struct has parent])
295                  fi
296                  if test "x$ac_cv_linux_sched_struct_task_struct_has_real_parent" = "xyes"; then 
297                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_REAL_PARENT, 1, [define if your struct task_struct has real_parent])
298                  fi
299                  if test "x$ac_cv_linux_sched_struct_task_struct_has_sigmask_lock" = "xyes"; then 
300                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIGMASK_LOCK, 1, [define if your struct task_struct has sigmask_lock])
301                  fi
302                  if test "x$ac_cv_linux_sched_struct_task_struct_has_sighand" = "xyes"; then 
303                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIGHAND, 1, [define if your struct task_struct has sighand])
304                  fi
305                  if test "x$ac_cv_linux_sched_struct_task_struct_has_sig" = "xyes"; then 
306                   AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIG, 1, [define if your struct task_struct has sig])
307                  fi
308                 :
309                 fi
310                 ;;
311         *-solaris*)
312                 MKAFS_OSTYPE=SOLARIS
313                 AC_MSG_RESULT(sun4)
314                 SOLARIS_UFSVFS_HAS_DQRWLOCK
315                 SOLARIS_PROC_HAS_P_COREFILE
316                 SOLARIS_FS_HAS_FS_ROLLED
317                 ;;
318         *-sunos*)
319                 MKAFS_OSTYPE=SUNOS
320                 enable_kernel_module=no
321                 AC_MSG_RESULT(sun4)
322                 ;;
323         *-hpux*)
324                 MKAFS_OSTYPE=HPUX
325                 AC_MSG_RESULT(hp_ux)
326                 ;;
327         *-irix*)
328                 if test -d /usr/include/sys/SN/SN1; then
329                  IRIX_BUILD_IP35="IP35"
330                 fi
331                 MKAFS_OSTYPE=IRIX
332                 AC_MSG_RESULT(sgi)
333                 ;;
334         *-aix*)
335                 MKAFS_OSTYPE=AIX
336                 AC_MSG_RESULT(rs_aix)
337                 ;;
338         *-osf*)
339                 MKAFS_OSTYPE=DUX
340                 AC_MSG_RESULT(alpha_dux)
341                 if test "x$enable_kernel_module" = "xyes"; then
342                  if test "x$with_dux_kernel_headers" != "x"; then
343                    HEADER_RT=`ls ${with_dux_kernel_headers}/rt_preempt.h | head -1 | sed 's,/rt_preempt.h,,;s,/usr/sys/,,'`
344                  else
345                    HEADER_RT=`ls /usr/sys/*/rt_preempt.h | head -1 | sed 's,/rt_preempt.h,,;s,/usr/sys/,,'`
346                  fi
347                 fi
348                 if test "$HEADER_RT" = "*" ; then
349                         AC_MSG_ERROR([Need a configured kernel directory])
350                 fi
351                 AC_SUBST([HEADER_RT])
352                 ;;
353         *-darwin*)
354                 MKAFS_OSTYPE=DARWIN
355                 AC_MSG_RESULT(ppc_darwin)
356                 ;;
357         *-freebsd*)
358                 MKAFS_OSTYPE=FBSD
359                 AC_MSG_RESULT(i386_fbsd)
360                 ;;
361         *-netbsd*)
362                 MKAFS_OSTYPE=NBSD
363                 AC_MSG_RESULT(nbsd)
364                 ;;
365         *-openbsd*)
366                 MKAFS_OSTYPE=OBSD
367                 AC_MSG_RESULT(i386_obsd)
368                 ;;
369         *)
370                 AC_MSG_RESULT($system)
371                 ;;
372 esac
373
374 if test "x$with_afs_sysname" != "x"; then
375         AFS_SYSNAME="$with_afs_sysname"
376 else
377         AC_MSG_CHECKING(your AFS sysname)
378         case $host in
379                 i?86-*-openbsd3.1)
380                         AFS_SYSNAME="i386_obsd31"
381                         ;;
382                 i?86-*-openbsd3.2)
383                         AFS_SYSNAME="i386_obsd32"
384                         ;;
385                 i?86-*-openbsd3.3)
386                         AFS_SYSNAME="i386_obsd33"
387                         ;;
388                 i?86-*-openbsd3.4)
389                         AFS_SYSNAME="i386_obsd34"
390                         ;;
391                 i?86-*-openbsd3.5)
392                         AFS_SYSNAME="i386_obsd35"
393                         ;;
394                 i?86-*-freebsd4.2*)
395                         AFS_SYSNAME="i386_fbsd_42"
396                         ;;
397                 i?86-*-freebsd4.3*)
398                         AFS_SYSNAME="i386_fbsd_43"
399                         ;;
400                 i?86-*-freebsd4.4*)
401                         AFS_SYSNAME="i386_fbsd_44"
402                         ;;
403                 i?86-*-freebsd4.5*)
404                         AFS_SYSNAME="i386_fbsd_45"
405                         ;;
406                 i?86-*-freebsd4.6*)
407                         AFS_SYSNAME="i386_fbsd_46"
408                         ;;
409                 i?86-*-freebsd4.7*)
410                         AFS_SYSNAME="i386_fbsd_47"
411                         ;;
412                 i?86-*-freebsd5.0*)
413                         AFS_SYSNAME="i386_fbsd_50"
414                         ;;
415                 i?86-*-freebsd5.1*)
416                         AFS_SYSNAME="i386_fbsd_51"
417                         ;;
418                 i?86-*-freebsd5.2*)
419                         AFS_SYSNAME="i386_fbsd_52"
420                         ;;
421                 i?86-*-netbsd*1.5*)
422                         AFS_PARAM_COMMON=param.nbsd15.h
423                         AFS_SYSNAME="i386_nbsd15"
424                         ;;
425                 alpha-*-netbsd*1.5*)
426                         AFS_PARAM_COMMON=param.nbsd15.h
427                         AFS_SYSNAME="alpha_nbsd15"
428                         ;;
429                 i?86-*-netbsd*1.6[[M-Z]]*)
430                         AFS_PARAM_COMMON=param.nbsd20.h
431                         AFS_SYSNAME="i386_nbsd20"
432                         ;;
433                 powerpc-*-netbsd*1.6[[M-Z]]*)
434                         AFS_PARAM_COMMON=param.nbsd20.h
435                         AFS_SYSNAME="ppc_nbsd20"
436                         ;;
437                 i?86-*-netbsd*2.0*)
438                         AFS_PARAM_COMMON=param.nbsd20.h
439                         AFS_SYSNAME="i386_nbsd20"
440                         ;;
441                 powerpc-*-netbsd*2.0*)
442                         AFS_PARAM_COMMON=param.nbsd20.h
443                         AFS_SYSNAME="ppc_nbsd20"
444                         ;;
445                 i?86-*-netbsd*1.6*)
446                         AFS_PARAM_COMMON=param.nbsd16.h
447                         AFS_SYSNAME="i386_nbsd16"
448                         ;;
449                 alpha-*-netbsd*1.6*)
450                         AFS_PARAM_COMMON=param.nbsd16.h
451                         AFS_SYSNAME="alpha_nbsd16"
452                         ;;
453                 powerpc-*-netbsd*1.6*)
454                         AFS_PARAM_COMMON=param.nbsd16.h
455                         AFS_SYSNAME="ppc_nbsd16"
456                         ;;
457                 hppa*-hp-hpux11.0*)
458                         AFS_SYSNAME="hp_ux110"
459                         ;;
460                 hppa*-hp-hpux11.11)
461                         AFS_SYSNAME="hp_ux11i"
462                         ;;
463                 ia64-hp-hpux11.22)
464                         AFS_SYSNAME="ia64_hpux1122"
465                         ;;
466                 ia64-hp-hpux*)
467                         AFS_SYSNAME="ia64_hpux1123"
468                         ;;
469                 hppa*-hp-hpux10*)
470                         AFS_SYSNAME="hp_ux102"
471                         ;;
472                 powerpc-apple-darwin1.2*)
473                         AFS_SYSNAME="ppc_darwin_12"
474                         ;;
475                 powerpc-apple-darwin1.3*)
476                         AFS_SYSNAME="ppc_darwin_13"
477                         ;;
478                 powerpc-apple-darwin1.4*)
479                         AFS_SYSNAME="ppc_darwin_14"
480                         ;;
481                 powerpc-apple-darwin5.1*)
482                         AFS_SYSNAME="ppc_darwin_14"
483                         ;;
484                 powerpc-apple-darwin5.2*)
485                         AFS_SYSNAME="ppc_darwin_14"
486                         ;;
487                 powerpc-apple-darwin5.3*)
488                         AFS_SYSNAME="ppc_darwin_14"
489                         ;;
490                 powerpc-apple-darwin5.4*)
491                         AFS_SYSNAME="ppc_darwin_14"
492                         ;;
493                 powerpc-apple-darwin5.5*)
494                         AFS_SYSNAME="ppc_darwin_14"
495                         ;;
496                 powerpc-apple-darwin6.0*)
497                         AFS_SYSNAME="ppc_darwin_60"
498                         ;;
499                 powerpc-apple-darwin6.1*)
500                         AFS_SYSNAME="ppc_darwin_60"
501                         ;;
502                 powerpc-apple-darwin6.2*)
503                         AFS_SYSNAME="ppc_darwin_60"
504                         ;;
505                 powerpc-apple-darwin6.3*)
506                         AFS_SYSNAME="ppc_darwin_60"
507                         ;;
508                 powerpc-apple-darwin6.4*)
509                         AFS_SYSNAME="ppc_darwin_60"
510                         ;;
511                 powerpc-apple-darwin6.5*)
512                         AFS_SYSNAME="ppc_darwin_60"
513                         ;;
514                 powerpc-apple-darwin7.0*)
515                         AFS_SYSNAME="ppc_darwin_70"
516                         ;;
517                 powerpc-apple-darwin7.1*)
518                         AFS_SYSNAME="ppc_darwin_70"
519                         ;;
520                 powerpc-apple-darwin7.2*)
521                         AFS_SYSNAME="ppc_darwin_70"
522                         ;;
523                 powerpc-apple-darwin7.3*)
524                         AFS_SYSNAME="ppc_darwin_70"
525                         ;;
526                 powerpc-apple-darwin7.4*)
527                         AFS_SYSNAME="ppc_darwin_70"
528                         ;;
529                 powerpc-apple-darwin7.5*)
530                         AFS_SYSNAME="ppc_darwin_70"
531                         ;;
532                 sparc-sun-solaris2.5*)
533                         AFS_SYSNAME="sun4x_55"
534                         enable_login="yes"
535                         ;;
536                 sparc-sun-solaris2.6)
537                         AFS_SYSNAME="sun4x_56"
538                         ;;
539                 sparc-sun-solaris2.7)
540                         AFS_SYSNAME="sun4x_57"
541                         ;;
542                 sparc-sun-solaris2.8)
543                         AFS_SYSNAME="sun4x_58"
544                         ;;
545                 sparc-sun-solaris2.9)
546                         AFS_SYSNAME="sun4x_59"
547                         ;;
548                 sparc-sun-solaris2.10)
549                         AFS_SYSNAME="sun4x_510"
550                         ;;
551                 sparc-sun-sunos4*)
552                         AFS_SYSNAME="sun4_413"
553                         enable_login="yes"
554                         ;;
555                 i386-pc-solaris2.7)
556                         AFS_SYSNAME="sunx86_57"
557                         ;;
558                 i386-pc-solaris2.8)
559                         AFS_SYSNAME="sunx86_58"
560                         ;;
561                 i386-pc-solaris2.9)
562                         AFS_SYSNAME="sunx86_59"
563                         ;;
564                 i386-pc-solaris2.10)
565                         AFS_SYSNAME="sunx86_510"
566                         ;;
567                 alpha*-dec-osf4.0*)
568                         AFS_SYSNAME="alpha_dux40"
569                         ;;
570                 alpha*-dec-osf5.0*)
571                         AFS_SYSNAME="alpha_dux50"
572                         ;;
573                 alpha*-dec-osf5.1*)
574                         AFS_SYSNAME="alpha_dux51"
575                         ;;
576                 mips-sgi-irix6.5)
577                         AFS_SYSNAME="sgi_65"
578                         ;;
579                 ia64-*-linux*)
580                         AFS_SYSNAME="ia64_linuxXX"
581                         ;;
582                 powerpc-*-linux*)
583                         AFS_SYSNAME="ppc_linuxXX"
584                         ;;
585                 powerpc64-*-linux*)
586                         AFS_SYSNAME="ppc64_linuxXX"
587                         ;;
588                 alpha*-linux*)
589                         AFS_SYSNAME="alpha_linux_XX"
590                         ;;
591                 s390-*-linux*)
592                         AFS_SYSNAME="s390_linuxXX"
593                         ;;
594                 s390x-*-linux*)
595                         AFS_SYSNAME="s390x_linuxXX"
596                         ;;
597                 sparc-*-linux*)
598                         AFS_SYSNAME="sparc_linuxXX"
599                         ;;
600                 sparc64-*-linux*)
601                         AFS_SYSNAME="sparc64_linuxXX"
602                         ;;
603                 i?86-*-linux*)
604                         AFS_SYSNAME="i386_linuxXX"
605                         ;;
606                 parisc-*-linux-gnu)
607                         AFS_SYSNAME="parisc_linuxXX"
608                         enable_pam="no"
609                         ;;
610                 power*-ibm-aix4.2*)
611                         AFS_SYSNAME="rs_aix42"
612                         ;;
613                 power*-ibm-aix4.3*)
614                         AFS_SYSNAME="rs_aix42"
615                         ;;
616                 power*-ibm-aix5.1*)
617                         AFS_SYSNAME="rs_aix51"
618                         ;;
619                 power*-ibm-aix5.2*)
620                         AFS_SYSNAME="rs_aix52"
621                         ;;
622                 x86_64-*-linux-gnu)
623                         AFS_SYSNAME="amd64_linuxXX"
624                         enable_pam="no"
625                         ;;
626                 *)
627                         AC_MSG_ERROR(An AFS sysname is required)
628                         exit 1
629                         ;;
630         esac
631         case $AFS_SYSNAME in
632                 *_linux*)
633                         AFS_SYSKVERS=`echo $LINUX_VERSION | awk -F\. '{print $[]1 $[]2}'`
634                         if test "x${AFS_SYSKVERS}" = "x"; then
635                          AC_MSG_ERROR(Couldn't guess your Linux version. Please use the --with-afs-sysname option to configure an AFS sysname.)
636                         fi
637                         _AFS_SYSNAME=`echo $AFS_SYSNAME|sed s/XX\$/$AFS_SYSKVERS/`
638                         AFS_SYSNAME="$_AFS_SYSNAME"
639                         save_CPPFLAGS="$CPPFLAGS"
640                         CPPFLAGS="-I${LINUX_KERNEL_PATH}/include $CPPFLAGS"
641                         AC_TRY_COMPILE(
642                          [#include <linux/autoconf.h>],
643                          [#ifndef CONFIG_USERMODE
644                           #error not UML
645                           #endif],
646                          ac_cv_linux_is_uml=yes,)
647                         if test "${ac_cv_linux_is_uml}" = yes; then
648                          _AFS_SYSNAME=`echo $AFS_SYSNAME|sed s/linux/umlinux/`
649                         fi
650                         CPPFLAGS="$save_CPPFLAGS"
651                         AFS_SYSNAME="$_AFS_SYSNAME"
652                         ;;
653         esac
654         AC_MSG_RESULT($AFS_SYSNAME)
655 fi
656
657 case $AFS_SYSNAME in
658         *_darwin*)
659                 DARWIN_PLIST=src/libafs/afs.${AFS_SYSNAME}.plist
660                 DARWIN_INFOFILE=afs.${AFS_SYSNAME}.plist
661                 dnl the test below fails on darwin, even if the CPPFLAGS below
662                 dnl are added. the headers from Kernel.Framework must be used
663                 dnl when KERNEL is defined.
664
665                 dnl really, such a thing isn't guaranteed to work on any 
666                 dnl platform until the kernel cflags from MakefileProto are
667                 dnl known to configure
668                 AC_DEFINE(HAVE_STRUCT_BUF, 1, [define if you have a struct buf])
669                 ;;
670         *)
671 AC_MSG_CHECKING(for definition of struct buf)
672 dnl save_CPPFLAGS="$CPPFLAGS"
673 dnl CPPFLAGS="$CPPFLAGS -DKERNEL -D_KERNEL -D__KERNEL -D__KERNEL__"
674 AC_CACHE_VAL(ac_cv_have_struct_buf, [
675         ac_cv_have_struct_buf=no
676         AC_TRY_COMPILE(
677                 [#include <sys/buf.h>],
678                 [struct buf x;
679                 printf("%d\n", sizeof(x));],
680                 ac_cv_have_struct_buf=yes,)
681         ]
682 )
683 dnl CPPFLAGS="$save_CPPFLAGS"
684 AC_MSG_RESULT($ac_cv_have_struct_buf)
685 if test "$ac_cv_have_struct_buf" = yes; then
686         AC_DEFINE(HAVE_STRUCT_BUF, 1, [define if you have a struct buf])
687 fi
688 ;;
689 esac
690
691
692 AC_CACHE_VAL(ac_cv_sockaddr_len,
693 [
694 AC_MSG_CHECKING([if struct sockaddr has sa_len field])
695 AC_TRY_COMPILE( [#include <sys/types.h>
696 #include <sys/socket.h>],
697 [struct sockaddr *a;
698 a->sa_len=0;], ac_cv_sockaddr_len=yes, ac_cv_sockaddr_len=no)
699 AC_MSG_RESULT($ac_cv_sockaddr_len)])
700 if test "$ac_cv_sockaddr_len" = "yes"; then
701    AC_DEFINE(STRUCT_SOCKADDR_HAS_SA_LEN, 1, [define if you struct sockaddr sa_len])
702 fi
703 if test "x${MKAFS_OSTYPE}" = "xIRIX"; then
704         echo Skipping library tests because they confuse Irix.
705 else
706   AC_CHECK_FUNCS(socket)
707
708   if test "$ac_cv_func_socket" = no; then
709     for lib in socket inet; do
710         if test "$HAVE_SOCKET" != 1; then
711                 AC_CHECK_LIB(${lib}, socket,LIBS="$LIBS -l$lib";HAVE_SOCKET=1;AC_DEFINE(HAVE_SOCKET, 1, [define if you have socket]))
712         fi
713     done
714   fi
715   
716   AC_CHECK_FUNCS(connect)       
717
718   if test "$ac_cv_func_connect" = no; then
719     for lib in nsl; do
720         if test "$HAVE_CONNECT" != 1; then
721                 AC_CHECK_LIB(${lib}, connect,LIBS="$LIBS -l$lib";HAVE_CONNECT=1;AC_DEFINE(HAVE_CONNECT, 1, [define if you have connect]))
722         fi
723     done
724   fi
725
726   AC_CHECK_FUNCS(gethostbyname)
727   if test "$ac_cv_func_gethostbyname" = no; then
728         for lib in dns nsl resolv; do
729           if test "$HAVE_GETHOSTBYNAME" != 1; then
730             AC_CHECK_LIB(${lib}, gethostbyname, LIBS="$LIBS -l$lib";HAVE_GETHOSTBYNAME=1;AC_DEFINE(HAVE_GETHOSTBYNAME, 1, [define if you have gethostbyname]))
731           fi
732         done    
733   fi    
734
735   dnl darwin wants it, aix hates it
736   AC_MSG_CHECKING(for the useability of arpa/nameser_compat.h)
737   AC_TRY_COMPILE([
738   #include <stdlib.h>
739   #include <stdio.h>
740   #include <sys/types.h>
741   #include <sys/socket.h>
742   #include <netinet/in.h>
743   #include <arpa/inet.h>
744   #include <arpa/nameser.h>
745   #include <arpa/nameser_compat.h>
746   #include <resolv.h>
747   ], [static int i; i = 0;],
748   [AC_MSG_RESULT(yes)
749    AC_DEFINE(HAVE_ARPA_NAMESER_COMPAT_H)],
750   [AC_MSG_RESULT(no)
751    ])
752
753   openafs_save_libs="$LIBS"
754   AC_MSG_CHECKING([for res_search])
755   AC_FUNC_RES_SEARCH
756
757   if test "$ac_cv_func_res_search" = no; then
758       for lib in dns nsl resolv; do
759         if test "$ac_cv_func_res_search" != yes; then
760           LIBS="-l$lib $LIBS"
761           AC_FUNC_RES_SEARCH
762           LIBS="$openafs_save_libs"
763         fi
764       done    
765       if test "$ac_cv_func_res_search" = yes; then
766         LIB_res_search="-l$lib"       
767         AC_DEFINE(HAVE_RES_SEARCH, 1, [])
768         AC_MSG_RESULT([yes, in lib$lib])
769       else
770         AC_MSG_RESULT(no)
771       fi
772   else
773     AC_DEFINE(HAVE_RES_SEARCH, 1, [])
774     AC_MSG_RESULT(yes)
775   fi
776   
777 fi
778
779 PTHREAD_LIBS=error
780 AC_CHECK_LIB(pthread, pthread_attr_init,
781              PTHREAD_LIBS="-lpthread")
782 if test "x$PTHREAD_LIBS" = xerror; then
783         AC_CHECK_LIB(pthreads, pthread_attr_init,
784                 PTHREAD_LIBS="-lpthreads")
785 fi
786 if test "x$PTHREAD_LIBS" = xerror; then
787         AC_CHECK_LIB(c_r, pthread_attr_init,
788                 PTHREAD_LIBS="-lc_r")
789 fi
790 if test "x$PTHREAD_LIBS" = xerror; then
791         AC_CHECK_FUNC(pthread_attr_init, PTHREAD_LIBS="")
792 fi
793 if test "x$PTHREAD_LIBS" = xerror; then
794         AC_MSG_WARN(*** Unable to locate working posix thread library ***)
795 fi
796 AC_SUBST(PTHREAD_LIBS)
797
798 WITH_OBSOLETE=NO
799 if test "$enable_obsolete" = "yes"; then
800         WITH_OBSOLETE=YES
801 fi
802
803 WITH_INSECURE=NO
804 if test "$enable_insecure" = "yes"; then
805         WITH_INSECURE=YES
806 fi
807
808 if test "x$with_bsd_kernel_headers" != "x"; then
809         BSD_KERNEL_PATH="$with_bsd_kernel_headers"
810 else
811         BSD_KERNEL_PATH="/usr/src/sys"
812 fi
813
814 if test "x$with_bsd_kernel_build" != "x"; then
815         BSD_KERNEL_BUILD="$with_bsd_kernel_build"
816 else
817         case $AFS_SYSNAME in
818                 i386_fbsd_4?)
819                         BSD_KERNEL_BUILD="${BSD_KERNEL_PATH}/compile/GENERIC"
820                         ;;
821                 i386_fbsd_5?)
822                         BSD_KERNEL_BUILD="${BSD_KERNEL_PATH}/i386/compile/GENERIC"
823                         ;;
824         esac
825 fi
826
827 # Fast restart
828 if test "$enable_supergroups" = "yes"; then
829         AC_DEFINE(SUPERGROUPS, 1, [define if you want to have support for nested pts groups])
830 fi
831
832 if test "$enable_fast_restart" = "yes"; then
833         AC_DEFINE(FAST_RESTART, 1, [define if you want to have fast restart])
834 fi
835
836 if test "$enable_bitmap_later" = "yes"; then
837         AC_DEFINE(BITMAP_LATER, 1, [define if you want to salvager to check bitmasks later])
838 fi
839
840 if test "$enable_full_vos_listvol_switch" = "yes"; then
841         AC_DEFINE(FULL_LISTVOL_SWITCH, 1, [define if you want to want listvol switch])
842 fi
843
844 if test "$enable_bos_restricted_mode" = "yes"; then
845         AC_DEFINE(BOS_RESTRICTED_MODE, 1, [define if you want to want bos restricted mode])
846 fi
847
848 if test "$enable_bos_new_config" = "yes"; then
849         AC_DEFINE(BOS_NEW_CONFIG, 1, [define if you want to enable automatic renaming of BosConfig.new to BosConfig at startup])
850 fi
851
852 if test "$enable_largefile_fileserver" = "yes"; then
853         AC_DEFINE(AFS_LARGEFILE_ENV, 1, [define if you want large file fileserver])
854 fi
855
856 if test "$enable_namei_fileserver" = "yes"; then
857         AC_DEFINE(AFS_NAMEI_ENV, 1, [define if you want to want namei fileserver])
858 fi
859
860 if test "$enable_afsdb" = "yes"; then
861         LIB_AFSDB="$LIB_res_search"
862         AC_DEFINE(AFS_AFSDB_ENV, 1, [define if you want to want search afsdb rr])
863 fi
864
865 dnl check for tivoli
866 AC_MSG_CHECKING(for tivoli tsm butc support)
867 XBSA_CFLAGS=""
868 if test "$enable_tivoli_tsm" = "yes"; then
869         XBSADIR1=/usr/tivoli/tsm/client/api/bin/xopen
870         XBSADIR2=/opt/tivoli/tsm/client/api/bin/xopen
871
872         if test -e "$XBSADIR1/xbsa.h"; then
873                 XBSA_CFLAGS="-Dxbsa -I$XBSADIR1"
874                 AC_MSG_RESULT([yes, $XBSA_CFLAGS])
875         elif test -e "$XBSADIR2/xbsa.h"; then
876                 XBSA_CFLAGS="-Dxbsa -I$XBSADIR2"
877                 AC_MSG_RESULT([yes, $XBSA_CFLAGS])
878         else
879                 AC_MSG_RESULT([no, missing xbsa.h header file])
880         fi
881 else
882         AC_MSG_RESULT([no])
883 fi
884 AC_SUBST(XBSA_CFLAGS)
885
886 dnl checks for header files.
887 AC_HEADER_STDC
888 AC_HEADER_SYS_WAIT
889 AC_HEADER_DIRENT
890 AC_CHECK_HEADERS(stdlib.h string.h unistd.h fcntl.h sys/time.h sys/file.h)
891 AC_CHECK_HEADERS(netinet/in.h netdb.h sys/fcntl.h sys/mnttab.h sys/mntent.h)
892 AC_CHECK_HEADERS(mntent.h sys/vfs.h sys/param.h sys/fs_types.h sys/fstyp.h)
893 AC_CHECK_HEADERS(sys/mount.h strings.h termios.h signal.h)
894 AC_CHECK_HEADERS(windows.h malloc.h winsock2.h direct.h io.h sys/user.h)
895 AC_CHECK_HEADERS(security/pam_modules.h siad.h usersec.h ucontext.h regex.h)
896
897 if test "$ac_cv_header_security_pam_modules_h" = yes -a "$enable_pam" = yes; then
898         HAVE_PAM="yes"
899 else
900         HAVE_PAM="no"
901 fi
902 AC_SUBST(HAVE_PAM)
903
904 if test "$enable_login" = yes; then
905         BUILD_LOGIN="yes"
906 else
907         BUILD_LOGIN="no"
908 fi
909 AC_SUBST(BUILD_LOGIN)
910
911 AC_CHECK_FUNCS(utimes random srandom getdtablesize snprintf strlcat strlcpy re_comp re_exec)
912 AC_CHECK_FUNCS(setprogname getprogname sigaction mkstemp vsnprintf strerror)
913
914 AC_CHECK_FUNCS(regcomp regexec regerror)
915 AC_MSG_CHECKING([for POSIX regex library])
916 if test "$ac_cv_header_regex_h" = "yes" && \
917         test "$ac_cv_func_regcomp" = "yes" && \
918         test "$ac_cv_func_regexec" = "yes" && \
919         test "$ac_cv_func_regerror" = "yes"; then
920     AC_DEFINE(HAVE_POSIX_REGEX, 1, [define if you have POSIX regex library])
921     AC_MSG_RESULT(yes)
922 else
923     AC_MSG_RESULT(no)
924 fi
925         
926 AC_CHECK_TYPE(ssize_t, int)
927 AC_SIZEOF_TYPE(long)
928
929 AC_CHECK_FUNCS(timegm)
930
931 dnl Directory PATH handling
932 if test "x$enable_transarc_paths" = "xyes"  ; then 
933     afsconfdir=${afsconfdir=/usr/afs/etc}
934     viceetcdir=${viceetcdir=/usr/vice/etc}
935     afskerneldir=${afskerneldir=${viceetcdir}}
936     afssrvbindir=${afssrvbindir=/usr/afs/bin}
937     afssrvsbindir=${afssrvsbindir=/usr/afs/bin}
938     afssrvlibexecdir=${afssrvlibexecdir=/usr/afs/bin}
939     afsdbdir=${afsdbdir=/usr/afs/db}
940     afslogsdir=${afslogsdir=/usr/afs/logs}
941     afslocaldir=${afslocaldir=/usr/afs/local}
942     afsbackupdir=${afsbackupdir=/usr/afs/backup}
943     afsbosconfigdir=${afsbosconfigdir=/usr/afs/local}
944 else 
945     afsconfdir=${afsconfdir='${sysconfdir}/openafs/server'}
946     viceetcdir=${viceetcdir='${sysconfdir}/openafs'}
947     afskerneldir=${afskerneldir='${libdir}/openafs'}
948     afssrvbindir=${afssrvbindir='${bindir}'}
949     afssrvsbindir=${afssrvsbindir='${sbindir}'}
950     afssrvlibexecdir=${afssrvlibexecdir='${libexecdir}/openafs'}
951     afsdbdir=${afsdbdir='${localstatedir}/openafs/db'}
952     afslogsdir=${afslogsdir='${localstatedir}/openafs/logs'}
953     afslocaldir=${afslocaldir='${localstatedir}/openafs'}
954     afsbackupdir=${afsbackupdir='${localstatedir}/openafs/backup'}
955     afsbosconfigdir=${afsbosconfigdir='${sysconfdir}/openafs'}
956 fi
957 AC_SUBST(afsconfdir)
958 AC_SUBST(viceetcdir)
959 AC_SUBST(afskerneldir)
960 AC_SUBST(afssrvbindir)
961 AC_SUBST(afssrvsbindir)
962 AC_SUBST(afssrvlibexecdir)
963 AC_SUBST(afsdbdir)
964 AC_SUBST(afslogsdir)
965 AC_SUBST(afslocaldir)
966 AC_SUBST(afsbackupdir)
967 AC_SUBST(afsbosconfigdir)
968
969 if test "x$enable_kernel_module" = "xyes"; then
970 ENABLE_KERNEL_MODULE=libafs
971 fi
972
973 AC_SUBST(AFS_SYSNAME)
974 AC_SUBST(AFS_PARAM_COMMON)
975 AC_SUBST(ENABLE_KERNEL_MODULE)
976 AC_SUBST(LIB_AFSDB)
977 AC_SUBST(LINUX_KERNEL_PATH)
978 AC_SUBST(BSD_KERNEL_PATH)
979 AC_SUBST(BSD_KERNEL_BUILD)
980 AC_SUBST(LINUX_VERSION)
981 AC_SUBST(MKAFS_OSTYPE)
982 AC_SUBST(TOP_OBJDIR)
983 AC_SUBST(TOP_SRCDIR)
984 AC_SUBST(TOP_INCDIR)
985 AC_SUBST(TOP_LIBDIR)
986 AC_SUBST(DEST)
987 AC_SUBST(WITH_OBSOLETE)
988 AC_SUBST(WITH_INSECURE)
989 AC_SUBST(DARWIN_INFOFILE)
990 AC_SUBST(IRIX_BUILD_IP35)
991
992 OPENAFS_OSCONF
993
994 TOP_SRCDIR="${srcdir}/src"
995 dnl
996 dnl If we're using ./configure, need a more reasonable TOP_SRCDIR, since relative links don't work everywhere
997 dnl
998 case $TOP_SRCDIR in
999         /*)
1000                 ;;
1001         *)
1002                 TOP_SRCDIR=`cd $TOP_SRCDIR; pwd`
1003                 ;;
1004 esac
1005
1006 TOP_OBJDIR="${SRCDIR_PARENT}"
1007 TOP_INCDIR="${SRCDIR_PARENT}/include"
1008 TOP_LIBDIR="${SRCDIR_PARENT}/lib"
1009 if test "${DEST}x" = "x"; then
1010         DEST="${SRCDIR_PARENT}/${AFS_SYSNAME}/dest"
1011 fi
1012
1013 HELPER_SPLINT="${TOP_SRCDIR}/helper-splint.sh"
1014 HELPER_SPLINTCFG="${TOP_SRCDIR}/splint.cfg"
1015 AC_SUBST(HELPER_SPLINT)
1016 AC_SUBST(HELPER_SPLINTCFG)
1017
1018
1019 ])