Doxygen 许可证
版权所有 © 1997-2024 Dimitri van Heesch。
特此授予在 GNU 通用公共许可证的条款下使用、复制、修改和分发本软件及其文档的许可。不对此软件适用于任何目的作出任何陈述。本软件按“原样”提供,不带任何明示或暗示的保证。有关更多详细信息,请参阅 GNU 通用公共许可证。
doxygen 生成的文档是根据其生产过程中使用的输入衍生的派生作品;它们不受本许可证的影响。
GNU 通用公共许可证
版本 2,1991年6月
Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
前言
大多数软件的许可证旨在剥夺您分享和更改软件的自由。与此相反,GNU 通用公共许可证旨在保证您分享和更改自由软件的自由——确保软件对其所有用户都是自由的。本通用公共许可证适用于自由软件基金会的大部分软件以及任何其他作者承诺使用它的程序。(自由软件基金会的一些其他软件由 GNU 宽通用公共许可证涵盖。)您也可以将其应用于您的程序。
当我们谈论自由软件时,我们指的是自由,而不是价格。我们的通用公共许可证旨在确保您有权分发自由软件的副本(如果您愿意,可以为此服务收费),确保您收到或可以获得源代码,确保您可以更改软件或将其部分用于新的自由程序;并确保您知道您可以做这些事情。
为了保护您的权利,我们需要制定限制,禁止任何人剥夺或要求您放弃这些权利。如果您分发或修改软件副本,这些限制会转化为您的某些责任。
例如,如果您分发此类程序的副本,无论免费还是收费,您都必须赋予接收者您拥有的所有权利。您必须确保他们也能收到或获得源代码。并且您必须向他们展示这些条款,以便他们了解自己的权利。
我们通过两个步骤保护您的权利:(1) 对软件进行版权保护,以及 (2) 提供此许可证,赋予您复制、分发和/或修改软件的合法许可。
此外,为了保护每个作者和我们自己,我们希望确保每个人都明白,此自由软件没有任何担保。如果软件被他人修改并传递下去,我们希望其接收者知道他们所拥有并非原件,以便他人引入的任何问题不会影响原始作者的声誉。
最后,任何自由程序都不断受到软件专利的威胁。我们希望避免自由程序的再分发者单独获得专利许可的危险,这实际上会使程序变成专有软件。为了防止这种情况,我们已经明确规定,任何专利都必须许可给所有人自由使用,否则就完全不许可。
复制、分发和修改的具体条款和条件如下。
复制、分发和修改的条款和条件
0. 本许可证适用于任何包含版权持有人声明可根据本通用公共许可证条款分发的通知的程序或其他作品。下文的“程序”是指任何此类程序或作品,“基于程序的派生作品”是指程序或根据著作权法产生的任何派生作品:即包含程序或其一部分的作品,无论是原文还是经过修改和/或翻译成其他语言的作品。(下文,“翻译”无限制地包含在“修改”一词中。)每个被许可方都被称为“您”。
除复制、分发和修改之外的活动不受本许可证涵盖;它们超出其范围。运行程序的行为不受限制,程序的输出只有在其内容构成基于程序的作品(独立于运行程序产生的结果)时才被涵盖。这是否属实取决于程序的功能。
1. 您可以按照您收到的程序源代码的原始副本,在任何介质上复制和分发,前提是您在每个副本上显著且适当地发布相应的版权声明和免责声明;保留所有提及本许可证和无任何担保的通知;并向程序的任何其他接收者提供一份本许可证的副本以及程序本身。
您可以为实际转移副本的行为收取费用,并且您可以选择提供担保保护以换取费用。
2. 您可以修改您的程序副本或其任何部分,从而形成基于程序的作品,并根据上文第1节的条款复制和分发此类修改或作品,前提是您也满足所有这些条件:
- a) 您必须使修改后的文件带有显著的通知,说明您修改了文件以及修改日期。
- b) 您必须使您分发或发布的任何作品(全部或部分包含或源自程序或其任何部分)根据本许可证的条款免费许可给所有第三方。
- c) 如果修改后的程序在运行时通常会交互式读取命令,您必须使其在以最通常的方式启动进行此类交互使用时,打印或显示公告,其中包括适当的版权声明和无任何担保的通知(或者,声明您提供担保),并说明用户可以在这些条件下重新分发程序,以及告知用户如何查看本许可证的副本。(例外:如果程序本身是交互式的,但不通常打印此类公告,则您基于程序的作品无需打印公告。)
这些要求适用于修改后的作品整体。如果该作品中可识别的部分并非源自程序,并且可以合理地被视为独立的单独作品,则当您将这些部分作为单独作品分发时,本许可证及其条款不适用于这些部分。但当您将同一部分作为基于程序的整个作品的一部分进行分发时,整个作品的分发必须按照本许可证的条款进行,本许可证对其他被许可方的许可扩展至整个作品,因此也适用于其中每一个部分,无论作者是谁。
因此,本节的目的并非主张或质疑您对完全由您编写的作品的权利;相反,其目的是行使控制基于程序的派生作品或集合作品分发的权利。
此外,仅将另一非基于程序的作品与程序(或基于程序的作品)在存储或分发介质的卷上聚合,并不会使该另一作品落入本许可证的范围。
3. 您可以根据上文第1和第2节的条款,以目标代码或可执行形式复制和分发程序(或根据第2节基于程序的作品),前提是您还必须做到以下其中一项:
- a) 随附完整的相应的机器可读源代码,该源代码必须根据上文第1和第2节的条款,在通常用于软件交换的介质上分发;或者,
- b) 随附一份有效期至少三年的书面提议,以不超过您实际执行源代码分发的成本的价格,向任何第三方提供相应的源代码的完整的机器可读副本,该副本须根据上文第1和第2节的条款,在通常用于软件交换的介质上分发;或者,
- c) 随附您收到的关于分发相应源代码的提议信息。(此替代方案仅允许用于非商业分发,并且仅适用于您根据上文b款收到带有此类提议的目标代码或可执行形式的程序的情况。)
作品的源代码是指该作品进行修改时的首选形式。对于可执行作品,完整的源代码是指其包含的所有模块的所有源代码,加上任何相关的接口定义文件,以及用于控制可执行文件编译和安装的脚本。但是,作为一项特殊例外,分发的源代码无需包含通常与可执行文件运行所在的操作系统主要组件(编译器、内核等)一起分发(无论是源代码还是二进制形式)的任何内容,除非该组件本身也随可执行文件一起提供。
如果通过提供从指定地点复制的访问权限来进行可执行文件或目标代码的分发,那么提供从同一地点复制源代码的同等访问权限也算作源代码的分发,即使第三方并非被迫随目标代码一起复制源代码。
4. 除本许可证明确规定外,您不得复制、修改、再许可或分发程序。任何其他尝试复制、修改、再许可或分发程序的行为均属无效,并将自动终止您在本许可证下的权利。但是,根据本许可证从您那里收到副本或权利的一方,只要该方完全遵守规定,其许可证将不会被终止。
5. 您没有义务接受本许可证,因为您尚未签署它。但是,除非本许可证赋予许可,否则您不得修改或分发程序或其派生作品。如果您不接受本许可证,这些行为将被法律禁止。因此,通过修改或分发程序(或任何基于程序的作品),您表明您接受本许可证允许您这样做,并接受其所有关于复制、分发或修改程序或基于程序的作品的条款和条件。
6. 每次您重新分发程序(或任何基于程序的作品)时,接收者都会自动从原始许可方获得一份许可证,允许其根据这些条款和条件复制、分发或修改程序。您不得对接收者行使本许可证授予的权利施加任何进一步的限制。您不负责强制第三方遵守本许可证。
7. 如果由于法院判决、专利侵权指控或任何其他原因(不限于专利问题),对您施加了(无论是通过法院命令、协议或其他方式)与本许可证条款相矛盾的条件,这些条件并不能免除您遵守本许可证条款的义务。如果您无法同时分发程序以满足本许可证下的义务以及任何其他相关义务,则结果是您根本不能分发程序。例如,如果某个专利许可不允许所有通过您直接或间接收到程序副本的人免版税地再分发程序,那么您唯一能同时满足该许可和本许可证的方式就是完全停止分发程序。
如果本节的任何部分在特定情况下被判定无效或不可执行,则本节的其余部分仍应适用,且本节整体在其他情况下仍应适用。
本节的目的并非诱使您侵犯任何专利或其他财产权主张或质疑任何此类主张的有效性;本节的唯一目的是保护自由软件分发系统的完整性,该系统通过公共许可实践来实现。许多人依靠该系统的一致应用,为通过该系统分发的广泛软件做出了慷慨贡献;由作者/贡献者决定是否愿意通过任何其他系统分发软件,被许可方不能强加该选择。
本节旨在彻底阐明本许可证其他部分所隐含的后果。
8. 如果程序的分发和/或使用在某些国家受到专利或受版权保护的接口限制,将程序置于本许可证下的原始版权持有人可以添加明确的地域分发限制,排除这些国家,以便只在未被排除的国家或这些国家之间允许分发。在这种情况下,本许可证将该限制包含在内,如同写在本许可证的正文中一样。
9. 自由软件基金会可能会不时发布通用公共许可证的修订和/或新版本。这些新版本在精神上将与当前版本相似,但在细节上可能有所不同,以解决新的问题或关注点。
每个版本都有一个区分性的版本号。如果程序指定了适用于它的本许可证版本号以及“任何后续版本”,您可以选择遵守该版本或自由软件基金会发布的任何后续版本的条款和条件。如果程序未指定本许可证的版本号,您可以选择自由软件基金会曾经发布的任何版本。
10. 如果您希望将程序的某些部分整合到分发条件不同的其他自由程序中,请致函作者请求许可。对于自由软件基金会拥有版权的软件,请致函自由软件基金会;我们有时会为此做出例外。我们的决定将遵循两个目标:维护我们自由软件所有派生作品的自由状态,以及促进软件的普遍共享和再利用。
无担保
11. 由于程序是免费许可的,因此在适用法律允许的范围内,对程序不提供任何担保。除非另有书面声明,版权持有人和/或其他人按“原样”提供程序,不附带任何明示或暗示的担保,包括但不限于适销性和特定用途适用性的默示担保。程序质量和性能的全部风险由您承担。如果程序证明存在缺陷,您将承担所有必要的服务、修理或纠正费用。
12. 在任何情况下,除非适用法律要求或书面同意,否则任何版权持有人或任何其他允许修改和/或再分发程序的一方均不对您承担任何损害赔偿责任,包括因使用或无法使用程序而产生的任何一般、特殊、附带或后果性损害赔偿(包括但不限于数据丢失或数据不准确,或您或第三方遭受的损失,或程序无法与其他任何程序协同工作),即使该持有人或其他方已被告知可能发生此类损害。
条款和条件结束
如何将这些条款应用于您的新程序
如果您开发一个新程序,并且希望它对公众具有尽可能大的用处,实现这一目标的最佳方式是将其制作成自由软件,以便每个人都可以根据这些条款进行再分发和更改。
为此,请将以下通知附加到程序中。最安全的方法是将它们附加到每个源文件的开头,以便最有效地传达免责声明;每个文件至少应包含“版权”行和指向完整通知所在位置的指针。
one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
另请添加通过电子邮箱和普通邮件与您联系的信息。
如果程序是交互式的,请使其在以交互模式启动时输出如下简短通知:
Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details.
假设的命令 `show w'` 和 `show c'` 应该显示通用公共许可证的相应部分。当然,您使用的命令可能不叫 `show w'` 和 `show c'`;它们甚至可以是鼠标点击或菜单项——取决于您的程序。
您还应让您的雇主(如果您是程序员)或学校(如有)签署程序的“版权免责声明”(如有必要)。这是一个示例;请修改名称:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice