Possible JACK ABI changes between 0.118 and 1.9.5

Adrian Knoth adi at drcomp.erfurt.thur.de
Thu Apr 8 11:06:18 UTC 2010


On Tue, Apr 06, 2010 at 07:29:51AM +0200, Reinhard Tartler wrote:

> >>>> Can someone fluent in C/C++ please look at this?  Perhaps you, Adrian,
> >>>> since you seem most knowledgeable in JACK around here?
> I think I qualify.

I'm not sure if I do. ;) Never used the debian symbol files...

> Another source of problem is that presence of machine optimization. In
> your buildlog I see symbols that indicate sse2 enabled functions. Has
> anyone made sure that jackd2 really works on non-sse2 enabled machines?

I haven't checked, yet, but I have a Debian 486 machine around, so I
could try it. ;) Or I disassemble the library and check for SSE
instructions.

As long as nobody is calling -msse2 with the appropriate arch/cpu
definition, no SSE2 enabled code would be compiled.

(JFTR: SSE2 is available on all amd64 platforms)


> Adrian, is there a jackd ABI definition? 

No.

> What symbols are supposed to be exposed by libjack? I suppose only
> globals and functions defined in these files are part of this:
>
> /usr/include/jack
> /usr/include/jack/intclient.h
> /usr/include/jack/jack.h
> /usr/include/jack/ringbuffer.h
> /usr/include/jack/statistics.h
> /usr/include/jack/thread.h
> /usr/include/jack/timestamps.h
> /usr/include/jack/transport.h
> /usr/include/jack/types.h
> /usr/include/jack/midiport.h

Exactly. That's the list each client application relies on.

> But is there perhaps a more canonical list? 

There is doxygen output available:

   http://jackaudio.org/files/docs/html/index.html

Don't know if this qualifies as "more canonical", but this file also
refers to the above header files as "the full API"

> Moreover, I see some functions marked as JACK_DEPRECATED in jack.h.
> Are they still used by applications and does jack2 still provide them?

The deprecated functions are still provided and even used by
jackd{1,2}'s example clients. ;)

This surely needs fixing, but that's upstream's responsibility. I'll
file a ticket and provide some patches.


Is there more I could do?

-- 
mail: adi at thur.de  	http://adi.thur.de	PGP/GPG: key via keyserver



More information about the pkg-multimedia-maintainers mailing list