1 | #ifndef NU_DEFINES_H |
2 | #define NU_DEFINES_H |
3 | |
4 | /** @file |
5 | */ |
6 | |
7 | /** @defgroup defines Defines |
8 | */ |
9 | |
10 | #ifndef NU_EXPORT |
11 | |
12 | # ifdef _WIN32 |
13 | # define NU_EXPORT __declspec(dllexport) |
14 | |
15 | # elif __GNUC__ >= 4 |
16 | # ifdef NU_BUILD_STATIC |
17 | # define NU_EXPORT __attribute__ ((visibility ("hidden"))) |
18 | # else |
19 | # define NU_EXPORT __attribute__ ((visibility ("default"))) |
20 | # endif |
21 | |
22 | # else |
23 | # define NU_EXPORT |
24 | # endif |
25 | |
26 | #endif /* NU_EXPORT */ |
27 | |
28 | /** Integer version of Unicode specification implemented. 900 == 9.0.0 |
29 | * |
30 | * @ingroup defines |
31 | */ |
32 | #define NU_UNICODE_VERSION 1000 |
33 | /** Special limit value to unset limit on string. Used internally by nunicode. |
34 | * |
35 | * @ingroup defines |
36 | */ |
37 | #define NU_UNLIMITED ((const void *)(-1)) |
38 | |
39 | #ifdef _MSC_VER |
40 | #define ssize_t ptrdiff_t |
41 | #endif |
42 | |
43 | #endif /* NU_DEFINES_H */ |
44 | |