Copyright (C) 1993 Aladdin Enterprises. All rights reserved. Permission to copy and distribute this document unmodified for any purpose is hereby granted without fee, provided that the above copyright notice and this permission notice appear in all copies. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This document provides additional clarification on the issue of when Ghostscript can be distributed with a commercial product. It is included in the Ghostscript fileset under the name commprod.doc. For an overview of Ghostscript and a list of the documentation files, see the README file in the Ghostscript fileset. The Use of "Free" Ghostscript With Commercial Products ------------------------------------------------------ A number of companies distribute Ghostscript, which is a copyrighted work, with their commercial products, without entering into any prior explicit agreement with Aladdin Enterprises, which is the holder of the copyright in Ghostscript. Ghostscript is distributed freely with a license, called the GNU General Public License (also known as the "GNU License", the "GPL", or the "copyleft"), which permits Ghostscript to be distributed with commercial products under certain circumstances. The purpose of this document is to explain those circumstances in detail. Note that we consider this entire document a clarification of the GPL: we believe that anyone distributing Ghostscript with the GPL with a commercial product must follow the criteria presented here, whether or not they have received this document. For those unfamiliar with the GPL, we now summarize its key provisions. This is not a complete statement of the GPL; the full GPL is included under the name COPYING in the fileset that comprises Ghostscript, and can also be obtained from the Free Software Foundation (FSF), 675 Mass Ave., Cambridge, MA 02139 (U.S.A.). In case of doubt or conflict, the contents of the COPYING file or the document obtained from the FSF, not this summary, are authoritative. 1. Anyone may copy and distribute Ghostscript (both source and object code), but they must distribute the source code as well as the object code (or, if they distribute only the object code, they must include an offer in writing to provide the source code at no more than reproduction cost), keep all copyright and other notices, and include the GPL with the copies. (Note that this allows anyone receiving such a copy to distribute it freely as well.) 2. Anyone may modify Ghostscript, but the provisions of #1 apply to modified or derived works as well. 3. Ghostscript may be "aggregated" with another program; in this case, #1 and #2 do not apply to the other program, but only to Ghostscript. Provision #1 makes it much harder to have a commercial business based only on selling copies of Ghostscript (as distributed with the GPL) or products that contain Ghostscript, since any customer is free to make as many copies as they want for any purpose. (Businesses based on added value, such as added documentation or services, subscription to updates, or just ease of access to the software, may still be feasible.) Provision #2 effectively prevents the development of proprietary commercial products that incorporate Ghostscript as a part, since these are "derived works" in the legal sense. It is provision #3 that allow companies like Autodesk to distribute Ghostscript with their commercial products. It should be noted that these companies are still required to obey #1 and #2 with respect to Ghostscript itself; in particular, if they modified or augmented Ghostscript in any way, they must supply (or offer to supply) to customers the source code for their modifications or additions, and in any case must supply the GPL as part of Ghostscript. Questions have arisen at times as to whether Ghostscript is only "aggregated" with other parts of a commercial product, or whether the product has become a "derived work." In the past, Aladdin Enterprises has been relatively lenient about allowing companies to package Ghostscript with their commercial products, as long as Ghostscript was in the form of a separate executable that might be called through a mechanism like `exec'. However, we have learned that a number of companies have been distributing Ghostscript with their products in a way that does not make it absolutely clear and obvious to users that Ghostscript is in fact a separate program, governed by a different license and authored by someone other than the distributor. For that reason, we now wish to state the criteria that we use for determining whether Ghostscript is being "aggregated" with another program. We consider Ghostscript to be "aggregated" with another piece of software, which we will refer to as "the application", only if all of the following conditions are met: - The code and documentation for Ghostscript are physically separated from the code and documentation for the application. For electronic form, it is both necessary and sufficient to put the Ghostscript code and documentation in their own directory tree(s). - Ghostscript, as delivered with the application, is usable independently of the application. More precisely, if a user deletes from the computer system all files delivered with the application except those in the Ghostscript directories, the user will still be able to use Ghostscript as described in Ghostscript's documentation. Among other things, this requires that Ghostscript not call any routines in the application, and not require any data or other files supplied as part of the application (unless, of course, those routines or files are made part of the modified Ghostscript and brought under the GPL as well). - The application calls Ghostscript in a way that allows an ordinary user to substitute another program for Ghostscript. (Typically this requires use of a shell script or batch file, or a system call like `exec'.) More precisely, if the user deletes from the computer system all the files in the Ghostscript directories, and replaces the Ghostscript executable with another program with the same name and conforming to the same documentation, the application will continue to work with it. One implication of this is that the Ghostscript documentation must specify all properties of Ghostscript on which the application relies; for example, if Ghostscript has been modified by the addition of command line switches or language elements such as new operators, the documentation must describe any such additions that the application uses. - The conditions of the GPL are met with respect to Ghostscript, including the requirement for propagation of the GPL and the requirement for delivering (or an offer to deliver) source code. Regarding this last point, the GPL clearly intends that if the distributor only offers to provide the Ghostscript source code (as opposed to actually distributing the source code with every copy of the application), then they must deliver the source code in a timely way to anyone requesting it. For example, if the distributor offers a refund if the product is returned within a certain amount of time, the distributor must be prepared to deliver the source code well within that period if the customer orders it very soon after receiving the product. Here are some examples of situations which do NOT qualify as "aggregation". - Ghostscript documentation is included as a chapter of the application's documentation. - Ghostscript is modified to require files that are supplied with the application and not brought under the GPL. The GPL makes it clear that if someone receives Ghostscript only in its GPL-licensed form, they only have a right to distribute it if they comply with the GPL. Aladdin Enterprises takes this requirement very seriously, and will, if necessary, take legal action to ensure that anyone distributing Ghostscript does so only under conditions allowed by the GPL (or other license obtained from Aladdin, if relevant). For example, computer bulletin boards (BBSs) often distribute only the object code of Ghostscript, because the source code is quite large. Aladdin has already notified the operators of several BBSs that they are not allowed to do this: they must either distribute the full fileset, or nothing. Aladdin has discovered that one large company using provision #3 has not included a written offer to supply Ghostscript source code; the company has been notified and is in the process of complying, including notifying all existing customers who have received the application with which Ghostscript was distributed. This document is included with all versions of Ghostscript starting with version 2.6.1, but since it simply clarifies some provisions of the GPL, and since all freely distributed versions of Ghostscript have included the GPL, we believe its provisions apply to all versions of Ghostscript. If you distribute or intend to distribute Ghostscript commercially with an application, then if you abide by the requirements of the GPL (as clarified here), you do not need to do anything else; but if you have any uncertainty about whether your product meets these requirements, Aladdin Enterprises will be glad to inspect a complete copy of the product before you distribute it, and let you know whether we see any problems. If, on the other hand, you want to distribute software that incorporates Ghostscript and you do *not* want to meet these conditions, you should contact Aladdin Enterprises to discuss the possibility of commercial licensing. Commercial licenses involve a (negotiated) payment, and include support and other benefits. These are the only ways you legally can distribute Ghostscript or anything containing Ghostscript: either by following the requirements of the GPL as clarified in this document, or by getting a commercial license from Aladdin Enterprises. If you have any questions about any of the information in this document, please contact: Aladdin Enterprises P.O. box 60264 Palo Alto, CA 94306 U.S.A. voice phone 415-322-0103 fax 415-322-1734 ...{uunet,decwrl}!aladdin!ghost ghost@aladdin.com