* [gentoo-commits] proj/portage:master commit in: cnf/, lib/portage/, man/, lib/_emerge/
@ 2020-02-09 0:01 Zac Medico
0 siblings, 0 replies; only message in thread
From: Zac Medico @ 2020-02-09 0:01 UTC (permalink / raw
To: gentoo-commits
commit: 9d28f5168c11fa689a1f3061fc9a8c8220ff8374
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 8 23:27:40 2020 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Sat Feb 8 23:38:11 2020 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=9d28f516
Support FEATURES=qa-unresolved-soname-deps (bug 708448)
Support FEATURES=qa-unresolved-soname-deps so that it's possible to
disable the QA warning that was introduced for bug 704320. This is
useful for systems that may have incomplete PROVIDES metadata due
to alternative package managers or experimentation with a new
architecture.
Bug: https://bugs.gentoo.org/708448
Bug: https://bugs.gentoo.org/704320
Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>
cnf/make.globals | 3 ++-
lib/_emerge/EbuildPhase.py | 13 ++++++++-----
lib/portage/const.py | 1 +
man/make.conf.5 | 4 ++++
4 files changed, 15 insertions(+), 6 deletions(-)
diff --git a/cnf/make.globals b/cnf/make.globals
index 50511e812..139e1ce97 100644
--- a/cnf/make.globals
+++ b/cnf/make.globals
@@ -53,7 +53,8 @@ FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs
config-protect-if-modified distlocks ebuild-locks
fixlafiles ipc-sandbox merge-sync multilib-strict
network-sandbox news parallel-fetch pid-sandbox
- preserve-libs protect-owned sandbox sfperms strict
+ preserve-libs protect-owned qa-unresolved-soname-deps
+ sandbox sfperms strict
unknown-features-warn unmerge-logs unmerge-orphans userfetch
userpriv usersandbox usersync"
diff --git a/lib/_emerge/EbuildPhase.py b/lib/_emerge/EbuildPhase.py
index 828e6e126..234a273a0 100644
--- a/lib/_emerge/EbuildPhase.py
+++ b/lib/_emerge/EbuildPhase.py
@@ -453,11 +453,14 @@ class _PostPhaseCommands(CompositeTask):
if msg:
self.scheduler.output(msg, log_path=self.settings.get("PORTAGE_LOG_FILE"))
- # This operates on REQUIRES metadata generated by the above function call.
- future = self._soname_deps_qa()
- # If an unexpected exception occurs, then this will raise it.
- future.add_done_callback(lambda future: future.result())
- self._start_task(AsyncTaskFuture(future=future), self._default_final_exit)
+ if 'qa-unresolved-soname-deps' in self.settings.features:
+ # This operates on REQUIRES metadata generated by the above function call.
+ future = self._soname_deps_qa()
+ # If an unexpected exception occurs, then this will raise it.
+ future.add_done_callback(lambda future: future.result())
+ self._start_task(AsyncTaskFuture(future=future), self._default_final_exit)
+ else:
+ self._default_final_exit(task)
else:
self._default_final_exit(task)
diff --git a/lib/portage/const.py b/lib/portage/const.py
index e95039fd5..f6be9258f 100644
--- a/lib/portage/const.py
+++ b/lib/portage/const.py
@@ -180,6 +180,7 @@ SUPPORTED_FEATURES = frozenset([
"preserve-libs",
"protect-owned",
"python-trace",
+ "qa-unresolved-soname-deps",
"sandbox",
"selinux",
"sesandbox",
diff --git a/man/make.conf.5 b/man/make.conf.5
index 494d5f003..f82fed65a 100644
--- a/man/make.conf.5
+++ b/man/make.conf.5
@@ -607,6 +607,10 @@ If \fIcollision\-protect\fR is enabled then it takes precedence over
Output a verbose trace of python execution to stderr when a command's
\-\-debug option is enabled.
.TP
+.B qa\-unresolved\-soname\-deps
+Trigger a QA warning when a package installs files with unresolved soname
+dependencies.
+.TP
.B sandbox
Enable sandbox\-ing when running \fBemerge\fR(1) and \fBebuild\fR(1).
.TP
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2020-02-09 0:01 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-02-09 0:01 [gentoo-commits] proj/portage:master commit in: cnf/, lib/portage/, man/, lib/_emerge/ Zac Medico
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox