
Bulat Ziganshin
Don wrote:
Lionel wrote:
From my understanding, the gmp is GPL, GHC statically links it on windows.
GMP is *LGPL*.
Supporting this is trivial with a dynamically linked / DLL libgmp.
the whole problem is that it links in statically, that reduces license to GPL
Jonathan Cast suggests earlier that there is some wiggle room allowed in 4/(d), even for statically linked programs: d) Do one of the following: 0) Convey the Minimal Corresponding Source under the terms of this License, and the Corresponding Application Code in a form suitable for, and under terms that permit, the user to recombine or relink the Application with a modified version of the Linked Version to produce a modified Combined Work, in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source. 1) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (a) uses at run time a copy of the Library already present on the user's computer system, and (b) will operate properly with a modified version of the Library that is interface-compatible with the Linked Version. At first glance, (0) would seem to apply to a statically linked application; and it appears damning. However: The "Minimal Corresponding Source" for a Combined Work means the Corresponding Source for the Combined Work, excluding any source code for portions of the Combined Work that, considered in isolation, are based on the Application, and not on the Linked Version. The "Corresponding Application Code" for a Combined Work means the object code and/or source code for the Application, including any data and utility programs needed for reproducing the Combined Work from the Application, but excluding the System Libraries of the Combined Work. The latter definition admits object code and this seems to be in line with what Cast is saying. The former definition is for the actual source code that must be included -- it is somewhat vague. If an application relies heavily on multi-precision arithmetic, even through adapter classes, is everything in it based on the "Linked Version"? -- _jsn