i386-user-mode-linux-support-20030513
[openafs.git] / acinclude.m4
index b95ea5d..ab2b771 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`
@@ -169,6 +170,8 @@ case $system in
                 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
@@ -254,6 +257,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 +271,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
@@ -348,6 +358,9 @@ else
                i?86-*-freebsd4.7*)
                        AFS_SYSNAME="i386_fbsd_47"
                        ;;
+               i?86-*-freebsd5.0*)
+                       AFS_SYSNAME="i386_fbsd_50"
+                       ;;
                i?86-*-netbsd*1.5*)
                        AFS_PARAM_COMMON=param.nbsd15.h
                        AFS_SYSNAME="i386_nbsd15"
@@ -356,6 +369,22 @@ else
                        AFS_PARAM_COMMON=param.nbsd15.h
                        AFS_SYSNAME="alpha_nbsd15"
                        ;;
+               i?86-*-netbsd*1.6[[M-Z]]*)
+                       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"
@@ -364,9 +393,19 @@ 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"
+                       ;;
                hppa*-hp-hpux10*)
                        AFS_SYSNAME="hp_ux102"
                        ;;
@@ -403,6 +442,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"
                        ;;
@@ -472,6 +520,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
@@ -485,6 +536,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)
@@ -568,17 +624,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
@@ -635,10 +704,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
@@ -756,7 +821,8 @@ case $TOP_SRCDIR in
         /*)
                 ;;
         *)
-                TOP_SRCDIR=${SRCDIR_PARENT}/src
+               TOP_SRCDIR=`cd $TOP_SRCDIR; pwd`
+               ;;
 esac
 
 TOP_OBJDIR="${SRCDIR_PARENT}"