Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: Michael Orlitzky <mjo@g.o>
Cc: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Deps on slotted executables (implicit @system tangent)
Date: Fri, 14 Nov 2014 14:58:38
Message-Id: 20141114155815.57cf3bcc@pomiot.lan
In Reply to: [gentoo-dev] Deps on slotted executables (implicit @system tangent) by Michael Orlitzky
1 Dnia 2014-11-14, o godz. 09:08:17
2 Michael Orlitzky <mjo@g.o> napisał(a):
3
4 > On 11/13/2014 10:17 AM, Ian Stakenvicius wrote:
5 >
6 > >> Isn't it possible to disable C++ in GCC with USE="-cxx"?
7 > >
8 > > It is.. but unfortunately there's no way in DEPEND to ensure it's
9 > > satisfied, as you can have a gcc installed with that flag enabled but
10 > > have a second one (that's actually selected in gcc-config) with it
11 > > disabled. A pkg_pretend check or a pkg_setup check (if you don't want
12 > > it to just fail in src_configure) is probably the best way to enforce
13 > > that one at this time. Unless there are other ways I'm not aware of??
14 >
15 > Is this a case (as was recently suggested) where we're doing something
16 > stupid rather than asking for help from the PMS? This problem shows up
17 > in a few places -- off the top of my head:
18 >
19 > * GCC (see sys-apps/systemd-217.ebuild)
20 > * PHP (see comment in app-text/XML-Schema-learner-1.0.0.ebuild)
21 > * Python (all over the place)
22 > * Ruby (all over the place)
23 >
24 > Since all of the above are slotted, we can DEPEND on them, but we can't
25 > actually be sure that we're using the right slot at build time. The
26 > package manager knows that the right version is there, but it's not at
27 > the moment prepared to find and use it.
28 >
29 > Question 1: is it desirable to e.g. switch compilers, compile systemd,
30 > and then switch back? At first I thought the PM should respect my
31 > selected compiler, but after thinking about it for a few minutes, I've
32 > changed my mind. The compiler deps are just like anything else: if I ask
33 > portage to install systemd, it should do what it takes to install
34 > systemd assuming I approve the build plan.
35
36 Relying on stuff that can be switched outside the PM scope is always
37 a bad idea. Think of eselect-opengl -- for a long time, people had to
38 switch the OpenGL implementation to xorg to build xorg server, and then
39 back to be able to use anything using OpenGL. Then we fixed xorg-server
40 to use the underlying headers directly.
41
42 I think we should use the same solution for the gcc issues. We already
43 expect packages to respect CC & CXX -- why not set them then? I'm
44 keeping my CC & CXX at a specific gcc version for a long time now.
45
46 --
47 Best regards,
48 Michał Górny

Attachments

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

Replies