此次大版本更新,重构了整个 xmake ,使得 xmake 更加方便地进行多语言扩展,并且在之前原有的构建语言支持上,新增了对golang, dlang 和 rust 程序构建支持。
并且重写了所有文档,提供更加详细完整的接口手册和文档支持:新版 xmake 文档
License 也从之前的 LGPLv2.1 改为 Apache License 2.0 ,更加详细的改进请看下面详细描述:
新特性
- 添加
--links,--linkdirsand--includedirs配置参数 - 添加 app2ipa 插件
- 为
xmake.lua工程描述增加 dictionay 语法风格 - 提供智能扫描编译模式,在无任何
xmake.lua等工程描述文件的情况下,也能直接快速编译 - 为
xmake.lua工程描述添加set_xmakever接口,更加友好的处理版本兼容性问题 - 为
objc和swift程序添加add_frameworks接口 - 更加快速方便的多语言扩展支持,增加
golang,dlang和rust程序构建的支持 - 添加
target_end,option_end和task_end等可选 api ,用于显示结束描述域,进入根域设置,提高可读性 - 添加
golang,dlang和rust工程模板
改进
- 工程生成插件支持 vs2017
- 改进 gcc/clang 编译器警告和错误提示
- 重构代码架构,改进多语言支持,更加方便灵活的扩展语言支持
- 改进 print 接口,同时支持原生 lua print 以及格式化打印
- 如果 xmake.lua 不存在,自动扫描工程代码文件,并且生成 xmake.lua 进行编译
- 修改 license ,使用更加宽松的 Apache License 2.0
- 移除一些二进制工具文件
- 移除 install.bat 脚本,提供 windows nsis 安装包支持
- 使用docute重写文档,提供更加完善的文档支持
- 增强
os.run,os.exec,os.cp,os.mv和os.rm等接口,支持通配符模式匹配和批量文件操作 - 精简和优化构建输出信息,添加
-q|--quiet选项实现静默构建 - 改进
makefile生成插件,抽取编译工具和编译选项到全局变量