此版本带来了大量新特性更新,具体详见:xmake v2.1.5版本新特性介绍

更多使用说明,请阅读:文档手册

项目源码:Github, Gitee.

新特性

  • #83: 添加 add_csnippetadd_cxxsnippetoption来检测一些编译器特性
  • #83: 添加用户扩展模块去探测程序,库文件以及其他主机环境
  • 添加find_program, find_file, find_library, find_toolfind_package 等模块接口
  • 添加net.*devel.*扩展模块
  • 添加val()接口去获取内置变量,例如:val("host"), val("env PATH"), val("shell echo hello") and val("reg HKEY_LOCAL_MACHINE\\XX;Value")
  • 增加对微软.rc资源文件的编译支持,当在windows上编译时,可以增加资源文件了
  • 增加has_flags, featureshas_features等探测模块接口
  • 添加option.on_check, option.after_checkoption.before_check 接口
  • 添加target.on_load接口
  • #132: 添加add_frameworkdirs接口
  • 添加lib.detect.has_xxxlib.detect.find_xxx接口
  • 添加add_moduledirs接口在工程中定义和加载扩展模块
  • 添加includes接口替换add_subdirsadd_subfiles
  • #133: 改进工程插件,通过运行xmake project -k compile_commands来导出compile_commands.json
  • 添加set_pcheaderset_pcxxheader去支持跨编译器预编译头文件,支持gcc, clangmsvc
  • 添加xmake f -p cross平台用于交叉编译,并且支持自定义平台名

改进

  • #87: 为依赖库目标自动添加:includeslinks
  • 改进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_bindingsadd_rbindings为废弃接口
  • 优化xmake rebuild在windows上的构建速度
  • core.project.task模块迁移至core.base.task
  • echoapp2ipa 插件迁移到 xmake-plugins 仓库
  • 添加set_config_header("config.h", {prefix = ""}) 代替 set_config_hset_config_h_prefix

Bugs修复

  • 修复try-catch-finally
  • 修复解释器bug,解决当加载多级子目录时,根域属性设置不对
  • #115: 修复安装脚本get.sh的路径问题
  • 修复import()导入接口的缓存问题

xmake v2.1.5版本正式发布,大量新特性更新的更多相关文章

  1. Atitit js版本es5 es6新特性

    Atitit js版本es5 es6新特性 Es5( es5 其实就是adobe action script的标准化)1 es6新特性1 Es5( es5 其实就是adobe action scrip ...

  2. JDK各版本内容和新特性

    JDK各版本内容和新特性 - yanlzhl - 博客园 https://www.cnblogs.com/yanlzhl/articles/5694470.html    版本JDK1.0:1995年 ...

  3. xmake v2.1.5版本新特性介绍

    2.1.5版本现已进入收尾阶段,此版本加入了一大波新特性,目前正在进行稳定性测试和修复,在这里,先来介绍下新版本中引入了哪些新特性和改进. 1. 提供类似cmake的find_*系列接口,实现各种查找 ...

  4. xmake v2.1.9版本发布,增加可视化图形菜单配置

    此版本主要增加xmake f --menu实现用户自定义图形菜单配置,界面风格类似linux的make menuconfig: [图片上传失败-(image-505bc0-1517795319124) ...

  5. 业余草分享 Spring Boot 2.0 正式发布的新特性

    就在昨天Spring Boot2.0.0.RELEASE正式发布,今天早上在发布Spring Boot2.0的时候还出现一个小插曲,将Spring Boot2.0同步到Maven仓库的时候出现了错误, ...

  6. Spring Boot 2.0正式发布,新特性解读

    作者|翟永超 Spring Boot 2.0 来啦,有哪些新特性?升级吗? 写在前面 北京时间 3 月 1 日,经过漫长的等待之后,Spring Boot 2.0 正式发布.作为 Spring 生态中 ...

  7. 如何给不支持新特性的浏览器打补丁(让老版本IE兼容新特性)

    一个非常棒的 JavaScript 框架叫做 Modernizr(http://www.modernizr. com),用于向缺少 HTML5/CSS3特性支持的浏览器打补丁.由 Alexander ...

  8. Java 8 正式发布,新特性全搜罗

    经过2年半的努力.屡次的延期和9个里程碑版本,甲骨文的Java开发团队终于发布了Java 8正式版本. Java 8版本最大的改进就是Lambda表达式,其目的是使Java更易于为多核处理器编写代码: ...

  9. PHP 5.6正式发布:新特性、及功能改进介绍

    经过了长时间的开发测试,新版本PHP程序(PHP5.6正式版)终于发布了.新版本中加入了一些实用的新特性,也摒弃了一些冗余的功能.同时,也对部分原有功能进行了改进.下面就一起看看PHP 5.6正式版到 ...

随机推荐

  1. 这是您一直期待的所有iOS 11功能的屏幕截图

    Tips 原文作者:Chris Mills 原文地址:Here's all the iOS 11 screenshots you've been waiting for 除非你已经深陷VR其中,否则现 ...

  2. php中json对象数据的输出转化

    php中json对象数据的输出转化 public function get_my_now_citys(){ $datas=$this->_post('datas'); //前台js脚本传递给后端 ...

  3. iOS 本地视频和网络视频流播放

    需求:最近公司需要做一个楼宇对讲的功能:门口机(连接WIFI)拨号对室内机(对应的WIFI)的设备进行呼叫,室内机收到呼叫之后将对收到的数据进行UDP广播的转发,手机(连接对应的WIFI)收到视频流之 ...

  4. SQL SERVER查看索引使用情况

    SELECT DISTINCT DB_NAME() AS N'db_name' , E.name AS N'schema_name' , OBJECT_NAME(a.object_id) AS N't ...

  5. 多个Tomcat 配置多个JDK

  6. 使用jQuery操作 DOM

    DOM操作分为三类: 1.DOM Core:任何一种支持DOM的编程语言都可以使用它,如getElementById() 2.HTML-DOM:用于处理HTML文档,如document.forms 3 ...

  7. Python查看MQ队列深度

    分享一段代码,很简单但是也很实用. #!/usr/bin/python #-*- coding:gb18030 -*- ''' Usage: mq.py [Qmgr] *get the queues' ...

  8. 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 ...

  9. Pandas数据处理实战:福布斯全球上市企业排行榜数据整理

    手头现在有一份福布斯2016年全球上市企业2000强排行榜的数据,但原始数据并不规范,需要处理后才能进一步使用. 本文通过实例操作来介绍用pandas进行数据整理. 照例先说下我的运行环境,如下: w ...

  10. python模块之os模块详解

    os.listdir(dirname):列出dirname下的目录和文件 os.getcwd():获得当前工作目录 os.curdir:返回当前目录('.') os.chdir(dirname):改变 ...