[comp.sys.atari.st] Re^2: GNU programs, copyleft

apratt@atari.UUCP (Allan Pratt) (07/14/89)

I take back what I said about GCC -- I guess I misunderstood it.  My
excuse is that I only had the COPYING file to go by, and not the
interpretations and clarifications of it.  ("RMS has defined derivative
works as those containing FSF source code" is an example of something I
couldn't know from the license agreement.)

I expect I'll have some trouble figuring out what parts of GCC I can
use in software for sale -- the library for the ST is a hodgepodge of
PD stuff (derived from dlibs), GCC-distributed stuff (under copyleft),
and the PML (portable math library) which is free but kinda slow, being
written in C.

I'm glad I posted what I did, because it started this discussion and
has started to set me straight about what you can sell and what you
can't.

However, I'm still looking for definitive statements, not examples and
guidelines.  What are the rules?  I'm not talking about distributing
the compiler; I'm talking about distributing code compiled with the
compiler. Pretend I didn't post anything earlier, just answer the
question: under what circumstances can I use GCC to create a program
without having to make anything but the executable available, under
copyleft?

============================================
Opinions expressed above do not necessarily	-- Allan Pratt, Atari Corp.
reflect those of Atari Corp. or anyone else.	  ...ames!atari!apratt

coy@ssc-vax.UUCP (Stephen B Coy) (07/14/89)

In article <1603@atari.UUCP>, apratt@atari.UUCP (Allan Pratt) writes:
> Pretend I didn't post anything earlier, just answer the
> question: under what circumstances can I use GCC to create a program
> without having to make anything but the executable available, under
> copyleft?

Ok, your code compiled with GCC is yours to do with as you will.
If you link in GNU libraries then the executable is covered by the
copyleft.  The underlying idea here is pretty simple.  GCC is a
translator from C source to object.  When you put your code in, what
comes out is still your code but in a different form.  The
libraries, however, are GNU code and therefore anything containing
them fall under copyleft.  The same idea applies to Bison.  Bison is
a translator so if you put your code in, what come out is still your
code.  BUT beware, the parser skeleton which is included by default
is GNU code.  If you want to use Bison for commercial developement
you must supply your own parser skeleton.

> Opinions expressed above do not necessarily	-- Allan Pratt, Atari Corp.
> reflect those of Atari Corp. or anyone else.	  ...ames!atari!apratt

I hope this helped.

Stephen Coy
uw-beaver!ssc-vax!coy

dsmythe@cup.portal.com (dave l smythe) (07/15/89)

> Allan Pratt says:
>However, I'm still looking for definitive statements, not examples and
>guidelines.  What are the rules?  I'm not talking about distributing
>the compiler; I'm talking about distributing code compiled with the
>compiler. Pretend I didn't post anything earlier, just answer the
>question: under what circumstances can I use GCC to create a program
>without having to make anything but the executable available, under

You can distribute anything that you wrote that was compiled by the compiler.
As far as what you link together with that, you can distribute the root module
and any library code that isn't under copyleft and not provide source code. 
Merely compiling code with GCC does not in-and-of-itself put it under copyleft.

There has been something of a religious war going on in gnu.gcc that was started
by a guy from Apple posting that he had diffs for a port of GCC to the Mac that
he had done.  In the midst of the argument, many of these issues were rehashed/
clarified by RMS, so I'd check back-issues of gnu.gcc (the past 6 weeks or so)
for an answer "straight from the horse's mouth" as it were.

Dave Smythe
dsmythe@cup.portal.com

ltf@attctc.DALLAS.TX.US (Lance Franklin) (07/17/89)

In article <2797@ssc-vax.UUCP> coy@ssc-vax.UUCP (Stephen B Coy) writes:
>Ok, your code compiled with GCC is yours to do with as you will.
>If you link in GNU libraries then the executable is covered by the
>copyleft.  The underlying idea here is pretty simple.  GCC is a
>translator from C source to object.  When you put your code in, what
>comes out is still your code but in a different form.  The
>libraries, however, are GNU code and therefore anything containing
>them fall under copyleft.

Hold on now....does that mean that, if I use their libraries, I am obligated
to supply the source code of MY part of the program to anybody that asks for
it, or am I only responsible for supplying the source code for the libraries
(which, I assume, would include supplying the source for the compiler as
well, since these things usually have to be supplied as a unit).  If it's the
former, you can pretty much kiss off any use of GCC for commercial applications,
since almost nobody wants to supply their source code to a the general
public in the commercial marketplace, since that general public almost always
includes your competitors, or possible competitors.

But didn't somebody say that the libraries were released under a different
sort of copyright(left)?

Lance


-- 
+-------------------------+ +------------------------------------------+
| Lance T Franklin        | | "And all who heard should see them there,
| ltf@attctc.DALLAS.TX.US | |  And all should cry, Beware!  Beware!
+-------------------------+ +  His flashing eyes, his floating hair!"

coy@ssc-vax.UUCP (Stephen B Coy) (07/18/89)

In article <8675@attctc.DALLAS.TX.US>, ltf@attctc.DALLAS.TX.US (Lance Franklin) writes:
> In article <2797@ssc-vax.UUCP> coy@ssc-vax.UUCP (Stephen B Coy) writes:
> >The libraries, however, are GNU code and therefore anything containing
> >them fall under copyleft.
> 
> Hold on now....does that mean that, if I use their libraries, I am obligated
> to supply the source code of MY part of the program to anybody that asks for
> it,
Yes, if you distribute an executable created from GNU source, in
whole or in part, then it falls under the provisions of the
copyleft.  One of the copyleft provisions is that ALL source code
for the executable must be made available for free (except for a
copying fee).

> former, you can pretty much kiss off any use of GCC for commercial applications,
> since almost nobody wants to supply their source code to a the general
> public in the commercial marketplace, since that general public almost always
> includes your competitors, or possible competitors.
I think that's the whole point :-)  You're not supposed to restrict
access to source code to anyone.  This is at the very heart of the
Free Software Foundation's goals.

If you still want to use GCC for traditional commercial purposes you
need to write your own library routines.

> Lance
> +-------------------------+ +------------------------------------------+
> | Lance T Franklin        | | "And all who heard should see them there,
> | ltf@attctc.DALLAS.TX.US | |  And all should cry, Beware!  Beware!
> +-------------------------+ +  His flashing eyes, his floating hair!"

Stephen Coy
uw-beaver!ssc-vax!coy

	All you need in this life is ignorance and confidence,
		     and then success is sure.