diff --git a/include/Makefile.am b/include/Makefile.am index 9f42f05..728d921 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -8,6 +8,7 @@ noinst_HEADERS = pqueue.h noinst_HEADERS += compat/dirent.h noinst_HEADERS += compat/dirent_msvc.h noinst_HEADERS += compat/err.h +noinst_HEADERS += compat/fcntl.h noinst_HEADERS += compat/limits.h noinst_HEADERS += compat/netdb.h noinst_HEADERS += compat/poll.h diff --git a/include/compat/fcntl.h b/include/compat/fcntl.h new file mode 100644 index 0000000..99c2d58 --- /dev/null +++ b/include/compat/fcntl.h @@ -0,0 +1,32 @@ +/* + * Public domain + * fcntl.h compatibility shim + */ + +#ifndef _WIN32 +#include_next +#else + +#ifdef _MSC_VER +#if _MSC_VER >= 1900 +#include <../ucrt/fcntl.h> +#else +#include <../include/fcntl.h> +#endif +#else +#include_next +#endif + +#ifndef O_NONBLOCK +#define O_NONBLOCK 0x100000 +#endif + +#ifndef O_CLOEXEC +#define O_CLOEXEC 0x200000 +#endif + +#ifndef FD_CLOEXEC +#define FD_CLOEXEC 1 +#endif + +#endif