Hi Julien, Julien Lepiller writes: > Hi Guix! > > This small patch series adds cross-clang, a cross-compiler version of > clang. Clang doesn't really make a distinction between a native and a > cross-build, it is already a cross-compiler, but this ensures that: > > 1. it actually works > 2. it targets (%current-target-architecture) by default > > The rest of the series ensures that libcxx and libcxxabi can be > cross-compiled with it. That's really cool! Out of curiosity, what target are you interested in that clang supports and GCC doesn't? For instance I'm interested in WebAssembly, and I've actually been contemplating how we could improve support for cross-compilers based on Clang in Guix, to be able to provide a working WebAssembly toolchain. For context, such a toolchain will be needed to enable potential use of WebAssembly in IceCat, for security purposes, see https://hacks.mozilla.org/2021/12/webassembly-and-back-again-fine-grained-sandboxing-in-firefox-95/ I actually have a toolchain that works already, which targets the wasm32-wasi-unknown triplet, but I wasn't convinced the way I did it was the right way to go long term, so it needs more work. I'm attaching the patch in case there's anything useful to you in there already! The approach I took was to create wrappers around clang/clang++ in order to set the correct include paths, and then provide an isolated sysroot for wasm32-wasi using union-build. This will work for IceCat, where their should be a flag to pass a sysroot path, but we should be able to do better in Guix. I though I'd share in case that's helpful! I'll take a look at your patches to see if I can build on top of them for a future WebAssembly toolchain in Guix. Thanks, Pierre