为其他常用 Linux 发行版多做考虑 #3107
Replies: 6 comments 16 replies
-
好吧,其实我都没怎么用过 centos 。。
基本没做任何修改,用 fork 仅仅只是为了 submodules 化,方便 git submodules 管理,固定到某个特定的 commit 而已,通常我不会去改第三方依赖的任何代码。
tbox 是基础库,不跟 xmake 强相关,也不是仅仅 xmake 需要它,它本身肯定需要用 xmake 来维护的,不能因为 xmake 用到了它,就强行把 tbox 改用其他构建工具来维护。 但是不存在构建的循环依赖,在构建 xmake 时候用的是 makefile ,构建 tbox 也是用 xmake 里面的 makefile 来编译。 如果要单独编译安装它,不依赖 xmake,也可以用外置的 makefile/cmakelists 来实现编译(比如提前用 xmake project -k cmake 生成 cmakelists),我之前也尝试过打包 debian ,用了外置的 cmakelists 去维护 tbox 构建。。参考:https://salsa.debian.org/xmake-team/tbox/-/blob/master/debian/CMakeLists.txt
对于打包进发行版,我也知道有这个问题,但是目前这边还是优先考虑无依赖编译安装,毕竟不进发行版,也还是可以用 xmake,99% 的情况下,用户都能省去折腾依赖的安装问题,为了进发行版,把编译安装整的过于复杂 得不偿失。 当然,我也考虑过这个问题,所以 makefile 也会去优先探测系统上已经安装的 第三方依赖库,不是强制内置依赖的,如果系统上已经安装了 libsv, lua curses等依赖,也会直接使用,现在也是完全支持的。
不想引入 autoconf 这种依赖,然后项目根目录充斥了一堆的乱七八糟的脚本和配置文件。 尽管我也很想进发行版,但我也不会为了进去,把项目自身编译搞的过于复杂,并且根目录下充斥各种其他的autoconf脚本。 另外,我看 cmake 也是自己搞了一套 hack 的东西去各种 check ,https://gitlab.kitware.com/cmake/cmake/-/blob/master/bootstrap 也并没有用 autoconf |
Beta Was this translation helpful? Give feedback.
-
搞了个轻量版的 xmake ,配置API跟 xmake 保持一致,纯shell脚本实现,无任何依赖,也不需要安装,只需要复制 configure 脚本到工程根目录即可使用 后面我打算用这个重构替代 xmake 自身源码 makefile 构建,替代 makefile 做到更好的依赖检测,类似 autoconf。 |
Beta Was this translation helpful? Give feedback.
-
tbox 我已经用 xmake.sh port 好了,https://github.com/tboox/tbox/pull/201/files 无任何安装,直接 ./configure; make 就能编译 后面再把 xmake port 掉就行了 |
Beta Was this translation helpful? Give feedback.
-
老的 makefiles 我全部删了,现在干净了,全走新的 ./configure #3200 |
Beta Was this translation helpful? Give feedback.
-
今天在开源中国上看到了 Xmake 新版发布的消息,感谢作者对开源事业的辛勤付出 ~ |
Beta Was this translation helpful? Give feedback.
-
我在尝试为 NixOS 打包 xmake, 暂时先放在 nur 了,等完善后再向 nixpkgs 提交, wineee/nur-packages@fc4497b 目前主要有 3个问题:
# add projects
-if ! has_config "external"; then
+if false; then
if is_config "runtime" "luajit"; then
includes "src/luajit"
希望 tbox 可以提供 .pc 文件
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
最近偶然看到了 xmake 这个工具,觉得还不错。
我是 Arch Linux / NixOS 用户,和两个发行版的 dev 们讨论过打包 xmake 的事情。总体讨论的评价是,xmake 有点“总是假设用户在用 Cent OS 7”,有不少不利于像 Arch Linux、NixOS 等日渐走入众 Linux 用户的发行版打包的点。NixOS 的打包请求最后还是自行关闭了。
主要为:
xmake/core/makefile
Line 280 in 612f1a2
在我看来 xmake 是个我愿意推广的工具,但综上所述,xmake 的实际情况可能不利于某些推广方向/渠道。期望能多有相关考虑。
Beta Was this translation helpful? Give feedback.
All reactions