linux-look-for-syscall-h-in-kernel-20030519
[openafs.git] / acinclude.m4
index c84ccf9..c658cf6 100644 (file)
@@ -23,8 +23,6 @@ AC_ARG_ENABLE( bos-restricted-mode,
 [  --enable-bos-restricted-mode        enable bosserver restricted mode which disables certain bosserver functionality],, enable_bos_restricted_mode="no")
 AC_ARG_ENABLE( bos-new-config,
 [  --enable-bos-new-config             enable bosserver pickup of BosConfig.new on restarts],, enable_bos_new_config="no")
-AC_ARG_ENABLE( largefile-fileserver,
-[  --enable-largefile-filesever         enable large file support in fileserver],, enable_largefile_fileserver="no")
 AC_ARG_ENABLE( namei-fileserver,
 [  --enable-namei-fileserver           force compilation of namei fileserver in preference to inode fileserver],, enable_namei_fileserver="no")
 AC_ARG_ENABLE( supergroups,
@@ -103,7 +101,10 @@ case $system in
                 if test "x$with_linux_kernel_headers" != "x"; then
                   LINUX_KERNEL_PATH="$with_linux_kernel_headers"
                 else
-                  LINUX_KERNEL_PATH="/usr/src/linux"
+                  LINUX_KERNEL_PATH="/usr/src/linux-2.4"
+                  if test ! -f "$LINUX_KERNEL_PATH/include/linux/version.h"; then
+                    LINUX_KERNEL_PATH="/usr/src/linux"
+                  fi
                 fi
                 if test -f "$LINUX_KERNEL_PATH/include/linux/version.h"; then
                  linux_kvers=`fgrep UTS_RELEASE $LINUX_KERNEL_PATH/include/linux/version.h |awk 'BEGIN { FS="\"" } { print $[]2 }'|tail -1`
@@ -165,10 +166,13 @@ case $system in
                 LINUX_FS_STRUCT_INODE_HAS_I_DIRTY_DATA_BUFFERS
                 LINUX_FS_STRUCT_INODE_HAS_I_DEVICES
                 LINUX_INODE_SETATTR_RETURN_TYPE
+                LINUX_KERNEL_LINUX_SYSCALL_H
                 LINUX_NEED_RHCONFIG
                 LINUX_RECALC_SIGPENDING_ARG_TYPE
                 LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_PARENT
                 LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_REAL_PARENT
+                LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_SIG
+                LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_SIGHAND
                 LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_SIGMASK_LOCK
                 LINUX_WHICH_MODULES
                  if test "x$ac_cv_linux_config_modversions" = "xno"; then
@@ -181,6 +185,7 @@ case $system in
                    LINUX_EXPORTS_SYS_CALL_TABLE
                    LINUX_EXPORTS_SYS_CHDIR
                    LINUX_EXPORTS_SYS_CLOSE
+                   LINUX_EXPORTS_SYS_WAIT4
                    if test "x$ac_cv_linux_exports_sys_call_table" = "xno"; then
                          linux_syscall_method=none
                          if test "x$ac_cv_linux_exports_init_mm" = "xyes"; then
@@ -201,6 +206,9 @@ case $system in
                         if test "x$ac_cv_linux_exports_sys_close" = "xyes" ; then
                          AC_DEFINE(EXPORTED_SYS_CLOSE, 1, [define if your linux kernel exports sys_close])
                         fi
+                        if test "x$ac_cv_linux_exports_sys_wait4" = "xyes" ; then
+                         AC_DEFINE(EXPORTED_SYS_WAIT4, 1, [define if your linux kernel exports sys_wait4])
+                        fi
                    fi
                  fi
                 if test "x$ac_cv_linux_exports_tasklist_lock" = "xyes" ; then
@@ -245,6 +253,9 @@ case $system in
                 if test "x$ac_cv_linux_func_recalc_sigpending_takes_void" = "xyes"; then 
                  AC_DEFINE(RECALC_SIGPENDING_TAKES_VOID, 1, [define if your recalc_sigpending takes void])
                 fi
+                if test "x$ac_linux_syscall" = "xyes" ; then
+                 AC_DEFINE(HAVE_KERNEL_LINUX_SYSCALL_H, 1, [define if your linux kernel has linux/syscall.h])
+                fi
                 if test "x$ac_cv_linux_sched_struct_task_struct_has_parent" = "xyes"; then 
                  AC_DEFINE(STRUCT_TASK_STRUCT_HAS_PARENT, 1, [define if your struct task_struct has parent])
                 fi
@@ -254,6 +265,12 @@ case $system in
                 if test "x$ac_cv_linux_sched_struct_task_struct_has_sigmask_lock" = "xyes"; then 
                  AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIGMASK_LOCK, 1, [define if your struct task_struct has sigmask_lock])
                 fi
+                if test "x$ac_cv_linux_sched_struct_task_struct_has_sighand" = "xyes"; then 
+                 AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIGHAND, 1, [define if your struct task_struct has sighand])
+                fi
+                if test "x$ac_cv_linux_sched_struct_task_struct_has_sig" = "xyes"; then 
+                 AC_DEFINE(STRUCT_TASK_STRUCT_HAS_SIG, 1, [define if your struct task_struct has sig])
+                fi
                 :
                fi
                 ;;
@@ -262,6 +279,7 @@ case $system in
                 AC_MSG_RESULT(sun4)
                SOLARIS_UFSVFS_HAS_DQRWLOCK
                SOLARIS_PROC_HAS_P_COREFILE
+               SOLARIS_FS_HAS_FS_ROLLED
                 ;;
         *-sunos*)
                MKAFS_OSTYPE=SUNOS
