if package:is_plat("windows") and package:config("shared") then table.insert(configs, "-DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON") end xmake 包默认是不保留例子和测试的,所以需要打包者添加构建选项取消。然而有些库根本没有这些选项,我们可以适当优化,比如使用 io.replace 修改cmakelists,把 add_subdirec...
xmake package即可, 但是个人感觉没必要使用本地库, 因此略过. 使用远程包 按照官方文档可以直接运行打包命令 $ xmake package -f remote 之后得到 -- build/packages/g/great-project/xmake.lua package("great-project") set_description("The great-project package") add_urls("https://github.com/myrepo...
$ xmake package -f oldpkg 1. 生成远程包 除了本地包格式,xmake package 现在也支持生成远程包,便于用户将他们快速提交到远程仓库。 我们只需要在打包时候,修改包格式。 $ xmake package -f remote 1. 他也会产生 packages/f/foo/xmake.lua 文件。 package("foo") set_description("The foo package") set...
复制 xpack("test")set_formats("runself")add_sourcefiles("(src/**)")on_installcmd(function(package,batchcmds)batchcmds:runv("make",{"install"})end) 然后,我们执行xmake pack命令,就可以生成一个自安装的 xxx.gz.run 包,默认采用 gzip 压缩。 代码语言:javascript 复制 $ xmake pack packing buil...
$ xmake l utils.ipa.package test.app output.ipa[iconfile.png] 安装 如果是iOS程序会安装ipa到设备,如果是macos会安装app到/Applications目录。 代码语言:javascript 复制 $ xmake install 我们也提供了辅助工具,来对指定ipa/app程序安装到设备: 代码语言:javascript ...
`xmake/package.lua`专门管理gtest库的安装。单元测试方面,虽然官方没有直接支持,但可以参考模板实现。为了发布软件,通常需要重写`on_install`脚本,并使用`upx`进行压缩。总之,xmake为新手提供了一个灵活且易于使用的构建系统,从安装到配置,再到编写`xmake.lua`文件,以及实现更高级的功能如单元测试...
$ xmake package package("foo") //用包来描述, set_description("The foo package") set_license("Apache-2.0") add_deps("add", "sub") on_load(function (package) package:set("installdir", path.join(os.scriptdir(), package:plat(), package:arch(), package:mode())) ...
xmake-repo is an official xmake package repository. Package dependences Package management If you want to know more, please refer to the xmake documentation: Documents Github HomePage xrepo is a cross-platform C/C++ package manager based onXmake. ...
对于目前现有的跨平台构建工具,都缺少内置的包管理支持,像cmake仅提供了find_package去查找系统包,虽然可以和vcpkg等第三方包管理配合使用,但我个人觉得并不是很方便。 这会使得项目的其他用户在编译的时候,额外要求去安装vcpkg或者安装依赖库到系统上才行,对于pc平台还好弄些,对于iphoneos, android等平台的依赖库,用...
Xmake = Build backend + Project Generator + Package Manager + [Remote|Distributed] Build + Cache 尽管不是很准确,但我们还是可以把 Xmake 按下面的方式来理解: Xmake ≈ Make/Ninja + CMake/Meson + Vcpkg/Conan + distcc + ccache/sccache