Doxygen 许可证
版权所有 © 1997-2024 by 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 条的条款,以目标代码或可执行形式复制和分发程序(或基于程序的作品),前提是您还执行以下一项:
- 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