diff -ruN -I '$FreeBSD' openafs.old/Makefile openafs/Makefile
--- openafs.old/Makefile	2011-05-24 20:09:37.000000000 -0400
+++ openafs/Makefile	2011-06-05 23:55:39.000000000 -0400
@@ -7,7 +7,7 @@
 #
 
 PORTNAME=	openafs
-DISTVERSION=	1.6.0pre3
+DISTVERSION=	1.6.0pre6
 CATEGORIES=	net kld
 MASTER_SITES=	http://dl.central.org/dl/openafs/candidate/${DISTVERSION}/:openafs \
 		http://dl.openafs.org/dl/openafs/candidate/${DISTVERSION}/:openafs \
@@ -26,37 +26,35 @@
 
 USE_LDCONFIG=	yes
 PATCH_STRIP=	-p1
-
 USE_BZIP2=	yes
 HAS_CONFIGURE=	yes
 USE_RC_SUBR=	afsd afsserver
 
 ONLY_FOR_ARCHS=	i386 amd64
 
-KERNELDIR=	/usr/obj/usr/src/sys/GENERIC
+.include <bsd.port.pre.mk>
+
+KERNCONF?=	GENERIC
+KERNCONFDIR?=	${SRC_BASE}/sys/${ARCH}/conf
 KMODDIR=	/boot/modules
 
-.include <bsd.port.pre.mk>
+.if !exists(${KERNCONFDIR}/${KERNCONF})
+IGNORE=	requires kernel configuration file ${KERNCONF} to build
+.endif
 
 .if ${OSVERSION} < 800000
 IGNORE=	supports FreeBSD 8.0 and later
 .endif
 
-.if !exists(${KERNELDIR}/opt_global.h)
-IGNORE= OpenAFS requires opt_global.h from kernel build tree
-.endif
-
 CONFIGURE_ARGS=	--prefix=${PREFIX} \
 	--localstatedir=/var \
-	--mandir=${PREFIX}/man \
-	--with-bsd-kernel-build=${KERNELDIR} \
+	--mandir=${MANPREFIX}/man \
+	--with-bsd-kernel-build=${WRKDIR}/conf \
 	--enable-debug \
 	--enable-debug-kernel \
 	--enable-debug-lwp \
-	--includedir=${LOCALBASE}/include/openafs \
-		${CONFIGURE_TARGET}
-#       --with-krb5 KRB5CFLAGS=-I/usr/include \
-#       KRB5LIBS='-lkrb5 -lcom_err -lcrypto -lcrypt -lasn1 -lhx509 -lroken' \
+	--includedir=${PREFIX}/include/openafs \
+	${CONFIGURE_TARGET}
 
 .if !defined(WITH_FUSE)
 CONFIGURE_ARGS+=	--disable-fuse-client
@@ -72,30 +70,28 @@
 
 .include "Makefile.man"
 
-post-install:
+post-extract:
+	${MKDIR} ${WRKDIR}/conf
+	cd ${KERNCONFDIR} && /usr/sbin/config -d ${WRKDIR}/conf ${KERNCONF}
+
+create-sample-files:
+	@${ECHO_CMD} openafs.org > ${WRKDIR}/ThisCell
+	@${ECHO_CMD} '/afs:/usr/vice/cache:150000' > ${WRKDIR}/cacheinfo
+	@${INSTALL_DATA} ${DISTDIR}/CellServDB ${WRKDIR}/CellServDB
+
+post-install: create-sample-files
 	@${MKDIR} ${PREFIX}/etc/openafs
-	@${CP} ${DISTDIR}/CellServDB ${PREFIX}/etc/openafs/CellServDB.sample
-	@if [ ! -e ${PREFIX}/etc/openafs/CellServDB ] ; then \
-		${CP} -p ${PREFIX}/etc/openafs/CellServDB.sample ${PREFIX}/etc/openafs/CellServDB ; \
-	fi
-	@${ECHO_CMD} openafs.org > ${PREFIX}/etc/openafs/ThisCell.sample
-	@if [ ! -e ${PREFIX}/etc/openafs/ThisCell ] ; then \
-		${CP} -p ${PREFIX}/etc/openafs/ThisCell.sample ${PREFIX}/etc/openafs/ThisCell ; \
+.for F in CellServDB ThisCell cacheinfo
+	@${INSTALL_DATA} ${WRKDIR}/${F} ${PREFIX}/etc/openafs/${F}.sample
+	@if [ ! -e ${PREFIX}/etc/openafs/${F} ]; then \
+		${INSTALL_DATA} ${WRKDIR}/${F} ${PREFIX}/etc/openafs/${F}; \
 	fi
-	@${ECHO_CMD} '/afs:/usr/vice/cache:150000' > ${PREFIX}/etc/openafs/cacheinfo.sample
-	@if [ ! -e ${PREFIX}/etc/openafs/cacheinfo ] ; then \
-		${CP} -p ${PREFIX}/etc/openafs/cacheinfo.sample ${PREFIX}/etc/openafs/cacheinfo; \
-	fi
-	${MV} ${PREFIX}/lib/openafs/libafs.ko ${KMODDIR}/
+.endfor
+	${INSTALL_KLD} ${PREFIX}/lib/openafs/libafs.ko ${KMODDIR}/
+	@${RM} ${PREFIX}/lib/openafs/libafs.ko
+# kdump is an empty file; it is only sometimes installed, which confuses me
+	@-${RM} ${PREFIX}/sbin/kdump
 	@${RMDIR} ${PREFIX}/lib/openafs
