summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Robbins <drobbins@gentoo.org>2001-08-17 17:00:50 +0000
committerDaniel Robbins <drobbins@gentoo.org>2001-08-17 17:00:50 +0000
commitdb0168a5f268a8303bcb41db04a77beaf3de3103 (patch)
treeadc0c590b30f9e4c7273a8c958b68bed444f4849 /sys-apps
parentsgmltools-lite dep fix (diff)
downloadgentoo-2-db0168a5f268a8303bcb41db04a77beaf3de3103.tar.gz
gentoo-2-db0168a5f268a8303bcb41db04a77beaf3de3103.tar.bz2
gentoo-2-db0168a5f268a8303bcb41db04a77beaf3de3103.zip
emerge now has a --fetchonly command
Diffstat (limited to 'sys-apps')
-rwxr-xr-xsys-apps/portage/files/1.5/bin/emerge25
1 files changed, 23 insertions, 2 deletions
diff --git a/sys-apps/portage/files/1.5/bin/emerge b/sys-apps/portage/files/1.5/bin/emerge
index 7d516494244c..82c3e96d1a5b 100755
--- a/sys-apps/portage/files/1.5/bin/emerge
+++ b/sys-apps/portage/files/1.5/bin/emerge
@@ -142,6 +142,8 @@ class depgraph:
print "["+x[0]+" "+addl+"]",x[2],"to",x[1]
def merge(self,mylist):
+ returnme=0
+ #above line used by --fetchonly
for x in mylist:
myroot=x[1]
print ">>> emerge",x[2],"to",x[1]
@@ -149,7 +151,14 @@ class depgraph:
#(emerge is already handling that)
y=self.db[x[1]]["porttree"].getname(x[2])
if x[0]=="ebuild":
- if "--buildpkg" in self.myopts:
+ if "--fetchonly" in self.myopts:
+ retval=portage.doebuild(y,"fetch",myroot,0,edebug)
+ if retval:
+ print
+ print "!!! Fetch for",y,"failed, continuing..."
+ print
+ returnme=1
+ elif "--buildpkg" in self.myopts:
#create pkg, then merge pkg
retval=portage.doebuild(y,"clean",myroot,0,edebug)
if retval:
@@ -190,6 +199,14 @@ class depgraph:
if retval:
print "!!! emerge aborting on ",y,"."
sys.exit(1)
+ #my doing an exit this way, --fetchonly can continue to try to
+ #fetch everything even if a particular download fails.
+ if "--fetchonly" in self.myopts:
+ if returnme:
+ print "\n\n!!! Some fetch errors were encountered. Please see above for details.\n\n"
+ sys.exit(returnme)
+ else:
+ sys.exit(0)
def post_emerge(retval=0):
global myopts
@@ -223,7 +240,7 @@ def post_emerge(retval=0):
print
sys.exit(retval)
-opts=["--help","--pretend","--buildpkg","--usepkg","--autoclean","--clean","--debug"]
+opts=["--help","--pretend","--buildpkg","--usepkg","--autoclean","--clean","--debug","--fetchonly"]
modes=["rsync","system","update","config"]
myopts=[]
mymode=[]
@@ -276,6 +293,10 @@ if "--help" in myopts:
print " the -x option, causing it to output verbose debug information"
print " to stdout. --debug is great for finding bash syntax errors."
print
+ print " \x1b[32;01m--fetchonly\x1b[0m"
+ print " Instead of doing any package building, just perform fetches for"
+ print " all packages (main package as well as all dependencies.)"
+ print
print " \x1b[32;01m--usepkg\x1b[0m"
print " tell emerge to use binary packages (from $DISTDIR) if they are"
print " available, thus possibly avoiding some time-consuming compiles."