Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create and submit the package into official distribution repositories #941

Closed
19 of 22 tasks
waruqi opened this issue Sep 7, 2020 · 51 comments
Closed
19 of 22 tasks

Comments

@waruqi
Copy link
Member

waruqi commented Sep 7, 2020

Packaging status

@waruqi waruqi modified the milestones: v2.3.7, todo Sep 7, 2020
@waruqi waruqi pinned this issue Sep 10, 2020
@waruqi
Copy link
Member Author

waruqi commented Sep 10, 2020

Add ubuntu ppa package. https://launchpad.net/~xmake-io/+archive/ubuntu/xmake

sudo add-apt-repository ppa:xmake-io/xmake
sudo apt update
sudo apt install xmake

@jschwartzenberg
Copy link

This is great! Note that you can do both Fedora and RHEL via COPR: https://copr.fedorainfracloud.org/
For SLES/OpenSUSE there is OBS: https://build.opensuse.org/

@waruqi
Copy link
Member Author

waruqi commented Sep 10, 2020

This is great! Note that you can do both Fedora and RHEL via COPR: https://copr.fedorainfracloud.org/
For SLES/OpenSUSE there is OBS: https://build.opensuse.org/

Ok, thanks.

@waruqi
Copy link
Member Author

waruqi commented Sep 23, 2020

Fedora/RHEL copr

https://copr.fedorainfracloud.org/coprs/waruqi/xmake/

sudo dnf copr enable waruqi/xmake
sudo dnf install xmake

@jschwartzenberg
Copy link

Wow cool! I didn't even know SUSE was possible on Copr too now!

@stsp this is covering a lot of distros including Fedora. Maybe you could try it out?

@demhademha
Copy link

There's still alpine to do right?

@waruqi
Copy link
Member Author

waruqi commented Oct 5, 2020

There's still alpine to do right?

is apk? ok, I will also consider it.

@Zaya6
Copy link

Zaya6 commented Mar 18, 2021

Any plans on packaging it for raspbian?

@waruqi
Copy link
Member Author

waruqi commented Mar 18, 2021

Any plans on packaging it for raspbian?

Maybe it will be considered in the future, but I don't have it's environment now.

@waruqi waruqi unpinned this issue Apr 9, 2021
@Phate6660
Copy link
Contributor

I would be happy to write an ebuild for Gentoo.
I'm not sure if it would get into the official repo or how long it could take to get into it if it does,
but I'd put it in my own repo that I already have set up as well.

@waruqi
Copy link
Member Author

waruqi commented May 13, 2021

I would be happy to write an ebuild for Gentoo.
I'm not sure if it would get into the official repo or how long it could take to get into it if it does,
but I'd put it in my own repo that I already have set up as well.

Can you add ebuild to xmake/scripts/gentoo/ ?

https://github.com/xmake-io/xmake/tree/master/scripts

@Phate6660
Copy link
Contributor

I mean, sure, but I'm not sure how useful it is on it's own.
I don't think you can install a package with just an ebuild.
There are other files necessary as well, and Portage expects a proper package structure for a repo.

@waruqi
Copy link
Member Author

waruqi commented May 14, 2021

I mean, sure, but I'm not sure how useful it is on it's own.
I don't think you can install a package with just an ebuild.
There are other files necessary as well, and Portage expects a proper package structure for a repo.

Similar to the debian package? It also has its own package structure: https://github.com/xmake-io/xmake/tree/master/scripts/debian

@Phate6660
Copy link
Contributor

Sorry for the late reply, I promise I wasn't ignoring this.
I was conversing with fellow Gentoo users so that I would better know how to go about this.
Yep, it looks like this should be doable.
However I'll also need to write a helper script to make it stay on the system since it won't be associated with any repo.

@xgqt
Copy link

xgqt commented May 14, 2021

Hi!
About the Gentoo package: there are a few ways to handle the situation.
Let me start by saying that Gentoo is a bit special because its packaging system is based on the concept of ports (similar to *BSD).
So basically Portage (Gentoo pkg manager) needs a special structure of files to execute the builds.
Most important file is the ebuild file but it also needs to be placed inside a repository.
A repository in the sense of Portage is constructed by a file tree of similar structure /profiles/repo_name /metadata/layout.conf /package-category/package-name/package-name-version.ebuild (/ being the repository root).

1st approach is to construct this directory inside xmake source repo and tell users to execute ebuild (a small portage subcommand for handling ebuilds) to install xmake.
This has following drawbacks:

  • using a kindof intermediatory tool to do installations
  • not registering the package in a world set (which holds records of packages installed by user (not auto))
  • not conventional (not really a way you are supposed to do it)

in approaches 2 and 3 users can use a standard way of installation: emerge command

2nd is to link/copy a portage repository from xmake source repo to a repository structure elsewhere
this also is a unconventional way of doing it, a little bit better BUT updates will be a lot... weirder. For example ebuilds will update when xmake repo updates which is not great. People want to update ebuilds when they sync the package repositories.

3rd way is to outsource the portage repo somehow.
This is the best way because users will add repo and install packages using tools they know.
Some of approaches may be to put it into a dedicated git repository (managed by xmake project) and then add the repo as submodule (if you want to have it all in one repo at the end?) or to @Phate6660 's overlay or maybe GURU overlay which is a project (similar to AUR) where non-developer users take care of packages (it is MUCH more restrictive than AUR tho).

Resources:
https://wiki.gentoo.org/wiki/Repository_format
https://wiki.gentoo.org/wiki/Custom_ebuild_repository
https://devmanual.gentoo.org/quickstart/index.html

@waruqi
Copy link
Member Author

waruqi commented May 14, 2021

3rd way is to outsource the portage repo somehow.
This is the best way because users will add repo and install packages using tools they know.
Some of approaches may be to put it into a dedicated git repository (managed by xmake project) and then add the repo as submodule (if you want to have it all in one repo at the end?) or to @Phate6660 's overlay or maybe GURU overlay which is a project (similar to AUR) where non-developer users take care of packages (it is MUCH more restrictive than AUR tho).

