1
2#ifndef sodium_export_H
3#define sodium_export_H
4
5#ifndef __GNUC__
6# ifdef __attribute__
7#  undef __attribute__
8# endif
9# define __attribute__(a)
10#endif
11
12#ifdef SODIUM_STATIC
13# define SODIUM_EXPORT
14# define SODIUM_EXPORT_WEAK
15#else
16# if defined(_MSC_VER)
17#  ifdef SODIUM_DLL_EXPORT
18#   define SODIUM_EXPORT __declspec(dllexport)
19#  else
20#   define SODIUM_EXPORT __declspec(dllimport)
21#  endif
22# else
23#  if defined(__SUNPRO_C)
24#   ifndef __GNU_C__
25#    define SODIUM_EXPORT __attribute__ (visibility(__global))
26#   else
27#    define SODIUM_EXPORT __attribute__ __global
28#   endif
29#  elif defined(_MSG_VER)
30#   define SODIUM_EXPORT extern __declspec(dllexport)
31#  else
32#   define SODIUM_EXPORT __attribute__ ((visibility ("default")))
33#  endif
34# endif
35# if defined(__ELF__) && !defined(SODIUM_DISABLE_WEAK_FUNCTIONS)
36#  define SODIUM_EXPORT_WEAK SODIUM_EXPORT __attribute__((weak))
37# else
38#  define SODIUM_EXPORT_WEAK SODIUM_EXPORT
39# endif
40#endif
41
42#ifndef CRYPTO_ALIGN
43# if defined(__INTEL_COMPILER) || defined(_MSC_VER)
44#  define CRYPTO_ALIGN(x) __declspec(align(x))
45# else
46#  define CRYPTO_ALIGN(x) __attribute__ ((aligned(x)))
47# endif
48#endif
49
50#define SODIUM_MIN(A, B) ((A) < (B) ? (A) : (B))
51#define SODIUM_SIZE_MAX SODIUM_MIN(UINT64_MAX, SIZE_MAX)
52
53#endif
54
55#ifndef sodium_export_H
56#define sodium_export_H
57
58#ifndef __GNUC__
59# ifdef __attribute__
60#  undef __attribute__
61# endif
62# define __attribute__(a)
63#endif
64
65#ifdef SODIUM_STATIC
66# define SODIUM_EXPORT
67# define SODIUM_EXPORT_WEAK
68#else
69# if defined(_MSC_VER)
70#  ifdef SODIUM_DLL_EXPORT
71#   define SODIUM_EXPORT __declspec(dllexport)
72#  else
73#   define SODIUM_EXPORT __declspec(dllimport)
74#  endif
75# else
76#  if defined(__SUNPRO_C)
77#   ifndef __GNU_C__
78#    define SODIUM_EXPORT __attribute__ (visibility(__global))
79#   else
80#    define SODIUM_EXPORT __attribute__ __global
81#   endif
82#  elif defined(_MSG_VER)
83#   define SODIUM_EXPORT extern __declspec(dllexport)
84#  else
85#   define SODIUM_EXPORT __attribute__ ((visibility ("default")))
86#  endif
87# endif
88# if defined(__ELF__) && !defined(SODIUM_DISABLE_WEAK_FUNCTIONS)
89#  define SODIUM_EXPORT_WEAK SODIUM_EXPORT __attribute__((weak))
90# else
91#  define SODIUM_EXPORT_WEAK SODIUM_EXPORT
92# endif
93#endif
94
95#ifndef CRYPTO_ALIGN
96# if defined(__INTEL_COMPILER) || defined(_MSC_VER)
97#  define CRYPTO_ALIGN(x) __declspec(align(x))
98# else
99#  define CRYPTO_ALIGN(x) __attribute__ ((aligned(x)))
100# endif
101#endif
102
103#define SODIUM_MIN(A, B) ((A) < (B) ? (A) : (B))
104#define SODIUM_SIZE_MAX SODIUM_MIN(UINT64_MAX, SIZE_MAX)
105
106#endif
107
108#ifndef sodium_export_H
109#define sodium_export_H
110
111#ifndef __GNUC__
112# ifdef __attribute__
113#  undef __attribute__
114# endif
115# define __attribute__(a)
116#endif
117
118#ifdef SODIUM_STATIC
119# define SODIUM_EXPORT
120# define SODIUM_EXPORT_WEAK
121#else
122# if defined(_MSC_VER)
123#  ifdef SODIUM_DLL_EXPORT
124#   define SODIUM_EXPORT __declspec(dllexport)
125#  else
126#   define SODIUM_EXPORT __declspec(dllimport)
127#  endif
128# else
129#  if defined(__SUNPRO_C)
130#   ifndef __GNU_C__
131#    define SODIUM_EXPORT __attribute__ (visibility(__global))
132#   else
133#    define SODIUM_EXPORT __attribute__ __global
134#   endif
135#  elif defined(_MSG_VER)
136#   define SODIUM_EXPORT extern __declspec(dllexport)
137#  else
138#   define SODIUM_EXPORT __attribute__ ((visibility ("default")))
139#  endif
140# endif
141# if defined(__ELF__) && !defined(SODIUM_DISABLE_WEAK_FUNCTIONS)
142#  define SODIUM_EXPORT_WEAK SODIUM_EXPORT __attribute__((weak))
143# else
144#  define SODIUM_EXPORT_WEAK SODIUM_EXPORT
145# endif
146#endif
147
148#ifndef CRYPTO_ALIGN
149# if defined(__INTEL_COMPILER) || defined(_MSC_VER)
150#  define CRYPTO_ALIGN(x) __declspec(align(x))
151# else
152#  define CRYPTO_ALIGN(x) __attribute__ ((aligned(x)))
153# endif
154#endif
155
156#define SODIUM_MIN(A, B) ((A) < (B) ? (A) : (B))
157#define SODIUM_SIZE_MAX SODIUM_MIN(UINT64_MAX, SIZE_MAX)
158
159#endif
160
161#ifndef sodium_export_H
162#define sodium_export_H
163
164#ifndef __GNUC__
165# ifdef __attribute__
166#  undef __attribute__
167# endif
168# define __attribute__(a)
169#endif
170
171#ifdef SODIUM_STATIC
172# define SODIUM_EXPORT
173# define SODIUM_EXPORT_WEAK
174#else
175# if defined(_MSC_VER)
176#  ifdef SODIUM_DLL_EXPORT
177#   define SODIUM_EXPORT __declspec(dllexport)
178#  else
179#   define SODIUM_EXPORT __declspec(dllimport)
180#  endif
181# else
182#  if defined(__SUNPRO_C)
183#   ifndef __GNU_C__
184#    define SODIUM_EXPORT __attribute__ (visibility(__global))
185#   else
186#    define SODIUM_EXPORT __attribute__ __global
187#   endif
188#  elif defined(_MSG_VER)
189#   define SODIUM_EXPORT extern __declspec(dllexport)
190#  else
191#   define SODIUM_EXPORT __attribute__ ((visibility ("default")))
192#  endif
193# endif
194# if defined(__ELF__) && !defined(SODIUM_DISABLE_WEAK_FUNCTIONS)
195#  define SODIUM_EXPORT_WEAK SODIUM_EXPORT __attribute__((weak))
196# else
197#  define SODIUM_EXPORT_WEAK SODIUM_EXPORT
198# endif
199#endif
200
201#ifndef CRYPTO_ALIGN
202# if defined(__INTEL_COMPILER) || defined(_MSC_VER)
203#  define CRYPTO_ALIGN(x) __declspec(align(x))
204# else
205#  define CRYPTO_ALIGN(x) __attribute__ ((aligned(x)))
206# endif
207#endif
208
209#define SODIUM_MIN(A, B) ((A) < (B) ? (A) : (B))
210#define SODIUM_SIZE_MAX SODIUM_MIN(UINT64_MAX, SIZE_MAX)
211
212#endif
213