[Stk] ABI stability, library versioning, and debian downstream

Felipe Sateler fsateler at gmail.com
Fri Jun 7 08:03:18 PDT 2013


Hi all,

I'm one of the maintainers of the Stk package in debian. As you may
know, in distributions shared libraries are preferred over static
libraries, because they reduce size and memory usage. If the ABI is
well maintained, it also allows for bug fixes in the library to be
shipped independently of related applications.

However, stk does not really follow the usual standards for the shared
library, which (among other things) makes us have to patch it [1]. It
would be great if STK would better allow for shared library usage,
currently it seems the best practice is to copy the files into every
project.

I also would like to eliminate the patches we carry, or failing that
reduce them as much as possible.

So, what we would like as downstream of STK is as follows:

1. The stk library should have a sane SONAME. If ABI stability is not
going to be provided (eg, the latest release is not ABI compatible
with the latest), it is possible to just use the release version as
SOVERSION (ie, libstk.so.4.4.4 would be the SONAME).

2. An install target in the makefile. These two items are in patch
01-makefile, could use some cleanup.

3. Enable usage of system RtAudio and RtMidi, possibly with a
configure switch? This is patch 03, but it is incomplete, and
evidently not fit for you as upstream. A better solution would be to
move the Rt* files into a subdirectory, and conditionally include that
folder in the build, depending on a build flag.

4. Patch 02 in the list is a bugfix, using --disable-realtime doesn't
really disable all realtime-using stuff.

5. Build the shared lib by default (patch 05)

6. It looks like endian.h has moved in recent libc, this is patch 06.


I can refine the patches if you want in order to get them upstreamed.

Thanks!



[1] http://patch-tracker.debian.org/package/stk/4.4.4-2

--

Saludos,
Felipe Sateler


--

Saludos,
Felipe Sateler



More information about the Stk mailing list