[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

AW: RFS: fmodapi4.26



Hi Scott,


----- Ursprüngliche Mail ----

> Von: Scott Howard <showard314@gmail.com>
> An: debian-mentors@lists.debian.org
> Gesendet: Mittwoch, den 12. Januar 2011, 19:08:10 Uhr
> Betreff: Re: RFS: fmodapi4.26
> 
> On Wed, Jan 12, 2011 at 6:05 AM, Johey Shmit <joheyshmit@yahoo.com> wrote:
> > I  took zlib as a guideline and named it after the upstream name.
> >
> >  Because version '4.26', '4.27', etc. are not binary compatible I
> > added  the '4.26' to the package name. That way different versions
> > should be  installable in parallel.
> 
> zlib is an interesting corner case: the general  rule is found:
>http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html#naminglibpkg
>g
> 
> The  policy documents how to name library  packages.
> "lib[libraryname][SONAME-version-number]"  like "libc6"   for
> /lib/libc.so.6
> 
> You're free to name the source package fmodapi, but  the binary package
> should be something like libfmodapi (because that is from  your

Ok, I'll rework the package, thanks for the clarification!

> library's filename). I know your package lacks a SONAME, but you  can
> add one like the enet package does. their binary makes a library  with
> the SONAME libenet.so.0debian1, so their binary package  is
> libenet0debian1 and their source package name is enet.

Didn't know that it was possible to add the SONAME to an existing
library! I'll have a look at it.

> In general,  you can use the following to get the package name:
> objdump -p  /path/to/libfoo-bar.so.1.2.3 | \
>   sed -n  -e's/^[[:space:]]*SONAME[[:space:]]*//p' | \
>   sed  -e's/\([0-9]\)\.so\./\1-/; s/\.so\.//'
> 
> Your package should probably be  something like:
> libfmodapi-4.26
> and your -dev package should  be
> libfmodapi-dev

Got it ;-)

> > This is my lintian output:
> >
> >  lintian --pedantic -I ../fmodapi4.26_4.26.30-2_amd64.changes
> > W:  fmodapi4.26 source: out-of-date-standards-version 3.8.4 (current is  
>3.9.1)
> > E: fmodapi4.26:  sharedobject-in-library-directory-missing-soname
> >  usr/lib/libfmodex64-4.26.so.26.30
> > E: fmodapi4.26:  sharedobject-in-library-directory-missing-soname
> >  usr/lib/libfmodexp64-4.26.so.26.30
> >
> 
> 
> 
> > I do only have a  Ubuntu 10.10 development environment at the moment,
> > so I'm stuck with  the older standards version.
> 
> You can use a VM (e.g. virtualbox-ose) to  get a deiban environment.
> You can use a higher standards version in ubuntu  10.10, just change
> debian/control to have version 3.9.1. Standards version  just indicates
> the policy you used when making your package - it doesn't do  anything
> to how the package is built.

Ok, I wasn't sure about that.

> > The  SONAME-Error is the one that I can't do anything about. It's been
> > build  without SONAME. So any software linked to it will link to
> >  libfmodex64-4.26.so
> > without any suffix. I made a comment about that in  README.Debian.
> 
> You also have to override lintian errors:
> http://lintian.debian.org/manual/ch2.html
> 
> I don't think packages are  accepted by ftp-masters that have lintian
> errors that are not overridden (and  there has to be a good reason to
> override them). I think you should give you  packages a SONAME:
> libfmodex-4.26.so.0debian1, name your package accordingly,  and thus
> remove the warning without overriding lintian. See the enet package  on
> how to do that.
> 
> If lintian gives you an error, you really have to  find a way to fix it
> - I don't think errors should be  overridden.
> 
> 
> I'm sorry that this package is difficult: libraries in  general have
> more policy requirements than applications, and this one in  particular
> is difficult since it has an unusual naming convention (no soname  and
> names the binaries after the architecture that built  them)

Not your fault ;-) Thanks for your very helpful comments! I'll be back
with fixed packages.

Thanks,

 Johey





Reply to: