Welcome to Soft32 Linux Forums!
FAQFAQ    SearchSearch      ProfileProfile    Private MessagesPrivate Messages   Log inLog in

"rescuing" code from the GPL

 
   Soft32 Home -> Linux -> Legal RSS
Next:  binary only files in orig.tar.gz of mozilla produ..  
Author Message
Shriramana Sharma

External


Since: Apr 14, 2007
Posts: 24



(Msg. 1) Posted: Sat Nov 10, 2007 10:50 am
Post subject: "rescuing" code from the GPL
Archived from groups: linux>debian>legal (more info?)

Hello. Please inform me kindly if this Q is OT for this list.

I have a question. I will illustrate it by means of a highly simple
programming situation.

Please look at the following images (each is only 6 KB) to get a
syntax-highlighted program.

http://h1.ripway.com/jamadagni/01-noqt-nothirdvar.png
http://h1.ripway.com/jamadagni/02-qt-nothirdvar.png
http://h1.ripway.com/jamadagni/03-qt-thirdvar.png
http://h1.ripway.com/jamadagni/04-noqt-thirdvar.png

My question is whether anyone among X, Y and Z in any of the below two
situations is guilty of copyright infringement as a result of not
following license conditions?

SITUATION #1:

1. X creates 01-noqt-nothirdvar.cpp and distributes it under the BSDL only.

2. Y modifies this program to use Qt (under the GPL), creating
02-qt-nothirdvar.cpp, and distributes it under both the BSDL and GPL.

3. Z modifies this program to use a third variable for swapping,
creating 03-qt-thirdvar.cpp, and distributes it under both the BSDL and GPL.

4. X imports the change from Z, namely using a third variable only, into
his codebase, creating 04-noqt-thirdvar.cpp, and distributes it under
the BSDL only.

SITUATION #2:

1. X creates 01-noqt-nothirdvar.cpp and distributes it under the BSDL only.

2. Y modifies this program to use Qt (under the GPL) and to use a third
variable for swapping, creating 03-qt-thirdvar.cpp, and distributes it
under both the BSDL and GPL.

3. X imports one change from Y, namely using a third variable only, into
his codebase, creating 04-noqt-thirdvar.cpp, and distributes it under
the BSDL only.

Thanks.

Shriramana Sharma.


--
To UNSUBSCRIBE, email to debian-legal-REQUEST DeleteThis @lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster DeleteThis @lists.debian.org
Back to top
Login to vote
Shriramana Sharma

External


Since: Apr 14, 2007
Posts: 24



