Releases: xmake-io/xmake
Releases · xmake-io/xmake
xmake v2.0.3
New features
- Add check includes dependence automatically
- Add print colors
- Add debugger support, .e.g
xmake run -d program ...
Changes
- Improve the interfaces of run shell
- Upgrade luajit to v2.0.4
- Improve to generate makefile plugin
- Optimizate the multitasking compiling speed
Bugs fixed
- Fix install directory bug
- Fix the root directory error for
import
interface - Fix check visual stdio error on windows
新特性
- 增加头文件依赖自动检测和增量编译,提高编译速度
- 在终端中进行颜色高亮提示
- 添加调试器支持,
xmake run -d program ...
改进
- 增强运行shell的系列接口
- 更新luajit到v2.0.4版本
- 改进makefile生成插件,移除对xmake的依赖,并且支持
windows/linux/macosx
等大部分pc平台 - 优化多任务编译速度,在windows下编译提升较为明显
Bugs修复
- 修复安装目录错误问题
- 修复
import
根目录错误问题 - 修复在多版本vs同时存在的情况下,检测vs环境失败问题
xmake v2.0.2
Changes
- Change install and uninstall actions
- Update templates
- Improve to check function
Bugs fixed
- #7: Fix create project bug with '[targetname]'
- #9: Support clang with c++11
- Fix api scope leaks bug
- Fix path bug for windows
- Fix check function bug
- Fix check toolchains failed
- Fix compile failed for android on windows
改进
- 修改安装和卸载的action处理
- 更新工程模板
- 增强函数检测
Bugs修复
xmake v2.0.1
New features
- Add task api for running custom tasks
- Add plugin expansion and provide some builtin plugins
- Add export ide project plugin(.e.g makefile and will support to export other projects for vs, xcode in feature)
- Add demo plugin for printing 'hello xmake'
- Add make doxygen documents plugin
- Add macro script plugin
- Add more modules for developing plugin
- Add exception using try/catch and simplify grammar for plugin script
- Add option bindings
- Show progress when building
Changes
- Rewrite interpreter for xmake.lua
- More strict syntax detection mechanism
- More strict api scope for xmake.lua
- Simplify template development
- Extend platforms, tools, templates and actions fastly
- Simplify api and support import modules
- Remove dependence for gnu make/nmake, no longer need makefile
- Optimize speed for building and faster x4 than v1.0.4
- Optimize automatic detection
- Modify some api name, but be compatible with the old version
- Optimize merging static library
- Simplify cross compilation using argument
--sdk=xxx
- Simplify boolean option for command line, .e.g
xmake config --xxx=[y|n|yes|no|true|false]
- Merge iphoneos and iphonesimulator platforms
- Merge watchos and watchsimulator platformss
Bugs fixed
- #3: ArchLinux compilation failed
- #4: Install failed for windows
- Fix envirnoment variable bug for windows
新特性
- 增加task任务机制,可运行自定义任务脚本
- 实现plugin扩展机制,可以很方便扩展实现自定义插件,目前已实现的一些内置插件
- 增加project文件导出插件(目前已支持makefile的生成,后续会支持:vs, xcode等工程的生成)
- 增加hello xmake插件(插件demo)
- 增加doxygen文档生成插件
- 增加自定义宏脚本插件(支持动态宏记录、宏回放、匿名宏、批量导入、导出等功能)
- 增加更多的类库用于插件化开发
- 实现异常捕获机制,简化上层调用逻辑
- 增加多个option进行宏绑定,实现配置一个参数,就可以同时对多个配置进行生效
- 增加显示全局构建进度
改进
- 重构整个xmake.lua描述文件的解释器,更加的灵活可扩展
- 更加严格的语法检测机制
- 更加严格的作用域管理,实现沙盒引擎,对xmake.lua中脚本进行沙盒化处理,使得xmake.lua更加的安全
- 简化模板的开发,简单几行描述就可以扩展一个新的自定义工程模板
- 完全模块化platforms、tools、templates、actions,以及通过自注册机制,只需把自定义的脚本放入对应目录,就可实现快速扩展
- 针对所有可扩展脚本所需api进行大量简化,并实现大量类库,通过import机制进行导入使用
- 移除对gnu make/nmake等make工具的依赖,不再需要makefile,实现自己的make算法,
- 优化构建速度,支持多任务编译(支持vs编译器)(实测:比v1.0.4提升x4倍的构建性能)
- 优化自动检测机制,更加的稳定和准确
- 修改部分工程描述api,增强扩展性,减少一些命名歧义(对低版本向下兼容)
- 优化静态库合并:
add_files("*.a")
,修复一些bug - 优化交叉编译,通过
--sdk=xxx
参数实现更加方便智能的进行交叉编译配置,简化mingw平台的编译配置 - 简化命令行配置开关, 支持
xmake config --xxx=[y|n|yes|no|true|false]
等开关值 - 合并iphoneos和iphonesimulator平台,以及watchos和watchsimulator平台,通过arch来区分,使得打包更加方便,能够支持一次性打包iphoneos的所有arch到一个包中
Bugs修复
xmake v1.0.4
New features
- Support windows assembler
- Add some project templates
- Support swift codes
- Add -v argument for outputing more verbose info
- Add apple platforms:watchos, watchsimulator
- Add architecture x64, amd64, x86_amd64 for windows
- Support switch static and share library
- Add -j/--jobs argument for supporting multi-jobs
Changes
- Improve
add_files
api and support to add *.o/obj/a/lib files for merging static library and object files - Optimize installation and remove some binary files
Bugs fixed
- #1: Install failed for win7
- Fix checking toolchains bug
- Fix install script bug
- Fix install bug for linux x86_64
新特性
- 增加对windows汇编器的支持
- 为xmake create增加一些新的工程模板,支持tbox版本
- 支持swift代码
- 针对-v参数,增加错误输出信息
- 增加apple编译平台:watchos, watchsimulator的编译支持
- 增加对windows: x64, amd64, x86_amd64架构的编译支持
- 实现动态库和静态库的快速切换
- 添加-j/--jobs参数,手动指定是否多任务编译,默认改为单任务编译
改进
- 增强add_files接口,支持直接添加*.o/obj/a/lib文件,并且支持静态库的合并
- 裁剪xmake的安装过程,移除一些预编译的二进制程序
Bugs修复
- #1: 修复win7上安装失败问题
- 修复和增强工具链检测
- 修复一些安装脚本的bug, 改成外置sudo进行安装
- 修复linux x86_64下安装失败问题
xmake v1.0.3
New features
- Add set_runscript api and support custom action
- Add import api and support import modules in xmake.lua, .e.g os, path, utils ...
- Add new architecture: arm64-v8a for android
Bugs fixed
- Fix api bug for set_installscript
- Fix install bug for windows x86_64
- Fix relative path bug
新特性
- 添加set_runscript接口,支持自定义运行脚本扩展
- 添加import接口,使得在xmake.lua中可以导入一些扩展模块,例如:os,path,utils等等,使得脚本更灵活
- 添加android平台arm64-v8a支持
Bugs修复
- 修复set_installscript接口的一些bug
- 修复在windows x86_64下,安装失败的问题
- 修复相对路径的一些bug
xmake v1.0.2
add chinese README
xmake v1.0.1
modify configure file prefix