这是一个经典的不兼容案例。Apache 2.0许可证第3条包含明确的专利授权条款和专利诉讼导致授权终止的条款(If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.)。
而GPL v2认为这些是“进一步的限制(further restrictions)”,违反了其第6条“不得增加限制”的要求(Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.)。
GPL v2第6条是Copyleft的核心防御机制,确保下游用户获得不少于上游的权利。Apache 2.0的专利终止条款被视为对用户的额外限制(尽管旨在保护开源生态),GPL v2不允许将其施加于整个衍生作品。因此,使用者不能合法地将一个Apache 2.0的代码库和一个GPL v2的代码库合并,然后以GPL v2分发,因为无法同时满足这两个条款。