I created a shim for one-time initialization to remove global.c's dependency on pthread.
The only downside of this implementation is that you cannot support multiple different one time init functions (i.e., _wt_global_once) in a process since pthread_once_t is a static of __wt_once. Let me know is this is an unsuitable design limitation.
Tested on MacOS.