Mailinglist Archive: opensuse-buildservice (209 mails)

< Previous Next >
Re: [opensuse-buildservice] Re: multiple distro-dependent debian.tar.gz files
  • From: Stephan Hermann <sh@xxxxxxxxxxxxx>
  • Date: Sat, 16 Jun 2007 03:22:57 +0200
  • Message-id: <200706160323.06833.sh@xxxxxxxxxxxxx>
Hi Amilcar,

Am Samstag, 16. Juni 2007 02:51 schrieb Amilcar do Carmo Lucas:
> On Saturday 16 June 2007 01:09:31 Stephan Hermann wrote:
> > Hi Michael,
> >
> > Am Freitag, den 15.06.2007, 20:29 +0200 schrieb Michael Schroeder:
> > > On Fri, Jun 15, 2007 at 05:11:32PM +0200, Amilcar do Carmo Lucas wrote:
> > > > well, I still think this is a bug, debtransform should ignore all
> > > > debian-*.tar.* files:
> > >
> > > What's the point of having those tar files then?
> >
> > There is no point, more then one debian dir is useless. But I think I
> > know why Amilcar put them there. Backporting applications to different
> > debian/ubuntu releases.
>
> Exactly, that was the point, diferent ubuntu versions need
> diferent "debian/control" files.
>

Well, the good thing about debian, it's canonical ;)
You don't need two or more debian dirs for different releases.
The "stableness" of debian is set, just because you can "reuse" many things 
from old versions and even new versions can be compiled on old releases.
You just have to use the techniques, which are already there.
That's why the debian maintainers are telling you always this: "Please, if you 
want to package for debian, please read the Debian new maintainer guide".

TBH, it's important that you know what you are doing. 

> > But this is done in using correct values in
> > debian/control for build and/or install dependencies.
> > Example: wine in ubuntu feisty and new dev release gutsy.
> > It will use two different versions of libstdc++, to make it easier for
> > the ubuntu backporting guys, you use the following notation:
> >
> > libstdc++4.2-dev | libstdc++4.1-dev | libstdc++-dev
> >
> > in the Build-Dependency section. The build environment of debian/ubuntu
> > (e.g. the sbuild or pbuilder) is reading those dependencies correctly.
> > It reads from left to right:
> >
> > if libstdc++4.2-dev is availbale, use it first
> > if libstdc++4.2-dev is not there, check for libstdc++4.1 and use it when
> > it's available
> > if the first two are not available use the last version.
>
> I did not know that !!! thanks for the tip!!!

You're welcome. But don't expect too much from it.
This notation and the interpretation of it can be different from the build 
system you are using.
e.g. on an workstation at home, you are using on debian/ubuntu normally the 
pbuilder package to have a cool and easy build environment. I think, you can 
compare it with the build .rpm from your favorite distro. It gives you a 
chroot with the distro you want to build for, and it installs all build deps 
the package, you are building, is needing. But, pbuilder was reading the 
build deps in the "or" notation from left to right, whereas sbuild, mostly 
used on the debian and ubuntu build server, for automatic building, is ( or 
was, in the past there was a change) reading this notation from right to 
left.

So, this is the pitfall. The tools are there, but sometimes are not always 
speaking the right language.

Depending on how the opensuse buildservice is reading the debian/control file, 
you can have luck and it works flawlessly, but if not, well, we have to find 
a solution.

Regards,

\sh

-- 
Stephan Hermann
eMail: sh@xxxxxxxxxxxxx         Blog: http://linux.blogweb.de/
JID: sh@xxxxxxxxxxxxxxxx        
OSS-Developer and Admin
< Previous Next >
Follow Ups