llvm-mingw icon indicating copy to clipboard operation
llvm-mingw copied to clipboard

Add aarch64-musl variant to releases

Open bareich opened this issue 2 years ago • 1 comments

Would this be difficult or could you add it to CI?

I was able to do such a build, but it took half a day on my device and I'm not sure if there's a way to verify the resulting binaries are okay ...

bareich avatar Nov 03 '23 15:11 bareich

I presume you mean a toolchain hosted on aarch64-musl, but still targeting the *-w64-mingw32 targets? That wouldn't probably be awfully complicated to add; if there is a preexisting easily used cross compilation toolchain for this target, that can be used on x86_64 linux, it would be pretty straightforward to add it like the existing aarch64 ubuntu binaries are built: https://github.com/mstorsjo/llvm-mingw/blob/20231031/.github/workflows/build.yml#L88-L133

That all boils down to a good easily usable cross compilation toolchain for that target; providing that is out of scope for this project.

Even if that'd be readily available though - I'm somewhat reluctant to adding it, unless there'd be a good reason for it (perhaps if it'd be statically linked and replace the existing linux binaries?); the build with all its forms uses a ton of CI compile time already. But it'd be pretty easy to add it to your own fork of llvm-mingw and run a pipeline whenever you want to, to build such a package for yourself.

As for verifying the resulting binaries; if one can assume that the aarch64-musl cross toolchain generally works, like I do for the ubuntu provided aarch64 cross compiler above, I only run some basic smoke tests on the toolchain - I do that with qemu right now: https://github.com/mstorsjo/llvm-mingw/blob/20231031/.github/workflows/build.yml#L115-L118

mstorsjo avatar Nov 03 '23 16:11 mstorsjo