diff --git a/dev-python/setproctitle/Manifest b/dev-python/setproctitle/Manifest
index 1f58944..dc79bcb 100644
--- a/dev-python/setproctitle/Manifest
+++ b/dev-python/setproctitle/Manifest
@@ -1 +1 @@
-DIST setproctitle-1.1.6.tar.gz 22589 RMD160 207bcd0c2b8ce8bc92ba12e6ac51d50cb4d77158 SHA1 b956afb826aa4155542a3a7e881ae56ab0f29466 SHA256 f2926abd47803e288f665401268a9950961be734e981035bde9acb4af80a032d
+DIST setproctitle-1.1.8.tar.gz 23208 SHA256 b564cf6488217c7a4632a9fe646fc3a3bea2f9712b4e667e9632b870d1a58211 SHA512 9d0ab8e65afd7e1ac019ea47995498dae1f82d8aebb333dfc4c953e745441cb9a8db942ad8417522d1f9a805bc50ad680f3a37cb4cbbd4214d261d4fed600b20 WHIRLPOOL 4014739eab6ba3d91a15e2c11d9e91ee6a0254a23be1c2f8a7963bc327559a5a7c6197398d6053743a9479562e76873fe47f11a6c810f2c21d3e462440183166
diff --git a/dev-python/setproctitle/setproctitle-1.1.6.ebuild b/dev-python/setproctitle/setproctitle-1.1.6.ebuild
deleted file mode 100644
index b92c412..0000000
--- a/dev-python/setproctitle/setproctitle-1.1.6.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/setproctitle/setproctitle-1.1.6.ebuild,v 1.3 2012/07/09 17:17:54 bicatali Exp $
-
-EAPI="3"
-SUPPORT_PYTHON_ABIS="1"
-RESTRICT_PYTHON_ABIS="*-jython"
-DISTUTILS_SRC_TEST="nosetests"
-
-inherit distutils toolchain-funcs
-
-DESCRIPTION="Allow customization of the process title."
-HOMEPAGE="http://code.google.com/p/py-setproctitle/ http://pypi.python.org/pypi/setproctitle"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND=""
-RDEPEND=""
-
-DISTUTILS_USE_SEPARATE_SOURCE_DIRECTORIES="1"
-DOCS="HISTORY.rst README.rst"
-
-src_prepare() {
-	python_copy_sources
-
-	conversion() {
-		[[ "${PYTHON_ABI}" == 2.* ]] && return
-		2to3-${PYTHON_ABI} -w --no-diffs tests > /dev/null
-	}
-	python_execute_function \
-		--action-message 'Applying patches for $(python_get_implementation) $(python_get_version)' \
-		--failure-message 'Applying patches for $(python_get_implementation) $(python_get_version) failed' \
-		-s conversion
-}
-
-distutils_src_test_pre_hook() {
-	local version=$(python_get_version -l --major)
-	ln -fs pyrun-${PYTHON_ABI} tests/pyrun${version}
-}
-
-src_test() {
-	build_pyrun() {
-		echo $(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -I$(python_get_includedir) -o tests/pyrun-${PYTHON_ABI} tests/pyrun.c $(python_get_library -l)
-		$(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -I$(python_get_includedir) -o tests/pyrun-${PYTHON_ABI} tests/pyrun.c $(python_get_library -l)
-	}
-	python_execute_function -q -s build_pyrun
-
-	distutils_src_test
-}
diff --git a/dev-python/setproctitle/setproctitle-1.1.8.ebuild b/dev-python/setproctitle/setproctitle-1.1.8.ebuild
new file mode 100644
index 0000000..4a60fec
--- /dev/null
+++ b/dev-python/setproctitle/setproctitle-1.1.8.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/setproctitle/setproctitle-1.1.8.ebuild,v 1.9 2014/03/19 15:24:47 ago Exp $
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3} )
+
+inherit distutils-r1 toolchain-funcs
+
+DESCRIPTION="Allow customization of the process title."
+HOMEPAGE="http://code.google.com/p/py-setproctitle/ http://pypi.python.org/pypi/setproctitle"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+IUSE="test"
+
+RDEPEND=""
+# on <py2.7 the test suite uses SkipTest from nose,
+# so we need to run it using nose.
+DEPEND="test? ( dev-python/nose[${PYTHON_USEDEP}] )"
+
+DOCS=( HISTORY.rst README.rst )
+
+python_prepare_all() {
+	sed -i -e "/pyrun/s:%s'.*):'):" tests/*.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_test() {
+	cp -r -l tests "${BUILD_DIR}"/ || die
+
+	if [[ ${EPYTHON} == python3.* ]]; then
+		# Notes:
+		#   -W is not supported by python3.1
+		#   -n causes Python to write into hardlinked files
+		2to3 --no-diffs -w "${BUILD_DIR}"/tests/*.py || die
+	fi
+
+	cd "${BUILD_DIR}" || die
+
+	# prepare embedded executable
+	emake tests/pyrun CC="$(tc-getCC)" \
+		CPPFLAGS="${CPPFLAGS} $(python-config --cflags)" \
+		LDLIBS="${LDLIBS} $(python-config --libs)"
+
+	nosetests || die "Tests fail with ${EPYTHON}"
+}
diff --git a/metadata/md5-cache/dev-python/setproctitle-1.1.6 b/metadata/md5-cache/dev-python/setproctitle-1.1.6
deleted file mode 100644
index 16e262e..0000000
--- a/metadata/md5-cache/dev-python/setproctitle-1.1.6
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile install postinst postrm prepare test
-DEPEND=dev-lang/python test? ( dev-python/nose )
-DESCRIPTION=Allow customization of the process title.
-EAPI=3
-HOMEPAGE=http://code.google.com/p/py-setproctitle/ http://pypi.python.org/pypi/setproctitle
-IUSE=test
-KEYWORDS=*
-LICENSE=BSD
-RDEPEND=dev-lang/python
-SLOT=0
-SRC_URI=mirror://pypi/s/setproctitle/setproctitle-1.1.6.tar.gz
-_eclasses_=distutils	c2658824b3debc637c77b58e1d658fab	multilib	fac675dcccf94392371a6abee62d909f	python	305197b0aa1194fa3ef67ca21f6faa7e	toolchain-funcs	48b38a216afb92db6314d6c3187abea3
-_md5_=4320cdd115320e48b5c971141ff73938
diff --git a/metadata/md5-cache/dev-python/setproctitle-1.1.8 b/metadata/md5-cache/dev-python/setproctitle-1.1.8
new file mode 100644
index 0000000..bf50fe0
--- /dev/null
+++ b/metadata/md5-cache/dev-python/setproctitle-1.1.8
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=test? ( dev-python/nose[python_targets_python2_6(-)?,python_targets_python2_7(-)?,python_targets_python3_2(-)?,python_targets_python3_3(-)?,-python_single_target_python2_6(-),-python_single_target_python2_7(-),-python_single_target_python3_2(-),-python_single_target_python3_3(-)] ) python_targets_python2_6? ( >=dev-lang/python-2.6.8-r3:2.6 ) python_targets_python2_7? ( >=dev-lang/python-2.7.3-r2:2.7 ) python_targets_python3_2? ( >=dev-lang/python-3.2.5-r2:3.2 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) dev-lang/python-exec:=[python_targets_python2_6(-)?,python_targets_python2_7(-)?,python_targets_python3_2(-)?,python_targets_python3_3(-)?,-python_single_target_python2_6(-),-python_single_target_python2_7(-),-python_single_target_python3_2(-),-python_single_target_python3_3(-)]
+DESCRIPTION=Allow customization of the process title.
+EAPI=5
+HOMEPAGE=http://code.google.com/p/py-setproctitle/ http://pypi.python.org/pypi/setproctitle
+IUSE=test python_targets_python2_6 python_targets_python2_7 python_targets_python3_2 python_targets_python3_3
+KEYWORDS=*
+LICENSE=BSD
+RDEPEND=python_targets_python2_6? ( >=dev-lang/python-2.6.8-r3:2.6 ) python_targets_python2_7? ( >=dev-lang/python-2.7.3-r2:2.7 ) python_targets_python3_2? ( >=dev-lang/python-3.2.5-r2:3.2 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) dev-lang/python-exec:=[python_targets_python2_6(-)?,python_targets_python2_7(-)?,python_targets_python3_2(-)?,python_targets_python3_3(-)?,-python_single_target_python2_6(-),-python_single_target_python2_7(-),-python_single_target_python3_2(-),-python_single_target_python3_3(-)]
+REQUIRED_USE=|| ( python_targets_python2_6 python_targets_python2_7 python_targets_python3_2 python_targets_python3_3 )
+SLOT=0
+SRC_URI=mirror://pypi/s/setproctitle/setproctitle-1.1.8.tar.gz
+_eclasses_=distutils-r1	364122897f9dc771167ee5ff362e54e1	eutils	a108f00cccac414097bcbbbb5de01762	multibuild	c2f33b0eedd7bcfd5bc226baa8da7837	multilib	fac675dcccf94392371a6abee62d909f	multiprocessing	1512bdfe7004902b8cd2c466fc3df772	python-r1	cd956d5a4bac2209a64d0f4851cc115d	python-utils-r1	3eaef07c45447158fad343dac1667938	toolchain-funcs	48b38a216afb92db6314d6c3187abea3
+_md5_=14577eec5c3fb1b0d5ac873034b39360
