chiark / gitweb /
Remove extra extensions since UCB have withdrawn the advertising clause.
[adns.git] / GPL-vs-LGPL
1               GPL vs LGPL, in the context of adns
2               -----------------------------------
3
4 Several people have asked me to release adns under the GNU Lesser
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
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.
18
19
20 1. Proprietary applications of adns
21 -----------------------------------
22
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.
28
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.
32
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.
37
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.
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
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.
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
58 this is the case.  I'm perfectly happy for non-GPL'd software to refer
59 to adns in its source code.  However, I think that exectuables (or
60 compiled libraries) which contain or are dynamically linked against
61 adns must be GPL'd; likewise executable programs (whether compiled or
62 in an interpreted language) which require utilities from adns to
63 function properly must be GPL'd.
64
65 So, you can distribute your non-GPL'd program source which needs adns
66 to compile, but people who wish to distribute binaries must do so
67 under the terms of the GNU GPL.  This may make sense for some
68 GPL-avoiding free software projects; people can still make proprietary
69 programs from your code, provided that they make some provision to
70 replace adns with something whose copyright allows proprietary
71 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 release 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
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
105 GPL, and therefore distributing a whole work which contains such a
106 program and a GPL'd program is not possible: either the work would
107 have to be distributed under the GPL (violating the restrictions made
108 by the original author), or under the GPL-incompatible licence
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
113 of the GPL-incompatible licence.  However, I would prefer it if you
114 could use a GPL-compatible licence for your project instead.
115
116 --- Ian Jackson ...
117
118
119 Local variables:
120 mode: text
121 End: