71ede3cd |
1 | GPL vs LGPL, in the context of adns |
2 | ----------------------------------- |
3 | |
239d2e4d |
4 | Several people have asked me to release GNU adns under the GNU Lesser |
71ede3cd |
5 | General Public Licence (LGPL, formerly the Library GPL) instead of the |
6 | `stronger' GPL. This file is intended to answer most of these |
7 | questions. If you still have questions or comments, please mail me at |
8 | <adns-maint@chiark.greenend.org.uk>. |
9 | |
10 | Typically there are two or three kinds of situation where people make |
11 | this request: the first is where someone is developing a proprietary |
12 | program and wishes to make use of adns but doesn't wish to make their |
13 | program free software. The second case is where a free software |
239d2e4d |
14 | project is currently using an MIT-like licence or the LGPL and fear |
15 | `GPL infection'. The third case, which often overlaps with the |
16 | second, is where another free software project currently using a |
17 | GPL-incompatible licence, wishes to use adns. |
71ede3cd |
18 | |
19 | |
20 | 1. Proprietary applications of adns |
21 | ----------------------------------- |
22 | |
239d2e4d |
23 | So, let me get this straight. You're writing a proprietary |
24 | program, by which I mean that you will not be distributing source code |
25 | and not allowing users to modify and share your software; most likely |
26 | you are doing this for your own (personal or corporate) financial |
27 | gain. |
71ede3cd |
28 | |
239d2e4d |
29 | However, you want to take advantage of adns, software which I have |
30 | spent my time and effort on, and which I release as free software so |
31 | that everyone can improve, share and use it. |
71ede3cd |
32 | |
239d2e4d |
33 | Don't you think that is a little hypocritical ? I'm sorry, but I |
34 | don't want you to just take my nice convenient software, without |
35 | giving something back to the free software community or giving the |
36 | same rights to your users as I do to you. |
71ede3cd |
37 | |
239d2e4d |
38 | If you really aren't the nasty kind of person I've described here, for |
39 | example if you have a good reason other than your own selfishness for |
40 | wanting to restrict distribution of your program, then perhaps you |
41 | should contact me to discuss it. |
71ede3cd |
42 | |
43 | |
44 | 2. GPL-avoiding projects (MIT licence, et al) |
45 | --------------------------------------------- |
46 | |
47 | Some free software projects prefer to avoid the GPL and other licences |
48 | which force the software always to be free. Instead they use |
49 | something like the MIT X licence, which allows proprietary versions of |
239d2e4d |
50 | their software, or the in the case of some free libraries, the LGPL, |
51 | which allows proprietary applications. I have to say that I think |
52 | these people are misguided, but that doesn't mean that they don't have |
53 | a perfect right to do that. |
71ede3cd |
54 | |
55 | Some of these people think that merely writing to an interface |
56 | provided by GPL'd software will cause their program to become GPL'd |
57 | too, even if they don't distribute the GPL'd software. I don't think |
239d2e4d |
58 | this is the case. I'm perfectly happy for non-GPL'd but |
59 | GPL-compatible software to refer to adns in its source code. However, |
60 | I think that exectuables (or compiled libraries) which contain or are |
61 | dynamically linked against adns must be GPL'd; likewise executable |
62 | programs (whether compiled or in an interpreted language) which |
63 | require utilities from adns to function properly must be GPL'd. |
64 | |
65 | So, you can distribute your non-GPL'd program source which needs adns |
66 | to compile (provided it's under a GPL-compatible licence), but people |
67 | who wish to distribute binaries must do so under the terms of the GNU |
68 | GPL. This may make sense for some GPL-avoiding free software |
69 | projects; people can still make proprietary programs from your code, |
70 | provided that they make some provision to replace adns with something |
71 | whose copyright allows proprietary versions. |
72 | |
73 | However, this doesn't make much sense for the authors of LGPL'd |
74 | libraries. All I can say to them is to ask which is more important: |
75 | that their library be well-constructed and use all the best technology |
76 | available as free software, or whether it is worth degrading quality |
77 | of their library in order to allow proprietary programs to use it ! |
78 | |
79 | To help the case of LGPL'd libraries for which adns is not a vital |
80 | component - for example, a library which provides access to other |
81 | libraries so that programs which use it need only use certain parts, |
82 | I have released adns.h (just the public header file) under the LGPL as |
83 | well as the GPL. See the copyright notice in adns.h for details. |
84 | Note that this will not help you if it adns is essential to the |
85 | functioning of your library, because all programs using your library |
86 | must link against both your library and adns and so must be GPL'd. |
87 | |
88 | |
89 | For some information and views from the Free Software Foundation on |
90 | free software licensing, visit: |
91 | |
92 | Various licenses and comments about them |
93 | at http://www.fsf.org/philosophy/license-list.html |
94 | |
95 | Why you shouldn't use the Library GPL for your next library |
96 | at http://www.fsf.org/philosophy/why-not-lgpl.html |
71ede3cd |
97 | |
98 | |
99 | 3. GPL-incompatible free software licences |
100 | ------------------------------------------ |
101 | |
102 | Regrettably, there are a number of free software licences (and |
103 | semi-free licences) in existence which are not compatible with the |
104 | GPL. That is, they impose restrictions which are not present in the |
239d2e4d |
105 | GPL, and therefore distributing a whole work which contains both such |
106 | a program and a GPL'd program is not possible: either the combination |
107 | would have to be distributed under the GPL (violating the restrictions |
108 | made by the original author), or under the GPL-incompatible licence |
71ede3cd |
109 | (violating the GPL). |
110 | |
111 | I may be prepared to make exceptions for such a licence. Please |
112 | contact me at <adns-maint@chiark.greenend.org.uk> with the full text |
239d2e4d |
113 | of the GPL-incompatible licence. However, I would usually prefer it |
114 | if you could use a GPL-compatible licence for your project instead. |
4fea7b3b |
115 | |
4fea7b3b |
116 | |
239d2e4d |
117 | -- Ian Jackson 17.9.2000 |
4fea7b3b |
118 | |
71ede3cd |
119 | |
120 | Local variables: |
121 | mode: text |
122 | End: |