Re: [opensuse-buildservice] Expansion error, which I can'texplain.:-(
Stefan Dirsch <sndirsch@suse.de> 05/06/08 6:21 PM >>> On Tue, May 06, 2008 at 05:04:31PM +0200, Dominique Leuenberger wrote:
On 06.05.2008 at 18:03, Stefan Dirsch <sndirsch@suse.de> wrote: On Tue, May 06, 2008 at 04:47:14PM +0200, Dominique Leuenberger wrote:
On 06.05.2008 at 17:47, Stefan Dirsch <sndirsch@suse.de> wrote: Hi
I'm getting expansion errors, I cannot explain. Once I understand them I would like to fix the issue.
Project: CrossToochain:avr Package: avr-libc/avr-gdb Repository: openSUSE_Factory/i586
"Nothing provides cross-avr-gcc"
But you can see that cross-avr-gcc has been built successfully in the same project!?! See also
https://build.opensuse.org/project/monitor?project=CrossToolchain%3Aavr
Actually, the package that was built is called cross-avr-gcc43.
Indeed. But why? The resulted package should be called cross-avr-gcc.
Actually from the spec file inside openSUSE:Factory (cross-avr-gcc43.spec): Name: cross-avr-gcc43
in openSUSE:Factory, this makes part of the package gcc43
So how can I force the package to be named cross-avr-gcc instead of cross-avr-gcc43? I think this would fix the issue finally.
Stefan, I see several solutions that would work, you might want to pick the one that fits most for you: a) you patch the original spec file comming using the link (tends to break on whatever update might be put in Factory... I normally try to avoid them). The patch can have multiple ways to be achieved; you either change the name tag back to the old one or you add a Provides: cross-avr-gcc b) you change your spec files to no longer BuildRequires: cross-avr-gcc, but change them to BuildRequires: cross-avr-gcc43 (depending on how many specs, might be the cleanest solution) c) you change your project config (osc meta -e prjconf CrossToochain:avr) and you add a Substitute: cross-avr-gcc cross-avr-gcc43. This substitute is immediate valid for all projects based on top of yours (inherited). There might be other solutions as well, but that's the ones coming on my mind at this moment. Dominique --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Tue, May 06, 2008 at 06:30:39PM +0200, Dominique Leuenberger wrote:
Stefan Dirsch <sndirsch@suse.de> 05/06/08 6:21 PM >>> On Tue, May 06, 2008 at 05:04:31PM +0200, Dominique Leuenberger wrote:
On 06.05.2008 at 18:03, Stefan Dirsch <sndirsch@suse.de> wrote: On Tue, May 06, 2008 at 04:47:14PM +0200, Dominique Leuenberger wrote:
> On 06.05.2008 at 17:47, Stefan Dirsch <sndirsch@suse.de> wrote: Hi
I'm getting expansion errors, I cannot explain. Once I understand them I would like to fix the issue.
Project: CrossToochain:avr Package: avr-libc/avr-gdb Repository: openSUSE_Factory/i586
"Nothing provides cross-avr-gcc"
But you can see that cross-avr-gcc has been built successfully in the same project!?! See also
https://build.opensuse.org/project/monitor?project=CrossToolchain%3Aavr
Actually, the package that was built is called cross-avr-gcc43.
Indeed. But why? The resulted package should be called cross-avr-gcc.
Actually from the spec file inside openSUSE:Factory (cross-avr-gcc43.spec): Name: cross-avr-gcc43
in openSUSE:Factory, this makes part of the package gcc43
So how can I force the package to be named cross-avr-gcc instead of cross-avr-gcc43? I think this would fix the issue finally.
Stefan,
I see several solutions that would work, you might want to pick the one that fits most for you:
a) you patch the original spec file comming using the link (tends to break on whatever update might be put in Factory... I normally try to avoid them). The patch can have multiple ways to be achieved; you either change the name tag back to the old one
I already began to work on this one.
or you add a Provides: cross-avr-gcc
b) you change your spec files to no longer BuildRequires: cross-avr-gcc, but change them to BuildRequires: cross-avr-gcc43 (depending on how many specs, might be the cleanest solution)
There I need to patch more packages than in a).
c) you change your project config (osc meta -e prjconf CrossToochain:avr) and you add a Substitute: cross-avr-gcc cross-avr-gcc43. This substitute is immediate valid for all projects based on top of yours (inherited).
This sounds cool, but I'll try a) first.
There might be other solutions as well, but that's the ones coming on my mind at this moment.
Thanks a lot! Stefan Public Key available ------------------------------------------------------ Stefan Dirsch (Res. & Dev.) SUSE LINUX Products GmbH Tel: 0911-740 53 0 Maxfeldstraße 5 FAX: 0911-740 53 479 D-90409 Nürnberg http://www.suse.de Germany ----------------------------------------------------------------- SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) ----------------------------------------------------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
a) you patch the original spec file comming using the link (tends to break on whatever update might be put in Factory... I normally try to avoid them). The patch can have multiple ways to be achieved; you either change the name tag back to the old one
I already began to work on this one.
This one didn't work very well. :-(
or you add a Provides: cross-avr-gcc
b) you change your spec files to no longer BuildRequires: cross-avr-gcc, but change them to BuildRequires: cross-avr-gcc43 (depending on how many specs, might be the cleanest solution)
There I need to patch more packages than in a).
c) you change your project config (osc meta -e prjconf CrossToochain:avr) and you add a Substitute: cross-avr-gcc cross-avr-gcc43. This substitute is immediate valid for all projects based on top of yours (inherited).
This sounds cool, but I'll try a) first.
Works, but now avr-libc/avr-gdb cannot decide any longer to chose between libmpfr1 and mpfr (cross-avr-gcc requires libmpfr.so.1). I added a seconde Substitute line Substitute: mpfr libmpfr1 to the project, but this didn't help. How can I force avr-libc/avr-gdb to use libmpfr1? Do I need to patch avr-libc/avr-gdb specfile and add a 'Requires: libmpfr1'? Seems so. :-( Best regards, Stefan Public Key available ------------------------------------------------------ Stefan Dirsch (Res. & Dev.) SUSE LINUX Products GmbH Tel: 0911-740 53 0 Maxfeldstraße 5 FAX: 0911-740 53 479 D-90409 Nürnberg http://www.suse.de Germany ----------------------------------------------------------------- SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) ----------------------------------------------------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Stefan Dirsch napsal(a):
Works, but now avr-libc/avr-gdb cannot decide any longer to chose between libmpfr1 and mpfr (cross-avr-gcc requires libmpfr.so.1). I added a seconde Substitute line
Substitute: mpfr libmpfr1
to the project, but this didn't help. How can I force avr-libc/avr-gdb to use libmpfr1? Do I need to patch avr-libc/avr-gdb specfile and add a 'Requires: libmpfr1'? Seems so. :-(
Prefer: libmpfr1 Substitute: overwrites manual (Build)Requires in spec files before build, whereas this is an automatic dependency on libmpfr.so.1 I guess. Michal --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
participants (3)
-
Dominique Leuenberger
-
Michal Marek
-
Stefan Dirsch