summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2006-04-27 13:50:12 +0000
committerZac Medico <zmedico@gentoo.org>2006-04-27 13:50:12 +0000
commit764667c9e3546687a1e11a841bc535d437d30f99 (patch)
tree9c05f05be1bbcc8697ccc674dea442e8fd68634e
parentf78c4f18d92e90c839bdfdf309fa7fdbc8b15c3d (diff)
downloadportage-764667c9e3546687a1e11a841bc535d437d30f99.tar.gz
portage-764667c9e3546687a1e11a841bc535d437d30f99.tar.bz2
portage-764667c9e3546687a1e11a841bc535d437d30f99.zip
Make FEATURES=cvs cause all distfiles to be fetched if necessary (just like `ebuild digest`) and update the code for Manifest2.
svn path=/main/trunk/; revision=3251
-rw-r--r--pym/portage.py23
1 files changed, 11 insertions, 12 deletions
diff --git a/pym/portage.py b/pym/portage.py
index 0a2ddaf5c..67615a5d9 100644
--- a/pym/portage.py
+++ b/pym/portage.py
@@ -2684,18 +2684,17 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0,
if ("mirror" in features) or fetchall:
fetchme=alluris[:]
checkme=aalist[:]
- elif mydo=="digest":
- fetchme=alluris[:]
- checkme=aalist[:]
- digestfn=mysettings["FILESDIR"]+"/digest-"+mysettings["PF"]
- if os.path.exists(digestfn):
- mydigests=digestParseFile(digestfn)
- if mydigests:
- for x in mydigests:
- while x in checkme:
- i = checkme.index(x)
- del fetchme[i]
- del checkme[i]
+ elif mydo == "digest" or "cvs" in mysettings.features:
+ fetchme = alluris[:]
+ checkme = aalist[:]
+ # Skip files that we already have digests for.
+ mydigests = Manifest(
+ mysettings["O"], mysettings["DISTDIR"]).getTypeDigests("DIST")
+ for x in mydigests:
+ while x in checkme:
+ i = checkme.index(x)
+ del fetchme[i]
+ del checkme[i]
else:
fetchme=newuris[:]
checkme=alist[:]