Mailinglist Archive: opensuse-packaging (88 mails)

< Previous Next >
Re: [opensuse-packaging] How to use gcc49 at OBS
On Tue, Dec 16, 2014 at 10:30:43AM +0100, Richard Biener wrote:
On Mon, 15 Dec 2014, Dmitriy Perlow wrote:
Christian Boltz <opensuse@xxxxxxxxx> Mon, 15 Dec 2014 23:10:19 +0300:
#!BuildIgnore: libgcc_s1

I seem to remember that
BuildRequires: -libgcc_s1
is a newer (and recommended) version of that, but can't find a note
about it in the wiki. Try it if #!BuildIgnore doesn't work ;-)

Uh, "BuildRequires: -libgcc_s1" is *not* recommended. It works because
of a side effect in the spec file parser. Please use #!BuildIgnore.

The unfortunate reason for all this is that the OBS code doesn't
allow same package names from multiple sources (or rather its
behavior is random instead of deterministic). Thus we end up
with multiple names for libgcc_s1.

It's deterministic nowadays, the package containers are ordered
lexicographically and the first one wins. No randomness involved.

And of course another reason is that libgcc_s1 is in the
'Preinstall' section of the project config which doesn't seem
to participate in dependency computation. So if you add
BuildRequires: gcc49 then even the fact that libgcc_s1-gcc49
does satisfy a 'libgcc_s1' dependency doesn't help, because
Preinstall is interpreted as a list of packages rather than
an additional source of dependencies.

Not sure if any of the above can be improved to make it easier
to support a BuildRequires of a non-system gcc. Michael?

I've used project-config hackery to get around this usually
(but I've only had the need to switch compilers project-wide,
not per package).

Yes, I think it's currently not possible to mess with the preinstalls
on a per-packages basis. So you can't get rid of libgcc_s1 without
changing the project config.


Michael Schroeder mls@xxxxxxx
SUSE LINUX GmbH, GF Jeff Hawn, HRB 16746 AG Nuernberg
To unsubscribe, e-mail: opensuse-packaging+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-packaging+owner@xxxxxxxxxxxx

< Previous Next >
Follow Ups