i've modified wasi-libc and wasi-sdk (PRs pending) so that you always have the concurrency APIs (pthread_*, thrd_*, <thread>, <mutex>, <atomic>) available to you, even in single-threaded targets. this makes porting applications (especially C++ ones) much, _much_ easier!
https://github.com/WebAssembly/wasi-libc/pull/602
https://github.com/WebAssembly/wasi-sdk/pull/548
this took me quite a bit of work and i'm glad to have it done