附錄J:GNU通用公共授權

1991.6 第二版

版權所有c19891991Free Software Foundation有限公司

59 Temple PlaceSuite 330BostonMA 02111-1307USA
允許每個人複製和發佈這一授權證原始文檔的副本,但絕對不允許對它進行任何修改。

前言

大多數軟件授權證決意剝奪您的共享和修改軟件的自由。對比之下,GNU通用公共授權證力圖保證您的共享和修改自由軟件的自由。保證自由軟件對所有用戶是自由的。該GPL適用於大多數自由軟件基金會的軟件,以及由使用這些軟件而承擔義務的作者所開發的軟件。(自由軟件基金會的其他一些軟件受GNU庫通用授權證的保護)。您也可以將它用到您的程式中。

當我們談到自由軟件(free software)時,我們指的是自由而不是價格。我們的GNU通用公共授權證決意保證您有發佈自由軟件的自由(如果您願意,您可以對此項服務收取一定的費用);保證您能收到原始碼或者在您需要時能得到它;保證您能修改軟件或將它的一部分用於新的自由軟件;而且還保證您知道您能做這些事情。

為了保護您的權利,我們需要做出規定:禁止任何人不承認您的權利,或者要求您放棄這些權利。如果您修改了自由軟件或者發佈了軟件的副本,這些規定就轉化為您的責任。

例如,如果您發佈這樣一個程式的副本,不管是收費的還是免費的,您必須將您具有的一切權利給予您的接受者;您必須保證他們能收到或得到原始碼;並且將這些條款給他們看,使他們知道他們有這樣的權利。

我們採取兩項措施來保護您的權利:(1)給軟件以版權保護。(2)給您提供授權證。它給您複製,發佈和修改這些軟件的法律授權。

同樣,為了保護每個作者和我們自己,我們需要清楚地讓每個人明白,自由軟件沒有擔保(no warranty)。如果由於其他某個人修改了軟件,並繼續加以傳播。我們需要它的接受者明白:他們所得到的並不是原來的自由軟件。由其他人引入的任何問題,不應損害原作者的聲譽。

最後,任何自由軟件不斷受到軟件專利的威脅。我們希望避免這樣的風險,自由軟件的再發佈者以個人名義獲得專利授權證。事實上,將軟件變為私有。為防止這一點,我們必須明確:任何專利必須以允許每個人自由使用為前提,否則就不准許有專利。

下面是有關複製,發佈和修改的確切的條款和條件。

GNU通用公共授權證有關複製,發佈和修改的條款和條件

1.    此授權證適用於任何包含版權所有者聲明的程式和其他作品,版權所有者在聲明中明確說明程式和作品可以在GPL條款的約束下發佈。下面提到的「程式」指的是任何這樣的程式或作品。而「基於程式的作品」指的是程式或者任何受版權法約束的衍生作品。也就是說包含程式或程式的一部分的作品。可以是原封不動的,或經過修改的和/或翻譯成其他語言的(在下文中,翻譯包含在條款「修改」中,無任何限制)。每個授權證接受人(licensee)用您來稱呼。

授權證條款不適用於複製,發佈和修改以外的活動。這些活動超出這些條款的範圍。運行程式的活動不受條款的限止。僅當程式的輸出構成基於程式作品的內容時,這一條款才適用(如果只運行程式就無關)。是否普遍適用取決於程式具體用來做什麼。

2.    只要您在每一副本上明顯和恰當地出版版權聲明和拒絕擔保聲明,保持此授權證的聲明和沒有擔保的聲明完整無損,並和程式一起給每個其他的程式接受者一份授權證的副本,您就可以用任何媒體複製和發佈您收到的原始的程式的源代碼。

您可以為轉讓副本的實際行動收取一定費用。您也有權選擇提供擔保以換取一定的費用。

3.    您可以修改程式的一個或幾個副本或程式的任何部分,以此形成基於程式的作品。只要您同時滿足下面的所有條件,您就可以按前面第一款的要求複製和發佈這一經過修改的程式或作品:

a.    您必須在修改的檔案中附有明確的說明:您修改了這一檔案及具體的修改日期。

b.    您必須使您發佈或出版的作品(它包含程式的全部或一部分,或包含由程式的全部或部分衍生的作品)允許第三方作為整體按授權證條款免費使用

c.    如果修改的程式在運行時以交互方式讀取命令,您必須使它在開始進入常規的交互使用方式時打印或顯示聲明:包括適當的版權聲明和沒有擔保的聲明(或者您提供擔保的聲明);用戶可以按此授權證條款重新發佈程式的說明;並告訴用戶如何看到這一授權證的副本。(例外的情況:如果原始程式以交互方式工作,它並不打印這樣的聲明,您的基於程式的作品也就不用打印聲明)。

這些要求適用於修改了的作品的整體。如果能夠確定作品的一部分並非程式的衍生產品,可以合理地認為這部分是獨立的,是不同的作品。當您將它作為獨立作品發佈時,它不受此授權證和它的條款的約束。但是當您將這部分作為基於程式的作品的一部分發佈時,作為整體它將受到授權證條款約束。准予其他授權證持有人的使用範圍擴大到整個產品。也就是每個部分,不管它是誰寫的。

因此,本條款的意圖不在於索取權利;或剝奪全部由您寫成的作品的權利。而是履行權利來控制基於程式的集體作品或衍生作品的發佈。

此外,將與程式無關的作品和該程式或基於程式的作品一起放在存貯體或發佈媒體的同一捲上,並不導致將其他作品置於此授權證的約束範圍之內。

4.    您可以以目標碼或可執行形式複製或發佈程式(或符合第2款的基於程式的作品),只要您遵守前面的第12款,並同時滿足下列3條中的1條:

a.    在通常用作軟件交換的媒體上,和目標碼一起附有機器可讀的完整的原始碼。這些原始碼的發佈應符合上面第12款的要求。或者

b.    在通常用作軟件交換的媒體上,和目標碼一起,附有給第三方提供相應的機器可讀的原始碼的書面報價。有效期不少於3年,費用不超過實際完成源程式發佈的實際成本。原始碼的發佈應符合上面的第12款的要求。或者

c.    和目標碼一起,附有您收到的發佈原始碼的報價訊息。(這一條款只適用於非商業性發佈,而且您只收到程式的目標碼或可執行代碼和按b)款要求提供的報價)。

作品的原始碼指的是對作品進行修改最優先擇取的形式。對可執行的作品講,完整的原始碼包括:所有模塊的所有源代碼,加上有關的接口的定義,加上控制可執行作品的安裝和編譯的指令。作為特殊例外,發佈版(以原始碼形式或二進制形式)不必包含任何常規發佈的供可執行代碼在上面運行的作業系統的主要組成部分(如編譯程式,內核等)。除非這些組成部分和可執行作品結合在一起。

如果採用提供對指定地點的訪問和複製的方式發佈可執行碼或目標碼,那麼,提供對同一地點的訪問和複製原始碼可以算作原始碼的發佈,即使第三方不強求與目標碼一起複製原始碼。

5.    除非您明確按授權證提出的要求去做,否則您不能複製,修改,轉發授權證和發佈程式。任何試圖用其他方式複製,修改,轉發授權證和發佈程式是無效的。而且將自動結束授權證賦予您的權利。然而,對那些從您那裡按授權證條款得到副本和權利的人們,只要他們繼續全面履行條款,授權證賦予他們的權利仍然有效。

6.    您沒有在授權證上簽字,因而您沒有必要一定接受這一授權證。然而,沒有任何其他東西賦予您修改和發佈程式及其衍生作品的權利。如果您不接受授權證,這些行為是法律禁止的。因此,如果您修改或發佈程式(或任何基於程式的作品),您就表明您接受這一授權證以及它的所有有關複製,發佈和修改程式或基於程式的作品的條款和條件。

7.    每當您重新發佈程式(或任何基於程式的作品)時,接受者自動從原始授權證頒發者那裡接到受這些條款和條件支配的複製,發佈或修改程式的授權證。您不可以對接受者履行這裡賦予他們的權利強加其他限制。您也沒有強求第三方履行授權證條款的義務。

8.    如果由於法院判決或違反專利的指控或任何其他原因(不限於專利問題)的結果,強加於您的條件(不管是法院判決,協議或其他)和授權證的條件有衝突,他們也不能用授權證條款為您開脫。在您不能同時滿足本授權證規定的義務及其他相關的義務時,作為結果,您可以根本不發佈程式。例如,如果某一專利授權證不允許所有那些直接或間接從您那裡接受副本的人們在不付專利費的情況下重新發佈程式,唯一能同時滿足兩方面要求的辦法是停止發佈程式。

如果本節的任何部分在特定的環境下無效或無法實施,就使用條款的其餘部分,並將條款作為整體用於其他環境。

本節的目的不在於引誘您侵犯專利或其他財產權的要求,或爭論這種要求的有效性。本條款的唯一目的在於保護自由軟件發佈系統的完整性,它是通過通用公共授權證的應用來實現的。許多人堅持應用這一系統,已經為通過這一系統發佈大量自由軟件做出慷慨的供獻。作者/捐獻者有權決定他或她是否通過任何其他系統發佈軟件。授權證持有人不能強制這種選擇。

本節的目的在於明確說明授權證其餘部分可能產生的結果。

