summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-08-22 23:36:19 +0000
committerZac Medico <zmedico@gentoo.org>2012-08-22 23:36:19 +0000
commiteb1cd15c768ab7d0cc1016197b2167536ab10713 (patch)
treeb00dce80de055ac66637e81f5f100981e3a9b9c1
parentVersion bump. (diff)
downloadhistorical-eb1cd15c768ab7d0cc1016197b2167536ab10713.tar.gz
historical-eb1cd15c768ab7d0cc1016197b2167536ab10713.tar.bz2
historical-eb1cd15c768ab7d0cc1016197b2167536ab10713.zip
2.1.11.11 version bump. This fixes bug #142202 (fix emerge-webrsync to handle
permissions when non-root users), bug #364105 (fix emerge-webrsync to use PORTAGE_RSYNC_OPTS), bug #392565 (add warning in make.conf man page about PORTAGE_TMPDIR under PORTDIR), bug #432024 (emerge poll loop optimizations), and bug #432170 (add PORTAGE_CHECKSUM_FILTER variable that can be used to skip whirlpool checksums on slow computers). Bug #431026 tracks all bugs fixed since portage-2.1.11.9. Package-Manager: portage-2.2.0_alpha122/cvs/Linux i686
-rw-r--r--sys-apps/portage/ChangeLog13
-rw-r--r--sys-apps/portage/Manifest10
-rw-r--r--sys-apps/portage/portage-2.1.11.11.ebuild287
3 files changed, 305 insertions, 5 deletions
diff --git a/sys-apps/portage/ChangeLog b/sys-apps/portage/ChangeLog
index a6eb639d4a1e..4975d9d64a1e 100644
--- a/sys-apps/portage/ChangeLog
+++ b/sys-apps/portage/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for sys-apps/portage
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/portage/ChangeLog,v 1.1074 2012/08/11 23:42:17 zmedico Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/portage/ChangeLog,v 1.1075 2012/08/22 23:36:19 zmedico Exp $
+
+*portage-2.1.11.11 (22 Aug 2012)
+
+ 22 Aug 2012; Zac Medico <zmedico@gentoo.org> +portage-2.1.11.11.ebuild:
+ 2.1.11.11 version bump. This fixes bug #142202 (fix emerge-webrsync to handle
+ permissions when non-root users), bug #364105 (fix emerge-webrsync to use
+ PORTAGE_RSYNC_OPTS), bug #392565 (add warning in make.conf man page about
+ PORTAGE_TMPDIR under PORTDIR), bug #432024 (emerge poll loop optimizations),
+ and bug #432170 (add PORTAGE_CHECKSUM_FILTER variable that can be used to skip
+ whirlpool checksums on slow computers). Bug #431026 tracks all bugs fixed
+ since portage-2.1.11.9.
*portage-2.2.0_alpha121 (11 Aug 2012)
diff --git a/sys-apps/portage/Manifest b/sys-apps/portage/Manifest
index 481446017eaa..4b6294772a76 100644
--- a/sys-apps/portage/Manifest
+++ b/sys-apps/portage/Manifest
@@ -4,6 +4,7 @@ Hash: SHA256
AUX README.RESCUE 137 SHA256 69bea0c755eab59b6b4d90838b8551744f0b0c8eeac170b1cd13a71ee83f9ac4 SHA512 dba0f0d6d4cd140e636cc70dfb7bdb298e2f2fb040bc07b0874cac994bdbabd26bfd9361d85a0f8b9a92a185281e4901606b9e4f563afdc8867341bbe6af1cb0 WHIRLPOOL 713fcc790442999d56e13efaf536fec9954dadeda680b3642d0358311332096ddedf8b55697bd1ca620d84f0dc7d025ff7931e086c74c1f5032be72dca2ff8f5
DIST portage-2.1.10.65.tar.bz2 826100 SHA256 aaeba4789b05864e8ca142752dc31c017d47976332394c1bf533aba6b3748f8c SHA512 fd7807cbde6c9de85c2b4acd7ef6848c36b7f569fd22decb4b684529f65e9ff3f6a29af0038c88ca7861873251e8cb3bf17ce25140b18e3b7bfe6492ff8edc6c WHIRLPOOL d0e22726fb65bd80f58d70c155b6c669dcc1c086d9b77303fd987bc7cfaeeb3b6922300ddc01a05eca948167e09c3c16462f023fa7bfeca963958d6e3036cf7b
DIST portage-2.1.11.10.tar.bz2 799167 SHA256 b3fa5db65998b8d011e6f3f32e266ff7f8eabc51d691fcd26e39e440f8d1b53f SHA512 ec6860435d34b8aa1c1a6199fb00e0f894029e1eb354683158ef99a0588a2c770b7a1a95807a2b78b1369c02fb67b5bcdf5484690a10165071704aec99807857 WHIRLPOOL ae5962fd586281f2b2b57f766984e9e591a6c06d123963a9d6ed7b52140fe33d1615663a3428cb1bc435dbd7a5d784f71a6cf8590af112e6ffa43d9122fec5ca
+DIST portage-2.1.11.11.tar.bz2 805235 SHA256 3a7a20ea417983dcdc79f2cbe855f9ca0f793f90aaca42d69cb61b264794f50f SHA512 8b0348e565b75352e9b86f12a5fd01328a0d21962afd11c126669cbafa5eca7d19a2af02dd0277dee4b56d9a1ac0adf5fecf24fd796463eaebd37bbdcc6cca11 WHIRLPOOL cd2d4f2121e5248471d195ca764a10669a095286bb508cd09baa6178f2483e3b123c51aa8d1c74ab6000b4ac002baaa2207929b786cf16ed042bfa681b0488df
DIST portage-2.1.11.9.tar.bz2 844344 SHA256 590ecdae12581e0ead0eca6e4b8e0ca6bc5f1ecaafb98a5d3b684db5b1af7a05 SHA512 64919b833a719f6f1de5bc3ec8a921dd5fca75ea8c4535ce21faa608ff2bf811632ef627845e9b050fcd1ebf56f5792c7bd471925e75c1264d01277979d704a8 WHIRLPOOL d325c2b5ec50cde40f4b2ce127728b3712321febef58897b3141287776424610bd12701c159f15c5cec41f2eb35569e302a5692045406205e833f8e4cfd3d9fd
DIST portage-2.1.6.7.patch.bz2 50118 SHA256 5f0605b51a24d23703330b040d2f7154322284db3e0cefa7499002ff1fa733c0 SHA512 dd2acc1d436cad77cfc83c4dec79316763c1fb88d61b7702e8e47e6f31b2b9fe49e8a4cf4a947614a2acd6db2ef080ed8b4ae5fce9d9be29d7e218a0ec1576c0 WHIRLPOOL 050f923249fde7c4774a2a8a944889e4270a89b00441f1923c01ab0be38f107503e018d7ab7a7f42615e7e375f0f6c0eb3bdbf3ff4ce1ce226957238a729b1ee
DIST portage-2.1.6.7_p1.patch.bz2 4741 SHA256 ddaae2ad8c01e6477bfe22e23a4da57eb9d079a27a17a08385d56fe2c49eec30 SHA512 39058d815827b340787d813515ed4fb8c52c4fb0caa12ae70c8a9a97b9ba16c2bf4177190cb7d1c508055ce8a7aaa390ba9b31642c7d74bfb4a14d729e720617 WHIRLPOOL 8eab9574ed2e6cabac593d93f8b6ff71465c01376e7eec4cf357c336b5ed3d4f3fb3521991148ba4e34ba00c56bec5534c98311167c03866812277a8d88b0494
@@ -16,18 +17,19 @@ DIST portage-2.2.0_alpha121.tar.bz2 798864 SHA256 9df9ea9117354b4aeedc79ef15df3b
DIST portage-man-pl-2.1.2.tar.bz2 53893 SHA256 960eaa7c6f3a2af44bdc665266a8e884628a562373cc477d301597ecc5ef961f SHA512 5f5c8dd1559048546633b1e7291ff8c0f5d637595f1a4c98405424b08c30c089fc9359e0214f78fbe358754f20d327794f4692b9b67639585c29b755975ee853 WHIRLPOOL 756e267b84077501d976f46fa448cda5368cd52aeca6ec43d109c81fe8e2364e0cd0f35630d68a4186c70e3b440b7c870b86ac7ef83cc0afa43e10f9f8e1f422
EBUILD portage-2.1.10.65.ebuild 10258 SHA256 8cd767d1ecc484140ea7f5ba88ba45923a371d39940a6a24c2a019401bff05a3 SHA512 3e9bf9911970bad04d6d0da543c2053fe23bbe553131e9c5ae4a9d707c5cb3d8e1231c416e17ca873768a1ccda75f286b4860809e24b0d6ef8902b4026a22878 WHIRLPOOL 07497600d0eee48a38793a32425ec1f35a37efcc1d526db2cf6a4a0d19251a1dff7f6a344462651baed81e360119c3e2b03f9720ecacdeea4e95cff22ca5864f
EBUILD portage-2.1.11.10.ebuild 9728 SHA256 1c32e54ae0dbf3136b6766ff6eaf11713320aa24463ec202b2336569f8344b32 SHA512 d11b7643174d53852e7ebfcf5cc3c62cca22d2cd8abb30b26809e1886983c564b63deeec7649ed7df12d13f5dea62bcf1a52167c3a588367378ba11e365d7a66 WHIRLPOOL db09df7075864c9d6b467175c4bac6bbf186309561946a1229dc7ec7923fa1f8454c5f62fcb27c26a035fa321462c19837aa319c9bf7b509f03daf0f81b3f701
+EBUILD portage-2.1.11.11.ebuild 9728 SHA256 90f581982ed824a3d121f7d77a80c4199fe4e97d4c73272d0423adf45800f835 SHA512 84c67561212c2a58cb1a708c07cf376ac391a7005daec435a111959da99966bb19fb9ce6cacd626dcf5d8e97ee153550719b2cebdacc104ebd5020ce182dcccc WHIRLPOOL a5bb390dc13cf600313a29ba6371bfdfc352a9bd0cc982f47e454326e6d9fa0962800277d7545292198eac4026b3bfa0776303e3b1746edc68283d9b5926b18b
EBUILD portage-2.1.11.9.ebuild 9839 SHA256 81053d2eba1062a8713087abe1437973c8a0bc94e3ccc346acd0c2323908a226 SHA512 a88e85c66c455ead9bb4cddab0985a63f13ce4141dd7a1385b3463177c1a4444a269ff40ee181f6c69121aa1a6c231e4ab18ccbd3c3d3a3da11293b033e8abe6 WHIRLPOOL 44164c424326fc1131433d98f90cac5159b7b885d4412bfac56157a32e41db4e0592cc62d094b2f22ffd59bf510aabbbf76f7f1c65294646ad12a450604ee392
EBUILD portage-2.1.6.7_p1.ebuild 8392 SHA256 41fea4b6b85b9fbc6acdae6d58fb8898e0ba83733306699228cf63c42f1b45b5 SHA512 3bd45150c5e756958958eab09048dc1ef398ab10a55c47ff5e563ea0a3ea642ba4718cac693f57321d3f4829f4c6c7268c3b1070c1d563f7009e4a0e038f49a1 WHIRLPOOL 3d499f61a5e0ca7d4c1c0be3f1d5906cd1c0cb5cbfe86afc32b13703deb5bb6e81df48c3fc20192045d0e146bec4d5cd89a528eb00625f0f64f106f34f0f1e89
EBUILD portage-2.2.0_alpha110.ebuild 12714 SHA256 273e145ed5135bc865a0fc62bb51177de2aa61673781d9244eb7f978c9d1a3e9 SHA512 f2a4c375ed5a66aac44889489006238810a9f684cb2a2780b000fd4e9beafe13db4419d12bacfe9f504bb5043a0dc9bef3df376487b37280adda9680ebdbcca2 WHIRLPOOL 88dd8439fa0986fff4de0cdbc3ae0ade386292df0f4b14c36f743ec11132d22ce40eed69f6cc70b2822e6feb54dbfb22911d1971fef58eaeda87360bfc54d408
EBUILD portage-2.2.0_alpha120.ebuild 11951 SHA256 37810cc916794a0197d98c8b6bdca6d1fd2c41a2365c226c878f32a353c014c0 SHA512 f8be672b881bbad26b5ff77090b738547e8ea2ad3bfb9cdfdc6d94fdd57630f99881f2018e67cc21124e4be96ed65e10ff8b5179eedf94d28a5e699d73220b4d WHIRLPOOL 4958798f4e49ce6757e52fbb1fc560b238598e50c073e7bb303933656996ebc5f4b21c7352d2355220bcbb4d66ccc0b2d5acc528d04ba11227af3be6c38a0fe8
EBUILD portage-2.2.0_alpha121.ebuild 11829 SHA256 30433710b56488d8a93c4ffdf4e552dfbbc8f2be2b3a9f09990b881fb19e9479 SHA512 e8ed2eb99d81f5fa18d7a063ea3a6e5fdb374a9fdad172d6322c12203b176a532061bcbe800f0f1f91edf17bc8d27e5b434afed2480fb7b82590fd764683b699 WHIRLPOOL 9b0b27076ab1db1cde25f4c4928512a8e3edb3be038940792dbe5f4cbb4a2296c67e5e407a7b3d835ad2f9e8f75dd6c75c4b9ab727707fa90d485c7d3d660ea0
EBUILD portage-9999.ebuild 11086 SHA256 63fa72f2500d415f5ed0e753e18733b5e437bbd9ad0e45c7e4e02d1305fa2868 SHA512 b2bef811fb1aee6ff3205a34d2083788f47cf77d9299c6c2c1232003038268dfbbe4967441d6870af49e23f114e1025c52b36654b3f9c956c66ea1573ae145b0 WHIRLPOOL 77d9a7dceb5fe77fd5bc940f400323d9729229921a74788127aec303a653525edfc2cdbff29df3684b97958510505662167644ec6d80777b444978369f2f0e21
-MISC ChangeLog 108880 SHA256 86210f6a5c7221f4c65ab8aa3225756157f92f69cd0d3e733d189b992bebaf93 SHA512 ae1ef8b78d95529ee7b6a5e4421aa2202f52684f0e6fb3cc2e6896d735cbe2be171255e9c1f53980443891f57d1005fcce08ab56da8295426e5e517d05804e0b WHIRLPOOL b919da1772b48f06eec1aa9856d09caec06a7490e194e808003e9a314868a6c74c815cf748ae3521cf911ed37a9b3931ac41d574f3c1fae67138f75d234058ab
+MISC ChangeLog 109483 SHA256 b87fea285c66db75d89c651f7b49ef4c85f94b2daab3e09807b920c04e815d7f SHA512 8fe462feea53da15cdf1c9eadcb064dd309d886d5d56af608769572fb856c74611cfcc21e054d7ea6eebe985bbfa2d65281ab6cd032e4efdb09580e5deb6c488 WHIRLPOOL e60692cd46973d037723f81cc15afd43759833d8106394fc9b83755fd44c8f5110968a774409d70c152021c52eb73d2ac946bb0ec4be6896c3187c0ef71a37ee
MISC metadata.xml 926 SHA256 23463fa1d9a37979e2dffb502fffdd4dcd5dc932f4b5b3053999609012e4fc65 SHA512 41478467f90c58d8044471ed85ad6365e976b8cdb43556f024345861d08f1e9ae2f2fc728d114521adece630793248f2598fa330233eb98ae7b42950cf056d08 WHIRLPOOL 1aff07692c1fbca18cd3498f1cac2e64749b784a3135d881fc4cb95040bdfb93af079df1e053a547cfe08ea4384268e36ec98fc25160ad94e6ef65c6d04e5452
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
-iEYEAREIAAYFAlAm7d8ACgkQ/ejvha5XGaNg6wCgjtZqwqUwY7Reau9zBkOtEHT7
-ipYAoNwl8jZB4s1R/g+rLTdk9hEqWsY4
-=Nvqi
+iEYEAREIAAYFAlA1bPkACgkQ/ejvha5XGaNFCQCfdIy7fao+1XYHtqHsu1a21xeN
+4CwAn1RKFPLEB/v1VwLFwEK1oxr5GkPk
+=kXLB
-----END PGP SIGNATURE-----
diff --git a/sys-apps/portage/portage-2.1.11.11.ebuild b/sys-apps/portage/portage-2.1.11.11.ebuild
new file mode 100644
index 000000000000..5f6f8ded0889
--- /dev/null
+++ b/sys-apps/portage/portage-2.1.11.11.ebuild
@@ -0,0 +1,287 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/portage/portage-2.1.11.11.ebuild,v 1.1 2012/08/22 23:36:19 zmedico Exp $
+
+# Require EAPI 2 since we now require at least python-2.6 (for python 3
+# syntax support) which also requires EAPI 2.
+EAPI=2
+inherit eutils multilib python
+
+DESCRIPTION="Portage is the package management and distribution system for Gentoo"
+HOMEPAGE="http://www.gentoo.org/proj/en/portage/index.xml"
+LICENSE="GPL-2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
+SLOT="0"
+IUSE="build doc epydoc +ipc linguas_pl pypy1_9 python2 python3 selinux xattr"
+
+# Import of the io module in python-2.6 raises ImportError for the
+# thread module if threading is disabled.
+python_dep_ssl="python3? ( =dev-lang/python-3*[ssl] )
+ !pypy1_9? ( !python2? ( !python3? (
+ || ( >=dev-lang/python-2.7[ssl] dev-lang/python:2.6[threads,ssl] )
+ ) ) )
+ pypy1_9? ( !python2? ( !python3? ( dev-python/pypy:1.9[bzip2,ssl] ) ) )
+ python2? ( !python3? ( || ( dev-lang/python:2.7[ssl] dev-lang/python:2.6[ssl,threads] ) ) )"
+python_dep="${python_dep_ssl//\[ssl\]}"
+python_dep="${python_dep//,ssl}"
+python_dep="${python_dep//ssl,}"
+
+# The pysqlite blocker is for bug #282760.
+DEPEND="${python_dep}
+ >=sys-apps/sed-4.0.5 sys-devel/patch
+ doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
+ epydoc? ( >=dev-python/epydoc-2.0 !<=dev-python/pysqlite-2.4.1 )"
+# Require sandbox-2.2 for bug #288863.
+# For xattr, we can spawn getfattr and setfattr from sys-apps/attr, but that's
+# quite slow, so it's not considered in the dependencies as an alternative to
+# to python-3.3 / pyxattr. Also, xattr support is only tested with Linux, so
+# for now, don't pull in xattr deps for other kernels.
+# For whirlpool hash, require python[ssl] or python-mhash (bug #425046).
+RDEPEND="${python_dep}
+ !build? ( >=sys-apps/sed-4.0.5
+ >=app-shells/bash-3.2_p17
+ >=app-admin/eselect-1.2
+ || ( ${python_dep_ssl} dev-python/python-mhash )
+ )
+ elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
+ elibc_glibc? ( >=sys-apps/sandbox-2.2 )
+ elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
+ >=app-misc/pax-utils-0.1.17
+ xattr? ( kernel_linux? ( || ( >=dev-lang/python-3.3_pre20110902 dev-python/pyxattr ) ) )
+ selinux? ( || ( >=sys-libs/libselinux-2.0.94[python] <sys-libs/libselinux-2.0.94 ) )
+ !<app-shells/bash-3.2_p17
+ !<app-admin/logrotate-3.8.0"
+PDEPEND="
+ !build? (
+ >=net-misc/rsync-2.6.4
+ userland_GNU? ( >=sys-apps/coreutils-6.4 )
+ )"
+# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
+# NOTE: FEATURES=install-sources requires debugedit and rsync
+
+SRC_ARCHIVES="http://dev.gentoo.org/~zmedico/portage/archives"
+
+prefix_src_archives() {
+ local x y
+ for x in ${@}; do
+ for y in ${SRC_ARCHIVES}; do
+ echo ${y}/${x}
+ done
+ done
+}
+
+PV_PL="2.1.2"
+PATCHVER_PL=""
+TARBALL_PV=$PV
+SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
+ $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)
+ linguas_pl? ( mirror://gentoo/${PN}-man-pl-${PV_PL}.tar.bz2
+ $(prefix_src_archives ${PN}-man-pl-${PV_PL}.tar.bz2) )"
+
+PATCHVER=
+[[ $TARBALL_PV = $PV ]] || PATCHVER=$PV
+if [ -n "${PATCHVER}" ]; then
+ SRC_URI="${SRC_URI} mirror://gentoo/${PN}-${PATCHVER}.patch.bz2
+ $(prefix_src_archives ${PN}-${PATCHVER}.patch.bz2)"
+fi
+
+S="${WORKDIR}"/${PN}-${TARBALL_PV}
+S_PL="${WORKDIR}"/${PN}-${PV_PL}
+
+compatible_python_is_selected() {
+ [[ $(/usr/bin/python -c 'import sys ; sys.stdout.write(sys.hexversion >= 0x2060000 and "good" or "bad")') = good ]]
+}
+
+current_python_has_xattr() {
+ [[ $(/usr/bin/python -c 'import sys ; sys.stdout.write(sys.hexversion >= 0x3030000 and "yes" or "no")') = yes ]] || \
+ /usr/bin/python -c 'import xattr' 2>/dev/null
+}
+
+pkg_setup() {
+ # Bug #359731 - Die early if get_libdir fails.
+ [[ -z $(get_libdir) ]] && \
+ die "get_libdir returned an empty string"
+
+ if use python2 && use python3 ; then
+ ewarn "Both python2 and python3 USE flags are enabled, but only one"
+ ewarn "can be in the shebangs. Using python3."
+ fi
+ if use pypy1_9 && use python3 ; then
+ ewarn "Both pypy1_9 and python3 USE flags are enabled, but only one"
+ ewarn "can be in the shebangs. Using python3."
+ fi
+ if use pypy1_9 && use python2 ; then
+ ewarn "Both pypy1_9 and python2 USE flags are enabled, but only one"
+ ewarn "can be in the shebangs. Using python2"
+ fi
+ if ! use pypy1_9 && ! use python2 && ! use python3 && \
+ ! compatible_python_is_selected ; then
+ ewarn "Attempting to select a compatible default python interpreter"
+ local x success=0
+ for x in /usr/bin/python2.* ; do
+ x=${x#/usr/bin/python2.}
+ if [[ $x -ge 6 ]] 2>/dev/null ; then
+ eselect python set python2.$x
+ if compatible_python_is_selected ; then
+ elog "Default python interpreter is now set to python-2.$x"
+ success=1
+ break
+ fi
+ fi
+ done
+ if [ $success != 1 ] ; then
+ eerror "Unable to select a compatible default python interpreter!"
+ die "This version of portage requires at least python-2.6 to be selected as the default python interpreter (see \`eselect python --help\`)."
+ fi
+ fi
+
+ if use python3; then
+ python_set_active_version 3
+ elif use python2; then
+ python_set_active_version 2
+ elif use pypy1_9; then
+ python_set_active_version 2.7-pypy-1.9
+ fi
+}
+
+src_prepare() {
+ if [ -n "${PATCHVER}" ] ; then
+ if [[ -L $S/bin/ebuild-helpers/portageq ]] ; then
+ rm "$S/bin/ebuild-helpers/portageq" \
+ || die "failed to remove portageq helper symlink"
+ fi
+ epatch "${WORKDIR}/${PN}-${PATCHVER}.patch"
+ fi
+ einfo "Setting portage.VERSION to ${PVR} ..."
+ sed -e "s/^VERSION=.*/VERSION=\"${PVR}\"/" -i pym/portage/__init__.py || \
+ die "Failed to patch portage.VERSION"
+ sed -e "1s/VERSION/${PVR}/" -i doc/fragment/version || \
+ die "Failed to patch VERSION in doc/fragment/version"
+ sed -e "1s/VERSION/${PVR}/" -i man/* || \
+ die "Failed to patch VERSION in man page headers"
+
+ if ! use ipc ; then
+ einfo "Disabling ipc..."
+ sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
+ -i pym/_emerge/AbstractEbuildProcess.py || \
+ die "failed to patch AbstractEbuildProcess.py"
+ fi
+
+ if use xattr && use kernel_linux ; then
+ einfo "Adding FEATURES=xattr to make.globals ..."
+ echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
+ || die "failed to append to make.globals"
+ fi
+
+ if use python3; then
+ einfo "Converting shebangs for python3..."
+ python_convert_shebangs -r 3 .
+ elif use python2; then
+ einfo "Converting shebangs for python2..."
+ python_convert_shebangs -r 2 .
+ elif use pypy1_9; then
+ einfo "Converting shebangs for pypy-c1.9..."
+ python_convert_shebangs -r 2.7-pypy-1.9 .
+ fi
+
+ cd "${S}/cnf" || die
+ if [ -f "make.conf.${ARCH}".diff ]; then
+ patch make.conf "make.conf.${ARCH}".diff || \
+ die "Failed to patch make.conf.example"
+ else
+ eerror ""
+ eerror "Portage does not have an arch-specific configuration for this arch."
+ eerror "Please notify the arch maintainer about this issue. Using generic."
+ eerror ""
+ fi
+
+ # BSD and OSX need a sed wrapper so that find/xargs work properly
+ if use userland_GNU; then
+ rm -f "${S}"/bin/ebuild-helpers/sed || \
+ die "Failed to remove sed wrapper"
+ fi
+}
+
+src_compile() {
+ if use doc; then
+ emake docbook || die
+ fi
+
+ if use epydoc; then
+ einfo "Generating api docs"
+ emake epydoc || die
+ fi
+}
+
+src_test() {
+ emake test || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" \
+ sysconfdir="/etc" \
+ prefix="/usr" \
+ libdir="/usr/$(get_libdir)" \
+ install || die
+
+ # Use dodoc for compression, since the Makefile doesn't do that.
+ dodoc "${S}"/{ChangeLog,NEWS,RELEASE-NOTES} || die
+
+ if use linguas_pl; then
+ doman -i18n=pl "${S_PL}"/man/pl/*.[0-9] || die
+ doman -i18n=pl_PL.UTF-8 "${S_PL}"/man/pl_PL.UTF-8/*.[0-9] || die
+ fi
+}
+
+pkg_preinst() {
+ if [[ $ROOT == / ]] ; then
+ # Run some minimal tests as a sanity check.
+ local test_runner=$(find "$D" -name runTests)
+ if [[ -n $test_runner && -x $test_runner ]] ; then
+ einfo "Running preinst sanity tests..."
+ "$test_runner" || die "preinst sanity tests failed"
+ fi
+ fi
+
+ if use xattr && ! current_python_has_xattr ; then
+ ewarn "For optimal performance in xattr handling, install"
+ ewarn "dev-python/pyxattr, or install >=dev-lang/python-3.3 and"
+ ewarn "enable USE=python3 for $CATEGORY/$PN."
+ fi
+
+ if ! use build && ! has_version dev-python/pycrypto && \
+ ! has_version '>=dev-lang/python-2.6[ssl]' ; then
+ ewarn "If you are an ebuild developer and you plan to commit ebuilds"
+ ewarn "with this system then please install dev-python/pycrypto or"
+ ewarn "enable the ssl USE flag for >=dev-lang/python-2.6 in order"
+ ewarn "to enable RMD160 hash support."
+ ewarn "See bug #198398 for more information."
+ fi
+
+ if [[ -d ${ROOT}var/log/portage && \
+ $(ls -ld "${ROOT}var/log/portage") != *" portage portage "* ]] && \
+ has_version '<sys-apps/portage-2.1.10.11' ; then
+ # Initialize permissions for bug #378451 and bug #377177, since older
+ # portage does not create /var/log/portage with the desired default
+ # permissions.
+ einfo "Applying portage group permission to ${ROOT}var/log/portage for bug #378451"
+ chown portage:portage "${ROOT}var/log/portage"
+ chmod g+ws "${ROOT}var/log/portage"
+ fi
+
+ if has_version '<sys-apps/portage-2.1.10.61' ; then
+ ewarn "FEATURES=config-protect-if-modified is now enabled by default."
+ ewarn "This causes the CONFIG_PROTECT behavior to be skipped for"
+ ewarn "files that have not been modified since they were installed."
+ fi
+}
+
+pkg_postinst() {
+ # Compile all source files recursively. Any orphans
+ # will be identified and removed in postrm.
+ python_mod_optimize /usr/$(get_libdir)/portage/pym
+}
+
+pkg_postrm() {
+ python_mod_cleanup /usr/$(get_libdir)/portage/pym
+}