Article View: comp.arch
Article #23310Re: GPL and NDAs
From: TTK Ciar
Date: Sun, 16 Jan 2000 00:00
Date: Sun, 16 Jan 2000 00:00
84 lines
5283 bytes
5283 bytes
In article <3880A12D.233E2212@wpi.edu>, David Freeman <free779@wpi.edu> wrote: >There are, if I remember correctly, two versions of GCC, internal and >GPL. The internal version is sold to commercial companies for money, >and Cygnus makes money. The GPL version is the one we use. I've never >worked on GCC, but it may be possible that you do have to agree to allow >Cygnus to use your changes and modifications. Not quite .. there are N + 1 versions of gcc at Cygnus, one which is donated to the public, and N customer-specific versions, each of them slight (or occasionally not-so-slight) modifications of some gcc release. All of them are GPL'd. That bears repeating: All GNU code that Cygnus sends to its customers are GPL'd. It is not legally possible to remove the GPL from any modification of GPL'd code. When a Cygnus engineer modifies the code, it usually goes into "devo" (when appropriate) and also into one or more customized versions of the code. When it comes time to make a gcc release, the "devo" code is frozen except for bugfixes until it's stable, and then a copy of it gets made into a release. (All done with CVS, so it's not really "copied", but conceptually this is what's happening.) Periodically the releases are "sanitized" of all customer-only code and "merged" with the gcc public code. Most customer code eventually gets folded into the public version, but it can take years before the customer is willing to let that happen. Sometimes, too, the customer is willing to donate the code to the public immediately. There is also some customer code which the gcc engineers will never *want* to put into the public code, simply because it's not appropriate -- perhaps it breaks compatability with all CPU's other than the one the customer uses, for instance. But on the most part Cygnus tries to get the customer to agree to keep their code pretty closely sync'd up with straight "devo" code, so that a new, better version of the customer code can be made just by applying some patches to the new release. It makes engineers' improvements to the code (both, the free contributions and the paid contributions) more available to everyone (again, both the open source community and the customers). Any delay between the development of code under contract and the public release of that code is made much easier to bear when you realize that if not for the agreement to delay contributing it to the public, it would not have been written in the first place. The open source community does not really lose anything by it; it's just a delayed gain. >Piercarlo Grandi wrote: [..] >> However Sony almost certainly distribute the Cygnus GCC kit with an NDA >> that forbids revealing to anyone any detail of the PS2 CPU, as Sony are >> very very keen on NDAs, and thus the recipients of the GCC kit will not >> be able to further redistribute it; the Cygnus announcements states >> flatly that the GCC kit is only available to people that have signed the >> Sony NDA: [..] >> If this is the case, wouldn't this be a straight, clearcut violation of >> the GPL by Sony _and_ Cygnus? No. The GPL requires that whenever the binary is made available, so must the source to that binary. By limiting distribution of the binary to only the customer company, Cygnus is under no obligation to distribute the source code to anyone other than the customer company. Similarly, the company (Sony in this case) is making the choice to only give the binaries (and hence the source, as required by GPL) to people who have signed NDA's. The GPL does not oblige or prohibit these recipients to distribute the GPL'd product, it only obliges them to make the source code available to whoever they do decide to give access to the binaries. Hypothetical situation: Joe has signed an NDA and has a copy of gcc which that NDA prohibits him from distributing to anyone who has not signed that NDA, and Mark has not signed any NDA. If Joe does not give Mark the gcc binaries or source, then neither the GPL nor the NDA are being violated. If Joe gives Mark the gcc binaries but not the source, then both the GPL and the NDA are being violated. If Joe gives Mark the gcc binaries and source, then only the NDA is being violated. If Mark then redistributes those binaries and source, then he is violating neither the NDA (which he has not signed, and is therefore not limited by) or the GPL. Disclaimer: I am not a lawyer. My understanding of the GPL might be flawed. Believe what I say at your own risk. -- TTK
Technical Details
Message-ID:
<85s7ef$83o$1@sparky.wolfe.net>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<y4902dyklq.fsf@mailhost.neuroinformatik.ruhr-uni-bochum.de> <3871419C.7D23AE72@gmx.de> <yf3k8lcrw5j.fsf@sabi.Clara.co.UK> <3880A12D.233E2212@wpi.edu>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1025b4,92d97b78a13510de X-Google-Attributes: gid1025b4,public X-Google-Thread: 102b75,6e7c0786c7ba904e X-Google-Attributes: gid102b75,public From: ttk@for_mail_remove_this_and_fruit.larva.apple.shinma.org (TTK Ciar) Subject: Re: GPL and NDAs Date: 2000/01/16 Message-ID: <85s7ef$83o$1@sparky.wolfe.net> X-Deja-AN: 573295355 References: <y4902dyklq.fsf@mailhost.neuroinformatik.ruhr-uni-bochum.de> <3871419C.7D23AE72@gmx.de> <yf3k8lcrw5j.fsf@sabi.Clara.co.UK> <3880A12D.233E2212@wpi.edu> Organization: Subtle, but there Newsgroups: comp.arch,gnu.misc.discuss