From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([69.77.167.62] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1KTiIq-0000sx-8N for garchives@archives.gentoo.org; Thu, 14 Aug 2008 19:16:09 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 5FC43E03B5; Thu, 14 Aug 2008 19:16:07 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 1A3C2E03B5 for ; Thu, 14 Aug 2008 19:16:07 +0000 (UTC) Received: from stork.gentoo.org (stork.gentoo.org [64.127.104.133]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTP id C1483661C2 for ; Thu, 14 Aug 2008 19:16:05 +0000 (UTC) Received: from grobian by stork.gentoo.org with local (Exim 4.69) (envelope-from ) id 1KTiIm-0007uS-Ex for gentoo-commits@lists.gentoo.org; Thu, 14 Aug 2008 19:16:04 +0000 To: gentoo-commits@lists.gentoo.org From: "Fabian Groffen (grobian)" Subject: [gentoo-commits] portage r11408 - in main/branches/prefix: bin pym/_emerge pym/portage pym/portage/dbapi X-VCS-Repository: portage X-VCS-Revision: 11408 X-VCS-Files: main/branches/prefix/bin/ebuild.sh main/branches/prefix/pym/_emerge/__init__.py main/branches/prefix/pym/portage/__init__.py main/branches/prefix/pym/portage/const.py main/branches/prefix/pym/portage/dbapi/vartree.py X-VCS-Directories: bin pym/_emerge pym/portage pym/portage/dbapi X-VCS-Committer: grobian X-VCS-Committer-Name: Fabian Groffen Content-Type: text/plain; charset=UTF-8 Message-Id: Sender: Fabian Groffen Date: Thu, 14 Aug 2008 19:16:04 +0000 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: 7b4f6918-e63a-41e1-8cb1-50b54ae6fb74 X-Archives-Hash: b06784daeb255e71c1bb0e008ac22a62 Author: grobian Date: 2008-08-14 19:16:02 +0000 (Thu, 14 Aug 2008) New Revision: 11408 Modified: main/branches/prefix/bin/ebuild.sh main/branches/prefix/pym/_emerge/__init__.py main/branches/prefix/pym/portage/__init__.py main/branches/prefix/pym/portage/const.py main/branches/prefix/pym/portage/dbapi/vartree.py Log: Merged from trunk 11391:11399 | 11392 | Remove unnecessary dict.keys() call. = | | zmedico | = | =20 | 11393 | When testing userpriv write access in $DISTDIR, redirect t= he | | zmedico | 'permission denied' error message to /dev/null. = | =20 | 11394 | For pkg_config and pkg_info, add respective "config" and = | | zmedico | "info" values to EBUILD_PHASES. = | =20 | 11395 | Increase Scheduler._job_delay_max to 10 seconds. = | | zmedico | = | =20 | 11397 | In source_all_bashrcs(), only change $IFS while splitting = | | zmedico | $PROFILE_PATHS into an array, and then restore it before = | | | doing anything else. This avoids interference that can = | | | otherwise occur if code from profile.bashrc (or = | | | /etc/portage/env, be extension) needs to call any of the = | | | elog functions which use the save_IFS and restore_IFS = | | | aliases internally. = | =20 | 11398 | Entirely disable the src_configure phase from the python = | | zmedico | side for EAPI values for which it's not supported. This = | | | avoids pointless spawning of ebuild.sh and also avoids = | | | having bashrc called during an invalid phase as reported b= y | | | Arfrever. = | =20 | 11399 | Fix ebuild(1) so that src_configure is only called for EAP= Is | | zmedico | for which it is supported. = | Modified: main/branches/prefix/bin/ebuild.sh =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- main/branches/prefix/bin/ebuild.sh 2008-08-14 19:07:22 UTC (rev 11407= ) +++ main/branches/prefix/bin/ebuild.sh 2008-08-14 19:16:02 UTC (rev 11408= ) @@ -866,10 +866,6 @@ } =20 dyn_configure() { - # PREFIX HACK: just remove "prefix" from EAPI here, this file - # currently assumes EAPI to contain a single token, and "prefix" - # is ortogonal to all supported EAPIs here. - hasq ${EAPI/prefix/} 0 1 2_pre1 && return 0 =20 if [[ $PORTAGE_BUILDDIR/.configured -nt $WORKDIR ]] ; then vecho ">>> It appears that '$PF' is already configured; skipping." @@ -1529,13 +1525,12 @@ # source the existing profile.bashrc's. save_IFS IFS=3D$'\n' - for x in ${PROFILE_PATHS}; do - # Must unset it so that it doesn't mess up assumptions in the RCs. - unset IFS + local path_array=3D($PROFILE_PATHS) + restore_IFS + for x in ${path_array[@]} ; do [ -f "${x}/profile.bashrc" ] && qa_source "${x}/profile.bashrc" done - restore_IFS -=09 + # We assume if people are changing shopts in their bashrc they do so at= their # own peril. This is the ONLY non-portage bit of code that can change = shopts # without a QA violation. Modified: main/branches/prefix/pym/_emerge/__init__.py =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- main/branches/prefix/pym/_emerge/__init__.py 2008-08-14 19:07:22 UTC = (rev 11407) +++ main/branches/prefix/pym/_emerge/__init__.py 2008-08-14 19:16:02 UTC = (rev 11408) @@ -77,7 +77,7 @@ import portage.util import portage.locks import portage.exception -from portage.const import EPREFIX, BPREFIX, EPREFIX_LSTRIP +from portage.const import EPREFIX, BPREFIX, EPREFIX_LSTRIP, EAPIPREFIX from portage.data import secpass from portage.elog.messages import eerror from portage.util import normalize_path as normpath @@ -2684,7 +2684,14 @@ =20 ebuild_phases =3D TaskSequence(scheduler=3Dself.scheduler) =20 - for phase in self._phases: + pkg =3D self.pkg + phases =3D self._phases + EAPIPREFIX + if pkg.metadata["EAPI"].replace(EAPIPREFIX, "").strip() in ("0", "1", = "2_pre1"): + # skip src_configure + phases =3D phases[1:] + + for phase in phases: ebuild_phases.add(EbuildPhase(background=3Dself.background, pkg=3Dself.pkg, phase=3Dphase, scheduler=3Dself.scheduler, settings=3Dself.settings, tree=3Dself._tree)) @@ -8921,7 +8928,7 @@ # The load average takes some time to respond when new # jobs are added, so we need to limit the rate of adding # new jobs. - self._job_delay_max =3D 5 + self._job_delay_max =3D 10 self._job_delay_factor =3D 1.0 self._job_delay_exp =3D 1.5 self._previous_job_start_time =3D None Modified: main/branches/prefix/pym/portage/__init__.py =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- main/branches/prefix/pym/portage/__init__.py 2008-08-14 19:07:22 UTC = (rev 11407) +++ main/branches/prefix/pym/portage/__init__.py 2008-08-14 19:16:02 UTC = (rev 11408) @@ -3221,7 +3221,7 @@ return rval =20 _userpriv_test_write_file_cache =3D {} -_userpriv_test_write_cmd_script =3D "> %(file_path)s ; rval=3D$? ; " + \ +_userpriv_test_write_cmd_script =3D "touch %(file_path)s 2>/dev/null ; r= val=3D$? ; " + \ "rm -f %(file_path)s ; exit $rval" =20 def _userpriv_test_write_file(settings, file_path): @@ -4335,6 +4335,10 @@ fd_pipes=3Dfd_pipes, returnpid=3Dreturnpid) if retval: return retval + + if mydo =3D=3D "configure" and mysettings["EAPI"] in ("0", "1", "2_pre1= "): + return os.EX_OK + kwargs =3D actionmap[mydo]["args"] mysettings["EBUILD_PHASE"] =3D mydo _doebuild_exit_status_unlink( @@ -4707,6 +4711,8 @@ if not eapi_is_supported(eapi): # can't do anything with this. raise portage.exception.UnsupportedAPIException(mycpv, eapi) + mysettings.pop("EAPI", None) + mysettings.configdict["pkg"]["EAPI"] =3D eapi try: mysettings["PORTAGE_RESTRICT"] =3D " ".join(flatten( portage.dep.use_reduce(portage.dep.paren_reduce( Modified: main/branches/prefix/pym/portage/const.py =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- main/branches/prefix/pym/portage/const.py 2008-08-14 19:07:22 UTC (re= v 11407) +++ main/branches/prefix/pym/portage/const.py 2008-08-14 19:16:02 UTC (re= v 11408) @@ -82,7 +82,7 @@ EBUILD_PHASES =3D ["setup", "unpack", "configure", "compile", "test", "install", "package", "preinst", "postinst","prerm", "pos= trm", - "nofetch", "other"] + "nofetch", "config", "info", "other"] =20 EAPI =3D 1 =20 Modified: main/branches/prefix/pym/portage/dbapi/vartree.py =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- main/branches/prefix/pym/portage/dbapi/vartree.py 2008-08-14 19:07:22= UTC (rev 11407) +++ main/branches/prefix/pym/portage/dbapi/vartree.py 2008-08-14 19:16:02= UTC (rev 11408) @@ -343,7 +343,7 @@ if not self._libs: self.rebuild() # Iterate over all binaries within LinkageMap. - for obj in self._obj_properties.keys(): + for obj in self._obj_properties: rValue.setdefault(obj, self.findProviders(obj)) return rValue =20