xmake v2.1.5版本正式发布,大量新特性更新
此版本带来了大量新特性更新,具体详见:xmake v2.1.5版本新特性介绍。
更多使用说明,请阅读:文档手册。
新特性
- #83: 添加
add_csnippet
,add_cxxsnippet
到option
来检测一些编译器特性 - #83: 添加用户扩展模块去探测程序,库文件以及其他主机环境
- 添加
find_program
,find_file
,find_library
,find_tool
和find_package
等模块接口 - 添加
net.*
和devel.*
扩展模块 - 添加
val()
接口去获取内置变量,例如:val("host")
,val("env PATH")
,val("shell echo hello")
andval("reg HKEY_LOCAL_MACHINE\\XX;Value")
- 增加对微软.rc资源文件的编译支持,当在windows上编译时,可以增加资源文件了
- 增加
has_flags
,features
和has_features
等探测模块接口 - 添加
option.on_check
,option.after_check
和option.before_check
接口 - 添加
target.on_load
接口 - #132: 添加
add_frameworkdirs
接口 - 添加
lib.detect.has_xxx
和lib.detect.find_xxx
接口 - 添加
add_moduledirs
接口在工程中定义和加载扩展模块 - 添加
includes
接口替换add_subdirs
和add_subfiles
- #133: 改进工程插件,通过运行
xmake project -k compile_commands
来导出compile_commands.json
- 添加
set_pcheader
和set_pcxxheader
去支持跨编译器预编译头文件,支持gcc
,clang
和msvc
- 添加
xmake f -p cross
平台用于交叉编译,并且支持自定义平台名
改进
- #87: 为依赖库目标自动添加:
includes
和links
- 改进
import
接口,去加载用户扩展模块 - #93: 改进
xmake lua
,支持运行单行命令和模块 - 改进编译错误提示信息输出
- 改进
print
接口去更好些显示table数据 - #111: 添加
--root
通用选项去临时支持作为root运行 - #113: 改进权限管理,现在作为root运行也是非常安全的
- 改进
xxx_script
工程描述api,支持多平台模式选择, 例如:on_build("iphoneos|arm*", function (target) end)
- 改进内置变量,支持环境变量和注册表数据的获取
- 改进vstudio环境和交叉工具链的探测
- #71: 改进从环境变量中探测链接器和编译器
- 改进option选项检测,通过多任务检测,提升70%的检测速度
- #129: 检测链接依赖,如果源文件没有改变,就不必重新链接目标文件了
- 在vs201x工程插件中增加对
*.asm
文件的支持 - 标记
add_bindings
和add_rbindings
为废弃接口 - 优化
xmake rebuild
在windows上的构建速度 - 将
core.project.task
模块迁移至core.base.task
- 将
echo
和app2ipa
插件迁移到 xmake-plugins 仓库 - 添加
set_config_header("config.h", {prefix = ""})
代替set_config_h
和set_config_h_prefix
Bugs修复
- 修复
try-catch-finally
- 修复解释器bug,解决当加载多级子目录时,根域属性设置不对
- #115: 修复安装脚本
get.sh
的路径问题 - 修复
import()
导入接口的缓存问题
xmake v2.1.5版本正式发布,大量新特性更新的更多相关文章
- Atitit js版本es5 es6新特性
Atitit js版本es5 es6新特性 Es5( es5 其实就是adobe action script的标准化)1 es6新特性1 Es5( es5 其实就是adobe action scrip ...
- JDK各版本内容和新特性
JDK各版本内容和新特性 - yanlzhl - 博客园 https://www.cnblogs.com/yanlzhl/articles/5694470.html 版本JDK1.0:1995年 ...
- xmake v2.1.5版本新特性介绍
2.1.5版本现已进入收尾阶段,此版本加入了一大波新特性,目前正在进行稳定性测试和修复,在这里,先来介绍下新版本中引入了哪些新特性和改进. 1. 提供类似cmake的find_*系列接口,实现各种查找 ...
- xmake v2.1.9版本发布,增加可视化图形菜单配置
此版本主要增加xmake f --menu实现用户自定义图形菜单配置,界面风格类似linux的make menuconfig: [图片上传失败-(image-505bc0-1517795319124) ...
- 业余草分享 Spring Boot 2.0 正式发布的新特性
就在昨天Spring Boot2.0.0.RELEASE正式发布,今天早上在发布Spring Boot2.0的时候还出现一个小插曲,将Spring Boot2.0同步到Maven仓库的时候出现了错误, ...
- Spring Boot 2.0正式发布,新特性解读
作者|翟永超 Spring Boot 2.0 来啦,有哪些新特性?升级吗? 写在前面 北京时间 3 月 1 日,经过漫长的等待之后,Spring Boot 2.0 正式发布.作为 Spring 生态中 ...
- 如何给不支持新特性的浏览器打补丁(让老版本IE兼容新特性)
一个非常棒的 JavaScript 框架叫做 Modernizr(http://www.modernizr. com),用于向缺少 HTML5/CSS3特性支持的浏览器打补丁.由 Alexander ...
- Java 8 正式发布,新特性全搜罗
经过2年半的努力.屡次的延期和9个里程碑版本,甲骨文的Java开发团队终于发布了Java 8正式版本. Java 8版本最大的改进就是Lambda表达式,其目的是使Java更易于为多核处理器编写代码: ...
- PHP 5.6正式发布:新特性、及功能改进介绍
经过了长时间的开发测试,新版本PHP程序(PHP5.6正式版)终于发布了.新版本中加入了一些实用的新特性,也摒弃了一些冗余的功能.同时,也对部分原有功能进行了改进.下面就一起看看PHP 5.6正式版到 ...
随机推荐
- 这是您一直期待的所有iOS 11功能的屏幕截图
Tips 原文作者:Chris Mills 原文地址:Here's all the iOS 11 screenshots you've been waiting for 除非你已经深陷VR其中,否则现 ...
- php中json对象数据的输出转化
php中json对象数据的输出转化 public function get_my_now_citys(){ $datas=$this->_post('datas'); //前台js脚本传递给后端 ...
- iOS 本地视频和网络视频流播放
需求:最近公司需要做一个楼宇对讲的功能:门口机(连接WIFI)拨号对室内机(对应的WIFI)的设备进行呼叫,室内机收到呼叫之后将对收到的数据进行UDP广播的转发,手机(连接对应的WIFI)收到视频流之 ...
- SQL SERVER查看索引使用情况
SELECT DISTINCT DB_NAME() AS N'db_name' , E.name AS N'schema_name' , OBJECT_NAME(a.object_id) AS N't ...
- 多个Tomcat 配置多个JDK
- 使用jQuery操作 DOM
DOM操作分为三类: 1.DOM Core:任何一种支持DOM的编程语言都可以使用它,如getElementById() 2.HTML-DOM:用于处理HTML文档,如document.forms 3 ...
- Python查看MQ队列深度
分享一段代码,很简单但是也很实用. #!/usr/bin/python #-*- coding:gb18030 -*- ''' Usage: mq.py [Qmgr] *get the queues' ...
- dashDB - Creating a table with CLOB column type
In order to create a table with clob column type, the table has to be created with "ORGANIZE BY ...
- Pandas数据处理实战:福布斯全球上市企业排行榜数据整理
手头现在有一份福布斯2016年全球上市企业2000强排行榜的数据,但原始数据并不规范,需要处理后才能进一步使用. 本文通过实例操作来介绍用pandas进行数据整理. 照例先说下我的运行环境,如下: w ...
- python模块之os模块详解
os.listdir(dirname):列出dirname下的目录和文件 os.getcwd():获得当前工作目录 os.curdir:返回当前目录('.') os.chdir(dirname):改变 ...