恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

Madeira 的 GPL-3.0 附加许可机制:Madeira Converter Exception 与 Apple Metal Shader Converter 的合规组合方案

  • 首页
  • 资讯中心
  • /
  • Madeira 的 GPL-3.0 附加许可机制:Madeira Converter Exception 与 Apple Metal Shader Converter 的合规组合方案

相关资讯

FPGA主时钟约束避坑指南:从语法到实战 2026/9/30 23:42:16
别只海投简历,宣讲会才是秋招信息密度最高的机会 2026/9/30 23:42:16
FPGA与数字IC设计怎么选?从岗位边界到转行路径的全面对比 2026/9/30 23:37:16

最新资讯

智能车竞赛芯片选型指南:从主频、资源到双核与生态的决策链
MCP Kubernetes Server 实战:用 TaoToken 统一 Key 打通集群管理工具链
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
全球开源榜第一的国产模型实测:用 TaoToken 统一 Key 跑通 MiniMax M2 Agent 编程链路

今日推荐

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)

本周热门

从像素到笔画:srt-whiteboard-animation骨架笔迹追踪实现(Zhang-Suen细化+8邻接追踪)
网站建设的英语怎么说?别只背单词,看完这套安全完整流程才敢上线
新手入门看这篇:建设网站加盟避坑指南与SEO实操

本月精选

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)

Madeira 的 GPL-3.0 附加许可机制:Madeira Converter Exception 与 Apple Metal Shader Converter 的合规组合方案

