config, os: add support for Musl libc
According to Musl's FAQ, `__BEGIN_DECLS` and `__END_DECLS` macros come from Glibc private headers. Because of that, we need to define them manually in case those aren't defined.
typedef int mode_t;
typedef void pthread_attr_t;
-#if defined(__cplusplus)
-#define __BEGIN_DECLS extern "C" {
-#define __END_DECLS }
-#else
-#define __BEGIN_DECLS
-#define __END_DECLS
-#endif
-
#ifndef API_AVAILABLE
#define API_AVAILABLE(...)
#endif
