blob: 74f496997f3c443d50f9feef3d642e390c9858d5 (
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
|
/* $Id: defines.h 6124 2003-01-14 06:03:29Z rra $
**
** Portable defines used by other INN header files.
**
** In order to make the libraries built by INN usable by other software,
** INN needs to install several header files. Installing autoconf-
** generated header files, however, is a bad idea, since the defines will
** conflict with other software that uses autoconf.
**
** This header contains common definitions, such as internal typedefs and
** macros, common to INN's header files but not based on autoconf probes.
** As such, it's limited in what it can do; if compiling software against
** INN's header files on a system not supporting basic ANSI C features
** (such as const) or standard types (like size_t), the software may need
** to duplicate the tests that INN itself performs, generate a config.h,
** and make sure that config.h is included before any INN header files.
*/
#ifndef INN_DEFINES_H
#define INN_DEFINES_H 1
#include <inn/system.h>
/* BEGIN_DECLS is used at the beginning of declarations so that C++
compilers don't mangle their names. END_DECLS is used at the end. */
#undef BEGIN_DECLS
#undef END_DECLS
#ifdef __cplusplus
# define BEGIN_DECLS extern "C" {
# define END_DECLS }
#else
# define BEGIN_DECLS /* empty */
# define END_DECLS /* empty */
#endif
/* __attribute__ is available in gcc 2.5 and later, but only with gcc 2.7
could you use the __format__ form of the attributes, which is what we use
(to avoid confusion with other macros). */
#ifndef __attribute__
# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7)
# define __attribute__(spec) /* empty */
# endif
#endif
/* Used for unused parameters to silence gcc warnings. */
#define UNUSED __attribute__((__unused__))
/* Make available the bool type. */
#if INN_HAVE_STDBOOL_H
# include <stdbool.h>
#else
# undef true
# undef false
# define true (1)
# define false (0)
# ifndef __cplusplus
# define bool int
# endif
#endif /* INN_HAVE_STDBOOL_H */
/* Tell Perl that we have a bool type. */
#ifndef HAS_BOOL
# define HAS_BOOL 1
#endif
#endif /* !INN_DEFINES_H */
|