-	kldxref ${KMODDIR}
-
-pre-deinstall:
-	@if cmp -s ${PREFIX}/etc/openafs/CellServDB ${PREFIX}/etc/openafs/CellServDB.sample; then \
-		${RM} ${PREFIX}/etc/openafs/CellServDB; fi
-	@if cmp -s ${PREFIX}/etc/openafs/ThisCell ${PREFIX}/etc/openafs/ThisCell.sample; then \
-		${RM} ${PREFIX}/etc/openafs/ThisCell; fi
-	@if cmp -s ${PREFIX}/etc/openafs/cacheinfo ${PREFIX}/etc/openafs/cacheinfo.sample; then \
-		${RM} ${PREFIX}/etc/openafs/cacheinfo; fi
+	/usr/sbin/kldxref ${KMODDIR}
 
 .include <bsd.port.post.mk>
diff -ruN -I '$FreeBSD' openafs.old/distinfo openafs/distinfo
--- openafs.old/distinfo	2011-05-24 20:09:37.000000000 -0400
+++ openafs/distinfo	2011-06-05 22:50:18.000000000 -0400
@@ -1,6 +1,6 @@
-SHA256 (openafs-1.6.0pre3-src.tar.bz2) = 4e37553bbd2b9152dc1f78f116421ecf76e799b92dab8bdb544bdda4e9ac0249
-SIZE (openafs-1.6.0pre3-src.tar.bz2) = 14309287
-SHA256 (openafs-1.6.0pre3-doc.tar.bz2) = 78436aa438a8b4ca76e4080e3dc1746aeaebbf7bd7b42dcbe59112a74067f083
-SIZE (openafs-1.6.0pre3-doc.tar.bz2) = 3474560
+SHA256 (openafs-1.6.0pre6-src.tar.bz2) = 34a9c959949b1a8395bc299656fb7aaae1087ee85d00d9823606db9d4d8413e5
+SIZE (openafs-1.6.0pre6-src.tar.bz2) = 14308775
+SHA256 (openafs-1.6.0pre6-doc.tar.bz2) = 53db2ee049a00522072c79ea63916e8621ae4498a68e9002157c4ecaa8d61216
+SIZE (openafs-1.6.0pre6-doc.tar.bz2) = 3474552
 SHA256 (CellServDB) = 3a1c77b82e714a6e131dfd93397f08bd2ba5f5cede7997494a39b3d61fe31f8b
 SIZE (CellServDB) = 36891
diff -ruN -I '$FreeBSD' openafs.old/files/patch-src__afs__Makefile.in openafs/files/patch-src__afs__Makefile.in
--- openafs.old/files/patch-src__afs__Makefile.in	1969-12-31 19:00:00.000000000 -0500
+++ openafs/files/patch-src__afs__Makefile.in	2011-06-05 22:58:19.000000000 -0400
@@ -0,0 +1,11 @@
+--- ./src/afs/Makefile.in.orig	2011-06-05 22:58:05.000000000 -0400
++++ ./src/afs/Makefile.in	2011-06-05 22:58:13.000000000 -0400
+@@ -36,8 +36,6 @@
+ 			gencat --new afszcm.cat afs_trace.msf ;; \
+ 		*_darwin_* ) \
+ 			gencat -new afszcm.cat afs_trace.msf ;; \
+-		i386_fbsd*) \
+-			echo No gencat for ${SYS_NAME} ;; \
+ 		* ) \
+ 			gencat afszcm.cat afs_trace.msf ;; \
+ 	esac
diff -ruN -I '$FreeBSD' openafs.old/pkg-plist openafs/pkg-plist
--- openafs.old/pkg-plist	2011-05-24 20:09:37.000000000 -0400
+++ openafs/pkg-plist	2011-06-05 22:45:41.000000000 -0400
@@ -180,7 +180,7 @@
 lib/afs/libbutm.a
 lib/afs/libbxdb.a
 lib/afs/libcmd.a
-lib/afs/libcom_err.a
+lib/afs/libafscom_err.a
 lib/afs/libdir.a
 lib/afs/libfsprobe.a
 lib/afs/libgtx.a
@@ -233,7 +233,7 @@
 libexec/openafs/volserver
 libexec/openafs/salvageserver
 libexec/openafs/dasalvager
-share/openafs/C/afszcm.cat
+%%DATADIR%%/C/afszcm.cat
 %%FUSE%%sbin/afsd.fuse
 sbin/dafssync-debug
 sbin/prdb_check
@@ -256,7 +256,6 @@
 sbin/uss
 sbin/backup
 sbin/butc
-sbin/kdump
 sbin/rxdebug
 sbin/bos_util
 sbin/fms
@@ -279,8 +278,8 @@
 @dirrm lib/afs
 @dirrm libexec/openafs
 @dirrmtry etc/openafs
-@dirrm share/openafs/C
-@dirrm share/openafs
+@dirrm %%DATADIR%%/C
+@dirrm %%DATADIR%%
 @cwd /boot/modules
 libafs.ko
 @exec kldxref /boot/modules
