Avatar
Avatar
Yuta Saito
#if defined(__wasi__) && !defined(_REENTRANT) # define CMARK_THREADING_default 0 #else # define CMARK_THREADING_default 1 #endif #ifndef CMARK_THREADING # define CMARK_THREADING CMARK_THREADING_default #endif #if CMARK_THREADING // thread available #else // no thread #endif #undef CMARK_THREADING #undef CMARK_THREADING_default こんな感じかなと想像してました。
へー,_REENTRANT ってなんだろうと思ったら,wasi-libc の wasm32-wasip1-threads でだけ _REENTRANT が定義されていて,wasm32-wasip1 や wasm32-wasip2 だと定義されていないんですね. https://github.com/WebAssembly/wasi-libc/blob/a05277a6803d99dc5f8d5c250a02cf37ff90882a/expected/wasm32-wasip1-threads/predefined-macros.txt#L2241