.. SPDX-License-Identifier: GPL-2.0 .. include:: ../disclaimer-zh_TW.rst :Original: :ref:`Documentation/process/license-rules.rst <kernel_licensing>` :Translator: Alex Shi <alex.shi@linux.alibaba.com> Hu Haowen <2023002089@link.tyut.edu.cn> .. _tw_kernel_licensing: Linuxå…§æ ¸è¨±å¯è¦å‰‡ ================= Linuxå…§æ ¸æ ¹æ“šLICENSES/preferred/GPL-2.0ä¸æ供的GNU通用公共許å¯è‰ç‰ˆæœ¬2 (GPL-2.0)的æ¢æ¬¾æ供,並在LICENSES/exceptions/Linux-syscall-noteä¸é¡¯å¼ æ述了例外的系統調用,如COPYING文件ä¸æ‰€è¿°ã€‚ æ¤æ–‡æª”文件æä¾›çžå¦‚何å°æ¯å€‹æºæ–‡ä»¶é€²è¡Œè¨»é‡‹ä»¥ä½¿å…¶è¨±å¯è‰æ¸…晰明確的說明。 它ä¸æœƒå–ä»£å…§æ ¸çš„è¨±å¯è‰ã€‚ å…§æ ¸æºä»£ç¢¼ä½œçˆ²ä¸€å€‹æ•´é«”é©ç”¨æ–¼COPYING文件ä¸æ述的許å¯è‰ï¼Œä½†æ˜¯å–®å€‹æºæ–‡ä»¶å¯ä»¥ 具有ä¸åŒçš„與GPL-20兼容的許å¯è‰:: GPL-1.0+ : GNU通用公共許å¯è‰v1.0或更高版本 GPL-2.0+ : GNU通用公共許å¯è‰v2.0或更高版本 LGPL-2.0 : 僅é™GNU庫通用公共許å¯è‰v2 LGPL-2.0+: GNU 庫通用公共許å¯è‰v2或更高版本 LGPL-2.1 : 僅é™GNU寬通用公共許å¯è‰v2.1 LGPL-2.1+: GNU寬通用公共許å¯è‰v2.1或更高版本 除æ¤ä¹‹å¤–,個人文件å¯ä»¥åœ¨é›™é‡è¨±å¯ä¸‹æ供,例如一個兼容的GPL變體,或者BSD, MITç‰è¨±å¯ã€‚ 用戶空間API(UAPI)é 文件æ述了用戶空間程åºèˆ‡å…§æ ¸çš„接å£ï¼Œé€™æ˜¯ä¸€ç¨®ç‰¹æ®Šæƒ…æ³ã€‚ æ ¹æ“šå…§æ ¸COPYING文件ä¸çš„註釋,syscall接å£æ˜¯ä¸€å€‹æ˜Žç¢ºçš„邊界,它ä¸æœƒå°‡GPLè¦æ±‚ æ“´å±•åˆ°ä»»ä½•ä½¿ç”¨å®ƒèˆ‡å…§æ ¸é€šä¿¡çš„è»Ÿä»¶ã€‚ç”±æ–¼UAPIé æ–‡ä»¶å¿…é ˆåŒ…å«åœ¨å‰µå»ºåœ¨Linuxå…§æ ¸ 上é‹è¡Œçš„å¯åŸ·è¡Œæ–‡ä»¶çš„任何æºæ–‡ä»¶ä¸ï¼Œå› æ¤æ¤ä¾‹å¤–å¿…é ˆè¨˜éŒ„åœ¨ç‰¹åˆ¥çš„è¨±å¯è‰è¡¨è¿°ä¸ã€‚ 表é”æºæ–‡ä»¶è¨±å¯è‰çš„常用方法是將匹é…的樣æ¿æ–‡æœ¬æ·»åŠ åˆ°æ–‡ä»¶çš„é ‚éƒ¨è¨»é‡‹ä¸ã€‚由於 æ ¼å¼ï¼Œæ‹¼å¯«éŒ¯èª¤ç‰ï¼Œé€™äº›â€œæ¨£æ¿â€å¾ˆé›£é€šéŽé‚£äº›åœ¨ä¸Šä¸‹æ–‡ä¸ä½¿ç”¨çš„é©—è‰è¨±å¯è‰åˆè¦æ€§ 的工具。 樣æ¿æ–‡æœ¬çš„替代方法是在æ¯å€‹æºæ–‡ä»¶ä¸ä½¿ç”¨è»Ÿä»¶åŒ…數據交æ›ï¼ˆSPDX)許å¯è‰æ¨™è˜ç¬¦ã€‚ SPDX許å¯è‰æ¨™è˜ç¬¦æ˜¯æ©Ÿå™¨å¯è§£æžçš„,並且是用於æ供文件內容的許å¯è‰çš„精確縮寫。 SPDX許å¯è‰æ¨™è˜ç¬¦ç”±Linux 基金會的SPDX 工作組管ç†ï¼Œä¸¦å¾—到了整個行æ¥ï¼Œå·¥å…· 供應商和法律團隊的åˆä½œä¼™ä¼´çš„一致åŒæ„。有關詳細信æ¯ï¼Œè«‹åƒé–± https://spdx.org/ Linuxå…§æ ¸éœ€è¦æ‰€æœ‰æºæ–‡ä»¶ä¸çš„精確SPDX標è˜ç¬¦ã€‚å…§æ ¸ä¸ä½¿ç”¨çš„有效標è˜ç¬¦åœ¨ `許å¯æ¨™è˜ç¬¦`_ 一節ä¸é€²è¡Œäº†è§£é‡‹ï¼Œä¸¦ä¸”å·²å¯ä»¥åœ¨ https://spdx.org/licenses/ 上的官方SPDX許å¯è‰åˆ—表ä¸æª¢ç´¢ï¼Œä¸¦é™„帶許å¯è‰ 文本。 許å¯æ¨™è˜ç¬¦èªžæ³• -------------- 1.安置: Â Â Â å…§æ ¸æ–‡ä»¶ä¸çš„SPDX許å¯è‰æ¨™è˜ç¬¦æ‡‰æ·»åŠ 到å¯åŒ…å«è¨»é‡‹çš„文件ä¸çš„第一行。å°æ–¼å¤§å¤š 數文件,這是第一行,除了那些在第一行ä¸éœ€è¦'#!PATH_TO_INTERPRETER'的腳本。 å°æ–¼é€™äº›è…³æœ¬ï¼ŒSPDX標è˜ç¬¦é€²å…¥ç¬¬äºŒè¡Œã€‚ | 2. é¢¨æ ¼: SPDX許å¯è‰æ¨™è˜ç¬¦ä»¥è¨»é‡‹çš„å½¢å¼æ·»åŠ 。註釋樣å¼å–決於文件類型:: C source: // SPDX-License-Identifier: <SPDX License Expression> C header: /* SPDX-License-Identifier: <SPDX License Expression> */ ASM: /* SPDX-License-Identifier: <SPDX License Expression> */ scripts: # SPDX-License-Identifier: <SPDX License Expression> .rst: .. SPDX-License-Identifier: <SPDX License Expression> .dts{i}: // SPDX-License-Identifier: <SPDX License Expression> 如果特定工具無法處ç†æ¨™æº–註釋樣å¼ï¼Œå‰‡æ‡‰ä½¿ç”¨å·¥å…·æŽ¥å—的相應註釋機制。這是在 C é 文件ä¸ä½¿ç”¨â€œ/\*\*/â€æ¨£å¼è¨»é‡‹çš„åŽŸå› ã€‚éŽåŽ»åœ¨ä½¿ç”¨ç”Ÿæˆçš„.lds文件ä¸è§€å¯Ÿåˆ° æ§‹å»ºè¢«ç ´å£žï¼Œå…¶ä¸'ld'無法解æžC++註釋。ç¾åœ¨å·²ç¶“解決了這個å•é¡Œï¼Œä½†ä»ç„¶æœ‰è¼ƒ 舊的彙編程åºå·¥å…·ç„¡æ³•è™•ç†C++樣å¼çš„註釋。 | 3. å¥æ³•: <SPDX許å¯è‰è¡¨é”å¼>是SPDX許å¯è‰åˆ—表ä¸çš„SPDXçŸæ ¼å¼è¨±å¯è‰æ¨™è˜ç¬¦ï¼Œæˆ–è€…åœ¨è¨±å¯ è‰ä¾‹å¤–é©ç”¨æ™‚由“WITHâ€åˆ†éš”的兩個SPDXçŸæ ¼å¼è¨±å¯è‰æ¨™è˜ç¬¦çš„組åˆã€‚當應用多個許 å¯è‰æ™‚,表é”å¼ç”±åˆ†éš”å表é”å¼çš„é—œéµå—“ANDâ€ï¼Œâ€œORâ€çµ„æˆï¼Œä¸¦ç”±â€œï¼ˆâ€ï¼Œâ€œï¼‰â€åŒ…åœã€‚ 帶有“或更高â€é¸é …çš„[L]GPLç‰è¨±å¯è‰çš„許å¯è‰æ¨™è˜ç¬¦é€šéŽä½¿ç”¨â€œ+â€ä¾†è¡¨ç¤ºâ€œæˆ–更高†é¸é …來構建。:: // SPDX-License-Identifier: GPL-2.0+ // SPDX-License-Identifier: LGPL-2.1+ 當需è¦ä¿®æ£çš„許å¯è‰æ™‚,應使用WITH。 例如,linuxå…§æ ¸UAPI文件使用表é”å¼:: // SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note // SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note å…¶å®ƒåœ¨å…§æ ¸ä¸ä½¿ç”¨WITH例外的事例如下:: // SPDX-License-Identifier: GPL-2.0 WITH mif-exception // SPDX-License-Identifier: GPL-2.0+ WITH GCC-exception-2.0 例外åªèƒ½èˆ‡ç‰¹å®šçš„許å¯è‰æ¨™è˜ç¬¦ä¸€èµ·ä½¿ç”¨ã€‚有效的許å¯è‰æ¨™è˜ç¬¦åˆ—在異常文本文件 的標記ä¸ã€‚有關詳細信æ¯ï¼Œè«‹åƒé–± `許å¯æ¨™è˜ç¬¦`_ ä¸€ç« ä¸çš„ `例外`_ 。 如果文件是雙é‡è¨±å¯ä¸”åªé¸æ“‡ä¸€å€‹è¨±å¯è‰ï¼Œå‰‡æ‡‰ä½¿ç”¨OR。例如,一些dtsi文件在雙 許å¯ä¸‹å¯ç”¨:: // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause å…§æ ¸ä¸é›™è¨±å¯æ–‡ä»¶ä¸è¨±å¯è¡¨é”å¼çš„示例:: // SPDX-License-Identifier: GPL-2.0 OR MIT // SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause // SPDX-License-Identifier: GPL-2.0 OR Apache-2.0 // SPDX-License-Identifier: GPL-2.0 OR MPL-1.1 // SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) OR MIT // SPDX-License-Identifier: GPL-1.0+ OR BSD-3-Clause OR OpenSSL 如果文件具有多個許å¯è‰ï¼Œå…¶æ¢æ¬¾å…¨éƒ¨é©ç”¨æ–¼ä½¿ç”¨è©²æ–‡ä»¶ï¼Œå‰‡æ‡‰ä½¿ç”¨AND。例如, 如果代碼是從å¦ä¸€å€‹é …ç›®ç¹¼æ‰¿çš„ï¼Œä¸¦ä¸”å·²ç¶“æŽˆäºˆäº†å°‡å…¶æ”¾å…¥å…§æ ¸çš„æ¬Šé™ï¼Œä½†åŽŸå§‹ 許å¯æ¢æ¬¾éœ€è¦ä¿æŒæœ‰æ•ˆ:: // SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) AND MIT å¦ä¸€å€‹éœ€è¦éµå®ˆå…©å¥—許å¯æ¢æ¬¾çš„例å是:: // SPDX-License-Identifier: GPL-1.0+ AND LGPL-2.1+ 許å¯æ¨™è˜ç¬¦ ---------- 當å‰ä½¿ç”¨çš„許å¯è‰ä»¥åŠæ·»åŠ åˆ°å…§æ ¸çš„ä»£ç¢¼è¨±å¯è‰å¯ä»¥åˆ†è§£çˆ²ï¼š 1. _`優先許å¯`: 應儘å¯èƒ½ä½¿ç”¨é€™äº›è¨±å¯è‰ï¼Œå› 爲它們已知完全兼容並廣泛使用。這些許å¯è‰åœ¨å…§æ ¸ 目錄:: LICENSES/preferred/ æ¤ç›®éŒ„ä¸çš„文件包å«å®Œæ•´çš„許å¯è‰æ–‡æœ¬å’Œ `元標記`_ 。文件å與SPDX許å¯è‰æ¨™è˜ 符相åŒï¼Œå¾Œè€…應用於æºæ–‡ä»¶ä¸çš„許å¯è‰ã€‚ 例如:: LICENSES/preferred/GPL-2.0 包å«GPLv2許å¯è‰æ–‡æœ¬å’Œæ‰€éœ€çš„元標籤:: LICENSES/preferred/MIT 包å«MIT許å¯è‰æ–‡æœ¬å’Œæ‰€éœ€çš„元標記 _`元標記`: 許å¯è‰æ–‡ä»¶ä¸å¿…é ˆåŒ…å«ä»¥ä¸‹å…ƒæ¨™è¨˜ï¼š - Valid-License-Identifier:   一行或多行, è²æ˜Žé‚£äº›è¨±å¯æ¨™è˜ç¬¦åœ¨é …目內有效, 以引用æ¤ç‰¹å®šè¨±å¯çš„文本。通 常這是一個有效的標è˜ç¬¦ï¼Œä½†æ˜¯ä¾‹å¦‚å°æ–¼å¸¶æœ‰'或更高'é¸é …的許å¯è‰ï¼Œå…©å€‹æ¨™è˜ 符都有效。 - SPDX-URL: SPDXé é¢çš„URL,其ä¸åŒ…å«èˆ‡è¨±å¯è‰ç›¸é—œçš„其他信æ¯. - Usage-Guidance: 使用建è°çš„è‡ªç”±æ ¼å¼æ–‡æœ¬ã€‚è©²æ–‡æœ¬å¿…é ˆåŒ…å«SPDX許å¯è‰æ¨™è˜ç¬¦çš„æ£ç¢ºç¤ºä¾‹ï¼Œå› 爲 å®ƒå€‘æ‡‰æ ¹æ“š `許å¯æ¨™è˜ç¬¦èªžæ³•`_ 指å—放入æºæ–‡ä»¶ä¸ã€‚ - License-Text: æ¤æ¨™è¨˜ä¹‹å¾Œçš„所有文本都被視爲原始許å¯æ–‡æœ¬ æ–‡ä»¶æ ¼å¼ç¤ºä¾‹:: Valid-License-Identifier: GPL-2.0 Valid-License-Identifier: GPL-2.0+ SPDX-URL: https://spdx.org/licenses/GPL-2.0.html Usage-Guide: To use this license in source code, put one of the following SPDX tag/value pairs into a comment according to the placement guidelines in the licensing rules documentation. For 'GNU General Public License (GPL) version 2 only' use: SPDX-License-Identifier: GPL-2.0 For 'GNU General Public License (GPL) version 2 or any later version' use: SPDX-License-Identifier: GPL-2.0+ License-Text: Full license text :: SPDX-License-Identifier: MIT SPDX-URL: https://spdx.org/licenses/MIT.html Usage-Guide: To use this license in source code, put the following SPDX tag/value pair into a comment according to the placement guidelines in the licensing rules documentation. SPDX-License-Identifier: MIT License-Text: Full license text | 2. ä¸æŽ¨è–¦çš„許å¯è‰: 這些許å¯è‰åªæ‡‰ç”¨æ–¼ç¾æœ‰ä»£ç¢¼æˆ–å¾žå…¶ä»–é …ç›®å°Žå…¥ä»£ç¢¼ã€‚é€™äº›è¨±å¯è‰åœ¨å…§æ ¸ç›®éŒ„:: LICENSES/other/ æ¤ç›®éŒ„ä¸çš„文件包å«å®Œæ•´çš„許å¯è‰æ–‡æœ¬å’Œ `元標記`_ 。文件å與SPDX許å¯è‰æ¨™è˜ 符相åŒï¼Œå¾Œè€…應用於æºæ–‡ä»¶ä¸çš„許å¯è‰ã€‚ 例如:: LICENSES/other/ISC 包å«åœ‹éš›ç³»çµ±è¯åˆè¨±å¯æ–‡æœ¬å’Œæ‰€éœ€çš„元標籤:: LICENSES/other/ZLib 包å«ZLIB許å¯æ–‡æœ¬å’Œæ‰€éœ€çš„元標籤. 元標籤: “其他â€è¨±å¯è‰çš„元標籤è¦æ±‚與 `優先許å¯`_ çš„è¦æ±‚相åŒã€‚ æ–‡ä»¶æ ¼å¼ç¤ºä¾‹:: Valid-License-Identifier: ISC SPDX-URL: https://spdx.org/licenses/ISC.html Usage-Guide: Usage of this license in the kernel for new code is discouraged and it should solely be used for importing code from an already existing project. To use this license in source code, put the following SPDX tag/value pair into a comment according to the placement guidelines in the licensing rules documentation. SPDX-License-Identifier: ISC License-Text: Full license text | 3. _`例外`: æŸäº›è¨±å¯è‰å¯ä»¥ä¿®æ”¹ï¼Œä¸¦å…許原始許å¯è‰ä¸å…·æœ‰çš„æŸäº›ä¾‹å¤–權利。這些例外在 å…§æ ¸ç›®éŒ„:: LICENSES/exceptions/ æ¤ç›®éŒ„ä¸çš„文件包å«å®Œæ•´çš„例外文本和所需的 `例外元標記`_ 。 例如:: LICENSES/exceptions/Linux-syscall-note 包å«Linuxå…§æ ¸çš„COPYING文件ä¸è¨˜éŒ„çš„Linux系統調用例外,該文件用於UAPI é 文件。例如:: LICENSES/exceptions/GCC-exception-2.0 包å«GCC'éˆæŽ¥ä¾‹å¤–',它å…許ç¨ç«‹æ–¼å…¶è¨±å¯è‰çš„任何二進制文件與標記有æ¤ä¾‹å¤–çš„ 文件的編è¯ç‰ˆæœ¬éˆæŽ¥ã€‚這是從GPLä¸å…¼å®¹æºä»£ç¢¼å‰µå»ºå¯é‹è¡Œçš„å¯åŸ·è¡Œæ–‡ä»¶æ‰€å¿…需的。 _`例外元標記`: ä»¥ä¸‹å…ƒæ¨™è¨˜å¿…é ˆåœ¨ä¾‹å¤–æ–‡ä»¶ä¸å¯ç”¨ï¼š - SPDX-Exception-Identifier:   一個å¯èˆ‡SPDX許å¯è‰æ¨™è˜ç¬¦ä¸€èµ·ä½¿ç”¨çš„例外標è˜ç¬¦ã€‚ - SPDX-URL: SPDXé é¢çš„URL,其ä¸åŒ…å«èˆ‡ä¾‹å¤–相關的其他信æ¯ã€‚ - SPDX-Licenses:   以逗號分隔的例外å¯ç”¨çš„SPDX許å¯è‰æ¨™è˜ç¬¦åˆ—表。 - Usage-Guidance: 使用建è°çš„è‡ªç”±æ ¼å¼æ–‡æœ¬ã€‚å¿…é ˆåœ¨æ–‡æœ¬å¾Œé¢åŠ 上SPDX許å¯è‰æ¨™è˜ç¬¦çš„æ£ç¢ºç¤ºä¾‹ï¼Œ å› çˆ²å®ƒå€‘æ‡‰æ ¹æ“š `許å¯æ¨™è˜ç¬¦èªžæ³•`_ 指å—放入æºæ–‡ä»¶ä¸ã€‚ - Exception-Text: æ¤æ¨™è¨˜ä¹‹å¾Œçš„所有文本都被視爲原始異常文本 æ–‡ä»¶æ ¼å¼ç¤ºä¾‹:: SPDX-Exception-Identifier: Linux-syscall-note SPDX-URL: https://spdx.org/licenses/Linux-syscall-note.html SPDX-Licenses: GPL-2.0, GPL-2.0+, GPL-1.0+, LGPL-2.0, LGPL-2.0+, LGPL-2.1, LGPL-2.1+ Usage-Guidance: This exception is used together with one of the above SPDX-Licenses to mark user-space API (uapi) header files so they can be included into non GPL compliant user-space application code. To use this exception add it with the keyword WITH to one of the identifiers in the SPDX-Licenses tag: SPDX-License-Identifier: <SPDX-License> WITH Linux-syscall-note Exception-Text: Full exception text :: SPDX-Exception-Identifier: GCC-exception-2.0 SPDX-URL: https://spdx.org/licenses/GCC-exception-2.0.html SPDX-Licenses: GPL-2.0, GPL-2.0+ Usage-Guidance: The "GCC Runtime Library exception 2.0" is used together with one of the above SPDX-Licenses for code imported from the GCC runtime library. To use this exception add it with the keyword WITH to one of the identifiers in the SPDX-Licenses tag: SPDX-License-Identifier: <SPDX-License> WITH GCC-exception-2.0 Exception-Text: Full exception text 所有SPDX許å¯è‰æ¨™è˜ç¬¦å’Œä¾‹å¤–éƒ½å¿…é ˆåœ¨LICENSESå目錄ä¸å…·æœ‰ç›¸æ‡‰çš„文件。這是å…許 工具驗è‰ï¼ˆä¾‹å¦‚checkpatch.pl)以åŠæº–備好從æºè®€å–å’Œæå–許å¯è‰æ‰€å¿…需的, 這是 å„種FOSS組織推薦的,例如 `FSFE REUSE initiative <https://reuse.software/>`_. _`模塊許å¯` ----------------- å¯åŠ è¼‰å…§æ ¸æ¨¡å¡Šé‚„éœ€è¦MODULE_LICENSE()標記。æ¤æ¨™è¨˜æ—¢ä¸æ›¿ä»£æ£ç¢ºçš„æºä»£ç¢¼ 許å¯è‰ä¿¡æ¯ï¼ˆSPDX-License-Identifier),也ä¸ä»¥ä»»ä½•æ–¹å¼è¡¨ç¤ºæˆ–確定æ供模塊 æºä»£ç¢¼çš„確切許å¯è‰ã€‚ æ¤æ¨™è¨˜çš„唯一目的是æä¾›è¶³å¤ çš„ä¿¡æ¯ï¼Œè©²æ¨¡å¡Šæ˜¯å¦æ˜¯è‡ªç”±è»Ÿä»¶æˆ–è€…æ˜¯å…§æ ¸æ¨¡å¡ŠåŠ è¼‰å™¨å’Œç”¨æˆ¶ç©ºé–“å·¥å…·çš„å°ˆæœ‰æ¨¡å¡Šã€‚ MODULE_LICENSE()的有效許å¯è‰å—符串是: ============================= ============================================= "GPL" æ¨¡å¡Šæ˜¯æ ¹æ“šGPL版本2許å¯çš„。這並ä¸è¡¨ç¤ºåƒ…é™æ–¼ GPL-2.0或GPL-2.0或更高版本之間的任何å€åˆ¥ã€‚ 最æ£ç¢ºè¨±å¯è‰ä¿¡æ¯åªèƒ½é€šéŽç›¸æ‡‰æºæ–‡ä»¶ä¸çš„許å¯è‰ ä¿¡æ¯ä¾†ç¢ºå®š "GPL v2" å’Œ"GPL"相åŒï¼Œå®ƒçš„å˜åœ¨æ˜¯å› 爲æ·å²åŽŸå› 。 "GPL and additional rights" 表示模塊æºåœ¨GPL v2變體和MIT許å¯ä¸‹é›™é‡è¨±å¯çš„ æ·å²è®Šé«”。請ä¸è¦åœ¨æ–°ä»£ç¢¼ä¸ä½¿ç”¨ã€‚ "Dual MIT/GPL" 表é”該模塊在GPL v2變體或MIT許å¯è‰é¸æ“‡ä¸‹é›™é‡ 許å¯çš„æ£ç¢ºæ–¹å¼ã€‚ "Dual BSD/GPL" è©²æ¨¡å¡Šæ ¹æ“šGPL v2變體或BSD許å¯è‰é¸æ“‡é€²è¡Œé›™é‡ 許å¯ã€‚ BSD許å¯è‰çš„確切變體åªèƒ½é€šéŽç›¸æ‡‰æºæ–‡ä»¶ ä¸çš„許å¯è‰ä¿¡æ¯ä¾†ç¢ºå®šã€‚ "Dual MPL/GPL" è©²æ¨¡å¡Šæ ¹æ“šGPL v2變體或Mozilla Public License (MPL)é¸é …進行雙é‡è¨±å¯ã€‚ MPL許å¯è‰çš„確切變體 åªèƒ½é€šéŽç›¸æ‡‰çš„æºæ–‡ä»¶ä¸çš„許å¯è‰ä¿¡æ¯ä¾†ç¢ºå®šã€‚ "Proprietary" 該模塊屬於專有許å¯ã€‚æ¤å—符串僅用於專有的第三 方模塊,ä¸èƒ½ç”¨æ–¼åœ¨å…§æ ¸æ¨¹ä¸å…·æœ‰æºä»£ç¢¼çš„模塊。 以這種方å¼æ¨™è¨˜çš„æ¨¡å¡Šåœ¨åŠ è¼‰æ™‚æœƒä½¿ç”¨'P'標記污 æŸ“å…§æ ¸ï¼Œä¸¦ä¸”å…§æ ¸æ¨¡å¡ŠåŠ è¼‰å™¨æ‹’çµ•å°‡é€™äº›æ¨¡å¡ŠéˆæŽ¥ 到使用EXPORT_SYMBOL_GPL()導出的符號。 ============================= =============================================