summaryrefslogtreecommitdiff
path: root/glib/glibconfig.h.in
blob: 0d533c9f7ac75c0cfed922ca5f6d3c8d70dc3aaa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
/* glibconfig.h
 *
 * This is a generated file.  Please modify 'glibconfig.h.in'
 */

#ifndef __GLIBCONFIG_H__
#define __GLIBCONFIG_H__

#include <glib/gmacros.h>

#include <limits.h>
#include <float.h>
#mesondefine GLIB_HAVE_ALLOCA_H

#mesondefine GLIB_STATIC_COMPILATION
#mesondefine GOBJECT_STATIC_COMPILATION
#mesondefine GIO_STATIC_COMPILATION
#mesondefine GMODULE_STATIC_COMPILATION
#mesondefine G_INTL_STATIC_COMPILATION
#mesondefine FFI_STATIC_BUILD

/* Specifies that GLib's g_print*() functions wrap the
 * system printf functions.  This is useful to know, for example,
 * when using glibc's register_printf_function().
 */
#mesondefine GLIB_USING_SYSTEM_PRINTF

G_BEGIN_DECLS

#define G_MINFLOAT	FLT_MIN
#define G_MAXFLOAT	FLT_MAX
#define G_MINDOUBLE	DBL_MIN
#define G_MAXDOUBLE	DBL_MAX
#define G_MINSHORT	SHRT_MIN
#define G_MAXSHORT	SHRT_MAX
#define G_MAXUSHORT	USHRT_MAX
#define G_MININT	INT_MIN
#define G_MAXINT	INT_MAX
#define G_MAXUINT	UINT_MAX
#define G_MINLONG	LONG_MIN
#define G_MAXLONG	LONG_MAX
#define G_MAXULONG	ULONG_MAX

typedef signed char gint8;
typedef unsigned char guint8;

typedef signed @gint16@ gint16;
typedef unsigned @gint16@ guint16;

#define G_GINT16_MODIFIER @gint16_modifier@
#define G_GINT16_FORMAT @gint16_format@
#define G_GUINT16_FORMAT @guint16_format@


typedef signed @gint32@ gint32;
typedef unsigned @gint32@ guint32;

#define G_GINT32_MODIFIER @gint32_modifier@
#define G_GINT32_FORMAT @gint32_format@
#define G_GUINT32_FORMAT @guint32_format@


#define G_HAVE_GINT64 1          /* deprecated, always true */

@glib_extension@typedef signed @gint64@ gint64;
@glib_extension@typedef unsigned @gint64@ guint64;

#define G_GINT64_CONSTANT(val)	@gint64_constant@
#define G_GUINT64_CONSTANT(val)	@guint64_constant@

#define G_GINT64_MODIFIER @gint64_modifier@
#define G_GINT64_FORMAT @gint64_format@
#define G_GUINT64_FORMAT @guint64_format@


#define GLIB_SIZEOF_VOID_P @glib_void_p@
#define GLIB_SIZEOF_LONG   @glib_long@
#define GLIB_SIZEOF_SIZE_T @glib_size_t@
#define GLIB_SIZEOF_SSIZE_T @glib_ssize_t@

typedef signed @glib_size_type_define@ gssize;
typedef unsigned @glib_size_type_define@ gsize;
#define G_GSIZE_MODIFIER @gsize_modifier@
#define G_GSSIZE_MODIFIER @gssize_modifier@
#define G_GSIZE_FORMAT @gsize_format@
#define G_GSSIZE_FORMAT @gssize_format@

#define G_MAXSIZE	G_MAXU@glib_msize_type@
#define G_MINSSIZE	G_MIN@glib_msize_type@
#define G_MAXSSIZE	G_MAX@glib_msize_type@

typedef gint64 goffset;
#define G_MINOFFSET	G_MININT64
#define G_MAXOFFSET	G_MAXINT64

#define G_GOFFSET_MODIFIER      G_GINT64_MODIFIER
#define G_GOFFSET_FORMAT        G_GINT64_FORMAT
#define G_GOFFSET_CONSTANT(val) G_GINT64_CONSTANT(val)

#define G_POLLFD_FORMAT @g_pollfd_format@

#define GPOINTER_TO_INT(p)	((gint)  @glib_gpi_cast@ (p))
#define GPOINTER_TO_UINT(p)	((guint) @glib_gpui_cast@ (p))

#define GINT_TO_POINTER(i)	((gpointer) @glib_gpi_cast@ (i))
#define GUINT_TO_POINTER(u)	((gpointer) @glib_gpui_cast@ (u))

typedef signed @glib_intptr_type_define@ gintptr;
typedef unsigned @glib_intptr_type_define@ guintptr;

#define G_GINTPTR_MODIFIER      @gintptr_modifier@
#define G_GINTPTR_FORMAT        @gintptr_format@
#define G_GUINTPTR_FORMAT       @guintptr_format@

#define GLIB_MAJOR_VERSION @GLIB_MAJOR_VERSION@
#define GLIB_MINOR_VERSION @GLIB_MINOR_VERSION@
#define GLIB_MICRO_VERSION @GLIB_MICRO_VERSION@

@glib_os@

#define G_VA_COPY va_copy
@glib_vacopy@

#define G_HAVE_ISO_VARARGS 1

/* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi
 * is passed ISO vararg support is turned off, and there is no work
 * around to turn it on, so we unconditionally turn it off.
 */
#if __GNUC__ == 2 && __GNUC_MINOR__ == 95
#  undef G_HAVE_ISO_VARARGS
#endif

#mesondefine G_HAVE_GROWING_STACK

#ifndef _MSC_VER
# define G_HAVE_GNUC_VARARGS 1
#endif

#if defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)
#define G_GNUC_INTERNAL __attribute__((visibility("hidden")))
#elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x550)
#define G_GNUC_INTERNAL __hidden
#elif defined (__GNUC__) && defined (G_HAVE_GNUC_VISIBILITY)
#define G_GNUC_INTERNAL __attribute__((visibility("hidden")))
#else
#define G_GNUC_INTERNAL
#endif

#define G_THREADS_ENABLED
#define G_THREADS_IMPL_@g_threads_impl_def@

#mesondefine G_ATOMIC_LOCK_FREE

#define GINT16_TO_@g_bs_native@(val)	((gint16) (val))
#define GUINT16_TO_@g_bs_native@(val)	((guint16) (val))
#define GINT16_TO_@g_bs_alien@(val)	((gint16) GUINT16_SWAP_LE_BE (val))
#define GUINT16_TO_@g_bs_alien@(val)	(GUINT16_SWAP_LE_BE (val))

#define GINT32_TO_@g_bs_native@(val)	((gint32) (val))
#define GUINT32_TO_@g_bs_native@(val)	((guint32) (val))
#define GINT32_TO_@g_bs_alien@(val)	((gint32) GUINT32_SWAP_LE_BE (val))
#define GUINT32_TO_@g_bs_alien@(val)	(GUINT32_SWAP_LE_BE (val))

#define GINT64_TO_@g_bs_native@(val)	((gint64) (val))
#define GUINT64_TO_@g_bs_native@(val)	((guint64) (val))
#define GINT64_TO_@g_bs_alien@(val)	((gint64) GUINT64_SWAP_LE_BE (val))
#define GUINT64_TO_@g_bs_alien@(val)	(GUINT64_SWAP_LE_BE (val))

#define GLONG_TO_LE(val)	((glong) GINT@glongbits@_TO_LE (val))
#define GULONG_TO_LE(val)	((gulong) GUINT@glongbits@_TO_LE (val))
#define GLONG_TO_BE(val)	((glong) GINT@glongbits@_TO_BE (val))
#define GULONG_TO_BE(val)	((gulong) GUINT@glongbits@_TO_BE (val))
#define GINT_TO_LE(val)		((gint) GINT@gintbits@_TO_LE (val))
#define GUINT_TO_LE(val)	((guint) GUINT@gintbits@_TO_LE (val))
#define GINT_TO_BE(val)		((gint) GINT@gintbits@_TO_BE (val))
#define GUINT_TO_BE(val)	((guint) GUINT@gintbits@_TO_BE (val))
#define GSIZE_TO_LE(val)	((gsize) GUINT@gsizebits@_TO_LE (val))
#define GSSIZE_TO_LE(val)	((gssize) GINT@gsizebits@_TO_LE (val))
#define GSIZE_TO_BE(val)	((gsize) GUINT@gsizebits@_TO_BE (val))
#define GSSIZE_TO_BE(val)	((gssize) GINT@gsizebits@_TO_BE (val))
#define G_BYTE_ORDER @g_byte_order@

#define GLIB_SYSDEF_POLLIN =@g_pollin@
#define GLIB_SYSDEF_POLLOUT =@g_pollout@
#define GLIB_SYSDEF_POLLPRI =@g_pollpri@
#define GLIB_SYSDEF_POLLHUP =@g_pollhup@
#define GLIB_SYSDEF_POLLERR =@g_pollerr@
#define GLIB_SYSDEF_POLLNVAL =@g_pollnval@

/* No way to disable deprecation warnings for macros, so only emit deprecation
 * warnings on platforms where usage of this macro is broken */
#if defined(__APPLE__) || defined(_MSC_VER) || defined(__CYGWIN__)
#define G_MODULE_SUFFIX "@g_module_suffix@" GLIB_DEPRECATED_MACRO_IN_2_76
#else
#define G_MODULE_SUFFIX "@g_module_suffix@"
#endif

typedef @g_pid_type@ GPid;
#define G_PID_FORMAT @g_pid_format@

#define GLIB_SYSDEF_AF_UNIX @g_af_unix@
#define GLIB_SYSDEF_AF_INET @g_af_inet@
#define GLIB_SYSDEF_AF_INET6 @g_af_inet6@

#define GLIB_SYSDEF_MSG_OOB @g_msg_oob@
#define GLIB_SYSDEF_MSG_PEEK @g_msg_peek@
#define GLIB_SYSDEF_MSG_DONTROUTE @g_msg_dontroute@

#define G_DIR_SEPARATOR '@g_dir_separator@'
#define G_DIR_SEPARATOR_S "@g_dir_separator@"
#define G_SEARCHPATH_SEPARATOR '@g_searchpath_separator@'
#define G_SEARCHPATH_SEPARATOR_S "@g_searchpath_separator@"

G_END_DECLS

#endif /* __GLIBCONFIG_H__ */