#include <sys/cdefs.h>

sys/cdefs.h

includes: sys/_symbol_aliasing.h, sys/_posix_availability.h, ptrcheck.h
5 macros

macro_DARWIN_FEATURE_64_BIT_INODE

_DARWIN_FEATURE_64_BIT_INODE indicates that the ino_t type is 64-bit, and structures modified for 64-bit inodes (like struct stat) will be used.
#define _DARWIN_FEATURE_64_BIT_INODE 1

macro_DARWIN_FEATURE_ONLY_64_BIT_INODE

_DARWIN_FEATURE_64_ONLY_BIT_INODE indicates that the ino_t type may only be 64-bit; there is no support for 32-bit ino_t when this macro is defined (and non-zero). There is no struct stat64 either, as the regular struct stat will already be the 64-bit version.
#define _DARWIN_FEATURE_ONLY_64_BIT_INODE 1

macro_DARWIN_FEATURE_ONLY_VERS_1050

_DARWIN_FEATURE_ONLY_VERS_1050 indicates that only those APIs updated in 10.5 exists; no pre-10.5 variants are available.
#define _DARWIN_FEATURE_ONLY_VERS_1050 1

macro_DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE

_DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE indicates only UNIX conforming API are available (the legacy BSD APIs are not available)
#define _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE 1

macro_DARWIN_FEATURE_UNIX_CONFORMANCE

_DARWIN_FEATURE_UNIX_CONFORMANCE indicates whether UNIX conformance is on, and specifies the conformance level (3 is SUSv3)
#define _DARWIN_FEATURE_UNIX_CONFORMANCE 3