Hi jack-devel list!
[This part is technical and can be skipped, if you like]
To ease packaging jack2, its build system has received a major update [1]. The initial
intent was to simply remove automagic dependencies (on celt, opus, libsamplerate,
libsndfile, readline), which are bad [2] for source based distributions, such as Gentoo,
but after a discussion [3] the decision was taken to reimplement all options that have
third-party dependencies using a special option class, so that the build system by default
builds against foo if available, refrains from doing so if --foo=no is given and if
--foo=yes the dependency is hard-required. To preserve backwards compatibility (and save
time writing "=yes") --foo is the same as --foo=yes.
Apart from this change pkg-config is now used whenever possible instead of only header
checks. (It is bad to just check for headers without checking for the accompanying
library.) This eases packaging (and cross-compiling) somewhat. Also the check for readline
has been improved (it now checks for header existence too instead of just library
existence), in effect making it easier to compile jack2 on binary distros (where the
library existence does not imply header existence). (Correct me if I'm wrong; I have
not compiled jack2 on a binary distro.)
[End of skip part]
So apart from the above points, what are the goodies for actual users? Well, now users do
not have to explicitly state --alsa, --firewire or such to get the correct backend built
since it will be automatically detected if --alsa, --firewire, etc. is not given.
Now the important part. Like with all big software changes, this might introduce some bugs
that I have not found during testing. (I did test the option I could with both --foo=yes
and --foo=no!) Some option have not been tested at all since I lack the prerequisites,
these options are --iio, --portaudio and --winmme, but since all option use the same class
the logic should be the same, so they should work, but you can never be too sure.
In conclusion, I want you to be on the lookout for bugs or weird stuff (as always!) when
building jack2. Report the bugs and I will do my very best to squash them!
Regards,
Karl Lindén (lilrc)
[1]
https://github.com/jackaudio/jack2/pull/113
[2]
https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Automagic_dependenci…
[3]
https://github.com/jackaudio/jack2/pull/110