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