A threading interface was standardized into C 2011, so pthreads should eventually stop being necessary. In a sense, not just POSIX, but C proper has adopted a threading interface.
Static mutex init can be emulated with call_once() function, with some limitations of its own of course.