Legal uses of lex & yacc

Victor Kan kan at dg-rtp.dg.com
Thu Feb 22 05:16:21 AEST 1990


In article <34421 at ucbvax.BERKELEY.EDU> jwl at ernie.Berkeley.EDU.UUCP (James Wilbur Lewis) writes:
>In article <271 at xyzzy.UUCP> kan at tom.dg.com () writes:
>-In article <90049.104719MCCABE at MTUS5.BITNET> MCCABE at MTUS5.BITNET (Jim McCabe) writes:
>->Is it legal to
>->use a yacc-generated compiler (and a lex-generated lexical analyzer)
>->for part of a public-domain software package?  
>-
>-But if you intend to distribute only C code, i.e. after you've run
>-your work through the "Official" Lex and Yacc, you can be prosecuted
>-for copyright infringement!  That's because Lex and Yacc include
>-copyrighted data files into their analyzers and parsers 
>-(/usr/lib/lex/n[cr]form and /usr/lib/yaccpar, respectively).
>
>I just looked; none of these files contain copyright notices. 

Hmmm.  I just looked at another machine (i386 running 386/ix) and its
version of those files have no copyright notices in them.

When I first posted, I only looked on my workstation (m88k running DG/UX).
It's files do have copyright notices in them.

Since someone has responded to this query saying that AT&T has changed
the license for Lex and Yacc output, I assume that it would be OK
to distribute the output.  (I can't be sure, so don't rely on what I say :-)

>It'd be silly to copyright those files, because that would
>render these tools useless for commercial software development!
>You couldn't even distribute the binaries because they're derivative
>works (right?)  

No, it wouldn't render Lex and Yacc useless for commerical software
development.  Users with commercial Unix licenses are allowed to 
distribute their products via their licensing agreement.  That's what
licenses are for.  Users of those binaries will most likely be running
them on machines with a Unix licenses as well (unless they're running
Mach in BSD-emulation mode). 

I remember when it came time for Columbia Univ. to renew some of it's
SunOS licenses last year.  I assume that if a machine's Unix license 
expires, it becomes illegal for that machine to run anything 
compiled with any tools, libraries, header files, etc., which
do fall under the license agreement.

Presumably, people who generate software for machines using shared or
dynalink libraries are somewhat luckier than those generating pure 
executables because they don't have to include copyrighted 
libraries in their binaries.

This one I am sure of:  header files in /usr/include on SysV
contain AT&T proprietary source code copyright notices that prohibit
distribution of those header files.  A company can distribute software
compiled with those header files because their license with AT&T allows
them to do so.

>(The Bison skeleton is another story -- the reason it's copyrighted is not 
>to *prevent* copying, but to *encourage* people to share their (and FSF's!)
>code.)

True, but it prohibits you from releasing the generated C code into
the public domain, as the original poster implied.  

COPYLEFT != PD !!!!!

But let's not start the Nth Copyleft debate.

BTW, I love GNU stuff and use it all the time.  I'm not sure I like/dislike
the Copyleft, but I know I like the software.

Isn't there a copyright notice for the Trustees of UC in the /usr/include
header files on BSD Unix?

>-- Jim Lewis
>   U.C. Berkeley

| Victor Kan               | I speak only for myself.               |  ***
| Data General Corporation | Edito cum Emacs, ergo sum.             | ****
| 62 T.W. Alexander Drive  | Columbia Lions Win, 9 October 1988 for | **** %%%%
| RTP, NC  27709           | a record of 1-44.  Way to go, Lions!   |  *** %%%



More information about the Comp.lang.c mailing list