Gentoo Archives: gentoo-dev

From: Jonathan Callen <jcallen@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Re: new virtual -- virtual/go to fix go build time dependencies
Date: Thu, 02 Mar 2017 03:48:10
Message-Id: 4cb8e591-b923-e26c-b02c-af2f4f63d109@gentoo.org
In Reply to: [gentoo-dev] new virtual -- virtual/go to fix go build time dependencies by William Hubbs
1 On 03/01/2017 07:18 PM, William Hubbs wrote:
2 > All,
3 >
4 > the dependencies for dev-lang/go need to force a rebuild every time the
5 > compiler is downgraded or upgraded.
6 >
7 > To avoid abusing slot dependencies for dev-lang/go since it is not
8 > needed at runtime I need to do the following.
9 >
10 > I need to introduce virtual/go-1.7.5, virtual/go-1.8 and
11 > virtual/go-9999. The attachment shows 1.8 but it is the same for all
12 > versions.
13 >
14 > Also, the attached patch needs to be applied to golang-base.eclass.
15 >
16 > This is based on the following wiki page:
17 >
18 > Ahttps://wiki.gentoo.org/wiki/Project:Quality_Assurance/Subslots#Using_virtuals_to_expose_multiple_ABIs
19 >
20 > Any thoughts?
21 >
22 > William
23 >
24
25 Unfortunately, this would allow the user to remove all versions of
26 dev-lang/go before attempting to compile a package using go, as
27 virtual/go has no RDEPENDs, and only RDEPENDs of DEPENDs are required to
28 be present (not DEPENDs of DEPENDs).
29
30 That is, the following sequence of actions would be perfectly legal,
31 according to the dependencies:
32
33 Merge dev-lang/go
34 Merge virtual/go
35 Unmerge dev-lang/go
36 Merge {package using golang-base.eclass}
37
38 While my initial thought was to just add dev-lang/go to the DEPEND in
39 the eclass (in addition to virtual/go), that doesn't quite work as the
40 two packages are allowed to get out of sync because virtual/go doesn't
41 RDEPEND on dev-lang/go at all (so you could install virtual/go for your
42 current version of dev-lang/go, then upgrade dev-lang/go without
43 upgrading virtual/go).
44
45 --
46 Jonathan Callen

Attachments

File name MIME type
signature.asc application/pgp-signature