summaryrefslogtreecommitdiffstats
path: root/pym/portage
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-08-30 10:03:05 -0700
committerZac Medico <zmedico@gentoo.org>2011-08-30 10:03:05 -0700
commit77896f08ed12a93ff6ee8a657ae11501cc2dbc87 (patch)
tree8491a47ee1a56c3a89f828992d997b803eb760d7 /pym/portage
parent41f12443efdab544ace9f2c90df516360ebf9df1 (diff)
downloadportage-77896f08ed12a93ff6ee8a657ae11501cc2dbc87.tar.gz
portage-77896f08ed12a93ff6ee8a657ae11501cc2dbc87.tar.bz2
portage-77896f08ed12a93ff6ee8a657ae11501cc2dbc87.zip
doebuild: check distfiles digests less often
If the unpack phase is not going to be executed as a dependency, then we can simply skip the distfiles digest checks if the unpack phase is already marked complete via $PORTAGE_BUILDDIR/.unpacked.
Diffstat (limited to 'pym/portage')
-rw-r--r--pym/portage/package/ebuild/doebuild.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py
index 92d73e5ec..2ab679606 100644
--- a/pym/portage/package/ebuild/doebuild.py
+++ b/pym/portage/package/ebuild/doebuild.py
@@ -684,7 +684,10 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0,
alist = set(mysettings.configdict["pkg"].get("A", "").split())
unpacked = False
- if "unpack" in phases_to_run:
+ if "unpack" not in phases_to_run:
+ unpacked = os.path.exists(os.path.join(
+ mysettings["PORTAGE_BUILDDIR"], ".unpacked"))
+ else:
try:
workdir_st = os.stat(mysettings["WORKDIR"])
except OSError: