Hi,

Le 4 janv. 12 à 21:28, Joe Schaefer a écrit :

----- Original Message -----

From: Simon Phipps <[email protected]>
To: [email protected]
Sent: Wednesday, January 4, 2012 3:22 PM
Subject: Re: Question related derivative code based on our Apache licensed code

On 4 Jan 2012, at 19:33, Andrew Rist wrote:

In a similar way, (as I understand it) LO will be able to use ALv2 licensed
code - but not relicense it.

Code can be made available under multiple licenses simultaneously, as long as none of the licenses in force have terms that are mutually incompatible. This is especially easy when one of the licenses is a permissive license with minimal compliance requirements. Thus another project can typically include code under a license like AL or BSD and make it available under another license such as
LGPLv3.

It depends on how that is actually done: just going in and changing licensing on files you have no copyright interest in is actually a violation of copyright law. However if you make substantive modifications to those files, that derivative work may be licensed under any terms that are compatible with the original Apache
license.


Let's try with a concrete example :

OOo4Kids is based on OOo3.2.1 source code, under LGPLv3 license. Apache OpenOffice is based on DEV300_m106 (really different)


Imagine now I'm integrating the great SVG native feature Armin wrote. After two weeks of work (currently fixing sfx2 chaos), it appears that the most simple (sigh) is to partialy and incrementaly rebase the concerned code + the dependencies with Apache OpenOffice tree.

Concretely, to achieve that, I modified a lot of code, say around 30 to 40 modules - over ~180 - , like (cppuhelper, comphelper, basegfx, canvas, tools, svtools, toolkit, transex3, svx, sfx2, vcl, drawinglayer, framework, offapi and so on). For some modules (e.g. offapi) the interface was modified a lot, some dllapi were added etc, and the most simple for me is to copy the new files from Apache OOo, to the OOo4Kids tree, at the right location (or a no one if not existing. Next step consists in fix build issue after build issue. e.g. in comphelper, basegfx and cppuhelper, occured some other extremely important changes, causing a lot of issues in other modules. Plus svl introduction is a nightmare (zillion of #include <svl/something.hxx> to be fixed) if I do not create it and so on.

If I add that I'd like to keep the dmake system (working well, on all OSs), I even have to modify the tree, adding svgio, svl, cui, editeng, and maybe other modules (I probably forgot some, sorry)


Back to license issue : I didn't know exactly what do, but I was lazy so I directly replaced the file containing LGPLv3 headers, with the one containing AL headers.

At some other locations, I just adapted Armin changes manually (original one from Armin will never apply). Yet at some others, I perfecly know how to proceed, without look at the Apache code/files : e.g. move goodies filters in filter, create editeng, and all the mandatory makefiles and so on. Yet at other places, I did not add some useless void functions added in meantime, but empty and doing nothing serious and so on***

I forgot: I didn't commit anything yet, waiting for information (thanks to Jürgen who asked the question at the right moment ! )

My question is : am I wrong somewhere (I meant on the license side, not on the code side), and if so, what shall I do exactly to respect every license ? :-)


Thanks in advance,
Eric Bachard



*** the only mystery I'll have to solve, is to understand exactly what I'll have to modify to use new config manager though. The problem is : I'm not able to extract the diffs when the cws was integrated, maybe my fault ...

--
qɔᴉɹə
Projet OOo4Kids : http://wiki.ooo4kids.org/index.php/Main_Page
L'association EducOOo : http://www.educoo.org
Blog : http://eric.bachard.org/news





Reply via email to