On Wed, Jan 12, 2011 at 6:05 AM, Johey Shmit <[email protected]> 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 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 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. 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 > 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. > > 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) ~Scott -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

