代码拉取完成,页面将自动刷新
本指导明确了 OpenHarmony-TPC 中分发的代码的许可证的指导和规则。
原则上,OpenHarmony-TPC项目内的贡献代码均应提供源代码,并采用开源促进会OSI批准的开源许可证进行分发。
针对贡献者完全原创的代码,建议采用 Apache License 2.0(Apache-2.0)。
针对衍生作品代码,建议贡献者必须检视并判断本衍生作品代码的上游软件的许可证是否允许贡献者将本衍生作品代码进行开源贡献,以及上游软件的许可证允许贡献者采用何种许可证进行贡献。上述检视和判断的规则与指导请参照如下表格:
上游软件许可证类型 | 示例 | 上游软件许可证是否允许制作衍生作品以及进行开源贡献 | 衍生作品可以采用的许可证 | 建议衍生作品可以采用的许可证 |
---|---|---|---|---|
Permissive License | MIT/BSD/ISC/Apache2.0等 | 是 | 通常无限制可 | Apache License 2.0 或者上游软件的原开源许可证 |
Weak Copyleft License | MPLv2/CDDL/EPLv2/LGPLv2等类型许可证 | 是 | 多数情况下,衍生作品的许可证受到上游软件许可证约束,应该沿袭采用上游软件原许可证 | 上游软件的原开源许可证 |
Copyleft License | GPLv2,GPLv3等类型许可证 | 是 | 多数情况下,衍生作品的许可证受到上游软件许可证约束,应该沿袭采用上游软件原许可证 | 上游软件的原开源许可证 |
特殊许可证/非开源许可证 | EULA/SSPL/Elastic License/BSL等类型许可证 | 需特别判断 | 需特别判断 | 需特别判断 |
多个上游软件对应多个许可证 | / | 需特别判断 | 需特别判断 | 需特别判断,建议的规则: 1.如所有许可证均为Permissive License, 建议采用Apache License 2.0; 2.如多个许可证中包含(Weak )Copyleft License,建议采用(Weak )Copyleft License。 |
注:
1.为便于理解:上表"Copyleft License"即指"Strong Copyleft License",该类许可证明确要求所有基于原始作品的衍生作品亦须遵循相同的许可条款进行发布
与传播。
2.若上游软件许可证为Apache2.0,则衍生作品不可采用GPLV2许可证。
a. 功能适配:
1)原有文件修改:针对源代码的调整,需完整保留原始上游软件的License和Copyright信息。
2)新增文件:所有新增文件应遵循指导表格中提供的许可证判断规则,维护项目整体的合规性。
3)语言改写:需保留原上游软件许可证信息,并在版权头中注明改写者信息,同时增加base on(上游软件信息),例如test.ets文件由上游test.java衍生而来
的,则其许可证与版权头写法如下:
/* xxx-License-Identifier: SBD-2.0 */
/**
* CopyRight (c) 2024 zhangsan <zhangsan@abc.com>
*
* Based on test.java originally written by
* CopyRight (C) 2010 lisi <lisi@xtz.com>
**/
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。