Thank you, I think we can consider opening a separate git repo to maintain the gentoo package structure. For the aur package, we do the same. (https://aur.archlinux.org/packages/xmake)

@Phate6660 What do you think? If this is reasonable, I can open a new https://github.com/xmake-io/xmake-package-gentoo repository to maintain it specifically.

@Phate6660
Copy link
Contributor

Phate6660 commented May 14, 2021

Good thing I made sure to check this real quick before I went to sleep.
Yeah that seems great! I would be more than happy to make and maintain the needed overlay and package(s) as well.
And since the overlay would be set up, there's always room for more packages to be added to it.
Whether it's user-made things or separate things that work with it or whatever.

Edit: I'm going to sleep now, I have to get up in a few hours but I doubt I'll wake up in time.
If I don't respond I'm not ignoring or anything.

@waruqi
Copy link
Member Author

waruqi commented May 14, 2021

Good thing I made sure to check this real quick before I went to sleep.
Yeah that seems great! I would be more than happy to make and maintain the needed overlay and package(s) as well.
And since the overlay would be set up, there's always room for more packages to be added to it.
Whether it's user-made things or separate things that work with it or whatever.

Edit: I'm going to sleep now, I have to get up in a few hours but I doubt I'll wake up in time.
If I don't respond I'm not ignoring or anything.

Ok, I created an empty repo first, if you are interested, welcome to submit relevant package scripts to this repo, thank you

https://github.com/xmake-io/xmake-package-gentoo

@Phate6660
Copy link
Contributor

Phate6660 commented May 14, 2021

Yep, I was right, I didn't wake up anywhere near the time I wanted to. T_T
I'm just waiting a little to wake up more, then I'll be working on that overlay and xmake package.
I plan on getting everything set up and working today.

Edit: Working on it now.

@Phate6660
Copy link
Contributor

Phate6660 commented May 14, 2021

@waruqi
Packaging on Gentoo would be much easier if you publish a release of the source with the submodules included.
Would it be ok if I created a release with the latest 2.5.3 version with all the submodules included in the archive?
I would be happy to do all the work involved, I would just need permission to create the actual release. Or I could send you the tarball.
It would just be placed in the xmake-package-gentoo repo, unless you wanted to include it in the xmake repo of course.

@Phate6660
Copy link
Contributor

For now, I'll add archives of the submodules as extra archives and will unpack them to the proper spot in the ebuild.

@waruqi
Copy link
Member Author

waruqi commented May 15, 2021

About Gentoo situation: opened a PR with my tweaks to xmake ebuilds: xmake-io/xmake-package-gentoo#4

Ok, thanks!

@waruqi
Copy link
Member Author

waruqi commented May 17, 2021

I saw @longlene submit another gentoo patch. gentoo/gentoo#20841

@waruqi waruqi pinned this issue Nov 16, 2021
@waruqi waruqi unpinned this issue Dec 24, 2021
@xaizek
Copy link
Contributor

xaizek commented Apr 9, 2022

Now in Slackware via SlackBuilds: http://slackbuilds.org/repository/15.0/development/xmake/
For unfamiliar with Slackware: this is the same format as for official packages but managed independently (unless Patrick decides to move package to official set at some point).

@waruqi
Copy link
Member Author

waruqi commented Dec 24, 2022

Oh, xmake has finally been moved to the official arch repository.
image

@iphelf
Copy link
Contributor

iphelf commented Jun 8, 2023

OBS

Packaged on OBS for openSUSE Tumbleweed and 15.4: https://software.opensuse.org//download.html?project=home%3Aiphelf&package=xmake

@waruqi
Copy link
Member Author

waruqi commented Jun 9, 2023

OBS

Packaged on OBS for openSUSE Tumbleweed and 15.4: https://software.opensuse.org//download.html?project=home%3Aiphelf&package=xmake

oh, thanks!

@TurnOffNOD
Copy link

Is there debian apt repo to install and upgrade? Third-party debian repo by xmake official is also OK.

@waruqi
Copy link
Member Author

waruqi commented Aug 11, 2023

Is there debian apt repo to install and upgrade? Third-party debian repo by xmake official is also OK.

There are no official debian repositories yet, but recently a debian package maintainer has been helping us with debian packages.

https://salsa.debian.org/xmake-team/xmake

@waruqi
Copy link
Member Author

waruqi commented Oct 21, 2023

xmake is in the debian repository now.  https://packages.debian.org/sid/xmake

@waruqi waruqi closed this as completed Oct 23, 2023
@topazus
Copy link

topazus commented Nov 15, 2023

@waruqi Does the tbox dependency, which needed with the packaging of xmake, needs to be static lib?

@waruqi
Copy link
Member Author

waruqi commented Nov 15, 2023

@waruqi Does the tbox dependency, which needed with the packaging of xmake, needs to be static lib?

shared lib has been supported. tboox/tbox#214

@topazus
Copy link

topazus commented Nov 15, 2023

@waruqi I used the patch below to build xmake with system dependencies.
https://gist.githubusercontent.com/topazus/5404d5a698af6efb2030a631c5c1f54d/raw/4e4ec0ba43ec7f5b53f27d47a52de5a1ca5536a6/tbox.patch

But I do not how to build xmake with system library of tbox, which it seems tbox not found when ./configure --external=yes after applying the patch. For now, I can build with bundled tbox dependency, which is static build by default. With bundled shared tbox lib, it will not compile successfully.

@waruqi
Copy link
Member Author

waruqi commented Nov 16, 2023

@waruqi I used the patch below to build xmake with system dependencies. https://gist.githubusercontent.com/topazus/5404d5a698af6efb2030a631c5c1f54d/raw/4e4ec0ba43ec7f5b53f27d47a52de5a1ca5536a6/tbox.patch

But I do not how to build xmake with system library of tbox, which it seems tbox not found when after applying the patch. For now, I can build with bundled tbox dependency, which is static build by default. With bundled shared tbox lib, it will not compile successfully../configure --external=yes

fedora? I can detect the tbox without applying any patches.

cd tbox
./configure --hash=y --charset=y --force-utf=y --mode=shared
make
sudo make install
cd xmake
/configure --external=y   
checking for platform ... linux
checking for architecture ... x86_64
checking for make ... ok
checking for the c compiler (cc) ... gcc
checking for the c++ compiler (cxx) ... gcc
checking for the assembler (as) ... gcc
checking for the objc compiler (mm) ... gcc
checking for the objc++ compiler (mxx) ... gcc
checking for the linker (ld) ... g++
checking for the static library archiver (ar) ... ar
checking for the shared library linker (sh) ... g++
checking for toolchain ... gcc
checking for readline .. no
checking for curses .. no
checking for atomic .. ok
checking for lua .. no
checking for luajit .. no
checking for lz4 .. ok
checking for sv .. no
checking for tbox .. ok     <---- found

@waruqi
Copy link
Member Author

waruqi commented Nov 16, 2023

And I use this patch, it can build xmake with all system libs on fedora.

diff --git a/core/src/xmake/semver/prefix.h b/core/src/xmake/semver/prefix.h
index 2112d73f1..9077b49ca 100644
--- a/core/src/xmake/semver/prefix.h
+++ b/core/src/xmake/semver/prefix.h
@@ -25,7 +25,7 @@
  * includes
  */
 #include "../prefix.h"
-#include "semver.h"
+#include "sv/semver.h"
 
 /* //////////////////////////////////////////////////////////////////////////////////////
  * extern
diff --git a/core/xmake.sh b/core/xmake.sh
index b21e34efe..db2acb843 100755
--- a/core/xmake.sh
+++ b/core/xmake.sh
@@ -87,8 +87,8 @@ option_find_lua() {
     local ldflags=""
     local cflags=""
     option "lua"
-        cflags=`pkg-config --cflags lua5.4 2>/dev/null`
-        ldflags=`pkg-config --libs lua5.4 2>/dev/null`
+        cflags=`pkg-config --cflags lua 2>/dev/null`
+        ldflags=`pkg-config --libs lua 2>/dev/null`
         if test_z "${cflags}"; then
             cflags="-I/usr/include/lua5.4"
         fi
@@ -152,7 +152,7 @@ option_find_lz4() {
 # the sv option
 option "sv"
     add_cfuncs "semver_tryn"
-    add_cincludes "semver.h"
+    add_cincludes "sv/semver.h"
     add_links "sv"
     before_check "option_find_sv"
 option_end
bash-5.2$ ./configure --external=y                          
checking for platform ... linux
checking for architecture ... x86_64
checking for make ... ok
checking for the c compiler (cc) ... gcc
checking for the c++ compiler (cxx) ... gcc
checking for the assembler (as) ... gcc
checking for the objc compiler (mm) ... gcc
checking for the objc++ compiler (mxx) ... gcc
checking for the linker (ld) ... g++
checking for the static library archiver (ar) ... ar
checking for the shared library linker (sh) ... g++
checking for toolchain ... gcc
checking for readline .. no
checking for curses .. no
checking for atomic .. ok
checking for lua .. ok
checking for luajit .. no
checking for lz4 .. ok
checking for sv .. ok
checking for tbox .. ok
checking for wchar .. no
analyzing project configuration ..
generating build/linux/x86_64/release/xmake.config.h ..
build/linux/x86_64/release/xmake.config.h is generated!
generating makefile ..
makefile is generated!
bash-5.2$ make
compiling.release core/src/xmake/engine.c
compiling.release core/src/xmake/xmake.c
compiling.release core/src/xmake/base64/decode.c
compiling.release core/src/xmake/base64/encode.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_clear.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_close.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_data.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_data_set.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_get.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_open.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_set.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_size.c
compiling.release core/src/xmake/curses/curses.c
compiling.release core/src/xmake/fwatcher/add.c
compiling.release core/src/xmake/fwatcher/close.c
compiling.release core/src/xmake/fwatcher/open.c
compiling.release core/src/xmake/fwatcher/remove.c
compiling.release core/src/xmake/fwatcher/wait.c
compiling.release core/src/xmake/hash/md5.c
compiling.release core/src/xmake/hash/sha.c
compiling.release core/src/xmake/hash/uuid4.c
compiling.release core/src/xmake/hash/xxhash.c
compiling.release core/src/xmake/io/file_close.c
compiling.release core/src/xmake/io/file_flush.c
compiling.release core/src/xmake/io/file_isatty.c
compiling.release core/src/xmake/io/file_open.c
compiling.release core/src/xmake/io/file_rawfd.c
compiling.release core/src/xmake/io/file_read.c
compiling.release core/src/xmake/io/file_readable.c
compiling.release core/src/xmake/io/file_seek.c
compiling.release core/src/xmake/io/file_size.c
compiling.release core/src/xmake/io/file_write.c
compiling.release core/src/xmake/io/filelock_close.c
compiling.release core/src/xmake/io/filelock_lock.c
compiling.release core/src/xmake/io/filelock_open.c
compiling.release core/src/xmake/io/filelock_trylock.c
compiling.release core/src/xmake/io/filelock_unlock.c
compiling.release core/src/xmake/io/iscygpty.c
compiling.release core/src/xmake/io/pipe_close.c
compiling.release core/src/xmake/io/pipe_connect.c
compiling.release core/src/xmake/io/pipe_open.c
compiling.release core/src/xmake/io/pipe_openpair.c
compiling.release core/src/xmake/io/pipe_read.c
compiling.release core/src/xmake/io/pipe_wait.c
compiling.release core/src/xmake/io/pipe_write.c
compiling.release core/src/xmake/io/poller.c
compiling.release core/src/xmake/io/poller_insert.c
compiling.release core/src/xmake/io/poller_modify.c
compiling.release core/src/xmake/io/poller_remove.c
compiling.release core/src/xmake/io/poller_spank.c
compiling.release core/src/xmake/io/poller_support.c
compiling.release core/src/xmake/io/poller_wait.c
compiling.release core/src/xmake/io/socket_accept.c
compiling.release core/src/xmake/io/socket_bind.c
compiling.release core/src/xmake/io/socket_close.c
compiling.release core/src/xmake/io/socket_connect.c
compiling.release core/src/xmake/io/socket_ctrl.c
compiling.release core/src/xmake/io/socket_kill.c
compiling.release core/src/xmake/io/socket_listen.c
compiling.release core/src/xmake/io/socket_open.c
compiling.release core/src/xmake/io/socket_peeraddr.c
compiling.release core/src/xmake/io/socket_rawfd.c
compiling.release core/src/xmake/io/socket_recv.c
compiling.release core/src/xmake/io/socket_recvfrom.c
compiling.release core/src/xmake/io/socket_send.c
compiling.release core/src/xmake/io/socket_sendfile.c
compiling.release core/src/xmake/io/socket_sendto.c
compiling.release core/src/xmake/io/socket_wait.c
compiling.release core/src/xmake/io/stdfile.c
compiling.release core/src/xmake/libc/byteof.c
compiling.release core/src/xmake/libc/dataptr.c
compiling.release core/src/xmake/libc/free.c
compiling.release core/src/xmake/libc/malloc.c
compiling.release core/src/xmake/libc/memcpy.c
compiling.release core/src/xmake/libc/memmov.c
compiling.release core/src/xmake/libc/memset.c
compiling.release core/src/xmake/libc/setbyte.c
compiling.release core/src/xmake/libc/strndup.c
compiling.release core/src/xmake/lz4/block_compress.c
compiling.release core/src/xmake/lz4/block_decompress.c
compiling.release core/src/xmake/lz4/compress.c
compiling.release core/src/xmake/lz4/compress_file.c
compiling.release core/src/xmake/lz4/compress_stream_close.c
compiling.release core/src/xmake/lz4/compress_stream_open.c
compiling.release core/src/xmake/lz4/compress_stream_read.c
compiling.release core/src/xmake/lz4/compress_stream_write.c
compiling.release core/src/xmake/lz4/decompress.c
compiling.release core/src/xmake/lz4/decompress_file.c
compiling.release core/src/xmake/lz4/decompress_stream_close.c
compiling.release core/src/xmake/lz4/decompress_stream_open.c
compiling.release core/src/xmake/lz4/decompress_stream_read.c
compiling.release core/src/xmake/lz4/decompress_stream_write.c
compiling.release core/src/xmake/os/args.c
compiling.release core/src/xmake/os/argv.c
compiling.release core/src/xmake/os/chdir.c
compiling.release core/src/xmake/os/cpdir.c
compiling.release core/src/xmake/os/cpfile.c
compiling.release core/src/xmake/os/cpuinfo.c
compiling.release core/src/xmake/os/curdir.c
compiling.release core/src/xmake/os/emptydir.c
compiling.release core/src/xmake/os/exists.c
compiling.release core/src/xmake/os/filesize.c
compiling.release core/src/xmake/os/find.c
compiling.release core/src/xmake/os/fscase.c
compiling.release core/src/xmake/os/getenv.c
compiling.release core/src/xmake/os/getenvs.c
compiling.release core/src/xmake/os/getown.c
compiling.release core/src/xmake/os/getpid.c
compiling.release core/src/xmake/os/getwinsize.c
compiling.release core/src/xmake/os/gid.c
compiling.release core/src/xmake/os/isdir.c
compiling.release core/src/xmake/os/isfile.c
compiling.release core/src/xmake/os/islink.c
compiling.release core/src/xmake/os/link.c
compiling.release core/src/xmake/os/mclock.c
compiling.release core/src/xmake/os/meminfo.c
compiling.release core/src/xmake/os/mkdir.c
compiling.release core/src/xmake/os/mtime.c
compiling.release core/src/xmake/os/readlink.c
compiling.release core/src/xmake/os/rename.c
compiling.release core/src/xmake/os/rmdir.c
compiling.release core/src/xmake/os/rmfile.c
compiling.release core/src/xmake/os/setenv.c
compiling.release core/src/xmake/os/sleep.c
compiling.release core/src/xmake/os/strerror.c
compiling.release core/src/xmake/os/syserror.c
compiling.release core/src/xmake/os/tmpdir.c
compiling.release core/src/xmake/os/touch.c
compiling.release core/src/xmake/os/uid.c
compiling.release core/src/xmake/path/absolute.c
compiling.release core/src/xmake/path/directory.c
compiling.release core/src/xmake/path/is_absolute.c
compiling.release core/src/xmake/path/relative.c
compiling.release core/src/xmake/path/translate.c
compiling.release core/src/xmake/process/close.c
compiling.release core/src/xmake/process/kill.c
compiling.release core/src/xmake/process/open.c
compiling.release core/src/xmake/process/openv.c
compiling.release core/src/xmake/process/wait.c
compiling.release core/src/xmake/readline/add_history.c
compiling.release core/src/xmake/readline/clear_history.c
compiling.release core/src/xmake/readline/history_list.c
compiling.release core/src/xmake/readline/readline.c
compiling.release core/src/xmake/sandbox/interactive.c
compiling.release core/src/xmake/semver/compare.c
compiling.release core/src/xmake/semver/parse.c
compiling.release core/src/xmake/semver/satisfies.c
compiling.release core/src/xmake/semver/select.c
compiling.release core/src/xmake/semver/semver.c
compiling.release core/src/xmake/string/convert.c
compiling.release core/src/xmake/string/endswith.c
compiling.release core/src/xmake/string/lastof.c
compiling.release core/src/xmake/string/split.c
compiling.release core/src/xmake/string/startswith.c
compiling.release core/src/xmake/string/trim.c
compiling.release core/src/xmake/tty/term_mode.c
linking.release build/linux/x86_64/release/libxmake.a
compiling.release core/src/demo/xmake.c
linking.release build/xmake

@waruqi
Copy link
Member Author

waruqi commented Nov 16, 2023

And if we use autoconf to build and install libsv instead of cmake, we need only this patch.

cd sv
./autogen.sh
./configure
make
sudo make install
diff --git a/core/xmake.sh b/core/xmake.sh
index b21e34efe..a3cc54c8e 100755
--- a/core/xmake.sh
+++ b/core/xmake.sh
@@ -87,8 +87,8 @@ option_find_lua() {
     local ldflags=""
     local cflags=""
     option "lua"
-        cflags=`pkg-config --cflags lua5.4 2>/dev/null`
-        ldflags=`pkg-config --libs lua5.4 2>/dev/null`
+        cflags=`pkg-config --cflags lua 2>/dev/null`
+        ldflags=`pkg-config --libs lua 2>/dev/null`
         if test_z "${cflags}"; then
             cflags="-I/usr/include/lua5.4"
         fi

@topazus
Copy link

topazus commented Nov 16, 2023

./configure --hash=y --charset=y --force-utf=y --mode=shared

Thanks. After adding the compiling option --hash=y --charset=y --force-utf=y in building tbox, which I do not add it before, it seems that the detection of tbox is successful.

@waruqi
Copy link
Member Author

waruqi commented Nov 16, 2023

And I added a patch to improve to detect lua. d7cac5b

@topazus
Copy link

topazus commented Nov 16, 2023

I opened two issues on RHBZ about package review of tbox and xmake to adopt xmake package inot Fedora. [1, 2] Maybe @mochaaP can help review the tbox? I see he is already in Fedora packager group, ref: https://src.fedoraproject.org/user/mochaa? The xmake package review seems to be taken by someone, whose GitHub account is bkmgit if I remember correctly.

[1] tbox: https://bugzilla.redhat.com/show_bug.cgi?id=2249637
[2] xmake: https://bugzilla.redhat.com/show_bug.cgi?id=2249796

@topazus
Copy link

topazus commented Nov 18, 2023

@waruqi The xmake package has been in Fedora official repository.[1] Most of the work about packaging is done by @mochaaP . Many thanks to him and the project author.

[1] https://src.fedoraproject.org/rpms/xmake

@waruqi
Copy link
Member Author

waruqi commented Nov 18, 2023

@waruqi The xmake package has been in Fedora official repository.[1] Most of the work about packaging is done by @mochaaP . Many thanks to him and the project author.

[1] https://src.fedoraproject.org/rpms/xmake

oh, thank you very much! @topazus @mochaaP 😄

@qaqland
Copy link

qaqland commented Jan 9, 2024

@qaqland
Copy link

qaqland commented Jan 24, 2024

this line would better remove

{ apk --version >/dev/null 2>&1 && $sudoprefix apk add git gcc g++ make readline-dev ncurses-dev libc-dev linux-headers; } ||

xmake needs patches to work on alpine and cannot be installed by script easily

@waruqi
Copy link
Member Author

waruqi commented Jan 24, 2024

this line would better remove

{ apk --version >/dev/null 2>&1 && $sudoprefix apk add git gcc g++ make readline-dev ncurses-dev libc-dev linux-headers; } ||

xmake needs patches to work on alpine and cannot be installed by script easily

it works for me on dev branch. https://github.com/waruqi/dockerfiles/blob/master/alpine/Dockerfile

/mnt/xmake $ ./scripts/get.sh dev
xmake, A cross-platform build utility based on Lua.
Copyright (C) 2015-present Ruki Wang, tboox.org, xmake.io
                         _
    __  ___ __  __  __ _| | ______
    \ \/ / |  \/  |/ _  | |/ / __ \
     >  <  | \__/ | /_| |   <  ___/
    /_/\_\_|_|  |_|\__ \|_|\_\____|
                         by ruki, xmake.io

   👉  Manual: https://xmake.io/#/getting_started
   🙏  Donate: https://xmake.io/#/sponsor

Branch: dev
cloning https://gitee.com/tboox/xmake.git dev ..
Cloning into '/tmp/.xmake_getter4805'...
remote: Enumerating objects: 3904, done.
remote: Counting objects: 100% (3904/3904), done.
remote: Compressing objects: 100% (3045/3045), done.
remote: Total 3904 (delta 1112), reused 2407 (delta 426), pack-reused 0
Receiving objects: 100% (3904/3904), 2.65 MiB | 2.40 MiB/s, done.
Resolving deltas: 100% (1112/1112), done.
Submodule 'core/src/lua-cjson/lua-cjson' (https://gitee.com/xmake-io/xmake-core-lua-cjson.git) re
gistered for path 'core/src/lua-cjson/lua-cjson'
Submodule 'core/src/lua/lua' (https://gitee.com/xmake-io/xmake-core-lua.git) registered for path
'core/src/lua/lua'
Submodule 'core/src/luajit/luajit' (https://gitee.com/xmake-io/xmake-core-luajit.git) registered
for path 'core/src/luajit/luajit'
Submodule 'core/src/lz4/lz4' (https://gitee.com/xmake-io/xmake-core-lz4.git) registered for path
'core/src/lz4/lz4'
Submodule 'core/src/pdcurses/pdcurses' (https://gitee.com/xmake-io/xmake-core-pdcurses.git) regis
tered for path 'core/src/pdcurses/pdcurses'
Submodule 'core/src/sv/sv' (https://gitee.com/xmake-io/xmake-core-sv.git) registered for path 'co
re/src/sv/sv'
Submodule 'core/src/tbox/tbox' (https://gitee.com/tboox/tbox.git) registered for path 'core/src/t
box/tbox'
Cloning into '/tmp/.xmake_getter4805/core/src/lua-cjson/lua-cjson'...
remote: Enumerating objects: 1028, done.
remote: Counting objects: 100% (134/134), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 1028 (delta 130), reused 125 (delta 125), pack-reused 894
Receiving objects: 100% (1028/1028), 264.92 KiB | 673.00 KiB/s, done.
Resolving deltas: 100% (666/666), done.
Cloning into '/tmp/.xmake_getter4805/core/src/lua/lua'...
remote: Enumerating objects: 20671, done.
remote: Total 20671 (delta 0), reused 0 (delta 0), pack-reused 20671
Receiving objects: 100% (20671/20671), 4.56 MiB | 1.81 MiB/s, done.
Resolving deltas: 100% (15500/15500), done.
Cloning into '/tmp/.xmake_getter4805/core/src/luajit/luajit'...
remote: Enumerating objects: 14421, done.
remote: Counting objects: 100% (1223/1223), done.
remote: Compressing objects: 100% (54/54), done.
remote: Total 14421 (delta 1191), reused 1169 (delta 1169), pack-reused 13198
Receiving objects: 100% (14421/14421), 5.04 MiB | 1.96 MiB/s, done.
Resolving deltas: 100% (11788/11788), done.
Cloning into '/tmp/.xmake_getter4805/core/src/lz4/lz4'...
remote: Enumerating objects: 12360, done.
remote: Total 12360 (delta 0), reused 0 (delta 0), pack-reused 12360
Receiving objects: 100% (12360/12360), 5.24 MiB | 1.92 MiB/s, done.
Resolving deltas: 100% (8710/8710), done.
Cloning into '/tmp/.xmake_getter4805/core/src/pdcurses/pdcurses'...
remote: Enumerating objects: 16420, done.
remote: Counting objects: 100% (16420/16420), done.
remote: Compressing objects: 100% (3255/3255), done.
remote: Total 16420 (delta 13139), reused 16420 (delta 13139), pack-reused 0
Receiving objects: 100% (16420/16420), 3.97 MiB | 1.78 MiB/s, done.
Resolving deltas: 100% (13139/13139), done.
Cloning into '/tmp/.xmake_getter4805/core/src/sv/sv'...
remote: Enumerating objects: 1108, done.
remote: Counting objects: 100% (12/12), done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 1108 (delta 1), reused 0 (delta 0), pack-reused 1096
Receiving objects: 100% (1108/1108), 192.63 KiB | 628.00 KiB/s, done.
Resolving deltas: 100% (713/713), done.
Cloning into '/tmp/.xmake_getter4805/core/src/tbox/tbox'...
remote: Enumerating objects: 61629, done.
remote: Counting objects: 100% (239/239), done.
remote: Compressing objects: 100% (14/14), done.
remote: Total 61629 (delta 227), reused 224 (delta 224), pack-reused 61390
Receiving objects: 100% (61629/61629), 27.83 MiB | 3.96 MiB/s, done.
Resolving deltas: 100% (49133/49133), done.
remote: Enumerating objects: 17, done.
remote: Counting objects: 100% (3/3), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 17 (delta 0), reused 0 (delta 0), pack-reused 14
Unpacking objects: 100% (17/17), 28.80 KiB | 1.03 MiB/s, done.
From https://gitee.com/xmake-io/xmake-core-lua-cjson
 * branch            ddcecf3b24b71421e7b4a2962f1fbcc0297e0c1e -> FETCH_HEAD
Submodule path 'core/src/lua-cjson/lua-cjson': checked out 'ddcecf3b24b71421e7b4a2962f1fbcc0297e0
c1e'
remote: Enumerating objects: 3967, done.
remote: Counting objects: 100% (3967/3967), done.
remote: Compressing objects: 100% (921/921), done.
remote: Total 3967 (delta 3046), reused 3967 (delta 3046), pack-reused 0
Receiving objects: 100% (3967/3967), 4.81 MiB | 1.96 MiB/s, done.
Resolving deltas: 100% (3046/3046), completed with 62 local objects.
From https://gitee.com/xmake-io/xmake-core-lua
 * branch              eadd8c7178c79c814ecca9652973a9b9dd4cc71b -> FETCH_HEAD
Submodule path 'core/src/lua/lua': checked out 'eadd8c7178c79c814ecca9652973a9b9dd4cc71b'
remote: Enumerating objects: 1717, done.
remote: Counting objects: 100% (1170/1170), done.
remote: Compressing objects: 100% (85/85), done.
remote: Total 1717 (delta 1120), reused 1077 (delta 1077), pack-reused 547
Receiving objects: 100% (1717/1717), 828.95 KiB | 916.00 KiB/s, done.
Resolving deltas: 100% (1400/1400), completed with 342 local objects.
From https://gitee.com/xmake-io/xmake-core-luajit
 * branch              7cdc078416037cd0a16a79553509a7f153fe629d -> FETCH_HEAD
Submodule path 'core/src/luajit/luajit': checked out '7cdc078416037cd0a16a79553509a7f153fe629d'
Submodule path 'core/src/lz4/lz4': checked out '033606ef259ef2852f6ae1e8ec7a10c641417654'
Submodule path 'core/src/pdcurses/pdcurses': checked out '5a522dc7ac23b8571f68851b844d3dd4dc6a67a
5'
Submodule path 'core/src/sv/sv': checked out 'b3363a3cb2f499a735eaebe87a8a3491593e3289'
Submodule path 'core/src/tbox/tbox': checked out 'cb91a1491a2125042df7b7cdaa9a198c5fb350e2'
checking for platform ... linux
checking for architecture ... x86_64
checking for make ... ok
checking for the c compiler (cc) ... gcc
checking for the c++ compiler (cxx) ... gcc
checking for the assembler (as) ... gcc
checking for the objc compiler (mm) ... gcc
checking for the objc++ compiler (mxx) ... gcc
checking for the linker (ld) ... g++
checking for the static library archiver (ar) ... ar
checking for the shared library linker (sh) ... g++
checking for toolchain ... gcc
checking for readline .. no
checking for curses .. ok
checking for atomic .. ok
checking for lua .. no
checking for luajit .. no
checking for lz4 .. no
checking for sv .. no
checking for tbox .. no
checking for wchar .. no
analyzing project configuration ..
generating build/linux/x86_64/release/xmake.config.h ..
build/linux/x86_64/release/xmake.config.h is generated!
generating makefile ..
makefile is generated!
/mnt/xmake
compiling.release core/src/lua/lua/lapi.c
compiling.release core/src/lua/lua/lauxlib.c
compiling.release core/src/lua/lua/lbaselib.c
compiling.release core/src/lua/lua/lcode.c
compiling.release core/src/lua/lua/lcorolib.c
compiling.release core/src/lua/lua/lctype.c
compiling.release core/src/lua/lua/ldblib.c
compiling.release core/src/lua/lua/ldebug.c
compiling.release core/src/lua/lua/ldo.c
compiling.release core/src/lua/lua/ldump.c
compiling.release core/src/lua/lua/lfunc.c
compiling.release core/src/lua/lua/lgc.c
compiling.release core/src/lua/lua/linit.c
compiling.release core/src/lua/lua/liolib.c
compiling.release core/src/lua/lua/llex.c
compiling.release core/src/lua/lua/lmathlib.c
compiling.release core/src/lua/lua/lmem.c
compiling.release core/src/lua/lua/loadlib.c
compiling.release core/src/lua/lua/lobject.c
compiling.release core/src/lua/lua/lopcodes.c
compiling.release core/src/lua/lua/loslib.c
compiling.release core/src/lua/lua/lparser.c
compiling.release core/src/lua/lua/lstate.c
compiling.release core/src/lua/lua/lstring.c
compiling.release core/src/lua/lua/lstrlib.c
compiling.release core/src/lua/lua/ltable.c
compiling.release core/src/lua/lua/ltablib.c
compiling.release core/src/lua/lua/ltm.c
compiling.release core/src/lua/lua/lundump.c
compiling.release core/src/lua/lua/lutf8lib.c
compiling.release core/src/lua/lua/lvm.c
compiling.release core/src/lua/lua/lzio.c
linking.release build/linux/x86_64/release/liblua.a
compiling.release core/src/lua-cjson/lua-cjson/dtoa.c
core/src/lua-cjson/lua-cjson/dtoa.c: In function 'dtoa':
core/src/lua-cjson/lua-cjson/dtoa.c:3971:42: warning: 'j1' may be used uninitialized [-Wmaybe-uni
nitialized]
 3971 |                         if (k0 < 0 && j1 >= 307) {
      |                                       ~~~^~~~~~
core/src/lua-cjson/lua-cjson/dtoa.c:3691:20: note: 'j1' was declared here
 3691 |                 j, j1, k, k0, k_check, leftright, m2, m5, s2, s5,
      |                    ^~
compiling.release core/src/lua-cjson/lua-cjson/lua_cjson.c
compiling.release core/src/lua-cjson/lua-cjson/strbuf.c
compiling.release core/src/lua-cjson/lua-cjson/g_fmt.c
linking.release build/linux/x86_64/release/liblua_cjson.a
compiling.release core/src/lz4/lz4/lib/lz4.c
compiling.release core/src/lz4/lz4/lib/lz4frame.c
compiling.release core/src/lz4/lz4/lib/lz4hc.c
compiling.release core/src/lz4/lz4/lib/xxhash.c
linking.release build/linux/x86_64/release/liblz4.a
compiling.release core/src/sv/sv/src/utils.c
compiling.release core/src/sv/sv/src/id.c
compiling.release core/src/sv/sv/src/num.c
compiling.release core/src/sv/sv/src/version.c
compiling.release core/src/sv/sv/src/semvers.c
compiling.release core/src/sv/sv/src/range.c
compiling.release core/src/sv/sv/src/comp.c
linking.release build/linux/x86_64/release/libsv.a
compiling.release core/src/tbox/tbox/src/tbox/tbox.c
compiling.release core/src/tbox/tbox/src/tbox/hash/bkdr.c
compiling.release core/src/tbox/tbox/src/tbox/hash/fnv32.c
compiling.release core/src/tbox/tbox/src/tbox/hash/adler32.c
compiling.release core/src/tbox/tbox/src/tbox/math/int32.c
compiling.release core/src/tbox/tbox/src/tbox/math/impl/math.c
compiling.release core/src/tbox/tbox/src/tbox/math/fixed16.c
compiling.release core/src/tbox/tbox/src/tbox/math/random/random.c
compiling.release core/src/tbox/tbox/src/tbox/math/random/linear.c
compiling.release core/src/tbox/tbox/src/tbox/libc/misc/time/gmmktime.c
compiling.release core/src/tbox/tbox/src/tbox/libc/misc/time/gmtime.c
compiling.release core/src/tbox/tbox/src/tbox/libc/misc/time/time.c
compiling.release core/src/tbox/tbox/src/tbox/libc/misc/time/mktime.c
compiling.release core/src/tbox/tbox/src/tbox/libc/misc/time/localtime.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/sprintf.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/putchar.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/printf.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/vswprintf.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/wputs.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/puts.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/swprintf.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/vsnprintf.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/printf_object.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/getchar.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/wprintf.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdio/snprintf.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdlib/random.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdlib/stdlib.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdlib/wcstombs.c
compiling.release core/src/tbox/tbox/src/tbox/libc/stdlib/mbstowcs.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnirstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strndup.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsndup.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsrchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strirstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/stristr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strncat.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strcat.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsirstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strncpy.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/memset.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strichr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strcmp.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnrchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsnlen.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsnrchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsichr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnlen.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsicmp.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnrstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcscpy.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnichr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcslen.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsncpy.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsrstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcscmp.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsnrstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsnicmp.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsncmp.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsdup.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcscat.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strrchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsirchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/memmov.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/memdup.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsnirstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsnirchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnistr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/stricmp.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnicmp.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strrstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnstr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strirchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcslcpy.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/memmem.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsistr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strnirchr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcsncat.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/wcschr.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strcpy.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strlcpy.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strlen.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/memcpy.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/memcmp.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strncmp.c
compiling.release core/src/tbox/tbox/src/tbox/libc/string/strdup.c
compiling.release core/src/tbox/tbox/src/tbox/libc/impl/libc.c
compiling.release core/src/tbox/tbox/src/tbox/utils/base32.c
compiling.release core/src/tbox/tbox/src/tbox/utils/base64.c
compiling.release core/src/tbox/tbox/src/tbox/utils/bits.c
compiling.release core/src/tbox/tbox/src/tbox/utils/dump.c
compiling.release core/src/tbox/tbox/src/tbox/utils/lock_profiler.c
compiling.release core/src/tbox/tbox/src/tbox/utils/singleton.c
compiling.release core/src/tbox/tbox/src/tbox/utils/trace.c
compiling.release core/src/tbox/tbox/src/tbox/utils/url.c
compiling.release core/src/tbox/tbox/src/tbox/utils/used.c
compiling.release core/src/tbox/tbox/src/tbox/prefix/state.c
compiling.release core/src/tbox/tbox/src/tbox/memory/static_buffer.c
compiling.release core/src/tbox/tbox/src/tbox/memory/large_allocator.c
compiling.release core/src/tbox/tbox/src/tbox/memory/queue_buffer.c
compiling.release core/src/tbox/tbox/src/tbox/memory/small_allocator.c
compiling.release core/src/tbox/tbox/src/tbox/memory/string_pool.c
compiling.release core/src/tbox/tbox/src/tbox/memory/default_allocator.c
compiling.release core/src/tbox/tbox/src/tbox/memory/buffer.c
compiling.release core/src/tbox/tbox/src/tbox/memory/impl/static_fixed_pool.c
compiling.release core/src/tbox/tbox/src/tbox/memory/impl/memory.c
compiling.release core/src/tbox/tbox/src/tbox/memory/impl/prefix.c
compiling.release core/src/tbox/tbox/src/tbox/memory/impl/static_large_allocator.c
compiling.release core/src/tbox/tbox/src/tbox/memory/impl/native_large_allocator.c
compiling.release core/src/tbox/tbox/src/tbox/memory/virtual_allocator.c
compiling.release core/src/tbox/tbox/src/tbox/memory/allocator.c
compiling.release core/src/tbox/tbox/src/tbox/memory/native_allocator.c
compiling.release core/src/tbox/tbox/src/tbox/memory/static_allocator.c
compiling.release core/src/tbox/tbox/src/tbox/memory/fixed_pool.c
compiling.release core/src/tbox/tbox/src/tbox/string/string.c
compiling.release core/src/tbox/tbox/src/tbox/string/static_string.c
compiling.release core/src/tbox/tbox/src/tbox/stream/transfer.c
compiling.release core/src/tbox/tbox/src/tbox/stream/stream.c
compiling.release core/src/tbox/tbox/src/tbox/stream/static_stream.c
compiling.release core/src/tbox/tbox/src/tbox/stream/filter.c
compiling.release core/src/tbox/tbox/src/tbox/stream/impl/stream/file.c
compiling.release core/src/tbox/tbox/src/tbox/stream/impl/stream/sock.c
compiling.release core/src/tbox/tbox/src/tbox/stream/impl/stream/filter.c
compiling.release core/src/tbox/tbox/src/tbox/stream/impl/stream/data.c
compiling.release core/src/tbox/tbox/src/tbox/stream/impl/stream/http.c
compiling.release core/src/tbox/tbox/src/tbox/stream/impl/filter/cache.c
compiling.release core/src/tbox/tbox/src/tbox/stream/impl/filter/chunked.c
compiling.release core/src/tbox/tbox/src/tbox/network/cookies.c
compiling.release core/src/tbox/tbox/src/tbox/network/ipaddr.c
compiling.release core/src/tbox/tbox/src/tbox/network/ipv4.c
compiling.release core/src/tbox/tbox/src/tbox/network/hwaddr.c
compiling.release core/src/tbox/tbox/src/tbox/network/ipv6.c
compiling.release core/src/tbox/tbox/src/tbox/network/unixaddr.c
compiling.release core/src/tbox/tbox/src/tbox/network/url.c
compiling.release core/src/tbox/tbox/src/tbox/network/http.c
compiling.release core/src/tbox/tbox/src/tbox/network/impl/network.c
compiling.release core/src/tbox/tbox/src/tbox/network/impl/http/option.c
compiling.release core/src/tbox/tbox/src/tbox/network/impl/http/status.c
compiling.release core/src/tbox/tbox/src/tbox/network/impl/http/date.c
compiling.release core/src/tbox/tbox/src/tbox/network/impl/http/method.c
compiling.release core/src/tbox/tbox/src/tbox/network/dns/cache.c
compiling.release core/src/tbox/tbox/src/tbox/network/dns/looker.c
compiling.release core/src/tbox/tbox/src/tbox/network/dns/server.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/count.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/walk.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/count_if.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/remove_if.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/heap_sort.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/binary_find.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/remove_first_if.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/rfind.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/quick_sort.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/remove_first.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/distance.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/remove.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/predicate.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/rwalk.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/insert_sort.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/bubble_sort.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/find_if.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/find.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/rfind_if.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/sort.c
compiling.release core/src/tbox/tbox/src/tbox/algorithm/binary_find_if.c
compiling.release core/src/tbox/tbox/src/tbox/container/priority_queue.c
compiling.release core/src/tbox/tbox/src/tbox/container/bloom_filter.c
compiling.release core/src/tbox/tbox/src/tbox/container/single_list_entry.c
compiling.release core/src/tbox/tbox/src/tbox/container/hash_map.c
compiling.release core/src/tbox/tbox/src/tbox/container/stack.c
compiling.release core/src/tbox/tbox/src/tbox/container/iterator.c
compiling.release core/src/tbox/tbox/src/tbox/container/list.c
compiling.release core/src/tbox/tbox/src/tbox/container/vector.c
compiling.release core/src/tbox/tbox/src/tbox/container/array_iterator.c
compiling.release core/src/tbox/tbox/src/tbox/container/hash_set.c
compiling.release core/src/tbox/tbox/src/tbox/container/single_list.c
compiling.release core/src/tbox/tbox/src/tbox/container/list_entry.c
compiling.release core/src/tbox/tbox/src/tbox/container/queue.c
compiling.release core/src/tbox/tbox/src/tbox/container/heap.c
compiling.release core/src/tbox/tbox/src/tbox/container/circle_queue.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/hash.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/long.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/null.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/size.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/true.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/uint8.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/uint16.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/uint32.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/mem.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/ptr.c
compiling.release core/src/tbox/tbox/src/tbox/container/element/str.c
compiling.release core/src/tbox/tbox/src/tbox/libm/impl/libm.c
compiling.release core/src/tbox/tbox/src/tbox/libm/ilog2i.c
compiling.release core/src/tbox/tbox/src/tbox/libm/isqrti.c
compiling.release core/src/tbox/tbox/src/tbox/libm/isqrti64.c
compiling.release core/src/tbox/tbox/src/tbox/libm/idivi8.c
compiling.release core/src/tbox/tbox/src/tbox/platform/addrinfo.c
compiling.release core/src/tbox/tbox/src/tbox/platform/atomic64.c
compiling.release core/src/tbox/tbox/src/tbox/platform/backtrace.c
compiling.release core/src/tbox/tbox/src/tbox/platform/cache_time.c
compiling.release core/src/tbox/tbox/src/tbox/platform/cpu.c
compiling.release core/src/tbox/tbox/src/tbox/platform/directory.c
compiling.release core/src/tbox/tbox/src/tbox/platform/dynamic.c
compiling.release core/src/tbox/tbox/src/tbox/platform/environment.c
compiling.release core/src/tbox/tbox/src/tbox/platform/event.c
compiling.release core/src/tbox/tbox/src/tbox/platform/file.c
compiling.release core/src/tbox/tbox/src/tbox/platform/filelock.c
compiling.release core/src/tbox/tbox/src/tbox/platform/fwatcher.c
compiling.release core/src/tbox/tbox/src/tbox/platform/hostname.c
compiling.release core/src/tbox/tbox/src/tbox/platform/ifaddrs.c
compiling.release core/src/tbox/tbox/src/tbox/platform/ltimer.c
compiling.release core/src/tbox/tbox/src/tbox/platform/mutex.c
compiling.release core/src/tbox/tbox/src/tbox/platform/native_memory.c
compiling.release core/src/tbox/tbox/src/tbox/platform/page.c
compiling.release core/src/tbox/tbox/src/tbox/platform/path.c
compiling.release core/src/tbox/tbox/src/tbox/platform/pipe.c
compiling.release core/src/tbox/tbox/src/tbox/platform/poller.c
compiling.release core/src/tbox/tbox/src/tbox/platform/print.c
compiling.release core/src/tbox/tbox/src/tbox/platform/process.c
compiling.release core/src/tbox/tbox/src/tbox/platform/sched.c
compiling.release core/src/tbox/tbox/src/tbox/platform/semaphore.c
compiling.release core/src/tbox/tbox/src/tbox/platform/socket.c
compiling.release core/src/tbox/tbox/src/tbox/platform/stdfile.c
compiling.release core/src/tbox/tbox/src/tbox/platform/syserror.c
compiling.release core/src/tbox/tbox/src/tbox/platform/thread.c
compiling.release core/src/tbox/tbox/src/tbox/platform/thread_local.c
compiling.release core/src/tbox/tbox/src/tbox/platform/thread_pool.c
compiling.release core/src/tbox/tbox/src/tbox/platform/time.c
compiling.release core/src/tbox/tbox/src/tbox/platform/timer.c
compiling.release core/src/tbox/tbox/src/tbox/platform/virtual_memory.c
compiling.release core/src/tbox/tbox/src/tbox/platform/impl/platform.c
compiling.release core/src/tbox/tbox/src/tbox/platform/impl/pollerdata.c
compiling.release core/src/tbox/tbox/src/tbox/platform/impl/dns.c
compiling.release core/src/tbox/tbox/src/tbox/libm/acos.c
compiling.release core/src/tbox/tbox/src/tbox/libm/acosf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/asin.c
compiling.release core/src/tbox/tbox/src/tbox/libm/asinf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/atan.c
compiling.release core/src/tbox/tbox/src/tbox/libm/atan2.c
compiling.release core/src/tbox/tbox/src/tbox/libm/atan2f.c
compiling.release core/src/tbox/tbox/src/tbox/libm/atanf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/cos.c
compiling.release core/src/tbox/tbox/src/tbox/libm/cosf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/exp.c
compiling.release core/src/tbox/tbox/src/tbox/libm/exp1.c
compiling.release core/src/tbox/tbox/src/tbox/libm/exp1f.c
compiling.release core/src/tbox/tbox/src/tbox/libm/expf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/expi.c
compiling.release core/src/tbox/tbox/src/tbox/libm/expif.c
compiling.release core/src/tbox/tbox/src/tbox/libm/fmod.c
compiling.release core/src/tbox/tbox/src/tbox/libm/fmodf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/isfin.c
compiling.release core/src/tbox/tbox/src/tbox/libm/isfinf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/isinf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/isinff.c
compiling.release core/src/tbox/tbox/src/tbox/libm/isnan.c
compiling.release core/src/tbox/tbox/src/tbox/libm/isnanf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/log2.c
compiling.release core/src/tbox/tbox/src/tbox/libm/log2f.c
compiling.release core/src/tbox/tbox/src/tbox/libm/pow.c
compiling.release core/src/tbox/tbox/src/tbox/libm/powf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/sin.c
compiling.release core/src/tbox/tbox/src/tbox/libm/sincos.c
compiling.release core/src/tbox/tbox/src/tbox/libm/sincosf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/sinf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/sqrt.c
compiling.release core/src/tbox/tbox/src/tbox/libm/sqrtf.c
compiling.release core/src/tbox/tbox/src/tbox/libm/tan.c
compiling.release core/src/tbox/tbox/src/tbox/libm/tanf.c
compiling.release core/src/tbox/tbox/src/tbox/hash/ap.c
compiling.release core/src/tbox/tbox/src/tbox/hash/blizzard.c
compiling.release core/src/tbox/tbox/src/tbox/hash/crc16.c
compiling.release core/src/tbox/tbox/src/tbox/hash/crc32.c
compiling.release core/src/tbox/tbox/src/tbox/hash/crc8.c
compiling.release core/src/tbox/tbox/src/tbox/hash/djb2.c
compiling.release core/src/tbox/tbox/src/tbox/hash/fnv64.c
compiling.release core/src/tbox/tbox/src/tbox/hash/md5.c
compiling.release core/src/tbox/tbox/src/tbox/hash/murmur.c
compiling.release core/src/tbox/tbox/src/tbox/hash/sdbm.c
compiling.release core/src/tbox/tbox/src/tbox/hash/rs.c
compiling.release core/src/tbox/tbox/src/tbox/hash/sha.c
compiling.release core/src/tbox/tbox/src/tbox/hash/uuid.c
compiling.release core/src/tbox/tbox/src/tbox/hash/arch/crc32.S
compiling.release core/src/tbox/tbox/src/tbox/charset/ucs4.c
compiling.release core/src/tbox/tbox/src/tbox/charset/utf16.c
compiling.release core/src/tbox/tbox/src/tbox/charset/utf8.c
compiling.release core/src/tbox/tbox/src/tbox/charset/gb2312.c
compiling.release core/src/tbox/tbox/src/tbox/charset/ascii.c
compiling.release core/src/tbox/tbox/src/tbox/charset/utf32.c
compiling.release core/src/tbox/tbox/src/tbox/charset/iso8859.c
compiling.release core/src/tbox/tbox/src/tbox/charset/ucs2.c
compiling.release core/src/tbox/tbox/src/tbox/charset/charset.c
compiling.release core/src/tbox/tbox/src/tbox/platform/impl/charset.c
compiling.release core/src/tbox/tbox/src/tbox/stream/impl/filter/charset.c
linking.release build/linux/x86_64/release/libtbox.a
compiling.release core/src/xmake/xmake.c
compiling.release core/src/xmake/engine.c
compiling.release core/src/xmake/base64/encode.c
compiling.release core/src/xmake/base64/decode.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_clear.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_data.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_size.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_set.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_data_set.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_close.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_open.c
compiling.release core/src/xmake/bloom_filter/bloom_filter_get.c
compiling.release core/src/xmake/curses/curses.c
compiling.release core/src/xmake/fwatcher/open.c
compiling.release core/src/xmake/fwatcher/add.c
compiling.release core/src/xmake/fwatcher/remove.c
compiling.release core/src/xmake/fwatcher/wait.c
compiling.release core/src/xmake/fwatcher/close.c
compiling.release core/src/xmake/hash/uuid4.c
compiling.release core/src/xmake/hash/xxhash.c
compiling.release core/src/xmake/hash/sha.c
compiling.release core/src/xmake/hash/md5.c
compiling.release core/src/xmake/io/pipe_close.c
compiling.release core/src/xmake/io/file_isatty.c
compiling.release core/src/xmake/io/pipe_open.c
compiling.release core/src/xmake/io/socket_listen.c
compiling.release core/src/xmake/io/poller.c
compiling.release core/src/xmake/io/socket_sendfile.c
compiling.release core/src/xmake/io/socket_peeraddr.c
compiling.release core/src/xmake/io/pipe_connect.c
compiling.release core/src/xmake/io/socket_sendto.c
compiling.release core/src/xmake/io/poller_modify.c
compiling.release core/src/xmake/io/file_flush.c
compiling.release core/src/xmake/io/file_size.c
compiling.release core/src/xmake/io/filelock_lock.c
compiling.release core/src/xmake/io/socket_rawfd.c
compiling.release core/src/xmake/io/file_read.c
compiling.release core/src/xmake/io/filelock_close.c
compiling.release core/src/xmake/io/file_close.c
compiling.release core/src/xmake/io/filelock_open.c
compiling.release core/src/xmake/io/file_rawfd.c
compiling.release core/src/xmake/io/pipe_write.c
compiling.release core/src/xmake/io/pipe_openpair.c
compiling.release core/src/xmake/io/poller_insert.c
compiling.release core/src/xmake/io/poller_wait.c
compiling.release core/src/xmake/io/file_readable.c
compiling.release core/src/xmake/io/stdfile.c
compiling.release core/src/xmake/io/socket_kill.c
compiling.release core/src/xmake/io/socket_wait.c
compiling.release core/src/xmake/io/socket_recv.c
compiling.release core/src/xmake/io/poller_remove.c
compiling.release core/src/xmake/io/socket_recvfrom.c
compiling.release core/src/xmake/io/socket_connect.c
compiling.release core/src/xmake/io/pipe_wait.c
compiling.release core/src/xmake/io/iscygpty.c
compiling.release core/src/xmake/io/socket_send.c
compiling.release core/src/xmake/io/file_open.c
compiling.release core/src/xmake/io/socket_close.c
compiling.release core/src/xmake/io/pipe_read.c
compiling.release core/src/xmake/io/file_seek.c
compiling.release core/src/xmake/io/socket_bind.c
compiling.release core/src/xmake/io/socket_open.c
compiling.release core/src/xmake/io/poller_support.c
compiling.release core/src/xmake/io/file_write.c
compiling.release core/src/xmake/io/poller_spank.c
compiling.release core/src/xmake/io/filelock_unlock.c
compiling.release core/src/xmake/io/filelock_trylock.c
compiling.release core/src/xmake/io/socket_accept.c
compiling.release core/src/xmake/io/socket_ctrl.c
compiling.release core/src/xmake/libc/strndup.c
compiling.release core/src/xmake/libc/memset.c
compiling.release core/src/xmake/libc/byteof.c
compiling.release core/src/xmake/libc/setbyte.c
compiling.release core/src/xmake/libc/free.c
compiling.release core/src/xmake/libc/memmov.c
compiling.release core/src/xmake/libc/malloc.c
compiling.release core/src/xmake/libc/dataptr.c
compiling.release core/src/xmake/libc/memcpy.c
compiling.release core/src/xmake/lz4/decompress_stream_read.c
compiling.release core/src/xmake/lz4/block_compress.c
compiling.release core/src/xmake/lz4/compress_stream_open.c
compiling.release core/src/xmake/lz4/compress.c
compiling.release core/src/xmake/lz4/compress_stream_write.c
compiling.release core/src/xmake/lz4/decompress_stream_open.c
compiling.release core/src/xmake/lz4/block_decompress.c
compiling.release core/src/xmake/lz4/decompress.c
compiling.release core/src/xmake/lz4/compress_file.c
compiling.release core/src/xmake/lz4/decompress_stream_close.c
compiling.release core/src/xmake/lz4/compress_stream_close.c
compiling.release core/src/xmake/lz4/decompress_file.c
compiling.release core/src/xmake/lz4/compress_stream_read.c
compiling.release core/src/xmake/lz4/decompress_stream_write.c
compiling.release core/src/xmake/os/mtime.c
compiling.release core/src/xmake/os/isfile.c
compiling.release core/src/xmake/os/tmpdir.c
compiling.release core/src/xmake/os/readlink.c
compiling.release core/src/xmake/os/mclock.c
compiling.release core/src/xmake/os/filesize.c
compiling.release core/src/xmake/os/rmfile.c
compiling.release core/src/xmake/os/strerror.c
compiling.release core/src/xmake/os/cpfile.c
compiling.release core/src/xmake/os/meminfo.c
compiling.release core/src/xmake/os/curdir.c
compiling.release core/src/xmake/os/gid.c
compiling.release core/src/xmake/os/rmdir.c
compiling.release core/src/xmake/os/emptydir.c
compiling.release core/src/xmake/os/args.c
compiling.release core/src/xmake/os/sleep.c
compiling.release core/src/xmake/os/fscase.c
compiling.release core/src/xmake/os/cpuinfo.c
compiling.release core/src/xmake/os/getpid.c
compiling.release core/src/xmake/os/chdir.c
compiling.release core/src/xmake/os/argv.c
compiling.release core/src/xmake/os/getwinsize.c
compiling.release core/src/xmake/os/getenv.c
compiling.release core/src/xmake/os/rename.c
compiling.release core/src/xmake/os/uid.c
compiling.release core/src/xmake/os/getown.c
compiling.release core/src/xmake/os/syserror.c
compiling.release core/src/xmake/os/exists.c
compiling.release core/src/xmake/os/link.c
compiling.release core/src/xmake/os/find.c
compiling.release core/src/xmake/os/islink.c
compiling.release core/src/xmake/os/mkdir.c
compiling.release core/src/xmake/os/cpdir.c
compiling.release core/src/xmake/os/setenv.c
compiling.release core/src/xmake/os/getenvs.c
compiling.release core/src/xmake/os/isdir.c
compiling.release core/src/xmake/os/touch.c
compiling.release core/src/xmake/path/translate.c
compiling.release core/src/xmake/path/directory.c
compiling.release core/src/xmake/path/relative.c
compiling.release core/src/xmake/path/absolute.c
compiling.release core/src/xmake/path/is_absolute.c
compiling.release core/src/xmake/process/open.c
compiling.release core/src/xmake/process/openv.c
compiling.release core/src/xmake/process/kill.c
compiling.release core/src/xmake/process/wait.c
compiling.release core/src/xmake/process/close.c
compiling.release core/src/xmake/readline/add_history.c
compiling.release core/src/xmake/readline/history_list.c
compiling.release core/src/xmake/readline/readline.c
compiling.release core/src/xmake/readline/clear_history.c
compiling.release core/src/xmake/sandbox/interactive.c
compiling.release core/src/xmake/semver/compare.c
compiling.release core/src/xmake/semver/select.c
compiling.release core/src/xmake/semver/semver.c
compiling.release core/src/xmake/semver/parse.c
compiling.release core/src/xmake/semver/satisfies.c
compiling.release core/src/xmake/string/split.c
compiling.release core/src/xmake/string/convert.c
compiling.release core/src/xmake/string/lastof.c
compiling.release core/src/xmake/string/trim.c
compiling.release core/src/xmake/string/startswith.c
compiling.release core/src/xmake/string/endswith.c
compiling.release core/src/xmake/tty/term_mode.c
linking.release build/linux/x86_64/release/libxmake.a
compiling.release core/src/demo/xmake.c
linking.release build/xmake
installing build/xmake to /home/ruki/.local/bin
xmake v2.8.6+dev.85bfb36, A cross-platform build utility based on Lua
Copyright (C) 2015-present Ruki Wang, tboox.org, xmake.io
                         _
    __  ___ __  __  __ _| | ______
    \ \/ / |  \/  |/ _  | |/ / __ \
     >  <  | \__/ | /_| |   <  ___/
    /_/\_\_|_|  |_|\__ \|_|\_\____|
                         by ruki, xmake.io

    👉  Manual: https://xmake.io/#/getting_started
    🙏  Donate: https://xmake.io/#/sponsor

  => installing shell integration to ~/.profile .. ok
Reload shell profile by running the following command now!
source ~/.xmake/profile
/mnt/xmake $

@qaqland
Copy link

qaqland commented Jan 24, 2024

Dev version works fine

https://github.com/waruqi/dockerfiles/blob/d99a58e7ddc7bac62a69d3dd434e8ad3ed5634ba/alpine/Dockerfile#L12

But by default, alpine has no sudo installed

@Issues-translate-bot
Copy link

Bot detected the issue body's language is not English, translate it automatically.


https://github.com/waruqi/dockerfiles/blob/d99a58e7ddc7bac62a69d3dd434e8ad3ed5634ba/alpine/Dockerfile#L12

by default, alpine has no sudo installed

@waruqi
Copy link
Member Author

waruqi commented Jan 24, 2024

Dev version works fine

https://github.com/waruqi/dockerfiles/blob/d99a58e7ddc7bac62a69d3dd434e8ad3ed5634ba/alpine/Dockerfile#L12

But by default, alpine has no sudo installed

oh, thanks. https://pkgs.alpinelinux.org/packages?name=xmake

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests