diff --git a/common/shlibs b/common/shlibs
index 12d49b5835..be28dfa0d4 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -419,7 +419,6 @@ libQtDesigner.so.4		qt-designer		qt-devel
 libsysfs.so.2			libsysfs		libsysfs-devel
 libsensors.so.4			libsensors		libsensors-devel
 libcap-ng.so.0			libcap-ng		libcap-ng-devel
-libhandle.so.1			xfsprogs-libs		xfsprogs-devel
 libphysfs.so.1			physfs			physfs-devel
 libSDL_ttf-2.0.so.0		SDL_ttf			SDL_ttf-devel
 libparted.so.1			libparted		libparted-devel
diff --git a/srcpkgs/xfsprogs-libs b/srcpkgs/xfsprogs-libs
deleted file mode 120000
index 0dee61c0b8..0000000000
--- a/srcpkgs/xfsprogs-libs
+++ /dev/null
@@ -1 +0,0 @@
-xfsprogs
\ No newline at end of file
diff --git a/srcpkgs/xfsprogs/depends b/srcpkgs/xfsprogs/depends
index 4bf0509c63..17b58f07d2 100644
--- a/srcpkgs/xfsprogs/depends
+++ b/srcpkgs/xfsprogs/depends
@@ -1,2 +1,2 @@
 abi_depends=">=3.0.3"
-api_depends="${abi_depends}"
+api_depends=">=3.1.7_2"
diff --git a/srcpkgs/xfsprogs/template b/srcpkgs/xfsprogs/template
index d6ada1230c..99ada5f82e 100644
--- a/srcpkgs/xfsprogs/template
+++ b/srcpkgs/xfsprogs/template
@@ -1,6 +1,7 @@
 # Template file for 'xfsprogs'
 pkgname=xfsprogs
 version=3.1.7
+revision=1
 homepage="http://oss.sgi.com/projects/xfs/"
 distfiles="http://ftp.archlinux.org/other/xfsprogs/$pkgname-$version.tar.gz"
 short_desc="Utilities for managing the XFS filesystem"
@@ -16,8 +17,10 @@ long_desc="
  based, and makes extensive use of Btrees (directories, extents, free space)
  to aid both performance and scalability."
 
+replaces="xfsprogs-libs>=0"
+
 disable_parallel_build=yes
-subpackages="$pkgname-libs $pkgname-devel"
+subpackages="$pkgname-devel"
 
 Add_dependency build gawk
 Add_dependency build gettext
@@ -27,7 +30,7 @@ Add_dependency build readline-devel
 
 do_build() {
 	export DEBUG=-DNDEBUG
-	./configure --libdir=/usr/lib --libexecdir=/usr/lib \
+	./configure ${CONFIGURE_SHARED_ARGS} \
 		--enable-readline=yes --enable-blkid=yes --enable-lib64=no
 	make ${makejobs}
 }
@@ -38,4 +41,8 @@ do_install() {
 	rm -rf ${DESTDIR}/usr/share/doc
 	rm -f ${DESTDIR}/usr/share/man/man5/proj*
 	rm -f ${DESTDIR}/lib/*.{a,la}
+	rm -f ${DESTDIR}/usr/lib/*.so
+	# Move stuff to /usr.
+	vmove "sbin/*" usr/sbin
+	vmove "lib/*" usr/lib
 }
diff --git a/srcpkgs/xfsprogs/xfsprogs-devel.template b/srcpkgs/xfsprogs/xfsprogs-devel.template
index 9f658f4bbc..a3df053340 100644
--- a/srcpkgs/xfsprogs/xfsprogs-devel.template
+++ b/srcpkgs/xfsprogs/xfsprogs-devel.template
@@ -5,10 +5,10 @@ long_desc="${long_desc}
 
  This package contains files for development, headers, static libs, etc."
 
-revision=1
+revision=2
 
 Add_dependency run libuuid-devel
-Add_dependency run xfsprogs-libs
+Add_dependency run xfsprogs ">=3.1.7_1"
 
 do_install() {
 	vmove usr/include usr
diff --git a/srcpkgs/xfsprogs/xfsprogs-libs.rshlibs b/srcpkgs/xfsprogs/xfsprogs-libs.rshlibs
deleted file mode 100644
index 631aa1dda4..0000000000
--- a/srcpkgs/xfsprogs/xfsprogs-libs.rshlibs
+++ /dev/null
@@ -1 +0,0 @@
-libc.so.6
diff --git a/srcpkgs/xfsprogs/xfsprogs-libs.template b/srcpkgs/xfsprogs/xfsprogs-libs.template
deleted file mode 100644
index 14f24b6c6c..0000000000
--- a/srcpkgs/xfsprogs/xfsprogs-libs.template
+++ /dev/null
@@ -1,12 +0,0 @@
-# Template file for 'xfsprogs-libs'.
-#
-short_desc="${short_desc} (shared libraries)"
-long_desc="${long_desc}
-
- This package contains the shared libraries."
-
-revision=1
-
-do_install() {
-	vmove "lib/*.so*" usr/lib
-}
diff --git a/srcpkgs/xfsprogs/xfsprogs.rshlibs b/srcpkgs/xfsprogs/xfsprogs.rshlibs
index 79f7c3403d..f42cc163b1 100644
--- a/srcpkgs/xfsprogs/xfsprogs.rshlibs
+++ b/srcpkgs/xfsprogs/xfsprogs.rshlibs
@@ -4,4 +4,3 @@ libpthread.so.0
 libc.so.6
 libblkid.so.1
 libreadline.so.6
-libhandle.so.1