[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] Jack Driver for Fluidsynth Windows Build

From: Graham Goode
Subject: Re: [fluid-dev] Jack Driver for Fluidsynth Windows Build
Date: Mon, 18 Apr 2011 10:48:39 +0200

Hi Stéphane,

The 'issue' is that the GPL requires that you are able to distribute
the sourcecode with the binary, and the Stienberg ASIO SDK requires
that you don't distribute the sourcecode. So you (if you're the only
author of the JackRouter code) can state a license exception (like the
LinuxSampler license, which is GPL with a commercial exception). You
can state GPL with ASIO exception. PortAudio uses the MIT license so
their binary is completely fine.

We've been discussing this on the jOrgan forum as well, as jOrgan is
GPL, and the decision by Sven is that he will only include the
WDMKS\WASAPI drivers and that I, as a 3rd Party, can provide the
PortAudio dll with ASIO.

Kind regards,

On 4/18/11, Stéphane Letz <address@hidden> wrote:
> Le 18 avr. 2011 à 08:47, David Henningsson a écrit :
>> Hi Graham,
>> I don't want to push the problem back and forward, but in this case I
>> think it's reasonable to say that:
>> 1) We need to be told by the Jack devs about recommended way to link to
>> the jack headers.
>> Does that means dynamic linking?
> I guess you mean "weak linking" right? (that is the fact that fluidsynth can
> start even if libjack is not found...)
>> On windows only or on all platforms? Will that still work with e g Jack 1?
>> Anyway, if we conclude dynamic linking is the way forward, it is
>> reasonable to think that there should be a version of JackWeakAPI.cpp that
>> is in C and not C++ (just like the rest of FS).
>> I don't exactly know how difficult it would be to bring C++ code into FS
>> on all platforms, but it would probably be more difficult than rewriting
>> JackWeakAPI.cpp in pure C.
> Well I think the code in JackWeakAPI.cpp is completely C.... so the file can
> probably be safely used in C. I'll check again.
> Concerning weak linking itself: the thing is that on jack now use (or tries
> to use...) __attribute__((__weak__)) kind of stuff from GCC, see:
> http://trac.jackaudio.org/browser/jack2/trunk/jackmp/common/jack/weakjack.h
> but the problem is that  I could not make this work on Windows which uses
> __declspec(dllexport) stuff to export symbols from the DLL. So on Windows
> the "compile JackWeakAPI.cpp" is the way to go. On OSX or Linux the more
> standard way (describe in weakjack.h) can be used.
>> 2) If Jack has an ASIO backend, that's great news! However, looking at
>> http://trac.jackaudio.org/browser/jack2/trunk/jackmp/windows/JackRouter/JackRouter.h
>> it seems to be declared under GPLv2+. I don't see how the end result could
>> be legally distributed in binary form, when the ASIO headers cannot be
>> freely distributed.
>> // David
> OK, but the ASIO headers  are only included to compile JackRouter. What
> would be the appropriate licence to be able to distribute binaries of
> JackRouter?
> Stéphane

reply via email to

[Prev in Thread] Current Thread [Next in Thread]