2017-10-17 ruki
xmake-vscode插件深度集成了xmake和vscode,提供方便快速的跨平台c/c++构建。 此版本为第一个正式版本,相比之前发布的体验版,新增了两大新特性: 快速宏记录和回放 编译错误解析和问题列表 注:使用此插件,需要先安装xmake,更多关于xmake的使用说明,请阅读:文档手册,项目源码:Github。 关于xmake-vscode的更多特性介绍,请见下文,关于xmake-vscode插件的详细过程,请参考文章:xmake-vscode插件开发过程记录 特性 语法色彩高亮 API输入自动提示和补全 状态栏快捷工具 完整的命令列表 快速配置支持 构建和安装 运行和调试 快速宏记录和回放 编译错误解 继续阅读 »
2016-08-06 ruki
xmake将依赖库、依赖头文件、依赖类型、依赖接口统一用 option 选项机制进行了封装,更在上一层引入package包的机制,使得添加和检测依赖更加的模块化,简单化。。。 下面通过一个具体实例,来看下xmake的包机制怎么使用。。 假如你现在的工程已经有了两个包:zlib.pkg,polarssl.pkg(如何构建包,后续会详细说明,现在可以参考TBOX依赖包下已有包的例子),你的工程目录结构如下: demo - xmake.lua - src main.c - pkg zlib.pkg polarssl.pkg 那么你可以修改xmake.lua来使用上述的两个依赖包: 继续阅读 »
2016-08-29 ruki
New features Add native shell support for xmake.lua. .e.g add_ldflags("$(shell pkg-config --libs sqlite3)") Enable pdb symbol files for windows Add debugger support on windows (vsjitdebugger, ollydbg, windbg ... ) Add getenv interface for the global scope of xmake.lua Add plugin for generating vstudio project file (vs 继续阅读 »
2016-11-15 ruki
最近对xmake.lua的工程描述语法进行了增强,现已可以同时支持两种不同语法风格。 set-add描述风格 key-val描述风格 set-add描述风格 这种是xmake经典的设置风格,例如: lua target("test") set_kind("static") add_defines("DEBUG") add_files("src/*.c", "test/*.cpp") 优势:控制灵活,可以根据各种条件,通过if-then进行灵活的条件编译,可以驾驭各种高度复杂的配置需求。 劣势:作用域控制不明显,需要手动规范化缩进 key-val描述风格 这种是xmake最近新加的风格,例如: l 继续阅读 »
2017-04-02 ruki
Links Homepage Documents This version provide safer xmake install and xmake uninstall. New features #65: Add set_default api for target to modify default build and install behavior Allows to run xmake command in project subdirectories, it will find the project root directory automatically Add add_rpathdirs for tar 继续阅读 »
2018-02-03 ruki
此版本主要增加xmake f --menu实现用户自定义图形菜单配置,界面风格类似linux的make menuconfig: 更多使用说明,请阅读:文档手册。 项目源码:Github, Gitee. 新特性 添加del_files()接口去从已添加的文件列表中移除一些文件 添加rule(), add_rules()接口实现自定义构建规则,并且改进add_files("src/*.md", {rule = "markdown"}) 添加os.filesize()接口 添加core.ui.xxx等cui组件模块,实现终端可视化界面,用于实现跟用户进行短暂的交互 通过xmake f --menu实现可视化菜单交互配置,简化工 继续阅读 »
2017-08-05 ruki
This release introduces a number of new feature updates, as detailed in Some new features of xmake v2.1.5. If you want to known more usage, please see online documents。 Source code: Github, Gitee. New features #83: Add add_csnippet and add_cxxsnippet into option for detecting some compiler features. #83: Add user e 继续阅读 »
2017-08-08 ruki
如果我们要写跨平台的c/c++代码,很多时候需要处理由于不同编译器对c/c++各个标准支持力度不同导致的兼容性问题,一般通常的解决办法是:自己在代码中通过宏去判断各个编译器的版本、内置宏、标准库宏、__has_feature等来检测处理。 自己如果在代码中按上述的方式检测,会很繁琐,尤其是像c++这种存在大量语法特性,如果一一检测过来,工作量是非常大的。 通过构建工具预先检测编译特性 另外比较省事的方式,就是依赖构建工具提前做好检测,然后把检测结果作为宏添加到编译中去,这样代码只需要判断对应的特性宏是否存在,就可以进行处理了。 在cmake中就有类似的检测机制,非常强大,因此xmake也对其进行了支持,提供更加灵活强大的编译 继续阅读 »
2017-08-16 ruki
This release fixed some bugs and improve some compilation problem. If you want to known more usage, please see online documents。 Source code: Github, Gitee. Changes Improve add_files to configure the compile option of the given files Inherit links and linkdirs from the dependent targets and options Improve target.a 继续阅读 »
2017-08-17 ruki
此版本主要修复一些稳定性问题。 更多使用说明,请阅读:文档手册。 项目源码:Github, Gitee. 改进 改进add_files,支持对files粒度进行编译选项的各种配置,更加灵活。 从依赖的target和option中继承links和linkdirs。 改进target.add_deps接口,添加继承配置,允许手动禁止依赖继承,例如:add_deps("test", {inherit = false}) 移除tbox.pkg二进制依赖,直接集成tbox源码进行编译 Bugs修复 修复目标级联依赖问题 修复target:add和option:add问题 修复在archlinux上的编译和安装问题 修复/ZI的兼容性 继续阅读 »