@@ -363,10 +381,18 @@ else
                        AFS_PARAM_COMMON=param.nbsd20.h
                        AFS_SYSNAME="i386_nbsd20"
                        ;;
+               powerpc-*-netbsd*1.6[[M-Z]]*)
+                       AFS_PARAM_COMMON=param.nbsd20.h
+                       AFS_SYSNAME="ppc_nbsd20"
+                       ;;
                i?86-*-netbsd*2.0*)
                        AFS_PARAM_COMMON=param.nbsd20.h
                        AFS_SYSNAME="i386_nbsd20"
                        ;;
+               powerpc-*-netbsd*2.0*)
+                       AFS_PARAM_COMMON=param.nbsd20.h
+                       AFS_SYSNAME="ppc_nbsd20"
+                       ;;
                i?86-*-netbsd*1.6*)
                        AFS_PARAM_COMMON=param.nbsd16.h
                        AFS_SYSNAME="i386_nbsd16"
@@ -375,9 +401,16 @@ else
                        AFS_PARAM_COMMON=param.nbsd16.h
                        AFS_SYSNAME="alpha_nbsd16"
                        ;;
-               hppa*-hp-hpux11*)
+               powerpc-*-netbsd*1.6*)
+                       AFS_PARAM_COMMON=param.nbsd16.h
+                       AFS_SYSNAME="ppc_nbsd16"
+                       ;;
+               hppa*-hp-hpux11.0*)
                        AFS_SYSNAME="hp_ux110"
                        ;;
+               hppa*-hp-hpux11.11)
+                       AFS_SYSNAME="hp_ux11i"
+                       ;;
                ia64-hp-hpux*)
                        AFS_SYSNAME="ia64_hpux1122"
                        ;;
@@ -417,6 +450,15 @@ else
                powerpc-apple-darwin6.2*)
                        AFS_SYSNAME="ppc_darwin_60"
                        ;;
+               powerpc-apple-darwin6.3*)
+                       AFS_SYSNAME="ppc_darwin_60"
+                       ;;
+               powerpc-apple-darwin6.4*)
+                       AFS_SYSNAME="ppc_darwin_60"
+                       ;;
+               powerpc-apple-darwin6.5*)
+                       AFS_SYSNAME="ppc_darwin_60"
+                       ;;
                sparc-sun-solaris2.5*)
                        AFS_SYSNAME="sun4x_55"
                        ;;
@@ -486,6 +528,9 @@ else
                power*-ibm-aix4.3*)
                        AFS_SYSNAME="rs_aix42"
                        ;;
+               x86_64-*-linux-gnu)
+                       AFS_SYSNAME="amd64_linuxXX"
+                       ;;
                *)
                        AC_MSG_ERROR(An AFS sysname is required)
                        exit 1
@@ -499,6 +544,11 @@ else
                        fi
                        _AFS_SYSNAME=`echo $AFS_SYSNAME|sed s/XX\$/$AFS_SYSKVERS/`
                        AFS_SYSNAME="$_AFS_SYSNAME"
+                       AFS_ISUML=`echo $LINUX_VERSION | awk 'BEGIN {FS="-[[0-9]]+"} {print $[]2}'`
+                       if test "x${AFS_ISUML}" = "xum"; then
+                        _AFS_SYSNAME=`echo $AFS_SYSNAME|sed s/linux/umlinux/`
+                       fi
+                       AFS_SYSNAME="$_AFS_SYSNAME"
                        ;;
        esac
         AC_MSG_RESULT($AFS_SYSNAME)
@@ -582,17 +632,30 @@ else
         done    
   fi    
 
-  AC_CHECK_FUNCS(res_search)
+  openafs_save_libs="$LIBS"
+  AC_MSG_CHECKING([for res_search])
+  AC_FUNC_RES_SEARCH
+
   if test "$ac_cv_func_res_search" = no; then
-        for lib in dns nsl resolv; do
-          if test "$HAVE_RES_SEARCH" != 1; then
-            AC_CHECK_LIB(${lib}, res_search, LIBS="$LIBS -l$lib";HAVE_RES_SEARCH=1;AC_DEFINE(HAVE_RES_SEARCH, 1, [define if you have res_search]))
-          fi
-        done    
-       if test "$HAVE_RES_SEARCH" = 1; then
-         LIB_res_search="-l$lib"       
-       fi
-  fi    
+      for lib in dns nsl resolv; do
+        if test "$ac_cv_func_res_search" != yes; then
+         LIBS="-l$lib $LIBS"
+          AC_FUNC_RES_SEARCH
+          LIBS="$openafs_save_libs"
+        fi
+      done    
+      if test "$ac_cv_func_res_search" = yes; then
+        LIB_res_search="-l$lib"       
+       AC_DEFINE(HAVE_RES_SEARCH, 1, [])
+        AC_MSG_RESULT([yes, in lib$lib])
+      else
+        AC_MSG_RESULT(no)
+      fi
+  else
+    AC_DEFINE(HAVE_RES_SEARCH, 1, [])
+    AC_MSG_RESULT(yes)
+  fi
+  
 fi
 
 PTHREAD_LIBS=error
@@ -649,10 +712,6 @@ if test "$enable_bos_new_config" = "yes"; then
        AC_DEFINE(BOS_NEW_CONFIG, 1, [define if you want to enable automatic renaming of BosConfig.new to BosConfig at startup])
 fi
 
-if test "$enable_largefile_fileserver" = "yes"; then
-       AC_DEFINE(AFS_LARGEFILE_ENV)
-fi
-
 if test "$enable_namei_fileserver" = "yes"; then
        AC_DEFINE(AFS_NAMEI_ENV, 1, [define if you want to want namei fileserver])
 fi