Xmake v3.0.9 发布,升级 Lua 5.5,Zig C 互操作,Fil-C 与 Ascend C 工具链
在此版本中,我们将内置 Lua 运行时升级到 5.5,新增了 utils.replace 内置规则,为 Zig 工具链添加了 C 互操作支持,并引入了两个新工具链:Fil-C(内存安全的 C/C++ 实现)和华为昇腾 Ascend C(用于 NPU 编程)。
此外,我们还新增了基于 aria2 的多线程下载后端,支持以 JSON / DOT 格式导出目标和包依赖图,vsxmake 对 C# 目标生成 .csproj 工程,以及围绕自定义工具链、clang-cl[llvm] 工具集、包静态库合并等方面的多项改进。
内置 Lua 运行时已从 5.4 升级到 5.5。Lua 5.5 在语法和行为上有一些改动(例如 for-in 循环变量被视为 const 局部变量、部分旧版库 API 被移除等),可能导致一些在旧版本 xmake 下能正常工作的 xmake.lua 配置代码出现兼容性问题。为了尽可能保持向下兼容,本次升级伴随了几项补丁,把 5.5 之前的常见语义还原回来: