wrong, there is no complexity
clang --target=wasm32
That's it, you target WASMPeople somewhere decided that it was too easy and went ahead to bloat everything with Emscripten, WASI and the like
Here is all you need to know to target WASM: https://schellcode.github.io/webassembly-without-emscripten
The only target for WASM is the browser, everything else is just bloat and a waste of energy