--- configure.orig	Mon Jun 20 19:44:58 2005
+++ configure	Sat Jun 25 15:08:54 2005
@@ -6727,14 +6727,18 @@
   echo "$as_me:$LINENO: result: DragonFly" >&5
 echo "${ECHO_T}DragonFly" >&6
   ;;
-freebsd[345]* | freebsdelf[345]*)
-  echo "$as_me:$LINENO: result: FreeBSD [345].x" >&5
+freebsd[3-9]* | freebsdelf[3-9]*)
+  echo "$as_me:$LINENO: result: FreeBSD [3-9].x" >&5
 echo "${ECHO_T}FreeBSD [345].x" >&6
   KERNEL_INCLUDE=-I`(cd $srcdir; pwd)`/nnpfs/bsd
   KERNEL_SRCS='bsd-subr.c'
   KERNEL_HDRS=''
-  KERNEL=`sysctl -n kern.bootfile`
 
+  case $nnpfs_target in
+    freebsd[3-4]*) KERNEL=/kernel;;
+    freebsd[5-9]*) KERNEL=/boot/kernel/kernel;;
+  esac
+      
 if test X"$GCC" = Xyes ; then
   BSD_WERROR=-Werror
 fi
@@ -26266,7 +26270,7 @@
 
 
 # This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
+LIBTOOL_DEPS="--disable-ltlibs /usr/local/share/libtool15/ltmain.sh"
 
 # Always use our own libtool.
 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
@@ -55270,10 +55274,37 @@
     eval "ac_cv_kernel_func_$ac_func=no"
   fi
 elif expr "$target_os" : "freebsd" >/dev/null 2>&1; then
-  if nm  $KERNEL | egrep "T $ac_func" > /dev/null 2>&1; then
-    eval "ac_cv_kernel_func_$ac_func=yes"
+  if [ -f $KERNEL ] ; then
+    if nm  $KERNEL | egrep "T $ac_func" > /dev/null 2>&1; then
+      eval "ac_cv_kernel_func_$ac_func=yes"
+    else
+      eval "ac_cv_kernel_func_$ac_func=no"
+    fi
   else
-    eval "ac_cv_kernel_func_$ac_func=no"
+      case $ac_func in
+         lockmgr|vop_stdpathconf|lf_advlock|vfs_getvfs|vgonel|uma_zfree_arg|\
+         vfs_cache_lookup|vnode_pager_generic_putpages|vnode_pager_generic_getpages|\
+         vnode_pager_setsize|devtoname|snprintf|nosys|cache_purgevfs)
+            eval "ac_cv_kernel_func_$ac_func=yes"
+            ;;
+         *)
+            case $nnpfs_target in
+               freebsd5*)
+                  case $ac_func in
+                     findcdev|vop_revoke|vfs_add_vnodeops|vfs_register)
+                        eval "ac_cv_kernel_func_$ac_func=yes"
+                        ;;
+                     *)
+                        eval "ac_cv_kernel_func_$ac_func=no"
+                        ;;
+                  esac
+                  ;;
+               *)
+                  eval "ac_cv_kernel_func_$ac_func=no"
+                  ;;
+            esac
+            ;;
+      esac
   fi
 elif expr "$target_os" : "dragonfly" >/dev/null 2>&1; then
   if nm  $KERNEL | egrep "T $ac_func" > /dev/null 2>&1; then
@@ -55526,10 +55557,14 @@
     eval "ac_cv_kernel_func_memcpy=no"
   fi
 elif expr "$target_os" : "freebsd" >/dev/null 2>&1; then
-  if nm  $KERNEL | egrep "T memcpy" > /dev/null 2>&1; then
-    eval "ac_cv_kernel_func_memcpy=yes"
+  if [ -f "${KERNEL}" ] ; then
+    if nm  $KERNEL | egrep "T memcpy" > /dev/null 2>&1; then
+      eval "ac_cv_kernel_func_memcpy=yes"
+    else
+      eval "ac_cv_kernel_func_memcpy=no"
+    fi
   else
-    eval "ac_cv_kernel_func_memcpy=no"
+    eval "ac_cv_kernel_func_memcpy=yes"
   fi
 elif expr "$target_os" : "dragonfly" >/dev/null 2>&1; then
   if nm  $KERNEL | egrep "T memcpy" > /dev/null 2>&1; then
@@ -55750,7 +55785,14 @@
 elif test -f $SYS/kern/vnode_if.sh; then
   /bin/sh $SYS/kern/vnode_if.sh $SYS/kern/vnode_if.src
 elif test -f $SYS/tools/vnode_if.awk ; then
-  awk -f $SYS/tools/vnode_if.awk $SYS/kern/vnode_if.src -h
+  case "$nnpfs_target" in
+    freebsd[6-9]* | freebsdelf[6-9]*)
+      awk -f $SYS/tools/vnode_if.awk $SYS/kern/vnode_if.src -h -p -q
+      ;;
+    *)
+      awk -f $SYS/tools/vnode_if.awk $SYS/kern/vnode_if.src -h
+      ;;
+  esac
 else
   { { echo "$as_me:$LINENO: error: unable to find any vnode_if script" >&5
 echo "$as_me: error: unable to find any vnode_if script" >&2;}
@@ -56693,10 +56735,26 @@
     eval "ac_cv_kernel_func_$ac_func=no"
   fi
 elif expr "$target_os" : "freebsd" >/dev/null 2>&1; then
-  if nm  $KERNEL | egrep "T $ac_func" > /dev/null 2>&1; then
-    eval "ac_cv_kernel_func_$ac_func=yes"
+  if [ -f $KERNEL ] ; then
+    if nm  $KERNEL | egrep "T $ac_func" > /dev/null 2>&1; then
+      eval "ac_cv_kernel_func_$ac_func=yes"
+    else
+      eval "ac_cv_kernel_func_$ac_func=no"
+    fi
   else
-    eval "ac_cv_kernel_func_$ac_func=no"
+    case $nnpfs_target in
+       freebsd5*)
+          case $ac_func in
+             vfs_object_create)
+                eval "ac_cv_kernel_func_$ac_func=yes"
+                ;;
+             *)
+                eval "ac_cv_kernel_func_$ac_func=no"
+          esac
+          ;;
+       *)
+          eval "ac_cv_kernel_func_$ac_func=no"
+    esac
   fi
 elif expr "$target_os" : "dragonfly" >/dev/null 2>&1; then
   if nm  $KERNEL | egrep "T $ac_func" > /dev/null 2>&1; then
