From 7ba9d8dd2a0da019c16341197b52a14ac6eff9da Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sun, 29 Mar 2009 19:15:01 +0000 Subject: [PATCH] Add support for --rdeps-only and --root-deps options which are useful in combination with $ROOT. Thanks to Ned Ludd for the initial patch. svn path=/main/trunk/; revision=13245 --- man/emerge.1 | 14 ++++++++++++++ pym/_emerge/__init__.py | 11 ++++++++++- pym/_emerge/help.py | 18 ++++++++++++++++++ 3 files changed, 42 insertions(+), 1 deletion(-) diff --git a/man/emerge.1 b/man/emerge.1 index a60fd60a6..60e15338f 100644 --- a/man/emerge.1 +++ b/man/emerge.1 @@ -414,12 +414,26 @@ b blocked by another package (automatically resolved conflict) Results may vary, but the general outcome is a reduced or condensed output from portage's displays. .TP +.BR "\-\-rdeps\-only" +Discard all build\-time dependencies. This option is commonly used together +with \fBROOT\fR and it should not be enabled under normal circumstances. For +currently supported \fBEAPI\fR values, the dependencies specified in the +\fBDEPEND\fR variable are discarded. However, behavior may change for new +\fBEAPI\fRs when related extensions are added in the future. +.TP .BR "\-\-reinstall changed\-use" Tells emerge to include installed packages where USE flags have changed since installation. Unlike \fB\-\-newuse\fR, this option does not trigger reinstallation when flags that the user has not enabled are added or removed. .TP +.BR "\-\-root\-deps" +Install build\-time dependencies to \fBROOT\fR instead of /. This option +should not be enabled under normal circumstances. For currently supported +\fBEAPI\fR values, the dependencies specified in the \fBDEPEND\fR variable +are used. However, behavior may change for new +\fBEAPI\fRs when related extensions are added in the future. +.TP .BR "\-\-skipfirst" This option is only valid when used with \fB\-\-resume\fR. It removes the first package in the resume list. Dependencies are recalculated for diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index e3886b399..773ef029c 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -207,6 +207,7 @@ options=[ "--nospinner", "--oneshot", "--onlydeps", "--pretend", "--quiet", "--resume", +"--rdeps-only", "--root-deps", "--searchdesc", "--selective", "--skipfirst", "--tree", @@ -5275,8 +5276,16 @@ class depgraph(object): if removal_action and self.myopts.get("--with-bdeps", "y") == "n": edepend["DEPEND"] = "" + bdeps_root = "/" + if self.target_root != "/": + if "--root-deps" in self.myopts: + bdeps_root = myroot + if "--rdeps-only" in self.myopts: + bdeps_root = "/" + edepend["DEPEND"] = "" + deps = ( - ("/", edepend["DEPEND"], + (bdeps_root, edepend["DEPEND"], self._priority(buildtime=(not bdeps_optional), optional=bdeps_optional)), (myroot, edepend["RDEPEND"], self._priority(runtime=True)), diff --git a/pym/_emerge/help.py b/pym/_emerge/help.py index 2c5f04bbf..828f4356b 100644 --- a/pym/_emerge/help.py +++ b/pym/_emerge/help.py @@ -404,12 +404,30 @@ def help(myaction,myopts,havecolor=1): print " Effects vary, but the general outcome is a reduced or condensed" print " output from portage's displays." print + print " "+green("--rdeps-only") + desc = "Discard all build-time dependencies. This option is commonly used together " + \ + "with ROOT and it should not be enabled under normal circumstances. For " + \ + "currently supported EAPI values, the dependencies specified in the " + \ + "DEPEND variable are discarded. However, behavior may change for new " + \ + "EAPIs when related extensions are added in the future." + for line in wrap(desc, desc_width): + print desc_indent + line + print print " "+green("--reinstall ") + turquoise("changed-use") print " Tells emerge to include installed packages where USE flags have" print " changed since installation. Unlike --newuse, this option does" print " not trigger reinstallation when flags that the user has not" print " enabled are added or removed." print + print " "+green("--root-deps") + desc = "Install build-time dependencies to ROOT instead of /. This option " + \ + "should not be enabled under normal circumstances. For currently supported " + \ + "EAPI values, the dependencies specified in the DEPEND variable " + \ + "are used. However, behavior may change for new " + \ + "EAPIs when related extensions are added in the future." + for line in wrap(desc, desc_width): + print desc_indent + line + print print " "+green("--skipfirst") desc = "This option is only valid when " + \ "used with --resume. It removes the " + \ -- 2.26.2