Gentoo Archives: gentoo-portage-dev

From: Zac Medico <zmedico@g.o>
To: gentoo-portage-dev@l.g.o
Cc: Zac Medico <zmedico@g.o>
Subject: [gentoo-portage-dev] [PATCH] emerge: Default enable soname dependencies (bug 687956)
Date: Mon, 29 Nov 2021 01:14:41
Message-Id: 20211129011413.10935-1-zmedico@gentoo.org
1 Default emerge --ignore-soname-deps=n, in order to enable
2 soname dependencies by default. As always, soname dependencies
3 remain inapplicable in the absence of the --usepkgonly option
4 (or --getbinpkgonly). Therefore, this change only affects
5 commands that specify --usepkgonly or --getbinpkgonly.
6
7 Bug: https://bugs.gentoo.org/687956
8 Signed-off-by: Zac Medico <zmedico@g.o>
9 ---
10 lib/_emerge/create_depgraph_params.py | 2 +-
11 man/emerge.1 | 7 ++++---
12 2 files changed, 5 insertions(+), 4 deletions(-)
13
14 diff --git a/lib/_emerge/create_depgraph_params.py b/lib/_emerge/create_depgraph_params.py
15 index 11c3e3736..95c4c2035 100644
16 --- a/lib/_emerge/create_depgraph_params.py
17 +++ b/lib/_emerge/create_depgraph_params.py
18 @@ -104,7 +104,7 @@ def create_depgraph_params(myopts, myaction):
19 if ignore_built_slot_operator_deps is not None:
20 myparams["ignore_built_slot_operator_deps"] = ignore_built_slot_operator_deps
21
22 - myparams["ignore_soname_deps"] = myopts.get("--ignore-soname-deps", "y")
23 + myparams["ignore_soname_deps"] = myopts.get("--ignore-soname-deps", "n")
24
25 dynamic_deps = myopts.get("--dynamic-deps", "y") != "n" and "--nodeps" not in myopts
26 if dynamic_deps:
27 diff --git a/man/emerge.1 b/man/emerge.1
28 index 8f6d12925..ff565b46f 100644
29 --- a/man/emerge.1
30 +++ b/man/emerge.1
31 @@ -639,9 +639,10 @@ supported beginning with \fBEAPI 5\fR.
32 .TP
33 .BR "\-\-ignore\-soname\-deps < y | n >"
34 Ignore the soname dependencies of binary and installed packages. This
35 -option is enabled by default, since soname dependencies are relatively
36 -new, and the required metadata is not guaranteed to exist for binary and
37 -installed packages built with older versions of portage. Also, soname
38 +option may be useful when working with binary or installed packages
39 +that lack appropriate soname dependency metadata because they were built
40 +with a package manager that does not support soname dependencies (perhaps
41 +an older version of portage). Soname
42 dependencies will be automatically ignored for dependency calculations
43 that can pull unbuilt ebuilds into the dependency graph, since unbuilt
44 ebuilds do not have any soname dependency metadata, making it impossible
45 --
46 2.32.0