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

Re: tomboy-ng package with non standard license.

Hunspell to Pascal Bindings

Given that I only need five functions from this library, in reality, all
I would do is read through the .h file and write the necessary code
directly.  I need (ie prefer) it to be a Class, so the output from h2pas
would require a measure of rewriting anyway.

(h2pas delivers the equivalent of C code, I want the equivalent of C++
code, Object Pascal)

I have just had a quick look at the hunspell.h file, its a 30 minute job
of copy and paste, changing the C syntax to Pascal and rearranging into
a class. I would put just the bindings into a hunspell.inc Pascal
Include file to keep the "hunspell.h inspired" content away from my own
code that actually accesses it.  Will be five short lines, maybe a few
more if I can understand the other functions (that I am not using)

I consider this all very artificial, if anyone is to ask me to prove I
was not guided by the original hunspell.pas file, I cannot ! I have read
and am quite familiar with the original 2013 hunspell.pas file, I will
clearly be guided by what I know is in there, its not, in any way, a
Clean Room write. In fact, in the past, I have looked at how its done in
the original hunspell.pas file to see how to do something else, similar
but unrelated.

But it will end up with the hunspell license (unchanged). The only
hunspell code I will look at is the hunspell.h file, I won't be making
any changes to it but need to point to it on Hunspell's github page. And
add the somewhat wordy license statement to my debian/copyright file.
Both will appear on my tomboy-ng github page.

It may be appropriate to make the binding inc file (and some of my
spelling code) available in a stand alone repo to avoid other FreePascal
users going down the path I have.

This will all happen when time permits.


On 12/11/20 11:06 am, Paul Wise wrote:
> On Thu, 2020-11-12 at 09:25 +1100, David Bannon wrote:
>> Are there any further thoughts on this topic ? 
> It sounds like FreePascal wiki user Graham created parts of the
> spelling.pas file, is presumably the copyright holder (unless their
> employer owns it), released it without specifying a license, which
> means it was "all rights reserved" and then various other people
> modified and re-released it, in violation of copyright law (since they
> presumably did not have a license to do so) and eventually it ended up
> in the tomboy-ng project, also in violation of copyright law.
> There is the additional wrinkle that hunspell is licensed under the MPL
> and GPL licenses, presumably the header Graham started with was under
> the same licenses and what Graham released was clearly a derivative
> work of the hunspell headers, with the additional work copyright by
> Graham, so the result would have to comply with one of those licenses,
> but as far as I can tell, Graham stripped the licenses off and also did
> not include the "source code", in violation of both of these licenses.
> I think the solution here would be for you to strip out the code you
> copied from Graham and other's work and then repeat the h2pas process,
> bearing in mind the requirements of both the GPL and the MPL, the
> important ones here are to preserve the license, preserve copyright
> holder information and to preserve the "source code".
> What the source code is for this work depends on how you would modify
> the hunspell Pascal bindings. If (for example when updating to a new
> hunspell API) you modify the bindings by updating the C headers and
> then re-running h2pas, then you need to preserve the C headers in your
> source code alongside spelling.pas but if you would only ever modify
> the bindings by editing spelling.pas directly, then you can discard the
> C headers but you still need to use the same licenses in the hunspell
> bindings. In the latter case it would be a good idea to keep the
> bindings in a separate file so it can have a separate license header.

Attachment: signature.asc
Description: OpenPGP digital signature

Reply to: