<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2017-06-26 15:26 GMT+02:00 James Cowgill <span dir="ltr"><<a href="mailto:jcowgill@debian.org" target="_blank">jcowgill@debian.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<span class=""><br>
On 26/06/17 12:20, Jaromír Mikeš wrote:<br>
> 2017-06-26 11:26 GMT+02:00 James Cowgill <<a href="mailto:jcowgill@debian.org">jcowgill@debian.org</a><br>
</span>> <mailto:<a href="mailto:jcowgill@debian.org">jcowgill@debian.org</a>>>:<br>
<span class="">>> override_dh_auto_install:<br>
>>       $(MAKE) install \<br>
>>               DESTDIR=$(CURDIR)/debian/tmp \<br>
>>               PREFIX=/usr<br>
>><br>
>> And "dh_auto_install" here.<br>
><br>
> Done!<br>
<br>
</span>Sorry, when I said that I meant do the same thing as you have done for<br>
dh_auto_build with dh_auto_install here. Like this:<br>
<br>
override_dh_auto_install:<br>
        dh_auto_install -- DESTDIR=$(CURDIR)/debian/tmp<br></blockquote><div><br></div><div>Ok ... Fixed!<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<span class=""><br>
> I have discussed this with upstream before ...<br>
> here is answer ... (  same might go for robtk? )<br>
> ------------------<br>
><br>
>> Is there some way use rather system-wide fluidsynth lib?<br>
><br>
> No (same with Ardour btw). It's a stripped down and patched dedicated<br>
> version and statically linked with hidden symbols.<br>
><br>
> Pro Audio Plugins should be self-contained and not rely on any system<br>
> libs except for libc (and libX11/xcb which needs to match the X11 server<br>
> ABI).<br>
><br>
> There are too many things that can go wrong otherwise (calf is the prime<br>
> example). e.g. update fftw or mix some random pango/cairo/pixman or even<br>
> just freetype version and you'll throw thread safety out of the window.<br>
> Any lib that uses a lock to maintain some global cache will void<br>
> realtime safety as well.  default fluidsynth falls in that category as<br>
> well:  .sf2 files are cached globally and a lock is used.<br>
><br>
> Remember, plugins are loaded in the same memory space as the host, which<br>
> may also use those libs. They're not standalone process separated apps.<br>
> Ideally plugins are self-contained and don't share any libs with the host.<br>
><br>
> If 2 unrelated plugins were to use the same shared libfludsynth various<br>
> edge cases can happen since the plugins don't know about each other.<br>
><br>
> Also related is exception handling in this case (setjmp/longjmp). At<br>
> least for rolling distros (e.g. debian/testing) where a library can be<br>
> compiled with a different compiler version than the plugin and host.<br>
> --------------<br>
<br>
</span>Unfortunately this isn't how Debian works. In my opinion it is<br>
unacceptable for avldrums.lv2 to be compiled against its own bundled<br>
version of freetype.<br>
<br>
WRT fluidsynth's real-time safety. Upstream may have a point here but<br>
from reading the fluidsynth source, it seems all the locks are not part<br>
of the global state, but part of the fluid_synth_t type. This should<br>
ensure that other plugins sharing fluidsynth cannot interfere with one<br>
another.<br>
<br>
I don't think the .sf2 cache is a very good point, since surely loading<br>
.sf2 files is not realtime anyway because it requires disk access? The<br>
fact that it uses a lock is insignificant.<br>
<br>
There is no use of setjmp / longjump in either avldrums or fluidsynth so<br>
that point is irrelevant (and I don't understand how compiler version<br>
would interfere with this anyway).<br>
<span class=""><br>
>     Building in git:<br>
>     > Version: debian/0.2.2-1-9 -> debian/0-9 debian/2-9 debian/2-9<br>
>     debian/1-9<br>
>     > expr: non-integer argument<br>
</span>>     > <a href="http://git2lv2.mk:37" rel="noreferrer" target="_blank">git2lv2.mk:37</a> <<a href="http://git2lv2.mk:37" rel="noreferrer" target="_blank">http://git2lv2.mk:37</a>>: *** "Cannot extract required<br>
<span class="">>     LV2 minor-version parameter".  Stop.<br>
><br>
>     While this only happens when using git, it is very frustrating. I think<br>
>     you should override the "avldrums_VERSION" variable to fix it.<br>
><br>
> Can you elaborate here? I am not sure how to fix this :(<br>
<br>
</span>It was a guess, but it looks like the Makefile uses git to load a<br>
default into "avldrums_VERSION". Inside the Debian packaging it's going<br>
to read the Debian tags which are then misparsed. If you override that<br>
variable with the upstream version, then it should work.<br></blockquote><div><br></div><div>Fixed!<br><br></div><div>mira <br></div></div><br></div></div>