On Mon, Oct 24, 2022 at 1:19 PM Jan Staněk <jstanek(a)redhat.com> wrote:
Hi Jun,
"Jun Aruga (he / him)" <jaruga(a)redhat.com> writes:
> Do you have a plan to create the RPM package for wasi-sdk[1]?
Not really, since we already (almost) have it available :)
The wasi-sdk consists of llvm toolchain (clang & friends) compiled so
that it can emit WASM code, and the wasi-libc, which implements standard
C library atop WebAssembly System Interface "syscalls".
Fedora's clang is already capable of emitting wasm
(`clang --target=wasm32-wasi -nostdlib …` works), so I see no need to
package it again. The thing we are missing is the wasi-libc,
which I aimed to package.
In other words, packaging wasi-sdk seems redundant to me
– you would have to maintain separate version of clang,
while the Fedora one is already able to compile what you need.
We still need the C lib.
Unfortunately, recent NodeJS releases had me occupied pretty much entirely,
so I was unable to work on this.
I hope I can get back to it this week. Fingers crossed.
Hi Jan,
Thanks for sharing the info.
I understand that when the clang supports the WASI (wasm32-wasi)
target, we don't need to build wasi-sdk or use the wasi-sdk RPM
package. It's just redundant.
Our encouraged way to use WebAssembly from Ruby can be to build the
Ruby source with the `clang --target=wasm32-wasi -nostdlib …` without
using the Ruby RPM.
> But I
> feel it takes more than 60 minutes, and is still in progress.
> I wonder how other program languages supporting WebAssembly manage
> this situation.
Yeah, building entire compiler toolchain takes a while :)
I had a COPR of the WIP wasi-sdk, but I set it to expire automatically,
so it is currently not available. I'll try to spin in back up today
and send you a link, in case you want to start testing the Ruby stuff
with it already.
Have a nice day!
As I see building Ruby with the WASI (wasm32-wasi) target on clang (or
wasi-sdk) is exclusive with the current normal built Ruby on GCC in
the Ruby RPM. I have no plan to include the WASI target build in the
current Ruby RPM package. I have already tested the Ruby built from
source with the wasi-sdk. That's ok for now. I don't need additional
tests for now. Thanks.
--
Jun | He - Him | Timezone: UTC+1 or 2, Czech Republic
See <
https://www.worldtimebuddy.com/czech-republic-prague-to-utc> for
the timezone.