Mailinglist Archive: opensuse-buildservice (131 mails)

< Previous Next >
[opensuse-buildservice] Re: Building against SLE_10 repo
  • From: Peter Nixon <listuser@xxxxxxxxxxxxxx>
  • Date: Tue, 26 Dec 2006 02:36:18 +0200
  • Message-id: <200612260236.28594.listuser@xxxxxxxxxxxxxx>
On Tue 19 Dec 2006 20:06, Joe Shaw wrote:
> Hi,
>
> I'm trying to build updated Beagle packages for SLED 10, and the build
> against the SLE_10 platform is failing for me:
>
> buildinfo is borken... it says:
> expansion error: nothing provides epiphany, nothing provides
> epiphany-devel, nothing provides evolution-sharp, nothing
> provides gmime-devel, nothing provides gsf-sharp, nothing
> provides wv-devel
>
> Of these:
>
> * I don't think we shipped epiphany on SLED10, although it was
> available in autobuild and we shipped the plugin anyway.
>
> * We definitely shipped evolution-sharp and gsf-sharp on SLED10,
> as they're runtime deps of Beagle.
>
> * gmime-devel and wv-devel probably weren't shipped on the
> media, but they may have been in the SDK. Even if they're not,
> they are needed to build Beagle.
>
> So my question is: given that I can build this with autobuild, should
> the expectation that I can build this (or any other software, really) on
> SLE10? Or should I use the SL 10.1 target instead?

Building against the SL10.1 target is ONE way to solve the problem and one
that I have been recommended more than one my SUSE people on the IRC
channel.

Consider the following target I have for the Server:Telephony project:

<repository name="SLE_10">
<path repository="SuSE_Linux_10.1" project="ruby"/>
<path repository="SLE_10" project="network:aaa"/>
<path repository="SLE_10" project="SUSE:SLE-10:SDK:Extra"/>
<path repository="Apache_SLE_10" project="Apache:Modules"/>
<path repository="SLE_10" project="Java:addon"/>
<arch>i586</arch>
<arch>x86_64</arch>
</repository>

Now I just spent the last hour checking this list of targets and trust me
they are ALL needed. You will notice that the one man out is the "ruby"
project which doesn't have a SLE_10 target. Thats fine you say.. Just use
the 10.1 target... HOWEVER this introduces a really subtle (actually not
THAT subtle) problem!

Several of my telephony packages use the speex compression codec, and it is
happily listed as a BuildDependency. speex.rpm (and speex-devel) does not
however ship with SLE_10, but my packages happily build without me being
aware of that. (I just wanted ruby, but I got speex and god knows what else
also!!) I only noticed this today* when I tried to install OpenPBX on a
SLES10 server and rug complained that it couldn't satisfy the dependency and
aborted install. (What the hell?? The whole reason we use "build" and the
build service is to make sure we get _clean_ packages..)

I am now in the position where I have to go through and test each and every
package I have built on SLES10 (Which I have already previously tested fine
on 10.1 and now 10.2 which I run on my notebook) just to see if they will
actually work or not for my users (who I have been telling "just point to
the repository and everything will work for you")

So, I highly recommend that you do NOT point to a 10.1 target in absence of a
SLE_10 target (or package) as while you may get a package _built_ your users
will not be able to actually _install_ it. (Without resorting to manual
shenanigans)

* The reason that I was installing a PBX on Christmas Day can wait for
another email.

Merry Christmas Everyone

--

Peter Nixon
http://www.peternixon.net/
PGP Key: http://www.peternixon.net/public.asc
< Previous Next >
References