~xvilka

Shanghai, China

https://rizin.re

Reverse engineer, Rizin RE framework core team member, Rustacean and OCamler, foreign languages fanatic.


#72 ArcaOS Support 2 months ago

on ~lattis/muon

@~xvilka no news on this ?

#86 Muon + TCC (TinyCC) can't find 'rt' library 2 months ago

on ~lattis/muon

@~xvilka look at line 316 in compiler.c:

https://git.sr.ht/~lattis/muon/tree/master/item/src/compilers.c#L313

you can try to fix tinycc here with the correct option to pass to tinycc.

#86 Muon + TCC (TinyCC) can't find 'rt' library 2 months ago

Comment by ~xvilka on ~lattis/muon

Ah, we use our patched fork for that: https://github.com/ret2libc/meson.git There was a PR (https://github.com/mesonbuild/meson/pull/8248) to meson but it was never accepted, so we decided it will be easier to just completely move to Muon for this configuration.

#86 Muon + TCC (TinyCC) can't find 'rt' library 2 months ago

Ticket created by ~xvilka on ~lattis/muon

When we try build Rizin with Muon + TinyCC it can't find the necessary library, while Meson can:

/home/runner/work/rizin/rizin/meson.build:354:33: error library not found
354 |     it_lrt = it_cc.find_library('rt', required: true, static: is_static_build)
                                      ^
/home/runner/work/rizin/rizin/meson.build:354:20: error in method compiler.find_library()
354 |     it_lrt = it_cc.find_library('rt', required: true, static: is_static_build)
                         ^
Error: Process completed with exit code 1.

See PR at https://github.com/rizinorg/rizin/pull/3345

#6 Notify GitHub if build was restarted manually and was successfull/unsuccessful 4 months ago

Ticket created by ~xvilka on ~emersion/hottub

Take the following use case:

  1. Due to some external error, e.g. network problem build triggered via hottub fails.
  2. If we restart the build manually on Sourcehut, it finishes successfully
  3. But the GitHub doesn't receive an updated status, that it was a successful build from the second try, not a failure anymore.

#69 Build QEMU 4 months ago

Comment by ~xvilka on ~lattis/muon

It fails with missing i18n, I will send a patch to QEMU shortly

meson.build:4:8: error module 'i18n' is unimplemented,
  If you would like to make your build files portable to muon, use `import('i18n', required: false)`, and then check the .found() method before use.
  4 |   i18n.gettext(meson.project_name(),
             ^
qemu/meson.build:3640:3: error in function subdir()
3640 |   subdir('po')
         ^

#69 Build QEMU 4 months ago

on ~lattis/muon

~xvilka I have implemented a basic compatibility layer. Can you test and see how far you get building qemu? I'm wondering if it is possible without machine-file support.

#82 boostrap_ninja.sh: (.text+0x1b): undefined reference to `main' on Fedora 37 4 months ago

Comment by ~xvilka on ~lattis/muon

My bad, you are right, it was pre-existed subprojects/samurai. I removed it and it compiled just fine.

#69 Build QEMU 4 months ago

on ~lattis/muon

~xvilka I'm pretty sure you can bypass that by running muon setup directly. See my above comment

When configure gets to the actual meson invocation, it fails due to passing invalid arguments. After that you can run muon setup build from the project root as usual.

#69 Build QEMU 4 months ago

Comment by ~xvilka on ~lattis/muon

Now it fails because there is no --native-file option (or --cross-file conversely) in the muon setup.

This is what it feeds as the --native-file build/config-meson.cross:

# Automatically generated by configure - do not modify
[properties]
[built-in options]
c_args = []
cpp_args = []
objc_args = []
c_link_args = []
cpp_link_args = []
[binaries]
c = ['cc','-m64','-mcx16']
cpp = ['c++','-m64','-mcx16']
objc = ['clang','-m64','-mcx16']
ar = ['ar']
nm = ['nm']
pkgconfig = ['pkg-config']
ranlib = ['ranlib']
sdl2-config = ['sdl2-config']
strip = ['strip']
widl = ['widl']
windres = ['windres']
windmc = ['windmc']