1/* GLIB - Library of useful routines for C programming
2 * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
16 */
17
18/*
19 * Modified by the GLib Team and others 1997-2000. See the AUTHORS
20 * file for a list of people on the GLib Team. See the ChangeLog
21 * files for a list of changes. These files are distributed with
22 * GLib at ftp://ftp.gtk.org/pub/gtk/.
23 */
24
25#ifndef __G_VERSION_MACROS_H__
26#define __G_VERSION_MACROS_H__
27
28#if !defined (__GLIB_H_INSIDE__) && !defined (GLIB_COMPILATION)
29#error "Only <glib.h> can be included directly."
30#endif
31
32/* Version boundaries checks */
33
34#define G_ENCODE_VERSION(major,minor) ((major) << 16 | (minor) << 8)
35
36/* XXX: Every new stable minor release bump should add a macro here */
37
38/**
39 * GLIB_VERSION_2_26:
40 *
41 * A macro that evaluates to the 2.26 version of GLib, in a format
42 * that can be used by the C pre-processor.
43 *
44 * Since: 2.32
45 */
46#define GLIB_VERSION_2_26 (G_ENCODE_VERSION (2, 26))
47
48/**
49 * GLIB_VERSION_2_28:
50 *
51 * A macro that evaluates to the 2.28 version of GLib, in a format
52 * that can be used by the C pre-processor.
53 *
54 * Since: 2.32
55 */
56#define GLIB_VERSION_2_28 (G_ENCODE_VERSION (2, 28))
57
58/**
59 * GLIB_VERSION_2_30:
60 *
61 * A macro that evaluates to the 2.30 version of GLib, in a format
62 * that can be used by the C pre-processor.
63 *
64 * Since: 2.32
65 */
66#define GLIB_VERSION_2_30 (G_ENCODE_VERSION (2, 30))
67
68/**
69 * GLIB_VERSION_2_32:
70 *
71 * A macro that evaluates to the 2.32 version of GLib, in a format
72 * that can be used by the C pre-processor.
73 *
74 * Since: 2.32
75 */
76#define GLIB_VERSION_2_32 (G_ENCODE_VERSION (2, 32))
77
78/**
79 * GLIB_VERSION_2_34:
80 *
81 * A macro that evaluates to the 2.34 version of GLib, in a format
82 * that can be used by the C pre-processor.
83 *
84 * Since: 2.34
85 */
86#define GLIB_VERSION_2_34 (G_ENCODE_VERSION (2, 34))
87
88/**
89 * GLIB_VERSION_2_36:
90 *
91 * A macro that evaluates to the 2.36 version of GLib, in a format
92 * that can be used by the C pre-processor.
93 *
94 * Since: 2.36
95 */
96#define GLIB_VERSION_2_36 (G_ENCODE_VERSION (2, 36))
97
98/**
99 * GLIB_VERSION_2_38:
100 *
101 * A macro that evaluates to the 2.38 version of GLib, in a format
102 * that can be used by the C pre-processor.
103 *
104 * Since: 2.38
105 */
106#define GLIB_VERSION_2_38 (G_ENCODE_VERSION (2, 38))
107
108/**
109 * GLIB_VERSION_2_40:
110 *
111 * A macro that evaluates to the 2.40 version of GLib, in a format
112 * that can be used by the C pre-processor.
113 *
114 * Since: 2.40
115 */
116#define GLIB_VERSION_2_40 (G_ENCODE_VERSION (2, 40))
117
118/**
119 * GLIB_VERSION_2_42:
120 *
121 * A macro that evaluates to the 2.42 version of GLib, in a format
122 * that can be used by the C pre-processor.
123 *
124 * Since: 2.42
125 */
126#define GLIB_VERSION_2_42 (G_ENCODE_VERSION (2, 42))
127
128/**
129 * GLIB_VERSION_2_44:
130 *
131 * A macro that evaluates to the 2.44 version of GLib, in a format
132 * that can be used by the C pre-processor.
133 *
134 * Since: 2.44
135 */
136#define GLIB_VERSION_2_44 (G_ENCODE_VERSION (2, 44))
137
138/**
139 * GLIB_VERSION_2_46:
140 *
141 * A macro that evaluates to the 2.46 version of GLib, in a format
142 * that can be used by the C pre-processor.
143 *
144 * Since: 2.46
145 */
146#define GLIB_VERSION_2_46 (G_ENCODE_VERSION (2, 46))
147
148/**
149 * GLIB_VERSION_2_48:
150 *
151 * A macro that evaluates to the 2.48 version of GLib, in a format
152 * that can be used by the C pre-processor.
153 *
154 * Since: 2.48
155 */
156#define GLIB_VERSION_2_48 (G_ENCODE_VERSION (2, 48))
157
158/**
159 * GLIB_VERSION_2_50:
160 *
161 * A macro that evaluates to the 2.50 version of GLib, in a format
162 * that can be used by the C pre-processor.
163 *
164 * Since: 2.50
165 */
166#define GLIB_VERSION_2_50 (G_ENCODE_VERSION (2, 50))
167
168/**
169 * GLIB_VERSION_2_52:
170 *
171 * A macro that evaluates to the 2.52 version of GLib, in a format
172 * that can be used by the C pre-processor.
173 *
174 * Since: 2.52
175 */
176#define GLIB_VERSION_2_52 (G_ENCODE_VERSION (2, 52))
177
178/**
179 * GLIB_VERSION_2_54:
180 *
181 * A macro that evaluates to the 2.54 version of GLib, in a format
182 * that can be used by the C pre-processor.
183 *
184 * Since: 2.54
185 */
186#define GLIB_VERSION_2_54 (G_ENCODE_VERSION (2, 54))
187
188/**
189 * GLIB_VERSION_2_56:
190 *
191 * A macro that evaluates to the 2.56 version of GLib, in a format
192 * that can be used by the C pre-processor.
193 *
194 * Since: 2.56
195 */
196#define GLIB_VERSION_2_56 (G_ENCODE_VERSION (2, 56))
197
198/**
199 * GLIB_VERSION_2_58:
200 *
201 * A macro that evaluates to the 2.58 version of GLib, in a format
202 * that can be used by the C pre-processor.
203 *
204 * Since: 2.58
205 */
206#define GLIB_VERSION_2_58 (G_ENCODE_VERSION (2, 58))
207
208/**
209 * GLIB_VERSION_2_60:
210 *
211 * A macro that evaluates to the 2.60 version of GLib, in a format
212 * that can be used by the C pre-processor.
213 *
214 * Since: 2.60
215 */
216#define GLIB_VERSION_2_60 (G_ENCODE_VERSION (2, 60))
217
218/**
219 * GLIB_VERSION_2_62:
220 *
221 * A macro that evaluates to the 2.62 version of GLib, in a format
222 * that can be used by the C pre-processor.
223 *
224 * Since: 2.62
225 */
226#define GLIB_VERSION_2_62 (G_ENCODE_VERSION (2, 62))
227
228/* evaluates to the current stable version; for development cycles,
229 * this means the next stable target
230 */
231#if (GLIB_MINOR_VERSION % 2)
232#define GLIB_VERSION_CUR_STABLE (G_ENCODE_VERSION (GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION + 1))
233#else
234#define GLIB_VERSION_CUR_STABLE (G_ENCODE_VERSION (GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION))
235#endif
236
237/* evaluates to the previous stable version */
238#if (GLIB_MINOR_VERSION % 2)
239#define GLIB_VERSION_PREV_STABLE (G_ENCODE_VERSION (GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION - 1))
240#else
241#define GLIB_VERSION_PREV_STABLE (G_ENCODE_VERSION (GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION - 2))
242#endif
243
244/**
245 * GLIB_VERSION_MIN_REQUIRED:
246 *
247 * A macro that should be defined by the user prior to including
248 * the glib.h header.
249 * The definition should be one of the predefined GLib version
250 * macros: %GLIB_VERSION_2_26, %GLIB_VERSION_2_28,...
251 *
252 * This macro defines the earliest version of GLib that the package is
253 * required to be able to compile against.
254 *
255 * If the compiler is configured to warn about the use of deprecated
256 * functions, then using functions that were deprecated in version
257 * %GLIB_VERSION_MIN_REQUIRED or earlier will cause warnings (but
258 * using functions deprecated in later releases will not).
259 *
260 * Since: 2.32
261 */
262/* If the package sets GLIB_VERSION_MIN_REQUIRED to some future
263 * GLIB_VERSION_X_Y value that we don't know about, it will compare as
264 * 0 in preprocessor tests.
265 */
266#ifndef GLIB_VERSION_MIN_REQUIRED
267# define GLIB_VERSION_MIN_REQUIRED (GLIB_VERSION_CUR_STABLE)
268#elif GLIB_VERSION_MIN_REQUIRED == 0
269# undef GLIB_VERSION_MIN_REQUIRED
270# define GLIB_VERSION_MIN_REQUIRED (GLIB_VERSION_CUR_STABLE + 2)
271#endif
272
273/**
274 * GLIB_VERSION_MAX_ALLOWED:
275 *
276 * A macro that should be defined by the user prior to including
277 * the glib.h header.
278 * The definition should be one of the predefined GLib version
279 * macros: %GLIB_VERSION_2_26, %GLIB_VERSION_2_28,...
280 *
281 * This macro defines the latest version of the GLib API that the
282 * package is allowed to make use of.
283 *
284 * If the compiler is configured to warn about the use of deprecated
285 * functions, then using functions added after version
286 * %GLIB_VERSION_MAX_ALLOWED will cause warnings.
287 *
288 * Unless you are using GLIB_CHECK_VERSION() or the like to compile
289 * different code depending on the GLib version, then this should be
290 * set to the same value as %GLIB_VERSION_MIN_REQUIRED.
291 *
292 * Since: 2.32
293 */
294#if !defined (GLIB_VERSION_MAX_ALLOWED) || (GLIB_VERSION_MAX_ALLOWED == 0)
295# undef GLIB_VERSION_MAX_ALLOWED
296# define GLIB_VERSION_MAX_ALLOWED (GLIB_VERSION_CUR_STABLE)
297#endif
298
299/* sanity checks */
300#if GLIB_VERSION_MIN_REQUIRED > GLIB_VERSION_CUR_STABLE
301#error "GLIB_VERSION_MIN_REQUIRED must be <= GLIB_VERSION_CUR_STABLE"
302#endif
303#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_MIN_REQUIRED
304#error "GLIB_VERSION_MAX_ALLOWED must be >= GLIB_VERSION_MIN_REQUIRED"
305#endif
306#if GLIB_VERSION_MIN_REQUIRED < GLIB_VERSION_2_26
307#error "GLIB_VERSION_MIN_REQUIRED must be >= GLIB_VERSION_2_26"
308#endif
309
310/* These macros are used to mark deprecated functions in GLib headers,
311 * and thus have to be exposed in installed headers. But please
312 * do *not* use them in other projects. Instead, use G_DEPRECATED
313 * or define your own wrappers around it.
314 */
315#define GLIB_AVAILABLE_IN_ALL _GLIB_EXTERN
316
317/* XXX: Every new stable minor release should add a set of macros here */
318
319#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_26
320# define GLIB_DEPRECATED_IN_2_26 GLIB_DEPRECATED
321# define GLIB_DEPRECATED_IN_2_26_FOR(f) GLIB_DEPRECATED_FOR(f)
322# define GLIB_DEPRECATED_MACRO_IN_2_26 GLIB_DEPRECATED_MACRO
323# define GLIB_DEPRECATED_MACRO_IN_2_26_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
324# define GLIB_DEPRECATED_ENUMERATOR_IN_2_26 GLIB_DEPRECATED_ENUMERATOR
325# define GLIB_DEPRECATED_ENUMERATOR_IN_2_26_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
326# define GLIB_DEPRECATED_TYPE_IN_2_26 GLIB_DEPRECATED_TYPE
327# define GLIB_DEPRECATED_TYPE_IN_2_26_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
328#else
329# define GLIB_DEPRECATED_IN_2_26 _GLIB_EXTERN
330# define GLIB_DEPRECATED_IN_2_26_FOR(f) _GLIB_EXTERN
331# define GLIB_DEPRECATED_MACRO_IN_2_26
332# define GLIB_DEPRECATED_MACRO_IN_2_26_FOR(f)
333# define GLIB_DEPRECATED_ENUMERATOR_IN_2_26
334# define GLIB_DEPRECATED_ENUMERATOR_IN_2_26_FOR(f)
335# define GLIB_DEPRECATED_TYPE_IN_2_26
336# define GLIB_DEPRECATED_TYPE_IN_2_26_FOR(f)
337#endif
338
339#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_26
340# define GLIB_AVAILABLE_IN_2_26 GLIB_UNAVAILABLE(2, 26)
341# define GLIB_AVAILABLE_MACRO_IN_2_26 GLIB_UNAVAILABLE_MACRO(2, 26)
342# define GLIB_AVAILABLE_ENUMERATOR_IN_2_26 GLIB_UNAVAILABLE_ENUMERATOR(2, 26)
343# define GLIB_AVAILABLE_TYPE_IN_2_26 GLIB_UNAVAILABLE_TYPE(2, 26)
344#else
345# define GLIB_AVAILABLE_IN_2_26 _GLIB_EXTERN
346# define GLIB_AVAILABLE_MACRO_IN_2_26
347# define GLIB_AVAILABLE_ENUMERATOR_IN_2_26
348# define GLIB_AVAILABLE_TYPE_IN_2_26
349#endif
350
351#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_28
352# define GLIB_DEPRECATED_IN_2_28 GLIB_DEPRECATED
353# define GLIB_DEPRECATED_IN_2_28_FOR(f) GLIB_DEPRECATED_FOR(f)
354# define GLIB_DEPRECATED_MACRO_IN_2_28 GLIB_DEPRECATED_MACRO
355# define GLIB_DEPRECATED_MACRO_IN_2_28_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
356# define GLIB_DEPRECATED_ENUMERATOR_IN_2_28 GLIB_DEPRECATED_ENUMERATOR
357# define GLIB_DEPRECATED_ENUMERATOR_IN_2_28_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
358# define GLIB_DEPRECATED_TYPE_IN_2_28 GLIB_DEPRECATED_TYPE
359# define GLIB_DEPRECATED_TYPE_IN_2_28_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
360#else
361# define GLIB_DEPRECATED_IN_2_28 _GLIB_EXTERN
362# define GLIB_DEPRECATED_IN_2_28_FOR(f) _GLIB_EXTERN
363# define GLIB_DEPRECATED_MACRO_IN_2_28
364# define GLIB_DEPRECATED_MACRO_IN_2_28_FOR(f)
365# define GLIB_DEPRECATED_ENUMERATOR_IN_2_28
366# define GLIB_DEPRECATED_ENUMERATOR_IN_2_28_FOR(f)
367# define GLIB_DEPRECATED_TYPE_IN_2_28
368# define GLIB_DEPRECATED_TYPE_IN_2_28_FOR(f)
369#endif
370
371#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_28
372# define GLIB_AVAILABLE_IN_2_28 GLIB_UNAVAILABLE(2, 28)
373# define GLIB_AVAILABLE_MACRO_IN_2_28 GLIB_UNAVAILABLE_MACRO(2, 28)
374# define GLIB_AVAILABLE_ENUMERATOR_IN_2_28 GLIB_UNAVAILABLE_ENUMERATOR(2, 28)
375# define GLIB_AVAILABLE_TYPE_IN_2_28 GLIB_UNAVAILABLE_TYPE(2, 28)
376#else
377# define GLIB_AVAILABLE_IN_2_28 _GLIB_EXTERN
378# define GLIB_AVAILABLE_MACRO_IN_2_28
379# define GLIB_AVAILABLE_ENUMERATOR_IN_2_28
380# define GLIB_AVAILABLE_TYPE_IN_2_28
381#endif
382
383#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_30
384# define GLIB_DEPRECATED_IN_2_30 GLIB_DEPRECATED
385# define GLIB_DEPRECATED_IN_2_30_FOR(f) GLIB_DEPRECATED_FOR(f)
386# define GLIB_DEPRECATED_MACRO_IN_2_30 GLIB_DEPRECATED_MACRO
387# define GLIB_DEPRECATED_MACRO_IN_2_30_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
388# define GLIB_DEPRECATED_ENUMERATOR_IN_2_30 GLIB_DEPRECATED_ENUMERATOR
389# define GLIB_DEPRECATED_ENUMERATOR_IN_2_30_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
390# define GLIB_DEPRECATED_TYPE_IN_2_30 GLIB_DEPRECATED_TYPE
391# define GLIB_DEPRECATED_TYPE_IN_2_30_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
392#else
393# define GLIB_DEPRECATED_IN_2_30 _GLIB_EXTERN
394# define GLIB_DEPRECATED_IN_2_30_FOR(f) _GLIB_EXTERN
395# define GLIB_DEPRECATED_MACRO_IN_2_30
396# define GLIB_DEPRECATED_MACRO_IN_2_30_FOR(f)
397# define GLIB_DEPRECATED_ENUMERATOR_IN_2_30
398# define GLIB_DEPRECATED_ENUMERATOR_IN_2_30_FOR(f)
399# define GLIB_DEPRECATED_TYPE_IN_2_30
400# define GLIB_DEPRECATED_TYPE_IN_2_30_FOR(f)
401#endif
402
403#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_30
404# define GLIB_AVAILABLE_IN_2_30 GLIB_UNAVAILABLE(2, 30)
405# define GLIB_AVAILABLE_MACRO_IN_2_30 GLIB_UNAVAILABLE_MACRO(2, 30)
406# define GLIB_AVAILABLE_ENUMERATOR_IN_2_30 GLIB_UNAVAILABLE_ENUMERATOR(2, 30)
407# define GLIB_AVAILABLE_TYPE_IN_2_30 GLIB_UNAVAILABLE_TYPE(2, 30)
408#else
409# define GLIB_AVAILABLE_IN_2_30 _GLIB_EXTERN
410# define GLIB_AVAILABLE_MACRO_IN_2_30
411# define GLIB_AVAILABLE_ENUMERATOR_IN_2_30
412# define GLIB_AVAILABLE_TYPE_IN_2_30
413#endif
414
415#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_32
416# define GLIB_DEPRECATED_IN_2_32 GLIB_DEPRECATED
417# define GLIB_DEPRECATED_IN_2_32_FOR(f) GLIB_DEPRECATED_FOR(f)
418# define GLIB_DEPRECATED_MACRO_IN_2_32 GLIB_DEPRECATED_MACRO
419# define GLIB_DEPRECATED_MACRO_IN_2_32_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
420# define GLIB_DEPRECATED_ENUMERATOR_IN_2_32 GLIB_DEPRECATED_ENUMERATOR
421# define GLIB_DEPRECATED_ENUMERATOR_IN_2_32_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
422# define GLIB_DEPRECATED_TYPE_IN_2_32 GLIB_DEPRECATED_TYPE
423# define GLIB_DEPRECATED_TYPE_IN_2_32_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
424#else
425# define GLIB_DEPRECATED_IN_2_32 _GLIB_EXTERN
426# define GLIB_DEPRECATED_IN_2_32_FOR(f) _GLIB_EXTERN
427# define GLIB_DEPRECATED_MACRO_IN_2_32
428# define GLIB_DEPRECATED_MACRO_IN_2_32_FOR(f)
429# define GLIB_DEPRECATED_ENUMERATOR_IN_2_32
430# define GLIB_DEPRECATED_ENUMERATOR_IN_2_32_FOR(f)
431# define GLIB_DEPRECATED_TYPE_IN_2_32
432# define GLIB_DEPRECATED_TYPE_IN_2_32_FOR(f)
433# define GLIB_DEPRECATED_ENUMERATOR_IN_2_32
434# define GLIB_DEPRECATED_ENUMERATOR_IN_2_32_FOR(f)
435# define GLIB_DEPRECATED_TYPE_IN_2_32
436# define GLIB_DEPRECATED_TYPE_IN_2_32_FOR(f)
437#endif
438
439#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_32
440# define GLIB_AVAILABLE_IN_2_32 GLIB_UNAVAILABLE(2, 32)
441# define GLIB_AVAILABLE_MACRO_IN_2_32 GLIB_UNAVAILABLE_MACRO(2, 32)
442# define GLIB_AVAILABLE_ENUMERATOR_IN_2_32 GLIB_UNAVAILABLE_ENUMERATOR(2, 32)
443# define GLIB_AVAILABLE_TYPE_IN_2_32 GLIB_UNAVAILABLE_TYPE(2, 32)
444#else
445# define GLIB_AVAILABLE_IN_2_32 _GLIB_EXTERN
446# define GLIB_AVAILABLE_MACRO_IN_2_32
447# define GLIB_AVAILABLE_ENUMERATOR_IN_2_32
448# define GLIB_AVAILABLE_TYPE_IN_2_32
449#endif
450
451#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_34
452# define GLIB_DEPRECATED_IN_2_34 GLIB_DEPRECATED
453# define GLIB_DEPRECATED_IN_2_34_FOR(f) GLIB_DEPRECATED_FOR(f)
454# define GLIB_DEPRECATED_MACRO_IN_2_34 GLIB_DEPRECATED_MACRO
455# define GLIB_DEPRECATED_MACRO_IN_2_34_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
456# define GLIB_DEPRECATED_ENUMERATOR_IN_2_34 GLIB_DEPRECATED_ENUMERATOR
457# define GLIB_DEPRECATED_ENUMERATOR_IN_2_34_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
458# define GLIB_DEPRECATED_TYPE_IN_2_34 GLIB_DEPRECATED_TYPE
459# define GLIB_DEPRECATED_TYPE_IN_2_34_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
460#else
461# define GLIB_DEPRECATED_IN_2_34 _GLIB_EXTERN
462# define GLIB_DEPRECATED_IN_2_34_FOR(f) _GLIB_EXTERN
463# define GLIB_DEPRECATED_MACRO_IN_2_34
464# define GLIB_DEPRECATED_MACRO_IN_2_34_FOR(f)
465# define GLIB_DEPRECATED_ENUMERATOR_IN_2_34
466# define GLIB_DEPRECATED_ENUMERATOR_IN_2_34_FOR(f)
467# define GLIB_DEPRECATED_TYPE_IN_2_34
468# define GLIB_DEPRECATED_TYPE_IN_2_34_FOR(f)
469#endif
470
471#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_34
472# define GLIB_AVAILABLE_IN_2_34 GLIB_UNAVAILABLE(2, 34)
473# define GLIB_AVAILABLE_MACRO_IN_2_34 GLIB_UNAVAILABLE_MACRO(2, 34)
474# define GLIB_AVAILABLE_ENUMERATOR_IN_2_34 GLIB_UNAVAILABLE_ENUMERATOR(2, 34)
475# define GLIB_AVAILABLE_TYPE_IN_2_34 GLIB_UNAVAILABLE_TYPE(2, 34)
476#else
477# define GLIB_AVAILABLE_IN_2_34 _GLIB_EXTERN
478# define GLIB_AVAILABLE_MACRO_IN_2_34
479# define GLIB_AVAILABLE_ENUMERATOR_IN_2_34
480# define GLIB_AVAILABLE_TYPE_IN_2_34
481#endif
482
483#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_36
484# define GLIB_DEPRECATED_IN_2_36 GLIB_DEPRECATED
485# define GLIB_DEPRECATED_IN_2_36_FOR(f) GLIB_DEPRECATED_FOR(f)
486# define GLIB_DEPRECATED_MACRO_IN_2_36 GLIB_DEPRECATED_MACRO
487# define GLIB_DEPRECATED_MACRO_IN_2_36_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
488# define GLIB_DEPRECATED_ENUMERATOR_IN_2_36 GLIB_DEPRECATED_ENUMERATOR
489# define GLIB_DEPRECATED_ENUMERATOR_IN_2_36_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
490# define GLIB_DEPRECATED_TYPE_IN_2_36 GLIB_DEPRECATED_TYPE
491# define GLIB_DEPRECATED_TYPE_IN_2_36_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
492#else
493# define GLIB_DEPRECATED_IN_2_36 _GLIB_EXTERN
494# define GLIB_DEPRECATED_IN_2_36_FOR(f) _GLIB_EXTERN
495# define GLIB_DEPRECATED_MACRO_IN_2_36
496# define GLIB_DEPRECATED_MACRO_IN_2_36_FOR(f)
497# define GLIB_DEPRECATED_ENUMERATOR_IN_2_36
498# define GLIB_DEPRECATED_ENUMERATOR_IN_2_36_FOR(f)
499# define GLIB_DEPRECATED_TYPE_IN_2_36
500# define GLIB_DEPRECATED_TYPE_IN_2_36_FOR(f)
501#endif
502
503#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_36
504# define GLIB_AVAILABLE_IN_2_36 GLIB_UNAVAILABLE(2, 36)
505# define GLIB_AVAILABLE_MACRO_IN_2_36 GLIB_UNAVAILABLE_MACRO(2, 36)
506# define GLIB_AVAILABLE_ENUMERATOR_IN_2_36 GLIB_UNAVAILABLE_ENUMERATOR(2, 36)
507# define GLIB_AVAILABLE_TYPE_IN_2_36 GLIB_UNAVAILABLE_TYPE(2, 36)
508#else
509# define GLIB_AVAILABLE_IN_2_36 _GLIB_EXTERN
510# define GLIB_AVAILABLE_MACRO_IN_2_36
511# define GLIB_AVAILABLE_ENUMERATOR_IN_2_36
512# define GLIB_AVAILABLE_TYPE_IN_2_36
513#endif
514
515#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_38
516# define GLIB_DEPRECATED_IN_2_38 GLIB_DEPRECATED
517# define GLIB_DEPRECATED_IN_2_38_FOR(f) GLIB_DEPRECATED_FOR(f)
518# define GLIB_DEPRECATED_MACRO_IN_2_38 GLIB_DEPRECATED_MACRO
519# define GLIB_DEPRECATED_MACRO_IN_2_38_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
520# define GLIB_DEPRECATED_ENUMERATOR_IN_2_38 GLIB_DEPRECATED_ENUMERATOR
521# define GLIB_DEPRECATED_ENUMERATOR_IN_2_38_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
522# define GLIB_DEPRECATED_TYPE_IN_2_38 GLIB_DEPRECATED_TYPE
523# define GLIB_DEPRECATED_TYPE_IN_2_38_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
524#else
525# define GLIB_DEPRECATED_IN_2_38 _GLIB_EXTERN
526# define GLIB_DEPRECATED_IN_2_38_FOR(f) _GLIB_EXTERN
527# define GLIB_DEPRECATED_MACRO_IN_2_38
528# define GLIB_DEPRECATED_MACRO_IN_2_38_FOR(f)
529# define GLIB_DEPRECATED_ENUMERATOR_IN_2_38
530# define GLIB_DEPRECATED_ENUMERATOR_IN_2_38_FOR(f)
531# define GLIB_DEPRECATED_TYPE_IN_2_38
532# define GLIB_DEPRECATED_TYPE_IN_2_38_FOR(f)
533#endif
534
535#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38
536# define GLIB_AVAILABLE_IN_2_38 GLIB_UNAVAILABLE(2, 38)
537# define GLIB_AVAILABLE_MACRO_IN_2_38 GLIB_UNAVAILABLE_MACRO(2, 38)
538# define GLIB_AVAILABLE_ENUMERATOR_IN_2_38 GLIB_UNAVAILABLE_ENUMERATOR(2, 38)
539# define GLIB_AVAILABLE_TYPE_IN_2_38 GLIB_UNAVAILABLE_TYPE(2, 38)
540#else
541# define GLIB_AVAILABLE_IN_2_38 _GLIB_EXTERN
542# define GLIB_AVAILABLE_MACRO_IN_2_38
543# define GLIB_AVAILABLE_ENUMERATOR_IN_2_38
544# define GLIB_AVAILABLE_TYPE_IN_2_38
545#endif
546
547#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_40
548# define GLIB_DEPRECATED_IN_2_40 GLIB_DEPRECATED
549# define GLIB_DEPRECATED_IN_2_40_FOR(f) GLIB_DEPRECATED_FOR(f)
550# define GLIB_DEPRECATED_MACRO_IN_2_40 GLIB_DEPRECATED_MACRO
551# define GLIB_DEPRECATED_MACRO_IN_2_40_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
552# define GLIB_DEPRECATED_ENUMERATOR_IN_2_40 GLIB_DEPRECATED_ENUMERATOR
553# define GLIB_DEPRECATED_ENUMERATOR_IN_2_40_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
554# define GLIB_DEPRECATED_TYPE_IN_2_40 GLIB_DEPRECATED_TYPE
555# define GLIB_DEPRECATED_TYPE_IN_2_40_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
556#else
557# define GLIB_DEPRECATED_IN_2_40 _GLIB_EXTERN
558# define GLIB_DEPRECATED_IN_2_40_FOR(f) _GLIB_EXTERN
559# define GLIB_DEPRECATED_MACRO_IN_2_40
560# define GLIB_DEPRECATED_MACRO_IN_2_40_FOR(f)
561# define GLIB_DEPRECATED_ENUMERATOR_IN_2_40
562# define GLIB_DEPRECATED_ENUMERATOR_IN_2_40_FOR(f)
563# define GLIB_DEPRECATED_TYPE_IN_2_40
564# define GLIB_DEPRECATED_TYPE_IN_2_40_FOR(f)
565#endif
566
567#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_40
568# define GLIB_AVAILABLE_IN_2_40 GLIB_UNAVAILABLE(2, 40)
569# define GLIB_AVAILABLE_MACRO_IN_2_40 GLIB_UNAVAILABLE_MACRO(2, 40)
570# define GLIB_AVAILABLE_ENUMERATOR_IN_2_40 GLIB_UNAVAILABLE_ENUMERATOR(2, 40)
571# define GLIB_AVAILABLE_TYPE_IN_2_40 GLIB_UNAVAILABLE_TYPE(2, 40)
572#else
573# define GLIB_AVAILABLE_IN_2_40 _GLIB_EXTERN
574# define GLIB_AVAILABLE_MACRO_IN_2_40
575# define GLIB_AVAILABLE_ENUMERATOR_IN_2_40
576# define GLIB_AVAILABLE_TYPE_IN_2_40
577#endif
578
579#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_42
580# define GLIB_DEPRECATED_IN_2_42 GLIB_DEPRECATED
581# define GLIB_DEPRECATED_IN_2_42_FOR(f) GLIB_DEPRECATED_FOR(f)
582# define GLIB_DEPRECATED_MACRO_IN_2_42 GLIB_DEPRECATED_MACRO
583# define GLIB_DEPRECATED_MACRO_IN_2_42_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
584#else
585# define GLIB_DEPRECATED_IN_2_42 _GLIB_EXTERN
586# define GLIB_DEPRECATED_IN_2_42_FOR(f) _GLIB_EXTERN
587# define GLIB_DEPRECATED_MACRO_IN_2_42
588# define GLIB_DEPRECATED_MACRO_IN_2_42_FOR(f)
589# define GLIB_DEPRECATED_ENUMERATOR_IN_2_42
590# define GLIB_DEPRECATED_ENUMERATOR_IN_2_42_FOR(f)
591# define GLIB_DEPRECATED_TYPE_IN_2_42
592# define GLIB_DEPRECATED_TYPE_IN_2_42_FOR(f)
593#endif
594
595#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_42
596# define GLIB_AVAILABLE_IN_2_42 GLIB_UNAVAILABLE(2, 42)
597# define GLIB_AVAILABLE_MACRO_IN_2_42 GLIB_UNAVAILABLE_MACRO(2, 42)
598# define GLIB_AVAILABLE_ENUMERATOR_IN_2_42 GLIB_UNAVAILABLE_ENUMERATOR(2, 42)
599# define GLIB_AVAILABLE_TYPE_IN_2_42 GLIB_UNAVAILABLE_TYPE(2, 42)
600#else
601# define GLIB_AVAILABLE_IN_2_42 _GLIB_EXTERN
602# define GLIB_AVAILABLE_MACRO_IN_2_42
603# define GLIB_AVAILABLE_ENUMERATOR_IN_2_42
604# define GLIB_AVAILABLE_TYPE_IN_2_42
605#endif
606
607#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_44
608# define GLIB_DEPRECATED_IN_2_44 GLIB_DEPRECATED
609# define GLIB_DEPRECATED_IN_2_44_FOR(f) GLIB_DEPRECATED_FOR(f)
610# define GLIB_DEPRECATED_MACRO_IN_2_44 GLIB_DEPRECATED_MACRO
611# define GLIB_DEPRECATED_MACRO_IN_2_44_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
612# define GLIB_DEPRECATED_ENUMERATOR_IN_2_44 GLIB_DEPRECATED_ENUMERATOR
613# define GLIB_DEPRECATED_ENUMERATOR_IN_2_44_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
614# define GLIB_DEPRECATED_TYPE_IN_2_44 GLIB_DEPRECATED_TYPE
615# define GLIB_DEPRECATED_TYPE_IN_2_44_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
616#else
617# define GLIB_DEPRECATED_IN_2_44 _GLIB_EXTERN
618# define GLIB_DEPRECATED_IN_2_44_FOR(f) _GLIB_EXTERN
619# define GLIB_DEPRECATED_MACRO_IN_2_44
620# define GLIB_DEPRECATED_MACRO_IN_2_44_FOR(f)
621# define GLIB_DEPRECATED_ENUMERATOR_IN_2_44
622# define GLIB_DEPRECATED_ENUMERATOR_IN_2_44_FOR(f)
623# define GLIB_DEPRECATED_TYPE_IN_2_44
624# define GLIB_DEPRECATED_TYPE_IN_2_44_FOR(f)
625#endif
626
627#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_44
628# define GLIB_AVAILABLE_IN_2_44 GLIB_UNAVAILABLE(2, 44)
629# define GLIB_AVAILABLE_MACRO_IN_2_44 GLIB_UNAVAILABLE_MACRO(2, 44)
630# define GLIB_AVAILABLE_ENUMERATOR_IN_2_44 GLIB_UNAVAILABLE_ENUMERATOR(2, 44)
631# define GLIB_AVAILABLE_TYPE_IN_2_44 GLIB_UNAVAILABLE_TYPE(2, 44)
632#else
633# define GLIB_AVAILABLE_IN_2_44 _GLIB_EXTERN
634# define GLIB_AVAILABLE_MACRO_IN_2_44
635# define GLIB_AVAILABLE_ENUMERATOR_IN_2_44
636# define GLIB_AVAILABLE_TYPE_IN_2_44
637#endif
638
639#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_46
640# define GLIB_DEPRECATED_IN_2_46 GLIB_DEPRECATED
641# define GLIB_DEPRECATED_IN_2_46_FOR(f) GLIB_DEPRECATED_FOR(f)
642# define GLIB_DEPRECATED_MACRO_IN_2_46 GLIB_DEPRECATED_MACRO
643# define GLIB_DEPRECATED_MACRO_IN_2_46_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
644#else
645# define GLIB_DEPRECATED_IN_2_46 _GLIB_EXTERN
646# define GLIB_DEPRECATED_IN_2_46_FOR(f) _GLIB_EXTERN
647# define GLIB_DEPRECATED_MACRO_IN_2_46
648# define GLIB_DEPRECATED_MACRO_IN_2_46_FOR(f)
649# define GLIB_DEPRECATED_ENUMERATOR_IN_2_46
650# define GLIB_DEPRECATED_ENUMERATOR_IN_2_46_FOR(f)
651# define GLIB_DEPRECATED_TYPE_IN_2_46
652# define GLIB_DEPRECATED_TYPE_IN_2_46_FOR(f)
653#endif
654
655#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_46
656# define GLIB_AVAILABLE_IN_2_46 GLIB_UNAVAILABLE(2, 46)
657# define GLIB_AVAILABLE_MACRO_IN_2_46 GLIB_UNAVAILABLE_MACRO(2, 46)
658# define GLIB_AVAILABLE_ENUMERATOR_IN_2_46 GLIB_UNAVAILABLE_ENUMERATOR(2, 46)
659# define GLIB_AVAILABLE_TYPE_IN_2_46 GLIB_UNAVAILABLE_TYPE(2, 46)
660#else
661# define GLIB_AVAILABLE_IN_2_46 _GLIB_EXTERN
662# define GLIB_AVAILABLE_MACRO_IN_2_46
663# define GLIB_AVAILABLE_ENUMERATOR_IN_2_46
664# define GLIB_AVAILABLE_TYPE_IN_2_46
665#endif
666
667#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_48
668# define GLIB_DEPRECATED_IN_2_48 GLIB_DEPRECATED
669# define GLIB_DEPRECATED_IN_2_48_FOR(f) GLIB_DEPRECATED_FOR(f)
670# define GLIB_DEPRECATED_MACRO_IN_2_48 GLIB_DEPRECATED_MACRO
671# define GLIB_DEPRECATED_MACRO_IN_2_48_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
672# define GLIB_DEPRECATED_ENUMERATOR_IN_2_48 GLIB_DEPRECATED_ENUMERATOR
673# define GLIB_DEPRECATED_ENUMERATOR_IN_2_48_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
674# define GLIB_DEPRECATED_TYPE_IN_2_48 GLIB_DEPRECATED_TYPE
675# define GLIB_DEPRECATED_TYPE_IN_2_48_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
676#else
677# define GLIB_DEPRECATED_IN_2_48 _GLIB_EXTERN
678# define GLIB_DEPRECATED_IN_2_48_FOR(f) _GLIB_EXTERN
679# define GLIB_DEPRECATED_MACRO_IN_2_48
680# define GLIB_DEPRECATED_MACRO_IN_2_48_FOR(f)
681# define GLIB_DEPRECATED_ENUMERATOR_IN_2_48
682# define GLIB_DEPRECATED_ENUMERATOR_IN_2_48_FOR(f)
683# define GLIB_DEPRECATED_TYPE_IN_2_48
684# define GLIB_DEPRECATED_TYPE_IN_2_48_FOR(f)
685#endif
686
687#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_48
688# define GLIB_AVAILABLE_IN_2_48 GLIB_UNAVAILABLE(2, 48)
689# define GLIB_AVAILABLE_MACRO_IN_2_48 GLIB_UNAVAILABLE_MACRO(2, 48)
690# define GLIB_AVAILABLE_ENUMERATOR_IN_2_48 GLIB_UNAVAILABLE_ENUMERATOR(2, 48)
691# define GLIB_AVAILABLE_TYPE_IN_2_48 GLIB_UNAVAILABLE_TYPE(2, 48)
692#else
693# define GLIB_AVAILABLE_IN_2_48 _GLIB_EXTERN
694# define GLIB_AVAILABLE_MACRO_IN_2_48
695# define GLIB_AVAILABLE_ENUMERATOR_IN_2_48
696# define GLIB_AVAILABLE_TYPE_IN_2_48
697#endif
698
699#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_50
700# define GLIB_DEPRECATED_IN_2_50 GLIB_DEPRECATED
701# define GLIB_DEPRECATED_IN_2_50_FOR(f) GLIB_DEPRECATED_FOR(f)
702# define GLIB_DEPRECATED_MACRO_IN_2_50 GLIB_DEPRECATED_MACRO
703# define GLIB_DEPRECATED_MACRO_IN_2_50_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
704# define GLIB_DEPRECATED_ENUMERATOR_IN_2_50 GLIB_DEPRECATED_ENUMERATOR
705# define GLIB_DEPRECATED_ENUMERATOR_IN_2_50_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
706# define GLIB_DEPRECATED_TYPE_IN_2_50 GLIB_DEPRECATED_TYPE
707# define GLIB_DEPRECATED_TYPE_IN_2_50_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
708#else
709# define GLIB_DEPRECATED_IN_2_50 _GLIB_EXTERN
710# define GLIB_DEPRECATED_IN_2_50_FOR(f) _GLIB_EXTERN
711# define GLIB_DEPRECATED_MACRO_IN_2_50
712# define GLIB_DEPRECATED_MACRO_IN_2_50_FOR(f)
713# define GLIB_DEPRECATED_ENUMERATOR_IN_2_50
714# define GLIB_DEPRECATED_ENUMERATOR_IN_2_50_FOR(f)
715# define GLIB_DEPRECATED_TYPE_IN_2_50
716# define GLIB_DEPRECATED_TYPE_IN_2_50_FOR(f)
717#endif
718
719#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_50
720# define GLIB_AVAILABLE_IN_2_50 GLIB_UNAVAILABLE(2, 50)
721# define GLIB_AVAILABLE_MACRO_IN_2_50 GLIB_UNAVAILABLE_MACRO(2, 50)
722# define GLIB_AVAILABLE_ENUMERATOR_IN_2_50 GLIB_UNAVAILABLE_ENUMERATOR(2, 50)
723# define GLIB_AVAILABLE_TYPE_IN_2_50 GLIB_UNAVAILABLE_TYPE(2, 50)
724#else
725# define GLIB_AVAILABLE_IN_2_50 _GLIB_EXTERN
726# define GLIB_AVAILABLE_MACRO_IN_2_50
727# define GLIB_AVAILABLE_ENUMERATOR_IN_2_50
728# define GLIB_AVAILABLE_TYPE_IN_2_50
729#endif
730
731#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_52
732# define GLIB_DEPRECATED_IN_2_52 GLIB_DEPRECATED
733# define GLIB_DEPRECATED_IN_2_52_FOR(f) GLIB_DEPRECATED_FOR(f)
734# define GLIB_DEPRECATED_MACRO_IN_2_52 GLIB_DEPRECATED_MACRO
735# define GLIB_DEPRECATED_MACRO_IN_2_52_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
736# define GLIB_DEPRECATED_ENUMERATOR_IN_2_52 GLIB_DEPRECATED_ENUMERATOR
737# define GLIB_DEPRECATED_ENUMERATOR_IN_2_52_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
738# define GLIB_DEPRECATED_TYPE_IN_2_52 GLIB_DEPRECATED_TYPE
739# define GLIB_DEPRECATED_TYPE_IN_2_52_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
740#else
741# define GLIB_DEPRECATED_IN_2_52 _GLIB_EXTERN
742# define GLIB_DEPRECATED_IN_2_52_FOR(f) _GLIB_EXTERN
743# define GLIB_DEPRECATED_MACRO_IN_2_52
744# define GLIB_DEPRECATED_MACRO_IN_2_52_FOR(f)
745# define GLIB_DEPRECATED_ENUMERATOR_IN_2_52
746# define GLIB_DEPRECATED_ENUMERATOR_IN_2_52_FOR(f)
747# define GLIB_DEPRECATED_TYPE_IN_2_52
748# define GLIB_DEPRECATED_TYPE_IN_2_52_FOR(f)
749#endif
750
751#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_52
752# define GLIB_AVAILABLE_IN_2_52 GLIB_UNAVAILABLE(2, 52)
753# define GLIB_AVAILABLE_MACRO_IN_2_52 GLIB_UNAVAILABLE_MACRO(2, 52)
754# define GLIB_AVAILABLE_ENUMERATOR_IN_2_52 GLIB_UNAVAILABLE_ENUMERATOR(2, 52)
755# define GLIB_AVAILABLE_TYPE_IN_2_52 GLIB_UNAVAILABLE_TYPE(2, 52)
756#else
757# define GLIB_AVAILABLE_IN_2_52 _GLIB_EXTERN
758# define GLIB_AVAILABLE_MACRO_IN_2_52
759# define GLIB_AVAILABLE_ENUMERATOR_IN_2_52
760# define GLIB_AVAILABLE_TYPE_IN_2_52
761#endif
762
763#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_54
764# define GLIB_DEPRECATED_IN_2_54 GLIB_DEPRECATED
765# define GLIB_DEPRECATED_IN_2_54_FOR(f) GLIB_DEPRECATED_FOR(f)
766# define GLIB_DEPRECATED_MACRO_IN_2_54 GLIB_DEPRECATED_MACRO
767# define GLIB_DEPRECATED_MACRO_IN_2_54_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
768# define GLIB_DEPRECATED_ENUMERATOR_IN_2_54 GLIB_DEPRECATED_ENUMERATOR
769# define GLIB_DEPRECATED_ENUMERATOR_IN_2_54_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
770# define GLIB_DEPRECATED_TYPE_IN_2_54 GLIB_DEPRECATED_TYPE
771# define GLIB_DEPRECATED_TYPE_IN_2_54_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
772#else
773# define GLIB_DEPRECATED_IN_2_54 _GLIB_EXTERN
774# define GLIB_DEPRECATED_IN_2_54_FOR(f) _GLIB_EXTERN
775# define GLIB_DEPRECATED_MACRO_IN_2_54
776# define GLIB_DEPRECATED_MACRO_IN_2_54_FOR(f)
777# define GLIB_DEPRECATED_ENUMERATOR_IN_2_54
778# define GLIB_DEPRECATED_ENUMERATOR_IN_2_54_FOR(f)
779# define GLIB_DEPRECATED_TYPE_IN_2_54
780# define GLIB_DEPRECATED_TYPE_IN_2_54_FOR(f)
781#endif
782
783#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_54
784# define GLIB_AVAILABLE_IN_2_54 GLIB_UNAVAILABLE(2, 54)
785# define GLIB_AVAILABLE_MACRO_IN_2_54 GLIB_UNAVAILABLE_MACRO(2, 54)
786# define GLIB_AVAILABLE_ENUMERATOR_IN_2_54 GLIB_UNAVAILABLE_ENUMERATOR(2, 54)
787# define GLIB_AVAILABLE_TYPE_IN_2_54 GLIB_UNAVAILABLE_TYPE(2, 54)
788#else
789# define GLIB_AVAILABLE_IN_2_54 _GLIB_EXTERN
790# define GLIB_AVAILABLE_MACRO_IN_2_54
791# define GLIB_AVAILABLE_ENUMERATOR_IN_2_54
792# define GLIB_AVAILABLE_TYPE_IN_2_54
793#endif
794
795#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_56
796# define GLIB_DEPRECATED_IN_2_56 GLIB_DEPRECATED
797# define GLIB_DEPRECATED_IN_2_56_FOR(f) GLIB_DEPRECATED_FOR(f)
798# define GLIB_DEPRECATED_MACRO_IN_2_56 GLIB_DEPRECATED_MACRO
799# define GLIB_DEPRECATED_MACRO_IN_2_56_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
800# define GLIB_DEPRECATED_ENUMERATOR_IN_2_56 GLIB_DEPRECATED_ENUMERATOR
801# define GLIB_DEPRECATED_ENUMERATOR_IN_2_56_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
802# define GLIB_DEPRECATED_TYPE_IN_2_56 GLIB_DEPRECATED_TYPE
803# define GLIB_DEPRECATED_TYPE_IN_2_56_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
804#else
805# define GLIB_DEPRECATED_IN_2_56 _GLIB_EXTERN
806# define GLIB_DEPRECATED_IN_2_56_FOR(f) _GLIB_EXTERN
807# define GLIB_DEPRECATED_MACRO_IN_2_56
808# define GLIB_DEPRECATED_MACRO_IN_2_56_FOR(f)
809# define GLIB_DEPRECATED_ENUMERATOR_IN_2_56
810# define GLIB_DEPRECATED_ENUMERATOR_IN_2_56_FOR(f)
811# define GLIB_DEPRECATED_TYPE_IN_2_56
812# define GLIB_DEPRECATED_TYPE_IN_2_56_FOR(f)
813#endif
814
815#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_56
816# define GLIB_AVAILABLE_IN_2_56 GLIB_UNAVAILABLE(2, 56)
817# define GLIB_AVAILABLE_MACRO_IN_2_56 GLIB_UNAVAILABLE_MACRO(2, 56)
818# define GLIB_AVAILABLE_ENUMERATOR_IN_2_56 GLIB_UNAVAILABLE_ENUMERATOR(2, 56)
819# define GLIB_AVAILABLE_TYPE_IN_2_56 GLIB_UNAVAILABLE_TYPE(2, 56)
820#else
821# define GLIB_AVAILABLE_IN_2_56 _GLIB_EXTERN
822# define GLIB_AVAILABLE_MACRO_IN_2_56
823# define GLIB_AVAILABLE_ENUMERATOR_IN_2_56
824# define GLIB_AVAILABLE_TYPE_IN_2_56
825#endif
826
827#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_58
828# define GLIB_DEPRECATED_IN_2_58 GLIB_DEPRECATED
829# define GLIB_DEPRECATED_IN_2_58_FOR(f) GLIB_DEPRECATED_FOR(f)
830# define GLIB_DEPRECATED_MACRO_IN_2_58 GLIB_DEPRECATED_MACRO
831# define GLIB_DEPRECATED_MACRO_IN_2_58_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
832# define GLIB_DEPRECATED_ENUMERATOR_IN_2_58 GLIB_DEPRECATED_ENUMERATOR
833# define GLIB_DEPRECATED_ENUMERATOR_IN_2_58_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
834# define GLIB_DEPRECATED_TYPE_IN_2_58 GLIB_DEPRECATED_TYPE
835# define GLIB_DEPRECATED_TYPE_IN_2_58_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
836#else
837# define GLIB_DEPRECATED_IN_2_58 _GLIB_EXTERN
838# define GLIB_DEPRECATED_IN_2_58_FOR(f) _GLIB_EXTERN
839# define GLIB_DEPRECATED_MACRO_IN_2_58
840# define GLIB_DEPRECATED_MACRO_IN_2_58_FOR(f)
841# define GLIB_DEPRECATED_ENUMERATOR_IN_2_58
842# define GLIB_DEPRECATED_ENUMERATOR_IN_2_58_FOR(f)
843# define GLIB_DEPRECATED_TYPE_IN_2_58
844# define GLIB_DEPRECATED_TYPE_IN_2_58_FOR(f)
845#endif
846
847#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_58
848# define GLIB_AVAILABLE_IN_2_58 GLIB_UNAVAILABLE(2, 58)
849# define GLIB_AVAILABLE_MACRO_IN_2_58 GLIB_UNAVAILABLE_MACRO(2, 58)
850# define GLIB_AVAILABLE_ENUMERATOR_IN_2_58 GLIB_UNAVAILABLE_ENUMERATOR(2, 58)
851# define GLIB_AVAILABLE_TYPE_IN_2_58 GLIB_UNAVAILABLE_TYPE(2, 58)
852#else
853# define GLIB_AVAILABLE_IN_2_58 _GLIB_EXTERN
854# define GLIB_AVAILABLE_MACRO_IN_2_58
855# define GLIB_AVAILABLE_ENUMERATOR_IN_2_58
856# define GLIB_AVAILABLE_TYPE_IN_2_58
857#endif
858
859#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_60
860# define GLIB_DEPRECATED_IN_2_60 GLIB_DEPRECATED
861# define GLIB_DEPRECATED_IN_2_60_FOR(f) GLIB_DEPRECATED_FOR(f)
862# define GLIB_DEPRECATED_MACRO_IN_2_60 GLIB_DEPRECATED_MACRO
863# define GLIB_DEPRECATED_MACRO_IN_2_60_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
864# define GLIB_DEPRECATED_ENUMERATOR_IN_2_60 GLIB_DEPRECATED_ENUMERATOR
865# define GLIB_DEPRECATED_ENUMERATOR_IN_2_60_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
866# define GLIB_DEPRECATED_TYPE_IN_2_60 GLIB_DEPRECATED_TYPE
867# define GLIB_DEPRECATED_TYPE_IN_2_60_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
868#else
869# define GLIB_DEPRECATED_IN_2_60 _GLIB_EXTERN
870# define GLIB_DEPRECATED_IN_2_60_FOR(f) _GLIB_EXTERN
871# define GLIB_DEPRECATED_MACRO_IN_2_60
872# define GLIB_DEPRECATED_MACRO_IN_2_60_FOR(f)
873# define GLIB_DEPRECATED_ENUMERATOR_IN_2_60
874# define GLIB_DEPRECATED_ENUMERATOR_IN_2_60_FOR(f)
875# define GLIB_DEPRECATED_TYPE_IN_2_60
876# define GLIB_DEPRECATED_TYPE_IN_2_60_FOR(f)
877#endif
878
879#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_60
880# define GLIB_AVAILABLE_IN_2_60 GLIB_UNAVAILABLE(2, 60)
881# define GLIB_AVAILABLE_MACRO_IN_2_60 GLIB_UNAVAILABLE_MACRO(2, 60)
882# define GLIB_AVAILABLE_ENUMERATOR_IN_2_60 GLIB_UNAVAILABLE_ENUMERATOR(2, 60)
883# define GLIB_AVAILABLE_TYPE_IN_2_60 GLIB_UNAVAILABLE_TYPE(2, 60)
884#else
885# define GLIB_AVAILABLE_IN_2_60 _GLIB_EXTERN
886# define GLIB_AVAILABLE_MACRO_IN_2_60
887# define GLIB_AVAILABLE_ENUMERATOR_IN_2_60
888# define GLIB_AVAILABLE_TYPE_IN_2_60
889#endif
890
891#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_62
892# define GLIB_DEPRECATED_IN_2_62 GLIB_DEPRECATED
893# define GLIB_DEPRECATED_IN_2_62_FOR(f) GLIB_DEPRECATED_FOR(f)
894# define GLIB_DEPRECATED_MACRO_IN_2_62 GLIB_DEPRECATED_MACRO
895# define GLIB_DEPRECATED_MACRO_IN_2_62_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
896# define GLIB_DEPRECATED_ENUMERATOR_IN_2_62 GLIB_DEPRECATED_ENUMERATOR
897# define GLIB_DEPRECATED_ENUMERATOR_IN_2_62_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
898# define GLIB_DEPRECATED_TYPE_IN_2_62 GLIB_DEPRECATED_TYPE
899# define GLIB_DEPRECATED_TYPE_IN_2_62_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
900#else
901# define GLIB_DEPRECATED_IN_2_62 _GLIB_EXTERN
902# define GLIB_DEPRECATED_IN_2_62_FOR(f) _GLIB_EXTERN
903# define GLIB_DEPRECATED_MACRO_IN_2_62
904# define GLIB_DEPRECATED_MACRO_IN_2_62_FOR(f)
905# define GLIB_DEPRECATED_ENUMERATOR_IN_2_62
906# define GLIB_DEPRECATED_ENUMERATOR_IN_2_62_FOR(f)
907# define GLIB_DEPRECATED_TYPE_IN_2_62
908# define GLIB_DEPRECATED_TYPE_IN_2_62_FOR(f)
909#endif
910
911#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_62
912# define GLIB_AVAILABLE_IN_2_62 GLIB_UNAVAILABLE(2, 62)
913# define GLIB_AVAILABLE_MACRO_IN_2_62 GLIB_UNAVAILABLE_MACRO(2, 62)
914# define GLIB_AVAILABLE_ENUMERATOR_IN_2_62 GLIB_UNAVAILABLE_ENUMERATOR(2, 62)
915# define GLIB_AVAILABLE_TYPE_IN_2_62 GLIB_UNAVAILABLE_TYPE(2, 62)
916#else
917# define GLIB_AVAILABLE_IN_2_62 _GLIB_EXTERN
918# define GLIB_AVAILABLE_MACRO_IN_2_62
919# define GLIB_AVAILABLE_ENUMERATOR_IN_2_62
920# define GLIB_AVAILABLE_TYPE_IN_2_62
921#endif
922
923#endif /* __G_VERSION_MACROS_H__ */
924