diff options
author | Zac Medico <zmedico@gentoo.org> | 2012-08-22 23:36:19 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2012-08-22 23:36:19 +0000 |
commit | eb1cd15c768ab7d0cc1016197b2167536ab10713 (patch) | |
tree | b00dce80de055ac66637e81f5f100981e3a9b9c1 | |
parent | Version bump. (diff) | |
download | historical-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/ChangeLog | 13 | ||||
-rw-r--r-- | sys-apps/portage/Manifest | 10 | ||||
-rw-r--r-- | sys-apps/portage/portage-2.1.11.11.ebuild | 287 |
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 +} |