From 4374a549798c073170eea86b13f2f20e2494292e Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 31 May 2007 01:14:47 +0000 Subject: 2.1.2.9 maintenance release Package-Manager: portage-2.1.2.9 --- sys-apps/portage/ChangeLog | 8 +- sys-apps/portage/Manifest | 30 ++-- sys-apps/portage/files/digest-portage-2.1.2.8 | 9 - sys-apps/portage/files/digest-portage-2.1.2.9 | 9 + sys-apps/portage/portage-2.1.2.8.ebuild | 240 -------------------------- sys-apps/portage/portage-2.1.2.9.ebuild | 240 ++++++++++++++++++++++++++ 6 files changed, 271 insertions(+), 265 deletions(-) delete mode 100644 sys-apps/portage/files/digest-portage-2.1.2.8 create mode 100644 sys-apps/portage/files/digest-portage-2.1.2.9 delete mode 100644 sys-apps/portage/portage-2.1.2.8.ebuild create mode 100644 sys-apps/portage/portage-2.1.2.9.ebuild (limited to 'sys-apps') diff --git a/sys-apps/portage/ChangeLog b/sys-apps/portage/ChangeLog index ac4694cb992c..129822761b1f 100644 --- a/sys-apps/portage/ChangeLog +++ b/sys-apps/portage/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sys-apps/portage # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/portage/ChangeLog,v 1.387 2007/05/25 08:51:07 zmedico Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/portage/ChangeLog,v 1.388 2007/05/31 01:14:47 zmedico Exp $ + +*portage-2.1.2.9 (31 May 2007) + + 31 May 2007; Zac Medico +portage-2.1.2.9.ebuild: + 2.1.2.9 maintenance release. This fixes bugs #179008, #179766, + #179870, #180009, #180079, #180222, #180399 *portage-2.1.2.8 (25 May 2007) diff --git a/sys-apps/portage/Manifest b/sys-apps/portage/Manifest index f8f835aa2654..72c7ddcab7c3 100644 --- a/sys-apps/portage/Manifest +++ b/sys-apps/portage/Manifest @@ -18,7 +18,7 @@ DIST portage-2.1.1-r2.patch.bz2 5263 RMD160 6b749c6700784ea1ecc615b7b3ed39eade28 DIST portage-2.1.1.tar.bz2 297006 RMD160 489e6c3e82527917f5308fdbff1c9add1a03f254 SHA1 6fdcb9897cef7f48d98829ab96caf37e31bd14a2 SHA256 3a5da4bb41ca8495f2673178f120622d8d923d8117b8744921418af5843c0389 DIST portage-2.1.2.2.patch.bz2 36946 RMD160 cb55d2d2aa68ee149c8f6d9d94dfa3be5a884554 SHA1 2897ef16683d7cc8d5b8da04b67b93fcc83634d4 SHA256 1f5dd5105698773d46ce2345e9b5668271147d3b68e223216f965bf75a133f73 DIST portage-2.1.2.7.patch.bz2 52460 RMD160 c6e963d38a1bb5e174b6f2cd8c4e47bac2bef4bf SHA1 817b1d9dd119a90c8e3d8375d996f194215a9be1 SHA256 477aefd64234b77181ef04d3d7617bb86b26739022ffd8108f8aadc2c5f5b084 -DIST portage-2.1.2.8.patch.bz2 58116 RMD160 657d45f912c962e6df6f5f5eaf8cc8c4dc735435 SHA1 ac8dacc9d76cbc490bc1e0b58a7d09bc83a06d04 SHA256 a17167242347fd75dc52b80ef91bb2ed6ee21900730c84ad1285bc2eb456f620 +DIST portage-2.1.2.9.patch.bz2 61579 RMD160 ba315f393f8ecf4a89811c650131f3ad51b754d9 SHA1 0dfdc95e9becd0475e417f93417edfd8c0ab4fbb SHA256 4de01cc201f60438a1973aef146c4bbc715bc271fac0717e960c1d5cef8205a4 DIST portage-2.1.2.tar.bz2 311900 RMD160 75da869c02e3574babc2f40e07b18686f384cf99 SHA1 72980508e881d837e78b9309d53dba62ef76c247 SHA256 767e2756e51fbbff5a4fd33e3cec5ad83cf6eaad0fa0fa7c35ad07dbda11a008 DIST portage-man-pl-2.1-r1.patch.bz2 2076 RMD160 be3898714b94fb0253c1826909649ea51da205ad SHA1 6ec21b29a3eff4a034ea68b4e6a889c8f95dcc3e SHA256 28176c04290478ba4373c28ea047edbdf3a40d3ff69bf92da55d1cfcb828ea5b DIST portage-man-pl-2.1.2.tar.bz2 53893 RMD160 46c3656b40bf4ad2530ab2b5fbc563708b86748c SHA1 c3151e0b330c589625830e54053fbc676b2c64de SHA256 960eaa7c6f3a2af44bdc665266a8e884628a562373cc477d301597ecc5ef961f @@ -39,14 +39,14 @@ EBUILD portage-2.1.2.7.ebuild 7091 RMD160 574d067024310d665ae9dcb3b22983bb3fbc62 MD5 2cb2e342d3f9d4dc01fb0dddfcfd084c portage-2.1.2.7.ebuild 7091 RMD160 574d067024310d665ae9dcb3b22983bb3fbc623b portage-2.1.2.7.ebuild 7091 SHA256 d4bb88613da22d7696e84792e8d9f7cdd955565520d5dd4405de468bcf34c51f portage-2.1.2.7.ebuild 7091 -EBUILD portage-2.1.2.8.ebuild 7187 RMD160 6515944596e22f9be0c7586123918c42e51b7412 SHA1 faa830055a3edbae6f18a35c1636d450954695b0 SHA256 67f3dfe71e34213d3984ec7eada2938a072f3f00de16cfb7a42c077a6d4eb538 -MD5 aac963140e004323da1f7090fb546809 portage-2.1.2.8.ebuild 7187 -RMD160 6515944596e22f9be0c7586123918c42e51b7412 portage-2.1.2.8.ebuild 7187 -SHA256 67f3dfe71e34213d3984ec7eada2938a072f3f00de16cfb7a42c077a6d4eb538 portage-2.1.2.8.ebuild 7187 -MISC ChangeLog 14054 RMD160 5f11aa30690cd7b4cbe8b9da98720ea1ce357bbe SHA1 06673c334c463419d66ce6bff1cc990cf6bbda06 SHA256 b027f96433e8f58ba1b6dbfb6a4a901bb444345978e253cab4efb381086c47c2 -MD5 fdf8c60ca7fc7ce4cfa4b069ad3ff5a3 ChangeLog 14054 -RMD160 5f11aa30690cd7b4cbe8b9da98720ea1ce357bbe ChangeLog 14054 -SHA256 b027f96433e8f58ba1b6dbfb6a4a901bb444345978e253cab4efb381086c47c2 ChangeLog 14054 +EBUILD portage-2.1.2.9.ebuild 7187 RMD160 5963916b22c77065fd37158826d308a91c017199 SHA1 0d00be418e29433d4fc048dc71ba886a860f7520 SHA256 92da7353b764d1a9203b746d125aaf1fd29f4e557d242ccaf3451c4649f2fcdf +MD5 806b7e90127c74f045b864566b7b70cc portage-2.1.2.9.ebuild 7187 +RMD160 5963916b22c77065fd37158826d308a91c017199 portage-2.1.2.9.ebuild 7187 +SHA256 92da7353b764d1a9203b746d125aaf1fd29f4e557d242ccaf3451c4649f2fcdf portage-2.1.2.9.ebuild 7187 +MISC ChangeLog 14271 RMD160 379edf40981560a1cc23a93fc2a084105d5a3c6d SHA1 39f7c928c3e3f1fb3bbc2f4bda632af208e65143 SHA256 64dda086dd3d5e5baae915eb1520a5797b9d2fdb4111f83d7d7524e5db53fde3 +MD5 70e737c03ffb0447edd0d74bb287547c ChangeLog 14271 +RMD160 379edf40981560a1cc23a93fc2a084105d5a3c6d ChangeLog 14271 +SHA256 64dda086dd3d5e5baae915eb1520a5797b9d2fdb4111f83d7d7524e5db53fde3 ChangeLog 14271 MISC metadata.xml 282 RMD160 6c4808b6cd95ab87688faa56ba4d2fcf15d2ab53 SHA1 91e4b3ed133aefe77b32ea6de69cd0062b8e40a4 SHA256 8f9dedd85eefb6985a8f28c79b4e7ec448ff3933fbac27cd169e15ed9e686c18 MD5 dfcfc175ec5ae4909adae41bc375bcd6 metadata.xml 282 RMD160 6c4808b6cd95ab87688faa56ba4d2fcf15d2ab53 metadata.xml 282 @@ -63,13 +63,13 @@ SHA256 d8cbd61eab242247e3a0f76d5fafd63a398e4f1b4219e2193dd41f3a926fae05 files/di MD5 f370b8f4dad971790cb26f23c9c4d504 files/digest-portage-2.1.2.7 759 RMD160 94ee0c3614f8f8d34e81b3149252136fd43611e3 files/digest-portage-2.1.2.7 759 SHA256 a462f9a2c0c9d3d5cb8fe9cbcc25bf7c548af0aa481ecd4ac75baa263de136f1 files/digest-portage-2.1.2.7 759 -MD5 2ade3621594dd62ab9e70268150c2216 files/digest-portage-2.1.2.8 759 -RMD160 e47a3c7eb44125011e0736a791b7c1c79586db8f files/digest-portage-2.1.2.8 759 -SHA256 dfece681cc0371c8f83dbb8dc928e27cd96fa385985ef2453b06e12d31006e90 files/digest-portage-2.1.2.8 759 +MD5 9ddf2195951bb996621c49dcadc737cb files/digest-portage-2.1.2.9 759 +RMD160 02e8f49fa6522d49ea28c98da7cd211e5f633d16 files/digest-portage-2.1.2.9 759 +SHA256 930cabb025bc5f9e963cc4f044688bbffb1cbc1e46c4b715ff2314d1469de01c files/digest-portage-2.1.2.9 759 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (GNU/Linux) -iD8DBQFGVqOB/ejvha5XGaMRAuN6AJ9Rx4VEU9CL+cnLTaXYz0e2TsJpugCfcqvr -obzw9UzpR3WE4ecp/qulWZ0= -=W/SM +iD8DBQFGXiGO/ejvha5XGaMRAgBlAKDmGGWw4q44g4jcp7dLK7jm0rqu2ACgxG4/ +X5nAWL5es5W+FqeEv/Z6ZxY= +=mcq8 -----END PGP SIGNATURE----- diff --git a/sys-apps/portage/files/digest-portage-2.1.2.8 b/sys-apps/portage/files/digest-portage-2.1.2.8 deleted file mode 100644 index 1c5ab19f62d8..000000000000 --- a/sys-apps/portage/files/digest-portage-2.1.2.8 +++ /dev/null @@ -1,9 +0,0 @@ -MD5 87ee23ade6b78e8560a18f9098034e67 portage-2.1.2.8.patch.bz2 58116 -RMD160 657d45f912c962e6df6f5f5eaf8cc8c4dc735435 portage-2.1.2.8.patch.bz2 58116 -SHA256 a17167242347fd75dc52b80ef91bb2ed6ee21900730c84ad1285bc2eb456f620 portage-2.1.2.8.patch.bz2 58116 -MD5 74c705793edb37ac2fb1d3b2e06c689d portage-2.1.2.tar.bz2 311900 -RMD160 75da869c02e3574babc2f40e07b18686f384cf99 portage-2.1.2.tar.bz2 311900 -SHA256 767e2756e51fbbff5a4fd33e3cec5ad83cf6eaad0fa0fa7c35ad07dbda11a008 portage-2.1.2.tar.bz2 311900 -MD5 6409f79dd5efe7922dd8fa36340c4912 portage-man-pl-2.1.2.tar.bz2 53893 -RMD160 46c3656b40bf4ad2530ab2b5fbc563708b86748c portage-man-pl-2.1.2.tar.bz2 53893 -SHA256 960eaa7c6f3a2af44bdc665266a8e884628a562373cc477d301597ecc5ef961f portage-man-pl-2.1.2.tar.bz2 53893 diff --git a/sys-apps/portage/files/digest-portage-2.1.2.9 b/sys-apps/portage/files/digest-portage-2.1.2.9 new file mode 100644 index 000000000000..e36aaeb33e3a --- /dev/null +++ b/sys-apps/portage/files/digest-portage-2.1.2.9 @@ -0,0 +1,9 @@ +MD5 7f419fb94bbb66e739e4ce01f72f72ff portage-2.1.2.9.patch.bz2 61579 +RMD160 ba315f393f8ecf4a89811c650131f3ad51b754d9 portage-2.1.2.9.patch.bz2 61579 +SHA256 4de01cc201f60438a1973aef146c4bbc715bc271fac0717e960c1d5cef8205a4 portage-2.1.2.9.patch.bz2 61579 +MD5 74c705793edb37ac2fb1d3b2e06c689d portage-2.1.2.tar.bz2 311900 +RMD160 75da869c02e3574babc2f40e07b18686f384cf99 portage-2.1.2.tar.bz2 311900 +SHA256 767e2756e51fbbff5a4fd33e3cec5ad83cf6eaad0fa0fa7c35ad07dbda11a008 portage-2.1.2.tar.bz2 311900 +MD5 6409f79dd5efe7922dd8fa36340c4912 portage-man-pl-2.1.2.tar.bz2 53893 +RMD160 46c3656b40bf4ad2530ab2b5fbc563708b86748c portage-man-pl-2.1.2.tar.bz2 53893 +SHA256 960eaa7c6f3a2af44bdc665266a8e884628a562373cc477d301597ecc5ef961f portage-man-pl-2.1.2.tar.bz2 53893 diff --git a/sys-apps/portage/portage-2.1.2.8.ebuild b/sys-apps/portage/portage-2.1.2.8.ebuild deleted file mode 100644 index 1c603ff6d6b6..000000000000 --- a/sys-apps/portage/portage-2.1.2.8.ebuild +++ /dev/null @@ -1,240 +0,0 @@ -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/portage/portage-2.1.2.8.ebuild,v 1.1 2007/05/25 08:51:07 zmedico Exp $ - -inherit toolchain-funcs eutils flag-o-matic multilib - -DESCRIPTION="The Portage Package Management System. The primary 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 ~sparc-fbsd ~x86 ~x86-fbsd" -PROVIDE="virtual/portage" -SLOT="0" -# USE_EXPAND_HIDDEN hides ELIBC and USERLAND expansions from emerge output (see make.conf.5). -IUSE_ELIBC="elibc_glibc elibc_uclibc elibc_FreeBSD" -IUSE_USERLAND="userland_Darwin userland_GNU" -IUSE="build doc epydoc selinux linguas_pl ${IUSE_ELIBC} ${IUSE_USERLAND}" -DEPEND=">=dev-lang/python-2.3 - !build? ( >=sys-apps/sed-4.0.5 ) - epydoc? ( >=dev-python/epydoc-2.0 )" -RDEPEND=">=dev-lang/python-2.3 - !build? ( >=sys-apps/sed-4.0.5 - dev-python/python-fchksum - !userland_Darwin? ( >=app-shells/bash-3.0 ) ) - elibc_glibc? ( >=sys-apps/sandbox-1.2.17 ) - elibc_uclibc? ( >=sys-apps/sandbox-1.2.17 ) - !userland_Darwin? ( >=app-misc/pax-utils-0.1.13 ) - userland_GNU? ( !selinux? ( >=sys-apps/coreutils-6.4 ) ) - selinux? ( >=dev-python/python-selinux-2.16 ) - doc? ( app-portage/portage-manpages ) - >=dev-python/pycrypto-2.0.1-r5 - >=net-misc/rsync-2.6.4" -# coreutils-6.4 rdep is for date format in emerge-webrsync #164532 -# rsync-2.6.4 rdep is for the --filter option #167668 -SRC_ARCHIVES="http://dev.gentoo.org/~zmedico/portage/archives" - -PV_PL="2.1.2" -PATCHVER_PL="" -SRC_URI="mirror://gentoo/${PN}-${PV%.*}.tar.bz2 - ${SRC_ARCHIVES}/${PN}-${PV%.*}.tar.bz2 - linguas_pl? ( mirror://gentoo/${PN}-man-pl-${PV_PL}.tar.bz2 - ${SRC_ARCHIVES}/${PN}-man-pl-${PV_PL}.tar.bz2 )" - -PATCHVER=${PVR} -if [ -n "${PATCHVER}" ]; then - SRC_URI="${SRC_URI} mirror://gentoo/${PN}-${PATCHVER}.patch.bz2 - ${SRC_ARCHIVES}/${PN}-${PATCHVER}.patch.bz2" -fi - -if [ -n "${PATCHVER_PL}" ]; then - SRC_URI="${SRC_URI} linguas_pl? ( mirror://gentoo/${PN}-man-pl-${PV_PL}${PATCHVER_PL}.patch.bz2 - ${SRC_ARCHIVES}/${PN}-man-pl-${PV_PL}${PATCHVER_PL}.patch.bz2 )" -fi - -S="${WORKDIR}"/${PN}-${PV%.*} -S_PL="${WORKDIR}"/${PN}-${PV_PL} - -portage_docs() { - elog "" - elog "For help with using portage please consult the Gentoo Handbook" - elog "at http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=3" - elog "" -} - -src_unpack() { - unpack ${A} - cd "${S}" - if [ -n "${PATCHVER}" ]; then - cd "${S}" - epatch "${WORKDIR}/${PN}-${PATCHVER}.patch" - fi - einfo "Setting portage.VERSION to ${PVR} ..." - sed -i "s/^VERSION=.*/VERSION=\"${PVR}\"/" pym/portage.py || \ - die "Failed to patch portage.VERSION" - eend 0 - if [ -n "${PATCHVER_PL}" ]; then - use linguas_pl && \ - epatch "${WORKDIR}/${PN}-man-pl-${PV_PL}${PATCHVER_PL}.patch" - fi -} - -src_compile() { - append-lfs-flags - - cd "${S}"/src - $(tc-getCC) ${CFLAGS} ${LDFLAGS} -o tbz2tool tbz2tool.c || \ - die "Failed to build tbz2tool" - - if use elibc_FreeBSD; then - cd "${S}"/src/bsd-flags - chmod +x setup.py - ./setup.py build || die "Failed to install bsd-chflags module" - fi - - if use epydoc; then - einfo "Generating api docs" - mkdir "${WORKDIR}"/api - local my_modules - my_modules="$(find "${S}/pym" -name "*.py" \ - | sed -e 's:.*__init__.py$::' -e 's:\.py$::' -e "s:^${S}/pym/::" \ - -e 's:/:.:g')" || die "error listing modules" - PYTHONPATH="${S}/pym:${PYTHONPATH}" epydoc -o "${WORKDIR}"/api \ - -qqqqq --ignore-param-mismatch ${my_modules} || die "epydoc failed" - fi -} - -src_test() { - ./tests/runTests || \ - die "test(s) failed" -} - -src_install() { - local libdir=$(get_libdir) - local portage_base="/usr/${libdir}/portage" - cd "${S}"/cnf - insinto /etc - doins etc-update.conf dispatch-conf.conf make.globals - if [ -f "make.conf.${ARCH}".diff ]; then - patch make.conf "make.conf.${ARCH}".diff || \ - die "Failed to patch make.conf.example" - newins make.conf 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 "" - newins make.conf make.conf.example - fi - - if use elibc_FreeBSD; then - cd "${S}"/src/bsd-flags - ./setup.py install --root "${D}" || \ - die "Failed to install bsd-chflags module" - fi - - dodir ${portage_base}/bin - exeinto ${portage_base}/bin - # BSD and OSX need a sed wrapper so that find/xargs work properly - if use userland_GNU; then - rm "${S}"/bin/sed || die "Failed to remove sed wrapper" - fi - cd "${S}"/bin - doexe * - doexe "${S}"/src/tbz2tool - dosym newins ${portage_base}/bin/donewins - - for mydir in pym pym/cache pym/elog_modules; do - dodir ${portage_base}/${mydir} - insinto ${portage_base}/${mydir} - cd "${S}"/${mydir} - doins *.py - done - - doman "${S}"/man/*.[0-9] - if use linguas_pl; then - doman -i18n=pl "${S_PL}"/man/pl/*.[0-9] - doman -i18n=pl_PL.UTF-8 "${S_PL}"/man/pl_PL.UTF-8/*.[0-9] - fi - dodoc "${S}"/ChangeLog - dodoc "${S}"/NEWS - dodoc "${S}"/RELEASE-NOTES - use epydoc && dohtml -r "${WORKDIR}"/api - - dodir /usr/bin - for x in ebuild emerge portageq repoman tbz2tool xpak; do - dosym ../${libdir}/portage/bin/${x} /usr/bin/${x} - done - - dodir /usr/sbin - local my_syms="archive-conf - dispatch-conf - emaint - emerge-webrsync - env-update - etc-update - fixpackages - quickpkg - regenworld" - local x - for x in ${my_syms}; do - dosym ../${libdir}/portage/bin/${x} /usr/sbin/${x} - done - dosym env-update /usr/sbin/update-env - dosym etc-update /usr/sbin/update-etc - - dodir /etc/portage - keepdir /etc/portage - - echo PYTHONPATH=\"${portage_base}/pym\" > "${WORKDIR}"/05portage.envd - doenvd "${WORKDIR}"/05portage.envd -} - -pkg_preinst() { - local portage_base="/usr/$(get_libdir)/portage" - if has livecvsportage ${FEATURES} && [ "${ROOT}" = "/" ]; then - rm -rf "${D}"/${portage_base}/pym/* - mv "${D}"/${portage_base}/bin/tbz2tool "${T}" - rm -rf "${D}"/${portage_base}/bin/* - mv "${T}"/tbz2tool "${D}"/${portage_base}/bin/ - fi - remove_python_bytecodes -} - -pkg_postinst() { - local x - - if [ ! -f "${ROOT}/var/lib/portage/world" ] && - [ -f "${ROOT}"/var/cache/edb/world ] && - [ ! -h "${ROOT}"/var/cache/edb/world ]; then - mv "${ROOT}"/var/cache/edb/world "${ROOT}"/var/lib/portage/world - ln -s ../../lib/portage/world /var/cache/edb/world - fi - - for x in "${ROOT}"/etc/._cfg????_make.globals; do - # Overwrite the globals file automatically. - [ -e "${x}" ] && mv -f "${x}" "${ROOT}etc/make.globals" - done - - ewarn "In portage-2.1.2, installation actions do not necessarily pull in build time" - ewarn "dependencies that are not strictly required. This behavior is adjustable" - ewarn "via the new --with-bdeps option that is documented in the emerge(1) man page." - ewarn "For more information regarding this change, please refer to bug #148870." - echo - elog "See NEWS and RELEASE-NOTES for further changes." - echo - portage_docs -} - -pkg_postrm() { - remove_python_bytecodes -} - -remove_python_bytecodes() { - local d="${ROOT}/usr/$(get_libdir)/portage/pym" - [ -d "${d}" ] || return - find "${d}" -type d -print0 | \ - while read -d $'\0' d ; do - cd "${d}" - rm -f *.pyc *.pyo - done -} diff --git a/sys-apps/portage/portage-2.1.2.9.ebuild b/sys-apps/portage/portage-2.1.2.9.ebuild new file mode 100644 index 000000000000..9fbeb99c4d95 --- /dev/null +++ b/sys-apps/portage/portage-2.1.2.9.ebuild @@ -0,0 +1,240 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/portage/portage-2.1.2.9.ebuild,v 1.1 2007/05/31 01:14:47 zmedico Exp $ + +inherit toolchain-funcs eutils flag-o-matic multilib + +DESCRIPTION="The Portage Package Management System. The primary 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 ~sparc-fbsd ~x86 ~x86-fbsd" +PROVIDE="virtual/portage" +SLOT="0" +# USE_EXPAND_HIDDEN hides ELIBC and USERLAND expansions from emerge output (see make.conf.5). +IUSE_ELIBC="elibc_glibc elibc_uclibc elibc_FreeBSD" +IUSE_USERLAND="userland_Darwin userland_GNU" +IUSE="build doc epydoc selinux linguas_pl ${IUSE_ELIBC} ${IUSE_USERLAND}" +DEPEND=">=dev-lang/python-2.3 + !build? ( >=sys-apps/sed-4.0.5 ) + epydoc? ( >=dev-python/epydoc-2.0 )" +RDEPEND=">=dev-lang/python-2.3 + !build? ( >=sys-apps/sed-4.0.5 + dev-python/python-fchksum + !userland_Darwin? ( >=app-shells/bash-3.0 ) ) + elibc_glibc? ( >=sys-apps/sandbox-1.2.17 ) + elibc_uclibc? ( >=sys-apps/sandbox-1.2.17 ) + !userland_Darwin? ( >=app-misc/pax-utils-0.1.13 ) + userland_GNU? ( !selinux? ( >=sys-apps/coreutils-6.4 ) ) + selinux? ( >=dev-python/python-selinux-2.16 ) + doc? ( app-portage/portage-manpages ) + >=dev-python/pycrypto-2.0.1-r5 + >=net-misc/rsync-2.6.4" +# coreutils-6.4 rdep is for date format in emerge-webrsync #164532 +# rsync-2.6.4 rdep is for the --filter option #167668 +SRC_ARCHIVES="http://dev.gentoo.org/~zmedico/portage/archives" + +PV_PL="2.1.2" +PATCHVER_PL="" +SRC_URI="mirror://gentoo/${PN}-${PV%.*}.tar.bz2 + ${SRC_ARCHIVES}/${PN}-${PV%.*}.tar.bz2 + linguas_pl? ( mirror://gentoo/${PN}-man-pl-${PV_PL}.tar.bz2 + ${SRC_ARCHIVES}/${PN}-man-pl-${PV_PL}.tar.bz2 )" + +PATCHVER=${PVR} +if [ -n "${PATCHVER}" ]; then + SRC_URI="${SRC_URI} mirror://gentoo/${PN}-${PATCHVER}.patch.bz2 + ${SRC_ARCHIVES}/${PN}-${PATCHVER}.patch.bz2" +fi + +if [ -n "${PATCHVER_PL}" ]; then + SRC_URI="${SRC_URI} linguas_pl? ( mirror://gentoo/${PN}-man-pl-${PV_PL}${PATCHVER_PL}.patch.bz2 + ${SRC_ARCHIVES}/${PN}-man-pl-${PV_PL}${PATCHVER_PL}.patch.bz2 )" +fi + +S="${WORKDIR}"/${PN}-${PV%.*} +S_PL="${WORKDIR}"/${PN}-${PV_PL} + +portage_docs() { + elog "" + elog "For help with using portage please consult the Gentoo Handbook" + elog "at http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=3" + elog "" +} + +src_unpack() { + unpack ${A} + cd "${S}" + if [ -n "${PATCHVER}" ]; then + cd "${S}" + epatch "${WORKDIR}/${PN}-${PATCHVER}.patch" + fi + einfo "Setting portage.VERSION to ${PVR} ..." + sed -i "s/^VERSION=.*/VERSION=\"${PVR}\"/" pym/portage.py || \ + die "Failed to patch portage.VERSION" + eend 0 + if [ -n "${PATCHVER_PL}" ]; then + use linguas_pl && \ + epatch "${WORKDIR}/${PN}-man-pl-${PV_PL}${PATCHVER_PL}.patch" + fi +} + +src_compile() { + append-lfs-flags + + cd "${S}"/src + $(tc-getCC) ${CFLAGS} ${LDFLAGS} -o tbz2tool tbz2tool.c || \ + die "Failed to build tbz2tool" + + if use elibc_FreeBSD; then + cd "${S}"/src/bsd-flags + chmod +x setup.py + ./setup.py build || die "Failed to install bsd-chflags module" + fi + + if use epydoc; then + einfo "Generating api docs" + mkdir "${WORKDIR}"/api + local my_modules + my_modules="$(find "${S}/pym" -name "*.py" \ + | sed -e 's:.*__init__.py$::' -e 's:\.py$::' -e "s:^${S}/pym/::" \ + -e 's:/:.:g')" || die "error listing modules" + PYTHONPATH="${S}/pym:${PYTHONPATH}" epydoc -o "${WORKDIR}"/api \ + -qqqqq --ignore-param-mismatch ${my_modules} || die "epydoc failed" + fi +} + +src_test() { + ./tests/runTests || \ + die "test(s) failed" +} + +src_install() { + local libdir=$(get_libdir) + local portage_base="/usr/${libdir}/portage" + cd "${S}"/cnf + insinto /etc + doins etc-update.conf dispatch-conf.conf make.globals + if [ -f "make.conf.${ARCH}".diff ]; then + patch make.conf "make.conf.${ARCH}".diff || \ + die "Failed to patch make.conf.example" + newins make.conf 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 "" + newins make.conf make.conf.example + fi + + if use elibc_FreeBSD; then + cd "${S}"/src/bsd-flags + ./setup.py install --root "${D}" || \ + die "Failed to install bsd-chflags module" + fi + + dodir ${portage_base}/bin + exeinto ${portage_base}/bin + # BSD and OSX need a sed wrapper so that find/xargs work properly + if use userland_GNU; then + rm "${S}"/bin/sed || die "Failed to remove sed wrapper" + fi + cd "${S}"/bin + doexe * + doexe "${S}"/src/tbz2tool + dosym newins ${portage_base}/bin/donewins + + for mydir in pym pym/cache pym/elog_modules; do + dodir ${portage_base}/${mydir} + insinto ${portage_base}/${mydir} + cd "${S}"/${mydir} + doins *.py + done + + doman "${S}"/man/*.[0-9] + if use linguas_pl; then + doman -i18n=pl "${S_PL}"/man/pl/*.[0-9] + doman -i18n=pl_PL.UTF-8 "${S_PL}"/man/pl_PL.UTF-8/*.[0-9] + fi + dodoc "${S}"/ChangeLog + dodoc "${S}"/NEWS + dodoc "${S}"/RELEASE-NOTES + use epydoc && dohtml -r "${WORKDIR}"/api + + dodir /usr/bin + for x in ebuild emerge portageq repoman tbz2tool xpak; do + dosym ../${libdir}/portage/bin/${x} /usr/bin/${x} + done + + dodir /usr/sbin + local my_syms="archive-conf + dispatch-conf + emaint + emerge-webrsync + env-update + etc-update + fixpackages + quickpkg + regenworld" + local x + for x in ${my_syms}; do + dosym ../${libdir}/portage/bin/${x} /usr/sbin/${x} + done + dosym env-update /usr/sbin/update-env + dosym etc-update /usr/sbin/update-etc + + dodir /etc/portage + keepdir /etc/portage + + echo PYTHONPATH=\"${portage_base}/pym\" > "${WORKDIR}"/05portage.envd + doenvd "${WORKDIR}"/05portage.envd +} + +pkg_preinst() { + local portage_base="/usr/$(get_libdir)/portage" + if has livecvsportage ${FEATURES} && [ "${ROOT}" = "/" ]; then + rm -rf "${D}"/${portage_base}/pym/* + mv "${D}"/${portage_base}/bin/tbz2tool "${T}" + rm -rf "${D}"/${portage_base}/bin/* + mv "${T}"/tbz2tool "${D}"/${portage_base}/bin/ + fi + remove_python_bytecodes +} + +pkg_postinst() { + local x + + if [ ! -f "${ROOT}/var/lib/portage/world" ] && + [ -f "${ROOT}"/var/cache/edb/world ] && + [ ! -h "${ROOT}"/var/cache/edb/world ]; then + mv "${ROOT}"/var/cache/edb/world "${ROOT}"/var/lib/portage/world + ln -s ../../lib/portage/world /var/cache/edb/world + fi + + for x in "${ROOT}"/etc/._cfg????_make.globals; do + # Overwrite the globals file automatically. + [ -e "${x}" ] && mv -f "${x}" "${ROOT}etc/make.globals" + done + + ewarn "In portage-2.1.2, installation actions do not necessarily pull in build time" + ewarn "dependencies that are not strictly required. This behavior is adjustable" + ewarn "via the new --with-bdeps option that is documented in the emerge(1) man page." + ewarn "For more information regarding this change, please refer to bug #148870." + echo + elog "See NEWS and RELEASE-NOTES for further changes." + echo + portage_docs +} + +pkg_postrm() { + remove_python_bytecodes +} + +remove_python_bytecodes() { + local d="${ROOT}/usr/$(get_libdir)/portage/pym" + [ -d "${d}" ] || return + find "${d}" -type d -print0 | \ + while read -d $'\0' d ; do + cd "${d}" + rm -f *.pyc *.pyo + done +} -- cgit v1.2.3-65-gdbad