From b5307b2907c64609e57a9d9642977b632c8df59d Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 30 Apr 2009 06:47:03 +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. (trunk r13245) svn path=/main/branches/2.1.6/; revision=13424 --- 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 a2420b8ad..bccb0ed35 100644 --- a/man/emerge.1 +++ b/man/emerge.1 @@ -411,12 +411,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 7cf0f7cbd..2fb51be78 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", @@ -5259,8 +5260,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 200f30708..89b3bf043 100644 --- a/pym/_emerge/help.py +++ b/pym/_emerge/help.py @@ -401,12 +401,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