发布时间:2026/9/30 23:42:16
Madeira 的 GPL-3.0 附加许可机制:Madeira Converter Exception 与 Apple Metal Shader Converter 的合规组合方案 游戏开发图形学【免费下载链接】MadeiraRun x86-64 Windows PC games on jailed iOS via FEX-Emu Wine DXMT项目地址https://gitcode.com/GitHub_Trending/mad/Madeira点击查看免费下载导读Madeira 的目标是在被沙盒限制的 iOS 环境中运行 x86-64 Windows 游戏技术栈为 FEX-Emu Wine DXMT其中 DXIL 着色器需要经 Apple 专有的 Metal Shader Converter 动态库libmetalirconverter.dylib转换为 Metal 库。由于 Madeira 主体代码以 GPL-3.0-or-later 授权与 Apple 专有库静态/动态组合存在许可证兼容问题。本文围绕仓库根目录的 LICENSE-EXCEPTION.md 展开讲解Madeira Converter Exception, version 1这份附加许可GPL-3.0 第 7 节机制的生效流程、适用范围边界、配套的 Wine LGPL 分支方案与分发义务帮助读者理解开源项目如何合规地与专有 Apple 组件共存的完整工程实践。一、背景GPL-3.0 代码为何需要一份附加许可Madeira 的授权路径是 GPL-3.0-or-later见 COPYING 与根目录 LICENSE。项目中存在两类许可来源迥异的组件Madeira 作者自有代码主应用Swift/ObjC 与工具链、原生 Direct3D 12 运行时madeira_d3d12.dll、FEX 与 DXMT fork 中的 Madeira 修改代码均为 GPL-3.0-or-laterApple 专有代码Metal Shader Converter 动态库Apple 协议仅允许以着色器转换为目的分发、Apple 系统框架Metal、Foundation、UIKit 等。GPL-3.0 对组合作品combined work的分发有严格的许可证传染要求而 Apple 组件的专有授权与该要求无法兼容。GPL-3.0 第 7 节Additional Terms允许版权持有人为自己的代码附加额外许可从而有条件地豁免特定组合场景下的传染义务——这正是 Madeira Converter Exception 的法律基础。二、Madeira Converter Exception, version 1许可条款全文解读LICENSE-EXCEPTION.md 中定义的Madeira Converter Exception, version 12026-09-16 起草自采纳日起生效核心条款如下如果你修改本程序或任何覆盖作品通过链接或组合的方式将其与 Apple Metal Shader Converter 动态库libmetalirconverter.dylib任意版本、或与 Apple 的 Metal、Foundation、CoreGraphics、QuartzCore、UIKit、AppKit 及相关系统框架或其修改版本结合本程序的许可方授予你额外许可以传播由此产生的作品。关键限制必须注意对应源代码义务保留对以非源码形式传播的组合作品对应源代码必须包含组合中使用的本程序部分的源码但不需要包含 Apple 库的源码不改变 Apple 库的授权该许可不延伸到 Apple 库本身它们仍受 Apple 自身许可条款约束可移除性根据 GPL-3.0 第 7 节传播副本时你可以自行移除这一附加许可。也就是说这份异常只豁免Madeira 自有代码与 Apple 库组合这一场景并未改变任何一方的底层授权。三、生效机制Adoption Line 与 pre-push 钩子这份文件是一份准备中的法律文书其生效有严格的时间线设计起草日期2026-09-16采纳日期2026-09-24由版权持有人 Will Faust 完成采纳Adopted on: 2026-09-24 / By: Will Faust生效边界文档明确分发自首次推送到公共远程开始而不是从发布 tag 开始因此采纳行必须在任何公共推送之前完成工程保障仓库的.githooks/pre-push钩子在文件仍为草稿状态时会拒绝远程推送需执行git config core.hooksPath .githooks启用该钩子见 LICENSE-EXCEPTION.md。这一点与 docs/LICENSING.md 互相印证GPL-3.0 代码与专有转换器的组合仅在版权持有人授予附加许可时被允许而该许可在第一次公共推送之前2026-09-24即已采纳。forks 与运行时中的每一份该文本副本都遵循此采纳——这意味着附加许可随代码副本传播不因 fork 而失效。四、适用范围Scope and Authority覆盖什么、不覆盖什么附加许可只能由其所覆盖代码的版权持有人附加。因此 LICENSE-EXCEPTION.md 用两节明确定义了边界。4.1 覆盖范围由 Madeira 作者持有版权组件说明本仓库中的 Madeira 应用与工具链所有提交均由 Madeira 作者完成贡献按 CONTRIBUTING.md 接受自采纳日起贡献即包含本许可原生 Direct3D 12 运行时research/madeira-d3d12作者相同其自带 LICENSE 承载相同文本FEX 与 DXMT fork 中 Madeira 作者的修改、FEX/External 下 rpmalloc fork 中 Will Faust 的提交各 fork 的LICENSE-MADEIRA.md完整复现本许可在最后一项中上游 FEX 与 DXMT 代码为 MIT上游 rpmalloc 为 0BSDRyan Houdek 的 rpmalloc 提交保持 0BSD——这些组件本就不需要异常。这一点在 THIRD-PARTY-NOTICES.md 的组件表格中亦有完整记录Wine LGPL-2.1-or-later、FEX/DXMT MIT、rpmalloc 0BSD、GMP/Nettle/Hogweed LGPL、GnuTLS LGPL-2.1-or-later 等。4.2 明确不覆盖Nothing here changes上游 Wine 代码Wine fork 曾在 LGPL-2.1 第 3 节下整体转换为 GPL-3.0-or-later该转换对该副本不可逆使 Wine 作者的代码在该树中仅以 GPL 授权除他们本人外任何人无法为其附加异常。因此项目准备了一条LGPL 分支路径基于上游 wine-11.4 基线重新构建将 Madeira 作者的补丁以 LGPL-2.1-or-later 重新应用完整溯源记录见 docs/wine-lgpl-provenance.mdApple 库本身转换器库被跟踪在本仓库中其共存是否构成与 GPL 代码的组合作品属法律审查问题本文件不予定论且仅依据 Apple 协议分发——见 app/Madeira/d3d12/METAL-SHADER-CONVERTER-AGREEMENT.txt 第 2.B 节分发仅为着色器转换之目的。五、源码级佐证异常在仓库中的落点附加许可并非孤立的顶层文档它在整个仓库中形成了一套自洽的证据链原生 D3D12 运行时research/madeira-d3d12/LICENSE 完整声明Madeira Converter Exception, version 1依据 GPL-3.0 第 7 节与 Apple Metal Shader Converter 动态库及 Apple 系统框架组合的附加许可并注明其编译所依赖的转换器头文件为 Apache-2.0见 app/Madeira/d3d12/LICENSE-metal-shader-converter-headers.txt运行时 NOTICEapp/Madeira/d3d12/NOTICE.txt 记录了libmetalirconverter.dylibMetal Shader Converter 4.0 beta 2SHA-256073f903b...的获取与校验方式build/madeira-d3d12/fetch-converter.sh并明确转换器不受 Madeira 的 GPL 或 Madeira Converter Exception 覆盖接收方按 Apple 协议取得它仓库中的canary_*.dxil测试着色器则按GPL-3.0-or-later 附加许可授权贡献者协议CONTRIBUTING.md 明确所有贡献按GPL-3.0-or-later附 Madeira Converter Exception, version 1接受并采用 Developer Certificate of Origingit commit -s签署同时提醒 FEX-Emu 的贡献政策禁止 AI 生成代码Wine fork 溯源docs/wine-lgpl-provenance.md 记录了madeira-lgpl分支的构造方式上游 tagwine-11.4 51 个 Madeira 提交-x按序 cherry-pick跳过转换提交 1 个添加 LGPLLICENSE-MADEIRA.md与CONTRIBUTING.md的提交与已退役的 GPL 分支 diff 仅差 22629 行许可声明行、无任何代码改动随包分发的许可证集合构建产物app/Madeira/licenses/与app/Madeira/legal/目录随包携带 GPL-3.0、异常文本、LGPL-2.1、LGPL-3.0、MIT、0BSD、LLVM 文本及 THIRD-PARTY-NOTICES见 app/Madeira/licenses/THIRD-PARTY-NOTICES.txtbuild/stage-licenses.sh负责刷新两份生成副本Xcode 构建在副本过期时会失败。六、由此产生的分发义务Obligations依据 docs/LICENSING.md 与随包 NOTICES附加许可之外仍需履行的义务包括GPL 与专有库组合仅在版权持有人授予附加许可时被允许已满足且不可扩展至 GPL 转换后的上游 Wine 代码——这是 LGPL 分支存在的根本原因LGPL 静态链接义务WineLGPL 分支、gnutls、nettle、hogweed、gmp 被静态链接进主程序。LGPL-2.1 第 6 节 / LGPL-3 第 4 节要求显著声明使用了 LGPL 库并受其覆盖、提供 LGPL 文本副本、提供库的完整对应源代码及用修改后的库重新链接应用的手段。LGPL-3 第 4(e) 节的 Installation Information 义务仅在满足 GPL-3 第 6 节条件即组合作品在用户产品中分发且可安装时触发sideload 的 iOS 应用是否满足该条件属法律审查问题LGPL-2.1 第 6 节的 relink 要求适用于 Wine 与 gnutls提供应用的目标文件是源码的替代方案同时需允许为调试修改对组合进行逆向工程Apple 协议第 2.D 节转换器不得用于非 Apple 设备或作为服务提供——Madeira 仅运行于 Apple 设备通知义务在各 fork 中保留上游版权与许可声明随包携带NOTICE.txt、Apple 协议全文、头文件的 Apache 文本、COPYING与LICENSE-EXCEPTION.md。七、开放事项与适用限制Open ItemsLICENSE-EXCEPTION.md 与 docs/LICENSING.md 明确了发布前的未决事项读者引用本文时应知悉这些前提madeira-lgpl分支已采纳2026-09-16wine 子模块已指向该分支所有下游 Wine 补丁的作者归属待确认git authorship 是证据而非证明需注明任何改编自第三方代码的补丁LGPL 三元组选举已记录GnuTLS 3.8.9 按 LGPL-2.1-or-later、Nettle/Hogweed 3.10.1 与 GMP 6.3.0 按 LGPL-3.0-or-later 选举源码 tarball 与 SHA-256 校验和跟踪于build/gnutls-ios/src干净机器重建/重链接/安装测试未闭环2026-09-16 的递归克隆无法无辅助构建缺失输入与重建配方见 docs/BUILDING.md端到端重建尚需从零复现、签名并安装验证律师审查整套安排需由开源许可律师复核后公开发布。最后必须强调LICENSE-EXCEPTION.md 是版权持有人的许可声明不是法律建议组装后的应用在公开发布前必须由律师审查。从源码结构可以推断这份文件的工程意义在于它把GPL 代码 专有 Apple 组件这一常见开源合规死结通过 GPL-3.0 第 7 节附加许可 上游组件分支化LGPL Wine 分支 自动化钩子与构建期校验pre-push、stage-licenses.sh三重手段拆解为可验证、可追踪、可随包分发的完整方案——这对于任何需要与 Apple 专有组件共存的开源项目都具有直接参考价值。赞分享游戏开发图形学【免费下载链接】MadeiraRun x86-64 Windows PC games on jailed iOS via FEX-Emu Wine DXMT项目地址https://gitcode.com/GitHub_Trending/mad/Madeira点击查看免费下载相关推荐Notely项目中的GPL-3.0许可证合规实践Notely项目中的GPL 3.0许可证合规实践 在开源软件开发过程中许可证的规范使用是保障项目合规性的重要环节。近期Notely语音笔记项目在许可证文件处理Buster法律合规开源许可证GPL-3.0的解读与应用Buster法律合规开源许可证GPL 3.0的解读与应用 引言开源合规的重要性 在当今开源软件蓬勃发展的时代遵循开源许可证的要求已成为开发者和组织不可忽视人工智能AI 应用语音GPL-3.0开源许可证完全指南OpenSC2K项目的合规实践解析GPL 3.0开源许可证完全指南OpenSC2K项目的合规实践解析 GPL 3.0开源许可证是当今最流行的自由软件许可证之一它为开发者提供了强大的版权保护机游戏开发创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号