[linux-programlama] GPL uyumlulugu [was Re: Re: Oracle Hakkinda]

---------

From: Recai Oktas (roktas@omu.edu.tr)
Date: Mon 15 Dec 2003 - 09:32:45 EST

  • Next message: Yüksel ÖZCAN: "[linux-programlama] Re: GPL uyumlulugu [was Re: Re: Oracle Hakkinda]"

    * Y=FCksel =D6ZCAN <yukselozcan@celiknet.com> [2003-12-15 12:49:31+0200]
    > Birde konu acilmisken herkese sorayim. MySQL cift lisansli. Bunlardan bir
    > tanesi de GPL. Ben isyerlerinde kullanilacak GPL lisansli bir program
    > yaziyorum ve veritabani olarak mysql kullaniyorum. MySQL'in ticari surumu
    > ucretli. Bu ne anlama geliyor, bu benim yazdigim GPL program ticari
    > isletmelere hitap ettigi icin programi kullanacak olanlar MySQL lisansi mi
    > almak zorundalar. Bu konuda kafam biraz karisik, yardimci olursaniz
    > sevinirim.

    Cift lisans, -cogunlukla- lisans uyumlulugunu saglamakta kullanilan bir
    yontem. GPL lisansli bir yazilimda *sadece* GPL uyumlu lisans
    sartlarini haiz kitapliklar kullanabilirsiniz. Kimi zaman bu ciddi
    sikintilar dogurur. A isminde bir program gelistirdiginizi varsayalim.
    A hicbir dis kitapliga bagli degilse, gelistiricisi bizzat siz
    oldugunuzdan A'nin hangi lisans sartlari altinda dagitilacagina siz
    karar vereceksiniz. Eger A, B isimli bir kitaplik gerektiriyorsa A'nin
    lisansina butunuyle siz karar veremezsiniz artik. Bu noktada lisans
    uyumlulugu devreye giriyor. B GPL ise A'yi da GPL veya GPL uyumlu
    yapmak zorundasiniz. Eger siz misal A'yi ticari bir urun haline
    getirmek istiyorsaniz B'nin lisans sartlari buna izin vermeli. MySQL
    orneginde oldugu gibi bu urun GPL + ticari olarak cift lisansa sahipse
    MySQL'in ticari lisansini secerek bu uyumluluk derdinden kurtulmus
    olursunuz. Gelistirdiginiz yazilim icin zaten GPL'i secmis iseniz
    MySQL'i de GPL lisansli olarak kullanmak durumundasiniz.

    GPL konusunda genel bir bilincin olusmasi icin bu lisans uyumlulugunun
    anlasilmasi gerekiyor. Musaadenizle tipik bir ornek vereyim. Apache
    grubunun maksimum tasinabilirligi hedefleyen cok guzel bir kitapligi
    var: APR (Apache Portable Runtime library). Bu kitaplik Apache2 basta
    olmak uzere bircok yazilimda kullaniliyor (orn. `Subversion'). APR
    "Apache 1.1" ozgur lisansi ile dagitiliyor. Bu lisans ozgur ve fakat
    GPL uyumlu degil. [1]

    Simdi siz APR'yi kullanan bir yazilim gelistirdiniz. Enteresan olan su
    ki bu yazilimda GPL lisansini -lisans metnine istisna ifadesi
    koymaksizin- *kullanamazsiniz*. (Evet, soz konusu Apache olsa bile :-)
    Kendi basiniza bir lisans uydurmadan, ozgur yazilim cercevesinde kalarak
    bu uyumsuzlugu asmak istiyorsaniz ya MIT/X11 gibi herseye uyan bir
    lisans sececeksiniz ya da GPL'de israrli iseniz GPL metnine asagidaki
    istisna ifadesini koyacaksiniz:

            In addition, as a special exception, <name of copyright holder>
            gives permission to link the code of this program with the FOO
            library (or with modified versions of FOO that use the same
            license as FOO), and distribute linked combinations including
            the two. You must obey the GNU General Public License in all
            respects for all of the code used other than FOO. If you modify
            this file, you may extend this exception to your version of the
            file, but you are not obligated to do so. If you do not wish to
            do so, delete this exception statement from your version.

    Sadece bir kitapligi (APR) kullaniyorsaniz ve lisans secimini yapan kisi
    siz iseniz uyumluluk sorunlari asilabilir gibi gorunuyor. Peki
    program'a bir komut satiri duzenleyicisi eklemeyi dusundunuz ve bu
    amacla GPL bir kitaplik olan `Readline'i sectiniz (Readline, `Bash'de
    de kullandiginiz kitaplik). Simdi elinizde iki kitaplik var: GPL
    uyumsuz APR ve safkan GPL Readline. Programin lisansini `istisnali GPL'
    yaparak APR ile GPL'i uyusturmak noktasinda kendi payiniza duseni
    gerceklestirdiniz. Guzel de, Readline ne olacak? Hukukcu olmadigimdan
    ve bu senaryoya bire bir uyan bir ornekle karsilasmadigimdan ifade
    edecegim yarginin FSF onayli kesin yargi oldugunu iddia edememem, fakat
    anladigim ve inceledigim o dur ki lisans uyumu icin Readline lisansinda
    da istisna bulunmali. Readline'in sahibi FSF asla boyle bir sey
    yapmayacagina gore sonuc: APR'yi iceren programi Readline ile link
    edemezsiniz. Cozum icin `Readline' yerine BSD lisansli `Editline'i
    kullanabilirsiniz. (`libeditline' buyuk olcude `libreadline' uyumlu bir
    ara yuz sundugundan programi basitce `libeditline' ile yeniden derlemek
    cogu durumda yeterli oluyor.)

    [1] Meraklisina not: APR'de de kullanilan Apache 1.1 lisansinin GPL
    uyumsuzlugu lisans metnindeki su ifadeden kaynaklaniyor:

            Products derived from this software may not be called "Apache",
            nor may "Apache" appear in their name, without prior written
            permission of the Apache Software Foundation.

    Yani APR ile derlediginiz programin ismi `Apache' olamaz veya isimde
    `Apache' gecemez. Kulaga cok makul gelen bu istek GPL'deki:

            6. [...] You may not impose any further restrictions on the
            recipients' exercise of the rights granted herein. [...]

    ifadesiyle celisiyor. 6 nolu madde GPL lisansli bir urunde GPL'de
    siralanan kisitlamalarin disinda bir sinirlama sunulamayacagini
    soyluyor. Karsilasilan GPL uyumsuzluklarinin sebebi de cogunlukla bu
    sart. Hukuk boyle bir sey iste :-)

    --
    roktas
    

  • Next message: Yüksel ÖZCAN: "[linux-programlama] Re: GPL uyumlulugu [was Re: Re: Oracle Hakkinda]"

    ---------

    Bu arsiv hypermail 2.1.6 tarafindan uretilmistir.