New features
- #6864: Add default file filter for
formattask - #6843: Improve clang-tidy support
- #6861: Rewrite of Nix Package Manager Support
- #6850: Add package api checking
- #6874: Add scriptdir to project packages
- #6876: Add versionfiles checker
- #6884: Add msystem support on msys2
- #6891: Add coroutine semaphore
- #6894: Add llvm-nm for clang toolchain
- #6918: Add copy_if_different in os.cp
Changes
- #6846: Improve cmake default flags
- #6849: Improve jobgraph
- #6859: Improve to check target flags
- #6858: Modify config flags order
- #6854: Improve os.curdir/os.cd
- #6866: Improve os.getenvs
- #6867: Make sure generic options are always inserted
- #6870: chore(vcpkg): bump default baseline hash of vcpkg
- #6880: Update cmake_importfiles.lua
- #6872: Improve hash
- #6886: Decrease jobs count in jobgraph
- #6890: Update cmake_importfiles.lua
- #6892: Improve runjobs to reduce the time spent on coroutine scheduling
- #6896: Add hash test
- #6904: Improve clang to support for msvc envs
- #6915: Improve to export def rules for binary
Bugs fixed
- #6844: Fix version in auto-generated .pc.
- #6851: Fix finding clang-scan-deps
- #6857: Fix rc compiler with cmake in cross-compilation
- #6809: fix(C++ modules) fix stdmodule priority
- #6882: Fix: write package manifest.pathenvs in deterministic order
- #6888: Fix clang toolchain package
- #6889: Fix os.getenvs compat
- #6900: package.tools.xmake: fix policies not being passed
- #6901: package download: don't get submodules if disabled
- #6907: package download: don't get submodules if disabled (branch version)
新特性
- #6864: 为
format任务添加默认文件过滤器 - #6843: 改进 clang-tidy 支持
- #6861: 重写 Nix 包管理器支持
- #6850: 添加包 API 检查
- #6874: 为项目包添加 scriptdir
- #6876: 添加 versionfiles 检查器
- #6884: 在 msys2 上添加 msystem 支持
- #6891: 添加协程信号量
- #6894: 为 clang 工具链添加 llvm-nm
- #6918: 为 os.cp 添加 copy_if_different 支持
改进
- #6846: 改进 cmake 默认标志
- #6849: 改进 jobgraph
- #6859: 改进检查目标标志
- #6858: 修改配置标志顺序
- #6854: 改进 os.curdir/os.cd
- #6866: 改进 os.getenvs
- #6867: 确保通用选项总是被插入
- #6870: chore(vcpkg): 提升 vcpkg 的默认 baseline
- #6880: 更新 cmake_importfiles.lua
- #6872: 改进哈希
- #6886: 减少 jobgraph 中的任务数
- #6890: 更新 cmake_importfiles.lua
- #6892: 改进 runjobs 以减少协程调度所花费的时间
- #6896: 添加哈希测试
- #6904: 改进 clang 以支持 msvc 环境
- #6915: 改进为二进制文件导出 def 规则
Bugs 修复
- #6844: 修复自动生成的 .pc 文件中的版本
- #6851: 修复查找 clang-scan-deps
- #6857: 修复在交叉编译中使用 cmake 的 rc 编译器
- #6809: fix(C++ modules) 修复 stdmodule 优先级
- #6882: 修复:以确定性顺序写入包清单 manifest.pathenvs
- #6888: 修复 clang 工具链包
- #6889: 修复 os.getenvs 兼容性
- #6900: package.tools.xmake: 修复策略未被传递的问题
- #6901: package download: 如果禁用,则不获取子模块
- #6907: package download: 如果禁用,则不获取子模块 (分支版本)
What's Changed
- improve cmake default flags [#6845] by @waruqi in https://github.com/xmake-io/xmake/pull/6846
- Fix version in auto-generated .pc. by @Redbeanw44602 in https://github.com/xmake-io/xmake/pull/6844
- Fix finding clang-scan-deps by @tgsong in https://github.com/xmake-io/xmake/pull/6851
- improve jobgraph by @waruqi in https://github.com/xmake-io/xmake/pull/6849
- Fix rc compiler with cmake in cross-compilation by @star-hengxing in https://github.com/xmake-io/xmake/pull/6857
- improve to check target flags by @waruqi in https://github.com/xmake-io/xmake/pull/6859
- modify config flags order by @waruqi in https://github.com/xmake-io/xmake/pull/6858
- fix(C++ modules) fix stdmodule priority by @Arthapz in https://github.com/xmake-io/xmake/pull/6809
- docs: Keep redirecting to the Chinese page by @1411430556 in https://github.com/xmake-io/xmake/pull/6862
- improve os.curdir/os.cd by @waruqi in https://github.com/xmake-io/xmake/pull/6854
- Add default file filter for
formattask by @Stehsaer in https://github.com/xmake-io/xmake/pull/6864 - improve os.getenvs by @waruqi in https://github.com/xmake-io/xmake/pull/6866
- feat(clang-tidy): Improve clang-tidy support by @24bit-xjkp in https://github.com/xmake-io/xmake/pull/6843
- Make sure generic options are always inserted. by @Redbeanw44602 in https://github.com/xmake-io/xmake/pull/6867
- Rewrite of Nix Package Manager Support by @ZZBaron in https://github.com/xmake-io/xmake/pull/6861
- chore(vcpkg): bump default baseline hash of vcpkg by @yingmanwumen in https://github.com/xmake-io/xmake/pull/6870
- add package api checking by @Shiffted in https://github.com/xmake-io/xmake/pull/6850
- add scriptdir to project packages by @Shiffted in https://github.com/xmake-io/xmake/pull/6874
- add versionfiles checker by @Shiffted in https://github.com/xmake-io/xmake/pull/6876
- Update cmake_importfiles.lua by @luadebug in https://github.com/xmake-io/xmake/pull/6880
- Improve hash by @waruqi in https://github.com/xmake-io/xmake/pull/6872
- Fix: write package manifest.pathenvs in deterministic order by @romeoxbm in https://github.com/xmake-io/xmake/pull/6882
- Fix clang toolchain package by @star-hengxing in https://github.com/xmake-io/xmake/pull/6888
- Decrease jobs count in jobgraph by @waruqi in https://github.com/xmake-io/xmake/pull/6886
- fix os.getenvs compat by @waruqi in https://github.com/xmake-io/xmake/pull/6889
- Add msystem support on msys2 by @star-hengxing in https://github.com/xmake-io/xmake/pull/6884
- Add coroutine semaphore by @waruqi in https://github.com/xmake-io/xmake/pull/6891
- Update cmake_importfiles.lua by @luadebug in https://github.com/xmake-io/xmake/pull/6890
- Add llvm-nm for clang toolchain by @star-hengxing in https://github.com/xmake-io/xmake/pull/6894
- Improve runjobs to reduce the time spent on coroutine scheduling by @waruqi in https://github.com/xmake-io/xmake/pull/6892
- add hash test by @waruqi in https://github.com/xmake-io/xmake/pull/6896
- package.tools.xmake: fix policies not being passed by @SirLynix in https://github.com/xmake-io/xmake/pull/6900
- package download: don't get submodules if disabled by @SirLynix in https://github.com/xmake-io/xmake/pull/6901
- package download: don't get submodules if disabled (branch version) by @SirLynix in https://github.com/xmake-io/xmake/pull/6907
- Improve clang to support for msvc envs by @waruqi in https://github.com/xmake-io/xmake/pull/6904
- reuse rand32 by @waruqi in https://github.com/xmake-io/xmake/pull/6908
- improve to export def rules for binary by @waruqi in https://github.com/xmake-io/xmake/pull/6915
- improve implib by @waruqi in https://github.com/xmake-io/xmake/pull/6916
- Add copy_if_different in os.cp by @waruqi in https://github.com/xmake-io/xmake/pull/6918
- fix(rules) fix platform.windows.subsystem rule for clang by @Arthapz in https://github.com/xmake-io/xmake/pull/6920
- improve to find cl and fix force flags by @waruqi in https://github.com/xmake-io/xmake/pull/6921
New Contributors
- @1411430556 made their first contribution in https://github.com/xmake-io/xmake/pull/6862
- @Stehsaer made their first contribution in https://github.com/xmake-io/xmake/pull/6864
- @yingmanwumen made their first contribution in https://github.com/xmake-io/xmake/pull/6870
- @luadebug made their first contribution in https://github.com/xmake-io/xmake/pull/6880
Full Changelog: https://github.com/xmake-io/xmake/compare/v3.0.3...v3.0.4