/* * Public domain * machine/endian.h compatibility shim */ module libressl_d.compat.machine.endian; version (Windows) { enum LITTLE_ENDIAN = 1234; enum BIG_ENDIAN = 4321; enum PDP_ENDIAN = 3412; /* * Use GCC and Visual Studio compiler defines to determine endian. */ version (LittleEndian) { enum BYTE_ORDER = .LITTLE_ENDIAN; } else { enum BYTE_ORDER = .BIG_ENDIAN; } //#elif defined(__linux__) || defined(__midipix__) } else version (linux) { // #include <endian.h> //#elif defined(__sun) || defined(_AIX) || defined(__hpux) // public import core.sys.posix.arpa.nameser_compat; // public import libressl_d.compat.sys.types; //#elif defined(__sgi) // #include <standards.h> // public import core.sys.posix.sys.endian; } else { // public import core.sys.posix.machine.endian; } //#ifndef __STRICT_ALIGNMENT //#define __STRICT_ALIGNMENT //#if defined(__i386) || defined(__i386__) || defined(__x86_64) || defined(__x86_64__) || defined(__s390__) || defined(__s390x__) || defined(__aarch64__) || ((defined(__arm__) || defined(__arm)) && __ARM_ARCH >= 6) //#undef __STRICT_ALIGNMENT //#endif //#endif