1*4eaa4710SRishi Srivatsavai GNU LESSER GENERAL PUBLIC LICENSE 2*4eaa4710SRishi Srivatsavai Version 2.1, February 1999 3*4eaa4710SRishi Srivatsavai 4*4eaa4710SRishi Srivatsavai Copyright (C) 1991, 1999 Free Software Foundation, Inc. 5*4eaa4710SRishi Srivatsavai 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 6*4eaa4710SRishi Srivatsavai Everyone is permitted to copy and distribute verbatim copies 7*4eaa4710SRishi Srivatsavai of this license document, but changing it is not allowed. 8*4eaa4710SRishi Srivatsavai 9*4eaa4710SRishi Srivatsavai[This is the first released version of the Lesser GPL. It also counts 10*4eaa4710SRishi Srivatsavai as the successor of the GNU Library Public License, version 2, hence 11*4eaa4710SRishi Srivatsavai the version number 2.1.] 12*4eaa4710SRishi Srivatsavai 13*4eaa4710SRishi Srivatsavai Preamble 14*4eaa4710SRishi Srivatsavai 15*4eaa4710SRishi Srivatsavai The licenses for most software are designed to take away your 16*4eaa4710SRishi Srivatsavaifreedom to share and change it. By contrast, the GNU General Public 17*4eaa4710SRishi SrivatsavaiLicenses are intended to guarantee your freedom to share and change 18*4eaa4710SRishi Srivatsavaifree software--to make sure the software is free for all its users. 19*4eaa4710SRishi Srivatsavai 20*4eaa4710SRishi Srivatsavai This license, the Lesser General Public License, applies to some 21*4eaa4710SRishi Srivatsavaispecially designated software packages--typically libraries--of the 22*4eaa4710SRishi SrivatsavaiFree Software Foundation and other authors who decide to use it. You 23*4eaa4710SRishi Srivatsavaican use it too, but we suggest you first think carefully about whether 24*4eaa4710SRishi Srivatsavaithis license or the ordinary General Public License is the better 25*4eaa4710SRishi Srivatsavaistrategy to use in any particular case, based on the explanations below. 26*4eaa4710SRishi Srivatsavai 27*4eaa4710SRishi Srivatsavai When we speak of free software, we are referring to freedom of use, 28*4eaa4710SRishi Srivatsavainot price. Our General Public Licenses are designed to make sure that 29*4eaa4710SRishi Srivatsavaiyou have the freedom to distribute copies of free software (and charge 30*4eaa4710SRishi Srivatsavaifor this service if you wish); that you receive source code or can get 31*4eaa4710SRishi Srivatsavaiit if you want it; that you can change the software and use pieces of 32*4eaa4710SRishi Srivatsavaiit in new free programs; and that you are informed that you can do 33*4eaa4710SRishi Srivatsavaithese things. 34*4eaa4710SRishi Srivatsavai 35*4eaa4710SRishi Srivatsavai To protect your rights, we need to make restrictions that forbid 36*4eaa4710SRishi Srivatsavaidistributors to deny you these rights or to ask you to surrender these 37*4eaa4710SRishi Srivatsavairights. These restrictions translate to certain responsibilities for 38*4eaa4710SRishi Srivatsavaiyou if you distribute copies of the library or if you modify it. 39*4eaa4710SRishi Srivatsavai 40*4eaa4710SRishi Srivatsavai For example, if you distribute copies of the library, whether gratis 41*4eaa4710SRishi Srivatsavaior for a fee, you must give the recipients all the rights that we gave 42*4eaa4710SRishi Srivatsavaiyou. You must make sure that they, too, receive or can get the source 43*4eaa4710SRishi Srivatsavaicode. If you link other code with the library, you must provide 44*4eaa4710SRishi Srivatsavaicomplete object files to the recipients, so that they can relink them 45*4eaa4710SRishi Srivatsavaiwith the library after making changes to the library and recompiling 46*4eaa4710SRishi Srivatsavaiit. And you must show them these terms so they know their rights. 47*4eaa4710SRishi Srivatsavai 48*4eaa4710SRishi Srivatsavai We protect your rights with a two-step method: (1) we copyright the 49*4eaa4710SRishi Srivatsavailibrary, and (2) we offer you this license, which gives you legal 50*4eaa4710SRishi Srivatsavaipermission to copy, distribute and/or modify the library. 51*4eaa4710SRishi Srivatsavai 52*4eaa4710SRishi Srivatsavai To protect each distributor, we want to make it very clear that 53*4eaa4710SRishi Srivatsavaithere is no warranty for the free library. Also, if the library is 54*4eaa4710SRishi Srivatsavaimodified by someone else and passed on, the recipients should know 55*4eaa4710SRishi Srivatsavaithat what they have is not the original version, so that the original 56*4eaa4710SRishi Srivatsavaiauthor's reputation will not be affected by problems that might be 57*4eaa4710SRishi Srivatsavaiintroduced by others. 58*4eaa4710SRishi Srivatsavai 59*4eaa4710SRishi Srivatsavai Finally, software patents pose a constant threat to the existence of 60*4eaa4710SRishi Srivatsavaiany free program. We wish to make sure that a company cannot 61*4eaa4710SRishi Srivatsavaieffectively restrict the users of a free program by obtaining a 62*4eaa4710SRishi Srivatsavairestrictive license from a patent holder. Therefore, we insist that 63*4eaa4710SRishi Srivatsavaiany patent license obtained for a version of the library must be 64*4eaa4710SRishi Srivatsavaiconsistent with the full freedom of use specified in this license. 65*4eaa4710SRishi Srivatsavai 66*4eaa4710SRishi Srivatsavai Most GNU software, including some libraries, is covered by the 67*4eaa4710SRishi Srivatsavaiordinary GNU General Public License. This license, the GNU Lesser 68*4eaa4710SRishi SrivatsavaiGeneral Public License, applies to certain designated libraries, and 69*4eaa4710SRishi Srivatsavaiis quite different from the ordinary General Public License. We use 70*4eaa4710SRishi Srivatsavaithis license for certain libraries in order to permit linking those 71*4eaa4710SRishi Srivatsavailibraries into non-free programs. 72*4eaa4710SRishi Srivatsavai 73*4eaa4710SRishi Srivatsavai When a program is linked with a library, whether statically or using 74*4eaa4710SRishi Srivatsavaia shared library, the combination of the two is legally speaking a 75*4eaa4710SRishi Srivatsavaicombined work, a derivative of the original library. The ordinary 76*4eaa4710SRishi SrivatsavaiGeneral Public License therefore permits such linking only if the 77*4eaa4710SRishi Srivatsavaientire combination fits its criteria of freedom. The Lesser General 78*4eaa4710SRishi SrivatsavaiPublic License permits more lax criteria for linking other code with 79*4eaa4710SRishi Srivatsavaithe library. 80*4eaa4710SRishi Srivatsavai 81*4eaa4710SRishi Srivatsavai We call this license the "Lesser" General Public License because it 82*4eaa4710SRishi Srivatsavaidoes Less to protect the user's freedom than the ordinary General 83*4eaa4710SRishi SrivatsavaiPublic License. It also provides other free software developers Less 84*4eaa4710SRishi Srivatsavaiof an advantage over competing non-free programs. These disadvantages 85*4eaa4710SRishi Srivatsavaiare the reason we use the ordinary General Public License for many 86*4eaa4710SRishi Srivatsavailibraries. However, the Lesser license provides advantages in certain 87*4eaa4710SRishi Srivatsavaispecial circumstances. 88*4eaa4710SRishi Srivatsavai 89*4eaa4710SRishi Srivatsavai For example, on rare occasions, there may be a special need to 90*4eaa4710SRishi Srivatsavaiencourage the widest possible use of a certain library, so that it becomes 91*4eaa4710SRishi Srivatsavaia de-facto standard. To achieve this, non-free programs must be 92*4eaa4710SRishi Srivatsavaiallowed to use the library. A more frequent case is that a free 93*4eaa4710SRishi Srivatsavailibrary does the same job as widely used non-free libraries. In this 94*4eaa4710SRishi Srivatsavaicase, there is little to gain by limiting the free library to free 95*4eaa4710SRishi Srivatsavaisoftware only, so we use the Lesser General Public License. 96*4eaa4710SRishi Srivatsavai 97*4eaa4710SRishi Srivatsavai In other cases, permission to use a particular library in non-free 98*4eaa4710SRishi Srivatsavaiprograms enables a greater number of people to use a large body of 99*4eaa4710SRishi Srivatsavaifree software. For example, permission to use the GNU C Library in 100*4eaa4710SRishi Srivatsavainon-free programs enables many more people to use the whole GNU 101*4eaa4710SRishi Srivatsavaioperating system, as well as its variant, the GNU/Linux operating 102*4eaa4710SRishi Srivatsavaisystem. 103*4eaa4710SRishi Srivatsavai 104*4eaa4710SRishi Srivatsavai Although the Lesser General Public License is Less protective of the 105*4eaa4710SRishi Srivatsavaiusers' freedom, it does ensure that the user of a program that is 106*4eaa4710SRishi Srivatsavailinked with the Library has the freedom and the wherewithal to run 107*4eaa4710SRishi Srivatsavaithat program using a modified version of the Library. 108*4eaa4710SRishi Srivatsavai 109*4eaa4710SRishi Srivatsavai The precise terms and conditions for copying, distribution and 110*4eaa4710SRishi Srivatsavaimodification follow. Pay close attention to the difference between a 111*4eaa4710SRishi Srivatsavai"work based on the library" and a "work that uses the library". The 112*4eaa4710SRishi Srivatsavaiformer contains code derived from the library, whereas the latter must 113*4eaa4710SRishi Srivatsavaibe combined with the library in order to run. 114*4eaa4710SRishi Srivatsavai 115*4eaa4710SRishi Srivatsavai GNU LESSER GENERAL PUBLIC LICENSE 116*4eaa4710SRishi Srivatsavai TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 117*4eaa4710SRishi Srivatsavai 118*4eaa4710SRishi Srivatsavai 0. This License Agreement applies to any software library or other 119*4eaa4710SRishi Srivatsavaiprogram which contains a notice placed by the copyright holder or 120*4eaa4710SRishi Srivatsavaiother authorized party saying it may be distributed under the terms of 121*4eaa4710SRishi Srivatsavaithis Lesser General Public License (also called "this License"). 122*4eaa4710SRishi SrivatsavaiEach licensee is addressed as "you". 123*4eaa4710SRishi Srivatsavai 124*4eaa4710SRishi Srivatsavai A "library" means a collection of software functions and/or data 125*4eaa4710SRishi Srivatsavaiprepared so as to be conveniently linked with application programs 126*4eaa4710SRishi Srivatsavai(which use some of those functions and data) to form executables. 127*4eaa4710SRishi Srivatsavai 128*4eaa4710SRishi Srivatsavai The "Library", below, refers to any such software library or work 129*4eaa4710SRishi Srivatsavaiwhich has been distributed under these terms. A "work based on the 130*4eaa4710SRishi SrivatsavaiLibrary" means either the Library or any derivative work under 131*4eaa4710SRishi Srivatsavaicopyright law: that is to say, a work containing the Library or a 132*4eaa4710SRishi Srivatsavaiportion of it, either verbatim or with modifications and/or translated 133*4eaa4710SRishi Srivatsavaistraightforwardly into another language. (Hereinafter, translation is 134*4eaa4710SRishi Srivatsavaiincluded without limitation in the term "modification".) 135*4eaa4710SRishi Srivatsavai 136*4eaa4710SRishi Srivatsavai "Source code" for a work means the preferred form of the work for 137*4eaa4710SRishi Srivatsavaimaking modifications to it. For a library, complete source code means 138*4eaa4710SRishi Srivatsavaiall the source code for all modules it contains, plus any associated 139*4eaa4710SRishi Srivatsavaiinterface definition files, plus the scripts used to control compilation 140*4eaa4710SRishi Srivatsavaiand installation of the library. 141*4eaa4710SRishi Srivatsavai 142*4eaa4710SRishi Srivatsavai Activities other than copying, distribution and modification are not 143*4eaa4710SRishi Srivatsavaicovered by this License; they are outside its scope. The act of 144*4eaa4710SRishi Srivatsavairunning a program using the Library is not restricted, and output from 145*4eaa4710SRishi Srivatsavaisuch a program is covered only if its contents constitute a work based 146*4eaa4710SRishi Srivatsavaion the Library (independent of the use of the Library in a tool for 147*4eaa4710SRishi Srivatsavaiwriting it). Whether that is true depends on what the Library does 148*4eaa4710SRishi Srivatsavaiand what the program that uses the Library does. 149*4eaa4710SRishi Srivatsavai 150*4eaa4710SRishi Srivatsavai 1. You may copy and distribute verbatim copies of the Library's 151*4eaa4710SRishi Srivatsavaicomplete source code as you receive it, in any medium, provided that 152*4eaa4710SRishi Srivatsavaiyou conspicuously and appropriately publish on each copy an 153*4eaa4710SRishi Srivatsavaiappropriate copyright notice and disclaimer of warranty; keep intact 154*4eaa4710SRishi Srivatsavaiall the notices that refer to this License and to the absence of any 155*4eaa4710SRishi Srivatsavaiwarranty; and distribute a copy of this License along with the 156*4eaa4710SRishi SrivatsavaiLibrary. 157*4eaa4710SRishi Srivatsavai 158*4eaa4710SRishi Srivatsavai You may charge a fee for the physical act of transferring a copy, 159*4eaa4710SRishi Srivatsavaiand you may at your option offer warranty protection in exchange for a 160*4eaa4710SRishi Srivatsavaifee. 161*4eaa4710SRishi Srivatsavai 162*4eaa4710SRishi Srivatsavai 2. You may modify your copy or copies of the Library or any portion 163*4eaa4710SRishi Srivatsavaiof it, thus forming a work based on the Library, and copy and 164*4eaa4710SRishi Srivatsavaidistribute such modifications or work under the terms of Section 1 165*4eaa4710SRishi Srivatsavaiabove, provided that you also meet all of these conditions: 166*4eaa4710SRishi Srivatsavai 167*4eaa4710SRishi Srivatsavai a) The modified work must itself be a software library. 168*4eaa4710SRishi Srivatsavai 169*4eaa4710SRishi Srivatsavai b) You must cause the files modified to carry prominent notices 170*4eaa4710SRishi Srivatsavai stating that you changed the files and the date of any change. 171*4eaa4710SRishi Srivatsavai 172*4eaa4710SRishi Srivatsavai c) You must cause the whole of the work to be licensed at no 173*4eaa4710SRishi Srivatsavai charge to all third parties under the terms of this License. 174*4eaa4710SRishi Srivatsavai 175*4eaa4710SRishi Srivatsavai d) If a facility in the modified Library refers to a function or a 176*4eaa4710SRishi Srivatsavai table of data to be supplied by an application program that uses 177*4eaa4710SRishi Srivatsavai the facility, other than as an argument passed when the facility 178*4eaa4710SRishi Srivatsavai is invoked, then you must make a good faith effort to ensure that, 179*4eaa4710SRishi Srivatsavai in the event an application does not supply such function or 180*4eaa4710SRishi Srivatsavai table, the facility still operates, and performs whatever part of 181*4eaa4710SRishi Srivatsavai its purpose remains meaningful. 182*4eaa4710SRishi Srivatsavai 183*4eaa4710SRishi Srivatsavai (For example, a function in a library to compute square roots has 184*4eaa4710SRishi Srivatsavai a purpose that is entirely well-defined independent of the 185*4eaa4710SRishi Srivatsavai application. Therefore, Subsection 2d requires that any 186*4eaa4710SRishi Srivatsavai application-supplied function or table used by this function must 187*4eaa4710SRishi Srivatsavai be optional: if the application does not supply it, the square 188*4eaa4710SRishi Srivatsavai root function must still compute square roots.) 189*4eaa4710SRishi Srivatsavai 190*4eaa4710SRishi SrivatsavaiThese requirements apply to the modified work as a whole. If 191*4eaa4710SRishi Srivatsavaiidentifiable sections of that work are not derived from the Library, 192*4eaa4710SRishi Srivatsavaiand can be reasonably considered independent and separate works in 193*4eaa4710SRishi Srivatsavaithemselves, then this License, and its terms, do not apply to those 194*4eaa4710SRishi Srivatsavaisections when you distribute them as separate works. But when you 195*4eaa4710SRishi Srivatsavaidistribute the same sections as part of a whole which is a work based 196*4eaa4710SRishi Srivatsavaion the Library, the distribution of the whole must be on the terms of 197*4eaa4710SRishi Srivatsavaithis License, whose permissions for other licensees extend to the 198*4eaa4710SRishi Srivatsavaientire whole, and thus to each and every part regardless of who wrote 199*4eaa4710SRishi Srivatsavaiit. 200*4eaa4710SRishi Srivatsavai 201*4eaa4710SRishi SrivatsavaiThus, it is not the intent of this section to claim rights or contest 202*4eaa4710SRishi Srivatsavaiyour rights to work written entirely by you; rather, the intent is to 203*4eaa4710SRishi Srivatsavaiexercise the right to control the distribution of derivative or 204*4eaa4710SRishi Srivatsavaicollective works based on the Library. 205*4eaa4710SRishi Srivatsavai 206*4eaa4710SRishi SrivatsavaiIn addition, mere aggregation of another work not based on the Library 207*4eaa4710SRishi Srivatsavaiwith the Library (or with a work based on the Library) on a volume of 208*4eaa4710SRishi Srivatsavaia storage or distribution medium does not bring the other work under 209*4eaa4710SRishi Srivatsavaithe scope of this License. 210*4eaa4710SRishi Srivatsavai 211*4eaa4710SRishi Srivatsavai 3. You may opt to apply the terms of the ordinary GNU General Public 212*4eaa4710SRishi SrivatsavaiLicense instead of this License to a given copy of the Library. To do 213*4eaa4710SRishi Srivatsavaithis, you must alter all the notices that refer to this License, so 214*4eaa4710SRishi Srivatsavaithat they refer to the ordinary GNU General Public License, version 2, 215*4eaa4710SRishi Srivatsavaiinstead of to this License. (If a newer version than version 2 of the 216*4eaa4710SRishi Srivatsavaiordinary GNU General Public License has appeared, then you can specify 217*4eaa4710SRishi Srivatsavaithat version instead if you wish.) Do not make any other change in 218*4eaa4710SRishi Srivatsavaithese notices. 219*4eaa4710SRishi Srivatsavai 220*4eaa4710SRishi Srivatsavai Once this change is made in a given copy, it is irreversible for 221*4eaa4710SRishi Srivatsavaithat copy, so the ordinary GNU General Public License applies to all 222*4eaa4710SRishi Srivatsavaisubsequent copies and derivative works made from that copy. 223*4eaa4710SRishi Srivatsavai 224*4eaa4710SRishi Srivatsavai This option is useful when you wish to copy part of the code of 225*4eaa4710SRishi Srivatsavaithe Library into a program that is not a library. 226*4eaa4710SRishi Srivatsavai 227*4eaa4710SRishi Srivatsavai 4. You may copy and distribute the Library (or a portion or 228*4eaa4710SRishi Srivatsavaiderivative of it, under Section 2) in object code or executable form 229*4eaa4710SRishi Srivatsavaiunder the terms of Sections 1 and 2 above provided that you accompany 230*4eaa4710SRishi Srivatsavaiit with the complete corresponding machine-readable source code, which 231*4eaa4710SRishi Srivatsavaimust be distributed under the terms of Sections 1 and 2 above on a 232*4eaa4710SRishi Srivatsavaimedium customarily used for software interchange. 233*4eaa4710SRishi Srivatsavai 234*4eaa4710SRishi Srivatsavai If distribution of object code is made by offering access to copy 235*4eaa4710SRishi Srivatsavaifrom a designated place, then offering equivalent access to copy the 236*4eaa4710SRishi Srivatsavaisource code from the same place satisfies the requirement to 237*4eaa4710SRishi Srivatsavaidistribute the source code, even though third parties are not 238*4eaa4710SRishi Srivatsavaicompelled to copy the source along with the object code. 239*4eaa4710SRishi Srivatsavai 240*4eaa4710SRishi Srivatsavai 5. A program that contains no derivative of any portion of the 241*4eaa4710SRishi SrivatsavaiLibrary, but is designed to work with the Library by being compiled or 242*4eaa4710SRishi Srivatsavailinked with it, is called a "work that uses the Library". Such a 243*4eaa4710SRishi Srivatsavaiwork, in isolation, is not a derivative work of the Library, and 244*4eaa4710SRishi Srivatsavaitherefore falls outside the scope of this License. 245*4eaa4710SRishi Srivatsavai 246*4eaa4710SRishi Srivatsavai However, linking a "work that uses the Library" with the Library 247*4eaa4710SRishi Srivatsavaicreates an executable that is a derivative of the Library (because it 248*4eaa4710SRishi Srivatsavaicontains portions of the Library), rather than a "work that uses the 249*4eaa4710SRishi Srivatsavailibrary". The executable is therefore covered by this License. 250*4eaa4710SRishi SrivatsavaiSection 6 states terms for distribution of such executables. 251*4eaa4710SRishi Srivatsavai 252*4eaa4710SRishi Srivatsavai When a "work that uses the Library" uses material from a header file 253*4eaa4710SRishi Srivatsavaithat is part of the Library, the object code for the work may be a 254*4eaa4710SRishi Srivatsavaiderivative work of the Library even though the source code is not. 255*4eaa4710SRishi SrivatsavaiWhether this is true is especially significant if the work can be 256*4eaa4710SRishi Srivatsavailinked without the Library, or if the work is itself a library. The 257*4eaa4710SRishi Srivatsavaithreshold for this to be true is not precisely defined by law. 258*4eaa4710SRishi Srivatsavai 259*4eaa4710SRishi Srivatsavai If such an object file uses only numerical parameters, data 260*4eaa4710SRishi Srivatsavaistructure layouts and accessors, and small macros and small inline 261*4eaa4710SRishi Srivatsavaifunctions (ten lines or less in length), then the use of the object 262*4eaa4710SRishi Srivatsavaifile is unrestricted, regardless of whether it is legally a derivative 263*4eaa4710SRishi Srivatsavaiwork. (Executables containing this object code plus portions of the 264*4eaa4710SRishi SrivatsavaiLibrary will still fall under Section 6.) 265*4eaa4710SRishi Srivatsavai 266*4eaa4710SRishi Srivatsavai Otherwise, if the work is a derivative of the Library, you may 267*4eaa4710SRishi Srivatsavaidistribute the object code for the work under the terms of Section 6. 268*4eaa4710SRishi SrivatsavaiAny executables containing that work also fall under Section 6, 269*4eaa4710SRishi Srivatsavaiwhether or not they are linked directly with the Library itself. 270*4eaa4710SRishi Srivatsavai 271*4eaa4710SRishi Srivatsavai 6. As an exception to the Sections above, you may also combine or 272*4eaa4710SRishi Srivatsavailink a "work that uses the Library" with the Library to produce a 273*4eaa4710SRishi Srivatsavaiwork containing portions of the Library, and distribute that work 274*4eaa4710SRishi Srivatsavaiunder terms of your choice, provided that the terms permit 275*4eaa4710SRishi Srivatsavaimodification of the work for the customer's own use and reverse 276*4eaa4710SRishi Srivatsavaiengineering for debugging such modifications. 277*4eaa4710SRishi Srivatsavai 278*4eaa4710SRishi Srivatsavai You must give prominent notice with each copy of the work that the 279*4eaa4710SRishi SrivatsavaiLibrary is used in it and that the Library and its use are covered by 280*4eaa4710SRishi Srivatsavaithis License. You must supply a copy of this License. If the work 281*4eaa4710SRishi Srivatsavaiduring execution displays copyright notices, you must include the 282*4eaa4710SRishi Srivatsavaicopyright notice for the Library among them, as well as a reference 283*4eaa4710SRishi Srivatsavaidirecting the user to the copy of this License. Also, you must do one 284*4eaa4710SRishi Srivatsavaiof these things: 285*4eaa4710SRishi Srivatsavai 286*4eaa4710SRishi Srivatsavai a) Accompany the work with the complete corresponding 287*4eaa4710SRishi Srivatsavai machine-readable source code for the Library including whatever 288*4eaa4710SRishi Srivatsavai changes were used in the work (which must be distributed under 289*4eaa4710SRishi Srivatsavai Sections 1 and 2 above); and, if the work is an executable linked 290*4eaa4710SRishi Srivatsavai with the Library, with the complete machine-readable "work that 291*4eaa4710SRishi Srivatsavai uses the Library", as object code and/or source code, so that the 292*4eaa4710SRishi Srivatsavai user can modify the Library and then relink to produce a modified 293*4eaa4710SRishi Srivatsavai executable containing the modified Library. (It is understood 294*4eaa4710SRishi Srivatsavai that the user who changes the contents of definitions files in the 295*4eaa4710SRishi Srivatsavai Library will not necessarily be able to recompile the application 296*4eaa4710SRishi Srivatsavai to use the modified definitions.) 297*4eaa4710SRishi Srivatsavai 298*4eaa4710SRishi Srivatsavai b) Use a suitable shared library mechanism for linking with the 299*4eaa4710SRishi Srivatsavai Library. A suitable mechanism is one that (1) uses at run time a 300*4eaa4710SRishi Srivatsavai copy of the library already present on the user's computer system, 301*4eaa4710SRishi Srivatsavai rather than copying library functions into the executable, and (2) 302*4eaa4710SRishi Srivatsavai will operate properly with a modified version of the library, if 303*4eaa4710SRishi Srivatsavai the user installs one, as long as the modified version is 304*4eaa4710SRishi Srivatsavai interface-compatible with the version that the work was made with. 305*4eaa4710SRishi Srivatsavai 306*4eaa4710SRishi Srivatsavai c) Accompany the work with a written offer, valid for at 307*4eaa4710SRishi Srivatsavai least three years, to give the same user the materials 308*4eaa4710SRishi Srivatsavai specified in Subsection 6a, above, for a charge no more 309*4eaa4710SRishi Srivatsavai than the cost of performing this distribution. 310*4eaa4710SRishi Srivatsavai 311*4eaa4710SRishi Srivatsavai d) If distribution of the work is made by offering access to copy 312*4eaa4710SRishi Srivatsavai from a designated place, offer equivalent access to copy the above 313*4eaa4710SRishi Srivatsavai specified materials from the same place. 314*4eaa4710SRishi Srivatsavai 315*4eaa4710SRishi Srivatsavai e) Verify that the user has already received a copy of these 316*4eaa4710SRishi Srivatsavai materials or that you have already sent this user a copy. 317*4eaa4710SRishi Srivatsavai 318*4eaa4710SRishi Srivatsavai For an executable, the required form of the "work that uses the 319*4eaa4710SRishi SrivatsavaiLibrary" must include any data and utility programs needed for 320*4eaa4710SRishi Srivatsavaireproducing the executable from it. However, as a special exception, 321*4eaa4710SRishi Srivatsavaithe materials to be distributed need not include anything that is 322*4eaa4710SRishi Srivatsavainormally distributed (in either source or binary form) with the major 323*4eaa4710SRishi Srivatsavaicomponents (compiler, kernel, and so on) of the operating system on 324*4eaa4710SRishi Srivatsavaiwhich the executable runs, unless that component itself accompanies 325*4eaa4710SRishi Srivatsavaithe executable. 326*4eaa4710SRishi Srivatsavai 327*4eaa4710SRishi Srivatsavai It may happen that this requirement contradicts the license 328*4eaa4710SRishi Srivatsavairestrictions of other proprietary libraries that do not normally 329*4eaa4710SRishi Srivatsavaiaccompany the operating system. Such a contradiction means you cannot 330*4eaa4710SRishi Srivatsavaiuse both them and the Library together in an executable that you 331*4eaa4710SRishi Srivatsavaidistribute. 332*4eaa4710SRishi Srivatsavai 333*4eaa4710SRishi Srivatsavai 7. You may place library facilities that are a work based on the 334*4eaa4710SRishi SrivatsavaiLibrary side-by-side in a single library together with other library 335*4eaa4710SRishi Srivatsavaifacilities not covered by this License, and distribute such a combined 336*4eaa4710SRishi Srivatsavailibrary, provided that the separate distribution of the work based on 337*4eaa4710SRishi Srivatsavaithe Library and of the other library facilities is otherwise 338*4eaa4710SRishi Srivatsavaipermitted, and provided that you do these two things: 339*4eaa4710SRishi Srivatsavai 340*4eaa4710SRishi Srivatsavai a) Accompany the combined library with a copy of the same work 341*4eaa4710SRishi Srivatsavai based on the Library, uncombined with any other library 342*4eaa4710SRishi Srivatsavai facilities. This must be distributed under the terms of the 343*4eaa4710SRishi Srivatsavai Sections above. 344*4eaa4710SRishi Srivatsavai 345*4eaa4710SRishi Srivatsavai b) Give prominent notice with the combined library of the fact 346*4eaa4710SRishi Srivatsavai that part of it is a work based on the Library, and explaining 347*4eaa4710SRishi Srivatsavai where to find the accompanying uncombined form of the same work. 348*4eaa4710SRishi Srivatsavai 349*4eaa4710SRishi Srivatsavai 8. You may not copy, modify, sublicense, link with, or distribute 350*4eaa4710SRishi Srivatsavaithe Library except as expressly provided under this License. Any 351*4eaa4710SRishi Srivatsavaiattempt otherwise to copy, modify, sublicense, link with, or 352*4eaa4710SRishi Srivatsavaidistribute the Library is void, and will automatically terminate your 353*4eaa4710SRishi Srivatsavairights under this License. However, parties who have received copies, 354*4eaa4710SRishi Srivatsavaior rights, from you under this License will not have their licenses 355*4eaa4710SRishi Srivatsavaiterminated so long as such parties remain in full compliance. 356*4eaa4710SRishi Srivatsavai 357*4eaa4710SRishi Srivatsavai 9. You are not required to accept this License, since you have not 358*4eaa4710SRishi Srivatsavaisigned it. However, nothing else grants you permission to modify or 359*4eaa4710SRishi Srivatsavaidistribute the Library or its derivative works. These actions are 360*4eaa4710SRishi Srivatsavaiprohibited by law if you do not accept this License. Therefore, by 361*4eaa4710SRishi Srivatsavaimodifying or distributing the Library (or any work based on the 362*4eaa4710SRishi SrivatsavaiLibrary), you indicate your acceptance of this License to do so, and 363*4eaa4710SRishi Srivatsavaiall its terms and conditions for copying, distributing or modifying 364*4eaa4710SRishi Srivatsavaithe Library or works based on it. 365*4eaa4710SRishi Srivatsavai 366*4eaa4710SRishi Srivatsavai 10. Each time you redistribute the Library (or any work based on the 367*4eaa4710SRishi SrivatsavaiLibrary), the recipient automatically receives a license from the 368*4eaa4710SRishi Srivatsavaioriginal licensor to copy, distribute, link with or modify the Library 369*4eaa4710SRishi Srivatsavaisubject to these terms and conditions. You may not impose any further 370*4eaa4710SRishi Srivatsavairestrictions on the recipients' exercise of the rights granted herein. 371*4eaa4710SRishi SrivatsavaiYou are not responsible for enforcing compliance by third parties with 372*4eaa4710SRishi Srivatsavaithis License. 373*4eaa4710SRishi Srivatsavai 374*4eaa4710SRishi Srivatsavai 11. If, as a consequence of a court judgment or allegation of patent 375*4eaa4710SRishi Srivatsavaiinfringement or for any other reason (not limited to patent issues), 376*4eaa4710SRishi Srivatsavaiconditions are imposed on you (whether by court order, agreement or 377*4eaa4710SRishi Srivatsavaiotherwise) that contradict the conditions of this License, they do not 378*4eaa4710SRishi Srivatsavaiexcuse you from the conditions of this License. If you cannot 379*4eaa4710SRishi Srivatsavaidistribute so as to satisfy simultaneously your obligations under this 380*4eaa4710SRishi SrivatsavaiLicense and any other pertinent obligations, then as a consequence you 381*4eaa4710SRishi Srivatsavaimay not distribute the Library at all. For example, if a patent 382*4eaa4710SRishi Srivatsavailicense would not permit royalty-free redistribution of the Library by 383*4eaa4710SRishi Srivatsavaiall those who receive copies directly or indirectly through you, then 384*4eaa4710SRishi Srivatsavaithe only way you could satisfy both it and this License would be to 385*4eaa4710SRishi Srivatsavairefrain entirely from distribution of the Library. 386*4eaa4710SRishi Srivatsavai 387*4eaa4710SRishi SrivatsavaiIf any portion of this section is held invalid or unenforceable under any 388*4eaa4710SRishi Srivatsavaiparticular circumstance, the balance of the section is intended to apply, 389*4eaa4710SRishi Srivatsavaiand the section as a whole is intended to apply in other circumstances. 390*4eaa4710SRishi Srivatsavai 391*4eaa4710SRishi SrivatsavaiIt is not the purpose of this section to induce you to infringe any 392*4eaa4710SRishi Srivatsavaipatents or other property right claims or to contest validity of any 393*4eaa4710SRishi Srivatsavaisuch claims; this section has the sole purpose of protecting the 394*4eaa4710SRishi Srivatsavaiintegrity of the free software distribution system which is 395*4eaa4710SRishi Srivatsavaiimplemented by public license practices. Many people have made 396*4eaa4710SRishi Srivatsavaigenerous contributions to the wide range of software distributed 397*4eaa4710SRishi Srivatsavaithrough that system in reliance on consistent application of that 398*4eaa4710SRishi Srivatsavaisystem; it is up to the author/donor to decide if he or she is willing 399*4eaa4710SRishi Srivatsavaito distribute software through any other system and a licensee cannot 400*4eaa4710SRishi Srivatsavaiimpose that choice. 401*4eaa4710SRishi Srivatsavai 402*4eaa4710SRishi SrivatsavaiThis section is intended to make thoroughly clear what is believed to 403*4eaa4710SRishi Srivatsavaibe a consequence of the rest of this License. 404*4eaa4710SRishi Srivatsavai 405*4eaa4710SRishi Srivatsavai 12. If the distribution and/or use of the Library is restricted in 406*4eaa4710SRishi Srivatsavaicertain countries either by patents or by copyrighted interfaces, the 407*4eaa4710SRishi Srivatsavaioriginal copyright holder who places the Library under this License may add 408*4eaa4710SRishi Srivatsavaian explicit geographical distribution limitation excluding those countries, 409*4eaa4710SRishi Srivatsavaiso that distribution is permitted only in or among countries not thus 410*4eaa4710SRishi Srivatsavaiexcluded. In such case, this License incorporates the limitation as if 411*4eaa4710SRishi Srivatsavaiwritten in the body of this License. 412*4eaa4710SRishi Srivatsavai 413*4eaa4710SRishi Srivatsavai 13. The Free Software Foundation may publish revised and/or new 414*4eaa4710SRishi Srivatsavaiversions of the Lesser General Public License from time to time. 415*4eaa4710SRishi SrivatsavaiSuch new versions will be similar in spirit to the present version, 416*4eaa4710SRishi Srivatsavaibut may differ in detail to address new problems or concerns. 417*4eaa4710SRishi Srivatsavai 418*4eaa4710SRishi SrivatsavaiEach version is given a distinguishing version number. If the Library 419*4eaa4710SRishi Srivatsavaispecifies a version number of this License which applies to it and 420*4eaa4710SRishi Srivatsavai"any later version", you have the option of following the terms and 421*4eaa4710SRishi Srivatsavaiconditions either of that version or of any later version published by 422*4eaa4710SRishi Srivatsavaithe Free Software Foundation. If the Library does not specify a 423*4eaa4710SRishi Srivatsavailicense version number, you may choose any version ever published by 424*4eaa4710SRishi Srivatsavaithe Free Software Foundation. 425*4eaa4710SRishi Srivatsavai 426*4eaa4710SRishi Srivatsavai 14. If you wish to incorporate parts of the Library into other free 427*4eaa4710SRishi Srivatsavaiprograms whose distribution conditions are incompatible with these, 428*4eaa4710SRishi Srivatsavaiwrite to the author to ask for permission. For software which is 429*4eaa4710SRishi Srivatsavaicopyrighted by the Free Software Foundation, write to the Free 430*4eaa4710SRishi SrivatsavaiSoftware Foundation; we sometimes make exceptions for this. Our 431*4eaa4710SRishi Srivatsavaidecision will be guided by the two goals of preserving the free status 432*4eaa4710SRishi Srivatsavaiof all derivatives of our free software and of promoting the sharing 433*4eaa4710SRishi Srivatsavaiand reuse of software generally. 434*4eaa4710SRishi Srivatsavai 435*4eaa4710SRishi Srivatsavai NO WARRANTY 436*4eaa4710SRishi Srivatsavai 437*4eaa4710SRishi Srivatsavai 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO 438*4eaa4710SRishi SrivatsavaiWARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. 439*4eaa4710SRishi SrivatsavaiEXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR 440*4eaa4710SRishi SrivatsavaiOTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY 441*4eaa4710SRishi SrivatsavaiKIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE 442*4eaa4710SRishi SrivatsavaiIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 443*4eaa4710SRishi SrivatsavaiPURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE 444*4eaa4710SRishi SrivatsavaiLIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME 445*4eaa4710SRishi SrivatsavaiTHE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 446*4eaa4710SRishi Srivatsavai 447*4eaa4710SRishi Srivatsavai 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN 448*4eaa4710SRishi SrivatsavaiWRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY 449*4eaa4710SRishi SrivatsavaiAND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU 450*4eaa4710SRishi SrivatsavaiFOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR 451*4eaa4710SRishi SrivatsavaiCONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE 452*4eaa4710SRishi SrivatsavaiLIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING 453*4eaa4710SRishi SrivatsavaiRENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A 454*4eaa4710SRishi SrivatsavaiFAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF 455*4eaa4710SRishi SrivatsavaiSUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH 456*4eaa4710SRishi SrivatsavaiDAMAGES. 457*4eaa4710SRishi Srivatsavai 458*4eaa4710SRishi Srivatsavai END OF TERMS AND CONDITIONS 459*4eaa4710SRishi Srivatsavai 460*4eaa4710SRishi Srivatsavai How to Apply These Terms to Your New Libraries 461*4eaa4710SRishi Srivatsavai 462*4eaa4710SRishi Srivatsavai If you develop a new library, and you want it to be of the greatest 463*4eaa4710SRishi Srivatsavaipossible use to the public, we recommend making it free software that 464*4eaa4710SRishi Srivatsavaieveryone can redistribute and change. You can do so by permitting 465*4eaa4710SRishi Srivatsavairedistribution under these terms (or, alternatively, under the terms of the 466*4eaa4710SRishi Srivatsavaiordinary General Public License). 467*4eaa4710SRishi Srivatsavai 468*4eaa4710SRishi Srivatsavai To apply these terms, attach the following notices to the library. It is 469*4eaa4710SRishi Srivatsavaisafest to attach them to the start of each source file to most effectively 470*4eaa4710SRishi Srivatsavaiconvey the exclusion of warranty; and each file should have at least the 471*4eaa4710SRishi Srivatsavai"copyright" line and a pointer to where the full notice is found. 472*4eaa4710SRishi Srivatsavai 473*4eaa4710SRishi Srivatsavai <one line to give the library's name and a brief idea of what it does.> 474*4eaa4710SRishi Srivatsavai Copyright (C) <year> <name of author> 475*4eaa4710SRishi Srivatsavai 476*4eaa4710SRishi Srivatsavai This library is free software; you can redistribute it and/or 477*4eaa4710SRishi Srivatsavai modify it under the terms of the GNU Lesser General Public 478*4eaa4710SRishi Srivatsavai License as published by the Free Software Foundation; either 479*4eaa4710SRishi Srivatsavai version 2 of the License, or (at your option) any later version. 480*4eaa4710SRishi Srivatsavai 481*4eaa4710SRishi Srivatsavai This library is distributed in the hope that it will be useful, 482*4eaa4710SRishi Srivatsavai but WITHOUT ANY WARRANTY; without even the implied warranty of 483*4eaa4710SRishi Srivatsavai MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 484*4eaa4710SRishi Srivatsavai Lesser General Public License for more details. 485*4eaa4710SRishi Srivatsavai 486*4eaa4710SRishi Srivatsavai You should have received a copy of the GNU Lesser General Public 487*4eaa4710SRishi Srivatsavai License along with this library; if not, write to the Free Software 488*4eaa4710SRishi Srivatsavai Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 489*4eaa4710SRishi Srivatsavai 490*4eaa4710SRishi SrivatsavaiAlso add information on how to contact you by electronic and paper mail. 491*4eaa4710SRishi Srivatsavai 492*4eaa4710SRishi SrivatsavaiYou should also get your employer (if you work as a programmer) or your 493*4eaa4710SRishi Srivatsavaischool, if any, to sign a "copyright disclaimer" for the library, if 494*4eaa4710SRishi Srivatsavainecessary. Here is a sample; alter the names: 495*4eaa4710SRishi Srivatsavai 496*4eaa4710SRishi Srivatsavai Yoyodyne, Inc., hereby disclaims all copyright interest in the 497*4eaa4710SRishi Srivatsavai library `Frob' (a library for tweaking knobs) written by James Random Hacker. 498*4eaa4710SRishi Srivatsavai 499*4eaa4710SRishi Srivatsavai <signature of Ty Coon>, 1 April 1990 500*4eaa4710SRishi Srivatsavai Ty Coon, President of Vice 501*4eaa4710SRishi Srivatsavai 502*4eaa4710SRishi SrivatsavaiThat's all there is to it! 503*4eaa4710SRishi Srivatsavai 504*4eaa4710SRishi Srivatsavai 505