main shrub/shrubtools / randomart / defs
 1#ifndef RANDOMART_DEFS
 2#define RANDOMART_DEFS
 3
 4#ifndef _DEFAULT_SOURCE
 5#define _DEFAULT_SOURCE
 6#endif
 7
 8#include <sys/types.h>
 9
10#include <stdint.h>
11#include <string.h>
12
13#if defined(__linux__)
14#include <endian.h>
15#endif
16
17#ifndef LITTLE_ENDIAN
18#define LITTLE_ENDIAN 1234
19#endif
20
21#ifndef BIG_ENDIAN
22#define BIG_ENDIAN 4321
23#endif
24
25#ifndef BYTE_ORDER
26#if defined(__BYTE_ORDER) && defined(__LITTLE_ENDIAN) && defined(__BIG_ENDIAN)
27#define BYTE_ORDER __BYTE_ORDER
28#undef LITTLE_ENDIAN
29#undef BIG_ENDIAN
30#define LITTLE_ENDIAN __LITTLE_ENDIAN
31#define BIG_ENDIAN __BIG_ENDIAN
32#elif defined(__BYTE_ORDER__) && defined(__ORDER_LITTLE_ENDIAN__) && \
33    defined(__ORDER_BIG_ENDIAN__)
34#define BYTE_ORDER __BYTE_ORDER__
35#undef LITTLE_ENDIAN
36#undef BIG_ENDIAN
37#define LITTLE_ENDIAN __ORDER_LITTLE_ENDIAN__
38#define BIG_ENDIAN __ORDER_BIG_ENDIAN__
39#endif
40#endif
41
42#ifndef BYTE_ORDER
43#error "unable to determine BYTE_ORDER"
44#endif
45
46#ifndef __bounded__
47#define __bounded__(x, y, z)
48#endif
49
50#ifndef DEF_WEAK
51#define DEF_WEAK(x)
52#endif
53
54#ifndef HAVE_EXPLICIT_BZERO
55#define explicit_bzero(p, n) memset((p), 0, (n))
56#endif
57
58#endif