(Msg. 2) Posted: Sun Nov 11, 2007 11:00 am
Post subject: Re: "rescuing" code from the GPL [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Wesley J. Landaker wrote:
>> 2. Y modifies this program to use Qt (under the GPL), creating
>> 02-qt-nothirdvar.cpp, and distributes it under both the BSDL and GPL.
>
> Well, they could distribute the source code under the BSD, as the source
> code isn't a derivative work of Qt just by using it. But they could not
> legally distribute a compiled binary that included copyrightable parts of
> GPL-only Qt. You could distribute binaries under the GPL.

I don't agree with some points in this.

The question is not whether a work *includes* parts of Qt or not. The
very fact that it is dependent on Qt for its functioning makes it a
derivative work, and it *must* be licensed under the GPL when
distributed, whether in source form or compiled form.

Please point out the flaw in this reasoning. Thank you.

Shriramana Sharma.


--
To UNSUBSCRIBE, email to debian-legal-REQUEST DeleteThis @lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster DeleteThis @lists.debian.org
Back to top
Login to vote
Måns_Rullgård

External


Since: May 05, 2004
Posts: 84



(Msg. 3) Posted: Sun Nov 11, 2007 11:20 am
Post subject: Re: "rescuing" code from the GPL [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Shriramana Sharma <samjnaa RemoveThis @gmail.com> writes:

> Wesley J. Landaker wrote:
>>> 2. Y modifies this program to use Qt (under the GPL), creating
>>> 02-qt-nothirdvar.cpp, and distributes it under both the BSDL and GPL.
>> Well, they could distribute the source code under the BSD, as the
>> source code isn't a derivative work of Qt just by using it. But they
>> could not legally distribute a compiled binary that included
>> copyrightable parts of GPL-only Qt. You could distribute binaries
>> under the GPL.
>
> I don't agree with some points in this.
>
> The question is not whether a work *includes* parts of Qt or not. The
> very fact that it is dependent on Qt for its functioning makes it a
> derivative work, and it *must* be licensed under the GPL when
> distributed, whether in source form or compiled form.
>
> Please point out the flaw in this reasoning. Thank you.

Suppose I write from scratch a new library, Tq, that is source and
binary compatible with Qt (huge task, but that's beside the point).
Every app written to use Qt can now instead use Tq without even a
recompile. Are these apps now suddenly derivatives of Tq as well as
Qt? I think not.

--
Måns Rullgård
mans RemoveThis @mansr.com


--
To UNSUBSCRIBE, email to debian-legal-REQUEST RemoveThis @lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster RemoveThis @lists.debian.org
Back to top
Login to vote
Shriramana Sharma

External


Since: Apr 14, 2007
Posts: 24



(Msg. 4) Posted: Sun Nov 11, 2007 11:30 am
Post subject: Grokking Re: "rescuing" code from the GPL [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Shriramana Sharma wrote:
> 2. Y modifies this program to use Qt (under the GPL), creating
> 02-qt-nothirdvar.cpp, and distributes it under both the BSDL and GPL.

1)

Please explain how this is legal.

Qt is copyrighted by Trolltech. A license provides me rights that
normally only the copyright owners have. Any permission the license does
not provide me I do not have. I have permission to create a derivative
work ("my work") only so long as I distribute it under the GPL.

Trolltech has not given me permission to distribute my work under the
BSDL. The fact that I have also distributed my work under the GPL is
immaterial. I cannot do something I don't have permission for. So how
can I license my work under the BSDL at all?

2)

My intention in putting the work under the BSDL is, evidently:

"I am currently incapable of making this work Qt-independent. But if any
programmer should come that makes this work Qt-independent, then the
work may from then onwards be distributed under the BSDL."

But the question above stands. I can't license my work *as a whole*
under the BSDL. GPL-v2 section 2 para 4 says:

"If identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based on
the Program, the distribution of the whole must be on the terms of this
License,"

So should I say:

"This work as a whole is licensed under the GPL. This work or any part
of it which is or can be modified to be Qt-independent may be
distributed in such a Qt-independent form under the BSDL also".

Is such verbosity really necessary, or is it understood? If it would be
illegal to say:

"This work as a whole is licensed under both the GPL and the BSDL"

then I may have no choice but to resort to such verbosity.

Further, in its Qt-dependent state, if I distribute a compiled form of
my work, then would it still be dual-licensed in that form? Or would it
be *only* under the GPL? If yes, then does dual-licensing apply only to
source forms?

Thanks for your patience,

Shriramana Sharma.


--
To UNSUBSCRIBE, email to debian-legal-REQUEST.RemoveThis@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster.RemoveThis@lists.debian.org
Back to top
Login to vote
Jeff Licquia

External


Since: May 16, 2007
Posts: 6



(Msg. 5) Posted: Mon Nov 12, 2007 5:10 pm
Post subject: Re: Grokking Re: "rescuing" code from the GPL [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

This is not legal advice. If you need good legal advice, hire a lawyer.

Shriramana Sharma wrote:
> Shriramana Sharma wrote:
>> 2. Y modifies this program to use Qt (under the GPL), creating
>> 02-qt-nothirdvar.cpp, and distributes it under both the BSDL and GPL.
>
> 1)
>
> Please explain how this is legal.
>
> Qt is copyrighted by Trolltech. A license provides me rights that
> normally only the copyright owners have. Any permission the license does
> not provide me I do not have. I have permission to create a derivative
> work ("my work") only so long as I distribute it under the GPL.
>
> Trolltech has not given me permission to distribute my work under the
> BSDL. The fact that I have also distributed my work under the GPL is
> immaterial. I cannot do something I don't have permission for. So how
> can I license my work under the BSDL at all?

The problem is that the original "it" above is ambiguous. Is "it" the
compiled binary, or the source code?

Source code generally stands on its own. Unless you have cut and pasted
sections of Qt code into your source files, or can otherwise be
identified as theirs, your source code is entirely yours, and can be
licensed by you as you see fit. TrollTech has no say in how your source
code may or may not be licensed.

TrollTech has a claim against you only when you compile your source code
into a binary, which by necessity pulls TrollTech's creative work into
the result. When distributing that binary, people must respect both
your license and TrollTech's. That turns out to be easy, since the
BSDL's restrictions are a subset of the GPL's. But the fact that it is
easy to combine these works does not negate their initial separation or
your rights to the parts that are yours.

> So should I say:
>
> "This work as a whole is licensed under the GPL. This work or any part
> of it which is or can be modified to be Qt-independent may be
> distributed in such a Qt-independent form under the BSDL also".
>
> Is such verbosity really necessary, or is it understood? If it would be
> illegal to say:
>
> "This work as a whole is licensed under both the GPL and the BSDL"
>
> then I may have no choice but to resort to such verbosity.

For the source code, you can simply apply a normal BSDL copyright notice
to each file.

I prefer to put a separate file in my source, explaining the license
situation. If you do that, you can explain there how your code is
dependent on other things, and that your license does not grant implicit
rights to these other things. If you don't provide a separate license
explanation, then you should have a license statement in every source
file you distribute, as mentioned above.

The license notice for the binary should contain references to both your
license and the GPL, as well as licenses for other libraries you may use.

> Further, in its Qt-dependent state, if I distribute a compiled form of
> my work, then would it still be dual-licensed in that form? Or would it
> be *only* under the GPL? If yes, then does dual-licensing apply only to
> source forms?

Since it's difficult to isolate your specific code from the binary, the
license for the binary is effectively the GPL. But you should not feel
compelled to drop your license statement from the binary just for that
reason.


--
To UNSUBSCRIBE, email to debian-legal-REQUEST DeleteThis @lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster DeleteThis @lists.debian.org
Back to top
Login to vote
Display posts from previous:   
Related Topics:
lzo code - It is derived from original LZO 2.02 code found at: http://www.oberhumer.com/opensource/lzo/download/ The code has also...

In tags like , which language code to use? - -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi, In one of the translation I'm doing, I found: <abbr lang=&quo...

very small code cleanup - hey all, in mm/mlock.c , mm is defined as vma->vm_mm, why not use that one for the decrement of pages? proposed..

kobject_add unreachable code - The following code in kobject_add if (!kobj->k_name) kobj->k_name = kobj->name; if (!kobj->...

bechmarking kernel code - hi, I'm profiling some part of kernel code.Mine profiling mechanism is based on rdtsc instruction. Please tell me...

cmpxchg is not available to generic code - arm: drivers/char/drm/drm_lock.c: In function `drm_lock_take': drivers/char/drm/drm_lock.c:221: error: implicit..
       Soft32 Home -> Linux -> Legal All times are: Pacific Time (US & Canada) (change)
Page 1 of 1

 
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Categories:
 Windows
  Linux
 Mac
 PDA


[ Contact us | Terms of Service/Privacy Policy ]