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

Re: Binaries under GPL(2)



15-Dec-03 07:39 Walter Landry wrote:
> Alexander Cherepanov <cherepan@mccme.ru> wrote:
>> 8-Dec-03 20:43 Walter Landry wrote:
>> > If I give you GPL'd source, then there is only two ways in which you
>> > can make modifications, Section 2 and Section 3.  Section 3 allows a
>> > particular kind of modification (compilation), and Section 2 allows
>> > any kind of modification.
>>
>> IMHO there is no such a clear division: Section 2 is about any form
>> (or only source form) while Section 3 is about executable form.
>> Section 3 is about distribution of executable form and it doesn't
>> talk about modification at all. All permissions to modify are in
>> Section 2.

> Creating an executable is also a way of modifying code.  The code is
> translated into machine code, similar to running a document through
> babelfish.

Exactly.

>> Thus, when distributing binaries compiled from sources, the
>> compilation is under Section 2 and the distribution is under Section
>> 3. That's part of the original confusion--requirement of source form
>> in Section 2 applies only to distribution, not to modification.

> Compilation is not covered by the license, only distribution.
> Distribution of modified binaries is covered by Sections 2 and 3.
> Section 3 lets distribute binaries as long as you distribute source.
> Section 2 tells you what you have to do if you modified the source.

Pardon? You agreed above that compilation is a kind of modification.
And modification is clearly covered by Section 2.
Or you mean that Section 3 implicitly contains a permission to
compile? Or what?

>> > Distributing binaries under Section 2 probably means
>> > editting the binaries with a hex editor.  You also need to have the
>> > rights to distribute everything in the binary under the GPL.

BTW, that's also interesting. Can you distribute, under Section 3, a
binary statically linked with a library from non-free compiler?
Probably not. Section 3 clearly says that the binary must be
distributed under the terms Sections 1 and 2. And 2b says that the
whole thing must be under the GPL. If the library linked in is, for
example, non-modifiable that's impossible. Though one can argue that
this is the usual way of creating an executable and therefore Section
3 gives a permission to do just that...

>> > With
>> > non-free compilers, that may be a problem.  With gcc, that probably
>> > means more hex editing to include the FSF, HP, SGI, etc. copyrights.
>>
>> The only difference in distribution under Section 2 and under Section
>> 3 is the requirement for sources.

> True.  That would seem to imply that you have to preserve copyright
> notices etc. in all of the modified files.  Otherwise it makes no
> sense to refer to the terms of Section 1.

If it makes no sense to refer to it from Section 2 then it makes no
sense to refer to it from Section 3 at all.

In fact, Section 1 contains the following requirements:

 (a)  you conspicuously and appropriately publish on each copy an
      appropriate copyright notice and disclaimer of warranty;

 (b)  keep intact all the notices that refer to this License and to
      the absence of any warranty; and

 (c)  give any other recipients of the Program a copy of this License
      along with the Program.

You seems to talk only about (b) but (a) and (c) are quite reasonable
in any situation (with "the Program" in (c) replaced by something
else, of course).

> But the usual way of
> creating an executable is by running code through a compiler, which
> removes most of those notices.  So you could argue that Section 3
> gives you permission to do just that.

Now I get your idea. You say that one usually cannot distribute a
binary under Section 2 because he cannot comply with some technical
requirements from Section 1 but these requirements are overridden when
distributing under Section 3. That would be an interesting solution.

>> The hole in the explicit wording seems to be so clear that I start
>> doubting it is just an oversight. Maybe it's normal for sections of a
>> license to trump each other?

> The hole is there, but exploiting it is hard.  People don't normally
> modify machine code.

That's true for machine code but there are other kinds of binaries.
Consider info for example. It usually contains copyright notices and
it usually is not source. Is it ok to distribute .info without .texi?

Sasha





Reply to: