[gnu.gcc] More confusion on GNU copying conditions

rms@WHEATIES.AI.MIT.EDU (Richard Stallman) (11/13/88)

    >This is a misconception.  The Gnu license is not transferred to code
    >that is produced by the compilers.
This much is accurate.
				      The libraries (when linked into
    >runtime code) are also not subject to the licensing.

This part is untrue.

Most of the GNU libraries (termcap, malloc, obstacks, libg++, etc.)
are covered by the GNU copying conditions, so any executable file
which contains them is also covered, and cannot be distributed except
on those conditions (which include making the *entire* source
available as free software).

The main exception to this is the tiny library that GCC uses
automatically.  Its functions are too tiny for copyright to apply to
them, so it has no effect on how the output can be used.

    "This really bummed me out. I really like the GNU concept, but I don't like
    my rights to software being taken away by a compiler."

The GNU concept is that software should be shared.  This person seems
to be saying that he likes the GNU concept, except in so far as it
means he has to share software.  Is this paradoxical, or what?
Perhaps he thought the GNU concept was something else.

Due to some vagueness, it is barely possible that he does want to
share the work in question and thinks Bison poses a problem for this.
If so, I believe there is really no problem, but if I am mistaken, I
would like to cooperate in solving it.

rob@baloo.eng.ohio-state.edu (Rob Carriere) (11/15/88)

In article <8811131422.AA00325@sugar-bombs.ai.mit.edu> rms@WHEATIES.AI.MIT.EDU 
(Richard Stallman) writes:
>   [quoting someone]
>   "This really bummed me out. I really like the GNU concept, but I don't like
>    my rights to software being taken away by a compiler."
>
>The GNU concept is that software should be shared.  This person seems
>to be saying that he likes the GNU concept, except in so far as it
>means he has to share software.  Is this paradoxical, or what?
>Perhaps he thought the GNU concept was something else.

One way to get bummed out is to read ``Free Software Foundation'' and
blithely assume that free means unfettered here.  In fact all it seems
to mean is "costing no money", a rather more boring aspect of the
word.  The AT&T Eunuchs license is less restrictive than the GNU one.
Hmmm....

Rob Carriere

rms@WHEATIES.AI.MIT.EDU (Richard Stallman) (11/15/88)

    One way to get bummed out is to read ``Free Software Foundation'' and
    blithely assume that free means unfettered here.

I am not a libertarian.  I believe we have obligations to society in
general, and one of these is to let people copy and share the software
that we write.

Just because something could be described as a kind of freedom doesn't
mean I am in favor of it.  For example, I am not in favor of the
"freedom" to punch people, to burn their books, or to stop them from
copying software, except when someone has done something horribly
bad to deserve it.

Since I am not a pacifist, I work actively to prevent those destructive
activities.  The GNU copying conditions are one way I do this.

Therefore, with GNU you are unfettered as long as you aren't trying to
put fetters on everyone else.  If you are trying to put fetters on the
sharing of some software, then in some cases some GNU software will be
unavailable to your project.  This functions successfully as an
incentive for computer companies to pay to develop free software.

      In fact all it seems
    to mean is "costing no money"

No, GNU is only tangentially related to the question of how much money
anything costs.

cire@DUSTBIN.CISCO.COM (cire|eric) (11/15/88)

Well actually I think the intent of Richard and the FSF is to make
sure the stuff stays free.  Like in really Free.  Unfettered in that
you can do anything you want to it including making it not free
doesn't strike me as being in the park as 'free'.

-c

|> From: accelerator.eng.ohio-state.edu!baloo.eng.ohio-state.edu!rob@tut.cis.ohio-state.edu  (Rob Carriere)
|> Date: 14 Nov 88 20:36:08 GMT
|> Organization: Ohio State Univ, College of Engineering
|> Subject: Re: More confusion on GNU copying conditions
|> To: info-gcc@prep.ai.mit.edu
|> Status: RO
|> 
|> In article <8811131422.AA00325@sugar-bombs.ai.mit.edu> rms@WHEATIES.AI.MIT.EDU 
|> (Richard Stallman) writes:
|> >   [quoting someone]
|> >   "This really bummed me out. I really like the GNU concept, but I don't like
|> >    my rights to software being taken away by a compiler."
|> >
|> >The GNU concept is that software should be shared.  This person seems
|> >to be saying that he likes the GNU concept, except in so far as it
|> >means he has to share software.  Is this paradoxical, or what?
|> >Perhaps he thought the GNU concept was something else.
|> 
|> One way to get bummed out is to read ``Free Software Foundation'' and
|> blithely assume that free means unfettered here.  In fact all it seems
|> to mean is "costing no money", a rather more boring aspect of the
|> word.  The AT&T Eunuchs license is less restrictive than the GNU one.
|> Hmmm....
|> 
|> Rob Carriere

dld@f.gp.cs.cmu.edu (David Detlefs) (11/16/88)

I've been somewhat confused by the GNU library policy, and have been
following this discussion hoping to learn the reasons behind it, but
so far have been disappointed, though we seem close.  I hope that
perhaps RMS will address the points below.

First, it seems to me that linking a .o file into a program is an
operation that is at least the rough equivalent of compiling a program
or editing a file; you are using a tool to create something new.  It
seems clear to legal minds that a copyright on a compiler gives you no
copyright interest in the object code it produces, any more than the
use of an editor gives the editor-writer an interest in the documents
produced using it.  Apparently, this is less clear in the case of a
library.  I can see that it would be less clear, but it still seems to
me that the fact that one could always circumvent this restriction by
sending a customer object files and a linker and instructions carries
some weight somehow.

So my questions are:

1) Do the gnu people really see this as a clear distinction
(editor/document is not analogous to library/executable), and if so,
have there been any legal precedents to lend weight to this view
(*not* that I intend to test it!), or

2) would the FSF try to apply the GNU copyleft to documents from
gnu-emacs or or object code produced by gcc if these were legal
possibilities?

3) or is there some third position that I've missed?

I hope no one takes offense over anything I've said; I make no value
judgements on any positions, I simply want to understand clearly what
they are.  The below, however, *is* an opinion that people may take
exception to if they wish:

I don't buy into the GNU manifesto completely; specifically, I don't
think that any mechanism will ever approach the efficiency of the free
market in determining what new and different software it will be
useful to society to have people working on.  Having found a useful
application, commercial enterprises need to get some reward
commensurate with their acheivement: they get to be the sole vendors
of this useful piece of software until someone else builds a
comparable program and competition starts bringing the price down.
Distributing source obviously creates a more attractive product for
some, and so figures in the price/value ratio.  If something is
*really* useful, someone will eventually come along and produce one
for free (out of the goodness of their heart, to make their
reputation, etc.).  At this point, commercial entities should be
driven out of the business of producing this application, and go on to
trying to find new and different useful products, which should be
their true niche in economic life.  My points are 1) that free
software falls on a continuum, and is no qualitatively different in
its economics from other software, and 2) that once a producer targets
an application (such as C compilers) his or her goal should be to get
commercial entities out of this business by producing a product they
can't compete with profitably.  This is what best serves society, I
think.  The FSF position on libraries will keep very few commercial
organizations from selling their products; it will keep them
paying $1000/machine licenses for commercial compilers, keeping smart
software people at the companies that sell compilers working on
essentially solved problems, and thus delay the advance of the state
of the software art.

Of course, I could be all wrong.
-- 
Dave Detlefs			Any correlation between my employer's opinion
Carnegie-Mellon CS		and my own is statistical rather than causal,
dld@cs.cmu.edu			except in those cases where I have helped to
				form my employer's opinion.  (Null disclaimer.)
-- 

david@ms.uky.edu (David Herron -- One of the vertebrae) (11/22/88)

In article <8811131422.AA00325@sugar-bombs.ai.mit.edu> rms@WHEATIES.AI.MIT.EDU (Richard Stallman) writes:
>
>				      The libraries (when linked into
>    >runtime code) are also not subject to the licensing.
>
>This part is untrue.
>
>Most of the GNU libraries (termcap, malloc, obstacks, libg++, etc.)
>are covered by the GNU copying conditions, so any executable file
>which contains them is also covered, and cannot be distributed except
>on those conditions (which include making the *entire* source
>available as free software).


I just don't understand this.  Yes, I understand your idea behind this,
and you restate it later in the posting I'm quoting from.

>The GNU concept is that software should be shared.  This person seems
>to be saying that he likes the GNU concept, except in so far as it
>means he has to share software.  Is this paradoxical, or what?
>Perhaps he thought the GNU concept was something else.


Now, it's all fine and dandy to have desires like this.  But I don't
think it's legal...  How can some action you guys take remove my
copyright rights?  That is, by the existing copyright laws I have the
rights to publish/not publish *my* code as I wish.  You guys have the
rights to publish/not publish *your* code as you wish.  It cannot be
legal for you guys to be able to restrict what I do with *my* code.  I
don't dispute your right to restrict me from doing what I want with
*your* code, you have every right in the world to require that I
re-distribute your code if I sell a package built with your compiler & library.

Sorry.  I love what you guys are doing, and even use some of your
products, but I just don't believe that this one point is legal
nor is it "proper".
-- 
<-- David Herron; an MMDF guy                              <david@ms.uky.edu>
<-- ska: David le casse\*'      {rutgers,uunet}!ukma!david, david@UKMA.BITNET
<--
<-- Controlled anarchy -- the essence of the net.

mellon@eris.berkeley.edu (Ted Lemon) (11/22/88)

In article <10602@s.ms.uky.edu> david@ms.uky.edu (David Herron) writes:
>How can some action you guys take remove my
>copyright rights?  That is, by the existing copyright laws I have the
>rights to publish/not publish *my* code as I wish.  You guys have the
>rights to publish/not publish *your* code as you wish.  It cannot be
>legal for you guys to be able to restrict what I do with *my* code.

You are missing something obvious here.   You're quite right that the FSF
has no legal recourse to control your distribution of your code.   However,
the FSF does have the right to control the distribution if its code.
The GNU license prohibits you from distributing GNU code linked together
with your code without making available your source code as well as the
GNU source code.

You may certainly ship your code linked with non-GNU libraries.   If you
ship your code with GNU libraries without abiding by the terms of the
GNU license, the FSF will have legal recourse to stop you.   That's
different from being able to say that since you violated the license,
your code now belongs to the FSF, which seems to be what you're implying
above.

In summary, it's not legal for the FSF to restrict what you do with
your code except that it may prevent you from doing illegal things
with its code and your code in combination, or with its code alone.

I leave moral arguments, which seem quite distinct from legal arguments,
to interested parties.   Hopefully, interested parties who will flame
by private email, rather than on the public net.

				_MelloN_

honey@mailrus.cc.umich.edu (peter honeyman) (11/23/88)

rms, are you aware of any developers using fsf libraries who choose not
to comply with the copyleft?  do you anticipate defending the copyleft
in court?  does fsf keep a lawyer on retainer?

	peter

ps:  this is not intended as a veiled commentary on the legality of the
copyleft, about which i have no opinion.

christer@emil.CSD.UU.SE (Christer Johansson) (11/25/88)

In article <17353@agate.BERKELEY.EDU> of 22 Nov 88 07:53:10 GMT,
mellon@eris (Ted Lemon) writes:
>In article <10602@s.ms.uky.edu> david@ms.uky.edu (David Herron) writes:
>> by the existing copyright laws I have the
>>rights to publish/not publish *my* code as I wish.  You guys have the
>>rights to publish/not publish *your* code as you wish.  It cannot be
>>legal for you guys to be able to restrict what I do with *my* code.

>You're quite right that the FSF
>has no legal recourse to control your distribution of your code.   However,
>the FSF does have the right to control the distribution if its code.
>The GNU license prohibits you from distributing GNU code linked together
>with your code without making available your source code as well as the
>GNU source code.

I guess FSF, having the copyright, can decide exactly under what circumstances
I may use their code. It could be if I pay them lots of $$$. It could be if I
accept to distribute their code to anyone asking it of me. It could be if I
distribute all code I'm ever going to write with source to anyone asking it of
me.

What I wonder is: would it be legal to distribute the gnu products with source,
and the unlinked .o files, compiled with gcc, of my code under the current
license agreement?

I think it would be since the Gnu Cc General Public License (my copy's
clarified 11 Feb 1988) says that "the whole of any work that you distribute or
publish, that in whole or in part contains or is a derivative of GNU CC or any
part thereof," has to be licensed on the same terms as gcc. Object files
compiled with gcc are neither derived from nor containing the compiler or the
libraries.

	--Christer Johansson

romkey@asylum.sf.ca.us (John Romkey) (11/27/88)

In article <17353@agate.BERKELEY.EDU> mellon@eris.berkeley.edu (Ted Lemon) writes:
>The GNU license prohibits you from distributing GNU code linked together
>with your code without making available your source code as well as the
>GNU source code.

It may be easier for some people to understand if it's stated in a
slightly different way.

Rather than:

"The FSF requires you to distribute source to your code if GNU code is
linked into it."

read:

"The FSF will only allow people who distribute the source to their own
code to distribute their own code with GNU code linked in."

But in the second one, the FSF code is being acted upon rather than
the distributor's code, which should be a more palatable version of
the idea. The end result is the same.
-- 
			- john romkey
romkey@asylum.uucp	romkey@xx.lcs.mit.edu	romkey@asylum.sf.ca.us
Find the cost of freedom, buried in the ground
Mother Earth will swallow you, lay your body down.

allan@didsgn.UUCP (didsgn) (11/28/88)

Just another question to add to the confusion:

If I compile my code with GNU gcc but do not link with the GNU gcc libraries,
(i.e. no GNU code will exist in the executable, only the output of the GNU
gcc compiler), then does this require me to give out free copies of my
software?

-"Legally" Confused.

jk3k+@andrew.cmu.edu (Joe Keane) (11/30/88)

> If I compile my code with GNU gcc but do not link with the GNU gcc libraries,
> (i.e. no GNU code will exist in the executable, only the output of the GNU gcc
> compiler), then does this require me to give out free copies of my software?

No.

--Joe

jk3k+@andrew.cmu.edu (Joe Keane) (11/30/88)

Wait a minute, the compiler output contains prologue and epilogue code.  What's
the difference between this and the library code?  Perhaps this should be
clarified in the copyright.

--Joe

mellon@eris.berkeley.edu (Ted Lemon) (11/30/88)

In article <490@didsgn.UUCP> allan@didsgn.UUCP (didsgn) writes:
>If I compile my code with GNU gcc but do not link with the GNU gcc libraries,
>then does this require me to give out free copies of my software?
No.   I encourage people to actually read the GNU public license before
asking silly questions like this, although I also encourage them to ask
the silly question if they're really confused.   Of course, I don't
represent the FSF, so my encouragement may not be welcome.   I'm just
piping up because these silly questions stimulate my well-developed sense
of the bizarre.

				_MelloN_

esj@manatee.cis.ufl.edu (Eric S. Johnson) (11/30/88)

If I was to compile program foo.c with gcc, then link it with the
gcc supplied libraries, BUT supply my customers with:

	My executable
	My object code
	All the gcc libraries in archive format
	Source to gcc and all libraries.(The full current gcc distribution)
	Makefiles which would re-link my object code with the gcc libraries.

Would selling this violate the Copyright {left?}?

(completly hypothetical.. I have no customers ;-)

Ej

rms@WHEATIES.AI.MIT.EDU (Richard Stallman) (12/04/88)

    If I was to compile program foo.c with gcc, then link it with the
    gcc supplied libraries, BUT supply my customers with:

	    My executable
	    My object code
	    All the gcc libraries in archive format
	    Source to gcc and all libraries.(The full current gcc distribution)
	    Makefiles which would re-link my object code with the gcc libraries.

    Would selling this violate the Copyright {left?}?

This question seems to presuppose an inaccurate view of the facts of
how our software is distributed and labeled, so it is not clear what
question was intended.

If "All the GCC libraries (the full current GCC distribution)" is
taken literally, it refers GNULIB, the sole library in the GCC
distribution.  As I have explained several times, GNULIB is a special
case because its functions are so small that I doubt copyright applies
to them.  If so, the answer is No.

It is more likely that the questioner intends to refer to all the
other GNU libraries, which are not part of the GCC distribution.  If
so, the answer is Yes.  Because that executable contains GNU code
(parts of the GNU libraries), it cannot be distributed unless all of
its source code is available as free software.  Nothing less will do.

Whether you use GCC, and whether you distribute GCC source code, have
no effect on the answer.

jlc@wucfua.wustl.edu (Roving UIUC CS Grad Student) (12/05/88)

In article <8812032112.AA00778@sugar-bombs.ai.mit.edu> rms@WHEATIES.AI.MIT.EDU (Richard Stallman) writes:
>    [Scenario of distibuting GCC-compiled object and GCC distribution and
>     requiring customer linking]
>    Would selling this violate the Copyright {left?}?
>
>This question seems to presuppose an inaccurate view of the facts of
>how our software is distributed and labeled, so it is not clear what
>question was intended.
>
>If "All the GCC libraries (the full current GCC distribution)" is
>taken literally, it refers GNULIB, the sole library in the GCC
>distribution.  As I have explained several times, GNULIB is a special
>case because its functions are so small that I doubt copyright applies
>to them.  If so, the answer is No.

So, let me state this once and for all (I hope :-) ). IF I get the full GCC
distribution (and no other GNU software) AND I compile and link my program
with it (arbitrary C program using no source from GNU software) THEN I can
sell the resulting executable? Without providing source? GCC is, then,
including NOTHING copylefted in the resulting objects?

Sorry if I seem to be belaboring the point. It's just that this isn't the
view I got from earlier debate...

>It is more likely that the questioner intends to refer to all the
>other GNU libraries, which are not part of the GCC distribution.  If
>so, the answer is Yes.  Because that executable contains GNU code
>(parts of the GNU libraries), it cannot be distributed unless all of
>its source code is available as free software.  Nothing less will do.

Which "other GNU libraries" do you mean? LIBG++? Or are there some other
ones I'm forgetting at the moment? A canonical list of what's a "protected"
GNU library (obviously GNULIB isn't) would help quite a bit to end this
discussion.

 --------------------------------------------------------------------------
| John L. Coolidge   Internet:jlc@wucfua.wustl.edu    UUCP:jlc@wucfua.uucp |
| "My other account is in Illinois"        I just read news here...        |
| With the exception of included material: All above opinions are mine.    |
| Licensing terms available. Copyright (c) 1988 John L. Coolidge. Copying  |
| allowed if and only if attributed. All other rights reserved.            |
 --------------------------------------------------------------------------