Skip to content

Xmake Blog

Updates, tips & opinions from the Xmake team.

  • Xmake v2.9.1 released, Add native lua modules support

    by Ruki

    In the new version, we have added native tool chain support for Hongmeng system and implemented a new native Lua module import support. In addition, we have also made a lot of optimizations to the build speed, and the effect is very obvious.

    We have added native toolchain compilation support for the Hongmeng OS platform:

    $ xmake f -p harmony
    
  • Xmake v2.8.7 released, Add cosmocc toolchain support, build-once run-anywhere

    by Ruki

    In the new version, we have added cosmocc tool chain support. Using it, we can compile once and run everywhere. In addition, we also refactored the implementation of C++ Modules and solved many C++ Modules-related problems.

    The cosmocc tool chain is the compilation tool chain provided by the cosmopolitan project. Programs compiled using this tool chain can be compiled once and run anywhere.

    In the new version, we also support this tool chain, which can compile programs under macosx/linux/windows, and can also support automatic downloading of the cosmocc tool chain.

  • Xmake v2.8.6 released, New Packaging Plugin, XPack

    by Ruki

    Before introducing new features, there is good news to tell you that the previous version of Xmake was included in the debian repository, and recently Xmake has entered the Fedora official repository. You can install Xmake directly on Fedora 39 through the following command.

    $ sudo dnf install xmake
    

    Many thanks to @topazus @mochaaP for their contribution to Xmake. For related information, see: #941.

  • Xmake v2.8.5 released, Support for link sorting and unit testing

    by Ruki

    Before introducing new features, we have good news to tell you that Xmake has recently entered Debian's official repository: [https://packages.debian.org/sid/xmake](https://packages.debian.org/ sid/xmake), When Ubuntu 24.04 is released in April next year, we should be able to quickly install Xmake d...

    I would also like to thank @Lance Lin for his help. He helped us maintain and upload the Xmake package to the Debian repository throughout the whole process. Thank you very much!

    Next, let’s introduce some changes introduced in version 2.8.5. This version brings many new features, especially support for link sorting, link groups, and support for xmake test built-in unit tests. In addition, we have also added build support for the Apple XROS platform, which can be used to b...

  • Xmake v2.8.3 Released, Improve Wasm and Support Xmake Source Debugging

    by Ruki

    In the new version, we have added breakpoint debugging support for Xmake's own source code, which can help contributors to get familiar with xmake's source code more quickly, and also help users to debug and analyse their own project's configure scripts.

    In addition, the number of packages in our xmake-repo repository is about to exceed 1100, with more than 100 packages added in just one month, thanks to @star-hengxing's contribution.

    At the same time, we focused on improving build support for Wasm and Qt6 for wasm.

  • Xmake v2.8.2 Released, Official package repository count over 1k

    by Ruki

    In this release, we've added a number of useful APIs, removed some interfaces that were marked as deprecated a few years ago, and improved soname support for dynamic libraries.

    Meanwhile, we've had some good news in the meantime: our xmake-repo official repository has surpassed 1k packages, thanks to every contributor to Xmake, which is basically a repository of packages contributed by the community.

    Especially @xq114, @star-hengxing, @SirLynix contributed a lot of packages, thank you very much~.

  • Xmake v2.8.1 Released, Lots of Detailed Feature Improvements

    by Ruki

    Windows' long path limitation has always been a big problem. Projects that are nested too deeply may fail when reading or writing files, which affects xmake's usability and experience.

    Although xmake has provided various measures to avoid this problem, it still suffers from some limitations occasionally. In this release, we have improved the installer by providing an installation option that lets you selectively enable long path support.

    This requires administrator privileges, as it requires a registry write.

  • Xmake v2.7.8 released, Improve package virtual environment and build speed

    by Ruki

    Xmake has long supported the virtual environment management of packages, and can switch between different package environments through configuration files.

    We can customize some package configurations by adding the xmake.lua file in the current directory, and then enter a specific package virtual environment.

    add_requires("zlib 1.2.11")
    add_requires("python 3.x", "luajit")
    
  • Xmake v2.7.7 released, Support Haiku, Improve API check and C++ Modules

    by Ruki

    We have improved the presentation of target information in the xmake show -t target command by adding a new configuration source analysis and streamlining some of the relatively redundant information.

    We can use it to better troubleshoot where some of the flags we configure actually come from.

    The display looks like this.

  • Xmake v2.7.6 Released, Add Verilog and C++ Module Distribution Support

    by Ruki

    Through add_requires("iverilog") configuration, we can automatically pull the iverilog toolchain package, and then use set_toolchains("@iverilog") to automatically bind the toolchain to compile the project.

    add_requires("iverilog")
    target("hello")
         add_rules("iverilog. binary")
         set_toolchains("@iverilog")
         add_files("src/*.v")
    
    add_requires("iverilog")
    target("hello")
         add_rules("iverilog. binary")
         set_toolchains("@iverilog")
         add_files("src/*.v")
         add_defines("TEST")
         add_includedirs("inc")
         set_languages("v1800-2009")
    
Page 1 of 4