9.    如果由於專利或者由於有版權的接口問題使程式在某些國家的發佈和使用受到限止,將此程式置於授權證約束下的原始版權擁有者可以增加限止發佈地區的條款,將這些國家明確排除在外。並在這些國家以外的地區發佈程式。在這種情況下,授權證包含的限止條款和授權證正文一樣有效。

10.自由軟件基金會可能隨時出版通用公共授權證的修改版和/或新版。新版和當前的版本在原則上保持一致,但在提到新問題時或有關事項時,在細節上可能出現差別。

每一版本都有不同的版本號。如果程式指定適用於它的授權證版本號以及「任何更新的版本」。您有權選擇遵循指定的版本或自由軟件基金會以後出版的新版本,如果程式未指定授權證版本,您可選擇自由軟件基金會已經出版的任何版本。

11.如果您願意將程式的一部分結合到其他自由程式中,而它們的發佈條件不同。寫信給作者,要求准予使用。如果是自由軟件基金會加以版權保護的軟件,寫信給自由軟件基金會。我們有時會作為例外的情況處理。我們的決定受兩個主要目標的指導。這兩個主要目標是:我們的自由軟件的衍生作品繼續保持自由狀態。以及從整體上促進軟件的共享和重複利用。

無擔保

12.由於程式准予免費使用,在適用法准許的範圍內,對程式沒有擔保。除非另有書面說明,版權所有者和/或其他提供程式的人們「一樣」不提供任何類型的擔保。不論是明確的,還是隱含的。包括但不限於隱含的適銷和適合特定用途的保證。全部的風險,如程式的質量和性能問題都由您來承擔。如果程式出現問題,您承擔所有必要的服務,修復和改正的費用。

13.除非適用法或書面協議的要求,在任何情況下,任何版權所有者或任何按授權證條款修改和發佈程式的人們都不對您的損失負有任何責任。包括由於使用或不能使用程式引起的任何一般的,特殊的,偶然發生的或重大的損失(包括但不限於數據的損失,或者數據變得不精確,或者您或第三方的持續的損失,或者程式不能和其他程式協調運行等)。即使版權所有者和其他人提到這種損失的可能性也不例外。

條款和條件結束

如何將這些條款用到您的新程式

如果您開發了新程式,而且您需要它得到公眾最大限度的利用。要做到這一點的最好辦法是將它變為自由軟件。使得每個人都能在遵守條款的基礎上對它進行修改和重新發佈。

為了做到這一點,給程式附上下列聲明。最安全的方式是將它放在每個原始碼檔案的開頭,以便最有效地傳遞拒絕擔保的訊息。每個檔案至少應有「版權所有」行以及在什麼地方能看到聲明全文的指示。

用一行空間給出程式的名稱和它用來做什麼的簡單說明。
版權所有(C,yyyy,作者姓名
 
這一程式是自由軟件,您可以遵照自由軟件基金會出版的GNU通用公共授權證條款來修改和重新發佈這一程式。或者用授權證的第二版,或者(根據您的選擇)用任何更新的版本。
 
發佈這一程式的目的是希望它有用,但沒有任何擔保。甚至沒有適合特定目的的隱含的擔保。更詳細的情況請參閱GNU通用公共授權證。
 
您應該已經和程式一起收到一份GNU通用公共授權證的副本。如果還沒有,



寫信給:Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA
此外,還應加上以電子郵件和紙張郵件方式與您保持聯繫的訊息。

如果程式以交互方式進行工作,當它開始進入交互方式工作時,使它輸出類似下面的簡短聲明:
Gnomovision
69版, 版權所有(C 19XX, 作者姓名,

Gnomovision絕對沒有擔保。要想瞭解詳細情況,請輸入『show w』。

這是自由軟件,歡迎您遵守一定的條件重新發佈它,要想瞭解詳細情況,請輸入『show c』。

假設的命令『show w』和『show c』應顯示通用公共授權證的恰當部分。當然,您使用的命令名稱可以不同於『show w』和『show c』。根據您的程式的具體情況,也可以用菜單或鼠標選項來顯示這些條款。

如果需要,您應該取得您的僱主(如果您是程式員)或您的學校簽署放棄程式版權的聲明。下面只是一個例子,您應該改變相應的名稱:

Yoyodyne有限公司以此方式放棄James Harker所寫的Gnomovision程式(在編譯器上通過)的全部版權利益。

Ty coon簽名,1989.4.1

Ty coon付總裁

該通用公共授權證不允許您將程式併入專用程式。如果您的程式是一個子程式庫,您可能會認為用庫的方式和專用應用程式連結更有用。如果這是您想做的事,使用GNU庫通用公共授權證代替本授權證。


這是MySQL參考手冊的翻譯版本,關於MySQL參考手冊,請訪問dev.mysql.com。 原始參考手冊為英文版,與英文版參考手冊相比,本翻譯版可能不是最新的。