pacemaker
2.1.1-52dc28db4
Scalable High-Availability cluster resource manager
include
config.h
Go to the documentation of this file.
1
/* include/config.h. Generated from config.h.in by configure. */
2
/* include/config.h.in. Generated from configure.ac by autoheader. */
3
4
/* Define if building universal (internal helper macro) */
5
/* #undef AC_APPLE_UNIVERSAL_BUILD */
6
7
/* Build version */
8
#define BUILD_VERSION "52dc28db4"
9
10
/* Where to keep blackbox dumps */
11
#define CRM_BLACKBOX_DIR "/var/lib/pacemaker/blackbox"
12
13
/* Location for Pacemaker bundle logs */
14
#define CRM_BUNDLE_DIR "/var/log/pacemaker/bundles"
15
16
/* Where to keep cts stateful data */
17
#define CRM_CONFIG_CTS "/var/lib/pacemaker/cts"
18
19
/* Where to keep configuration files */
20
#define CRM_CONFIG_DIR "/var/lib/pacemaker/cib"
21
22
/* Location to store core files produced by Pacemaker daemons */
23
#define CRM_CORE_DIR "/var/lib/pacemaker/cores"
24
25
/* Location for Pacemaker daemons */
26
#define CRM_DAEMON_DIR "/usr/libexec/pacemaker"
27
28
/* Group to run Pacemaker daemons as */
29
#define CRM_DAEMON_GROUP "haclient"
30
31
/* User to run Pacemaker daemons as */
32
#define CRM_DAEMON_USER "hacluster"
33
34
/* Set of enabled features */
35
#define CRM_FEATURES "agent-manpages ascii-docs books cibsecrets compat-2.0 corosync-ge-2 generated-manpages monotonic nagios ncurses remote systemd"
36
37
/* Location for Pacemaker log file */
38
#define CRM_LOG_DIR "/var/log/pacemaker"
39
40
/* Location to store directory produced by Pacemaker daemons */
41
#define CRM_PACEMAKER_DIR "/var/lib/pacemaker"
42
43
/* Where resource agents should keep state files */
44
#define CRM_RSCTMP_DIR "/var/run/resource-agents"
45
46
/* Location for the Pacemaker Relax-NG Schema */
47
#define CRM_SCHEMA_DIRECTORY "/usr/share/pacemaker"
48
49
/* Where to keep state files and sockets */
50
#define CRM_STATE_DIR "/var/run/crm"
51
52
/* Enable versioned attributes */
53
#define ENABLE_VERSIONED_ATTRS 0
54
55
/* gcc can complain about nonliterals in format */
56
#define GCC_FORMAT_NONLITERAL_CHECKING_ENABLED
57
58
/* Define to 1 if you have the `alphasort' function. */
59
#define HAVE_ALPHASORT 1
60
61
/* Define to 1 if you have the `argz_add' function. */
62
#define HAVE_ARGZ_ADD 1
63
64
/* Define to 1 if you have the `argz_append' function. */
65
#define HAVE_ARGZ_APPEND 1
66
67
/* Define to 1 if you have the `argz_count' function. */
68
#define HAVE_ARGZ_COUNT 1
69
70
/* Define to 1 if you have the `argz_create_sep' function. */
71
#define HAVE_ARGZ_CREATE_SEP 1
72
73
/* Define to 1 if you have the <argz.h> header file. */
74
#define HAVE_ARGZ_H 1
75
76
/* Define to 1 if you have the `argz_insert' function. */
77
#define HAVE_ARGZ_INSERT 1
78
79
/* Define to 1 if you have the `argz_next' function. */
80
#define HAVE_ARGZ_NEXT 1
81
82
/* Define to 1 if you have the `argz_stringify' function. */
83
#define HAVE_ARGZ_STRINGIFY 1
84
85
/* Define to 1 if you have the <arpa/inet.h> header file. */
86
#define HAVE_ARPA_INET_H 1
87
88
/* Define to 1 if you have the <byteswap.h> header file. */
89
#define HAVE_BYTESWAP_H 1
90
91
/* Define to 1 if you have the <bzlib.h> header file. */
92
#define HAVE_BZLIB_H 1
93
94
/* Define to 1 if you have the `closedir' function. */
95
#define HAVE_CLOSEDIR 1
96
97
/* Define to 1 if you have the `corosync_cfg_trackstart' function. */
98
/* #undef HAVE_COROSYNC_CFG_TRACKSTART */
99
100
/* Define to 1 if you have the <ctype.h> header file. */
101
#define HAVE_CTYPE_H 1
102
103
/* Define to 1 if you have the <curses/curses.h> header file. */
104
/* #undef HAVE_CURSES_CURSES_H */
105
106
/* Define to 1 if you have the <curses.h> header file. */
107
#define HAVE_CURSES_H 1
108
109
/* Define to 1 if the system has the type `DBusBasicValue'. */
110
#define HAVE_DBUSBASICVALUE 1
111
112
/* Define to 1 if you have the declaration of `CLOCK_MONOTONIC', and to 0 if
113
you don't. */
114
#define HAVE_DECL_CLOCK_MONOTONIC 1
115
116
/* Define to 1 if you have the declaration of `cygwin_conv_path', and to 0 if
117
you don't. */
118
/* #undef HAVE_DECL_CYGWIN_CONV_PATH */
119
120
/* Define to 1 if you have the declaration of `PRIu32', and to 0 if you don't.
121
*/
122
#define HAVE_DECL_PRIU32 1
123
124
/* Define to 1 if you have the declaration of `PRIu64', and to 0 if you don't.
125
*/
126
#define HAVE_DECL_PRIU64 1
127
128
/* Define to 1 if you have the declaration of `PRIx32', and to 0 if you don't.
129
*/
130
#define HAVE_DECL_PRIX32 1
131
132
/* Define to 1 if you have the declaration of `SCNu64', and to 0 if you don't.
133
*/
134
#define HAVE_DECL_SCNU64 1
135
136
/* Define to 1 if you have the <dirent.h> header file. */
137
#define HAVE_DIRENT_H 1
138
139
/* Define if you have the GNU dld library. */
140
/* #undef HAVE_DLD */
141
142
/* Define to 1 if you have the <dld.h> header file. */
143
/* #undef HAVE_DLD_H */
144
145
/* Define to 1 if you have the `dlerror' function. */
146
#define HAVE_DLERROR 1
147
148
/* Define to 1 if you have the <dlfcn.h> header file. */
149
#define HAVE_DLFCN_H 1
150
151
/* Define to 1 if you have the <dl.h> header file. */
152
/* #undef HAVE_DL_H */
153
154
/* Define if you have the _dyld_func_lookup function. */
155
/* #undef HAVE_DYLD */
156
157
/* Define to 1 if you have the <errno.h> header file. */
158
#define HAVE_ERRNO_H 1
159
160
/* Define to 1 if the system has the type `error_t'. */
161
#define HAVE_ERROR_T 1
162
163
/* Define to 1 if you have the <getopt.h> header file. */
164
#define HAVE_GETOPT_H 1
165
166
/* Define to 1 if you have the <glib.h> header file. */
167
#define HAVE_GLIB_H 1
168
169
/* Define to 1 if you have the <gnutls/gnutls.h> header file. */
170
#define HAVE_GNUTLS_GNUTLS_H 1
171
172
/* Define to 1 if you have the <grp.h> header file. */
173
#define HAVE_GRP_H 1
174
175
/* Define to 1 if curses library has incompatible printw() */
176
/* #undef HAVE_INCOMPATIBLE_PRINTW */
177
178
/* Define to 1 if you have the <inttypes.h> header file. */
179
#define HAVE_INTTYPES_H 1
180
181
/* Have qb_ipcc_auth_get function */
182
/* #undef HAVE_IPCC_AUTH_GET */
183
184
/* Define to 1 if you have the `asan' library (-lasan). */
185
/* #undef HAVE_LIBASAN */
186
187
/* Define to 1 if you have the `bz2' library (-lbz2). */
188
#define HAVE_LIBBZ2 1
189
190
/* Define to 1 if you have the `c' library (-lc). */
191
/* #undef HAVE_LIBC */
192
193
/* have curses library */
194
/* #undef HAVE_LIBCURSES */
195
196
/* Define to 1 if you have the `dl' library (-ldl). */
197
#define HAVE_LIBDL 1
198
199
/* Define if libdlloader will be built on this platform */
200
#define HAVE_LIBDLLOADER 1
201
202
/* Define to 1 if you have the `gnugetopt' library (-lgnugetopt). */
203
/* #undef HAVE_LIBGNUGETOPT */
204
205
/* Define to 1 if you have the `gnutls' library (-lgnutls). */
206
#define HAVE_LIBGNUTLS 1
207
208
/* have ncurses library */
209
#define HAVE_LIBNCURSES 1
210
211
/* Define to 1 if you have the `pam' library (-lpam). */
212
#define HAVE_LIBPAM 1
213
214
/* Define to 1 if you have the `pils' library (-lpils). */
215
/* #undef HAVE_LIBPILS */
216
217
/* Define to 1 if you have the `plumb' library (-lplumb). */
218
/* #undef HAVE_LIBPLUMB */
219
220
/* Define to 1 if you have the `rt' library (-lrt). */
221
#define HAVE_LIBRT 1
222
223
/* Define to 1 if you have the `socket' library (-lsocket). */
224
/* #undef HAVE_LIBSOCKET */
225
226
/* Define to 1 if you have the `tsan' library (-ltsan). */
227
/* #undef HAVE_LIBTSAN */
228
229
/* Define to 1 if you have the `ubsan' library (-lubsan). */
230
/* #undef HAVE_LIBUBSAN */
231
232
/* Define to 1 if you have the <libxml/xpath.h> header file. */
233
#define HAVE_LIBXML_XPATH_H 1
234
235
/* Define to 1 if you have the `xslt' library (-lxslt). */
236
#define HAVE_LIBXSLT 1
237
238
/* Define to 1 if you have the <libxslt/xslt.h> header file. */
239
#define HAVE_LIBXSLT_XSLT_H 1
240
241
/* Define to 1 if you have the <limits.h> header file. */
242
#define HAVE_LIMITS_H 1
243
244
/* Define to 1 if you have the <linux/swab.h> header file. */
245
#define HAVE_LINUX_SWAB_H 1
246
247
/* Define this if a modern libltdl is already installed */
248
#define HAVE_LTDL 1
249
250
/* Define to 1 if you have the <mach-o/dyld.h> header file. */
251
/* #undef HAVE_MACH_O_DYLD_H */
252
253
/* Define to 1 if you have the <malloc.h> header file. */
254
/* #undef HAVE_MALLOC_H */
255
256
/* Define to 1 if you have the <memory.h> header file. */
257
#define HAVE_MEMORY_H 1
258
259
/* Define to 1 if you have the `nanosleep' function. */
260
#define HAVE_NANOSLEEP 1
261
262
/* Define to 1 if you have the <ncurses.h> header file. */
263
#define HAVE_NCURSES_H 1
264
265
/* Define to 1 if you have the <ncurses/ncurses.h> header file. */
266
#define HAVE_NCURSES_NCURSES_H 1
267
268
/* Define to 1 if you have the <netdb.h> header file. */
269
#define HAVE_NETDB_H 1
270
271
/* Define to 1 if you have the <netinet/in.h> header file. */
272
#define HAVE_NETINET_IN_H 1
273
274
/* Define to 1 if you have the <netinet/ip.h> header file. */
275
#define HAVE_NETINET_IP_H 1
276
277
/* Define to 1 if you have the `NoSuchFunctionName' function. */
278
/* #undef HAVE_NOSUCHFUNCTIONNAME */
279
280
/* Define to 1 if you have the `opendir' function. */
281
#define HAVE_OPENDIR 1
282
283
/* Define to 1 if libcrypto is used for MD5. */
284
/* #undef HAVE_OPENSSL_MD5 */
285
286
/* Define to 1 if you have the <openssl/md5.h> header file. */
287
/* #undef HAVE_OPENSSL_MD5_H */
288
289
/* Define to 1 if you have the <pam/pam_appl.h> header file. */
290
/* #undef HAVE_PAM_PAM_APPL_H */
291
292
/* Define if libtool can extract symbol lists from object files. */
293
#define HAVE_PRELOADED_SYMBOLS 1
294
295
/* Define to 1 if you have the <pwd.h> header file. */
296
#define HAVE_PWD_H 1
297
298
/* Define to 1 if you have the `qb_ipcc_auth_get' function. */
299
/* #undef HAVE_QB_IPCC_AUTH_GET */
300
301
/* Define to 1 if you have the `readdir' function. */
302
#define HAVE_READDIR 1
303
304
/* Define to 1 if you have the `scandir' function. */
305
#define HAVE_SCANDIR 1
306
307
/* Define to 1 if you have the `sched_setscheduler' function. */
308
#define HAVE_SCHED_SETSCHEDULER 1
309
310
/* Define to 1 if you have the <security/pam_appl.h> header file. */
311
#define HAVE_SECURITY_PAM_APPL_H 1
312
313
/* Define if you have the shl_load function. */
314
/* #undef HAVE_SHL_LOAD */
315
316
/* Define to 1 if sighandler_t is available */
317
/* #undef HAVE_SIGHANDLER_T */
318
319
/* Define to 1 if you have the <signal.h> header file. */
320
#define HAVE_SIGNAL_H 1
321
322
/* Define to 1 if you have the <stddef.h> header file. */
323
#define HAVE_STDDEF_H 1
324
325
/* Define to 1 if you have the <stdint.h> header file. */
326
#define HAVE_STDINT_H 1
327
328
/* Define to 1 if you have the <stdio.h> header file. */
329
#define HAVE_STDIO_H 1
330
331
/* Define to 1 if you have the <stdlib.h> header file. */
332
#define HAVE_STDLIB_H 1
333
334
/* Define to 1 if you have the <stonith/stonith.h> header file. */
335
/* #undef HAVE_STONITH_STONITH_H */
336
337
/* Define to 1 if you have the `strchrnul' function. */
338
#define HAVE_STRCHRNUL 1
339
340
/* Define to 1 if you have the `strerror' function. */
341
#define HAVE_STRERROR 1
342
343
/* Define to 1 if you have the <strings.h> header file. */
344
#define HAVE_STRINGS_H 1
345
346
/* Define to 1 if you have the <string.h> header file. */
347
#define HAVE_STRING_H 1
348
349
/* Define to 1 if you have the `strlcat' function. */
350
/* #undef HAVE_STRLCAT */
351
352
/* Define to 1 if you have the `strlcpy' function. */
353
/* #undef HAVE_STRLCPY */
354
355
/* Define to 1 if you have the `strndup' function. */
356
#define HAVE_STRNDUP 1
357
358
/* Define to 1 if you have the `strnlen' function. */
359
#define HAVE_STRNLEN 1
360
361
/* Define this if struct dirent has d_type */
362
#define HAVE_STRUCT_DIRENT_D_TYPE 1
363
364
/* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */
365
#define HAVE_STRUCT_TM_TM_GMTOFF 1
366
367
/* Define to 1 if you have the <sys/dl.h> header file. */
368
/* #undef HAVE_SYS_DL_H */
369
370
/* Define to 1 if you have the <sys/ioctl.h> header file. */
371
#define HAVE_SYS_IOCTL_H 1
372
373
/* Define to 1 if you have the <sys/param.h> header file. */
374
#define HAVE_SYS_PARAM_H 1
375
376
/* Define to 1 if you have the <sys/reboot.h> header file. */
377
#define HAVE_SYS_REBOOT_H 1
378
379
/* Define to 1 if you have the <sys/resource.h> header file. */
380
#define HAVE_SYS_RESOURCE_H 1
381
382
/* Define to 1 if you have the <sys/signalfd.h> header file. */
383
#define HAVE_SYS_SIGNALFD_H 1
384
385
/* Define to 1 if you have the <sys/socket.h> header file. */
386
#define HAVE_SYS_SOCKET_H 1
387
388
/* Define to 1 if you have the <sys/stat.h> header file. */
389
#define HAVE_SYS_STAT_H 1
390
391
/* Define to 1 if you have the <sys/time.h> header file. */
392
#define HAVE_SYS_TIME_H 1
393
394
/* Define to 1 if you have the <sys/types.h> header file. */
395
#define HAVE_SYS_TYPES_H 1
396
397
/* Define to 1 if you have the <sys/utsname.h> header file. */
398
#define HAVE_SYS_UTSNAME_H 1
399
400
/* Define to 1 if you have the <sys/wait.h> header file. */
401
#define HAVE_SYS_WAIT_H 1
402
403
/* Define to 1 if you have the <time.h> header file. */
404
#define HAVE_TIME_H 1
405
406
/* Define to 1 if you have the <unistd.h> header file. */
407
#define HAVE_UNISTD_H 1
408
409
/* Define to 1 if you have the `usleep' function. */
410
#define HAVE_USLEEP 1
411
412
/* Define to 1 if you have the `uuid_unparse' function. */
413
#define HAVE_UUID_UNPARSE 1
414
415
/* Define to 1 if you have the <uuid/uuid.h> header file. */
416
#define HAVE_UUID_UUID_H 1
417
418
/* This value is set to 1 to indicate that the system argz facility works */
419
#define HAVE_WORKING_ARGZ 1
420
421
/* */
422
/* #undef HAVE___PROGNAME */
423
424
/* Whether enum qb_log_conf supports QB_LOG_CONF_ELLIPSIS */
425
/* #undef HAVE_qb_log_conf_QB_LOG_CONF_ELLIPSIS */
426
427
/* Whether enum qb_log_conf supports QB_LOG_CONF_MAX_LINE_LEN */
428
/* #undef HAVE_qb_log_conf_QB_LOG_CONF_MAX_LINE_LEN */
429
430
/* Location for CIB secrets */
431
#define LRM_CIBSECRETS_DIR "/var/lib/pacemaker/lrm/secrets"
432
433
/* Define if the OS needs help to load dependent libraries for dlopen(). */
434
/* #undef LTDL_DLOPEN_DEPLIBS */
435
436
/* Define to the system default library search path. */
437
#define LT_DLSEARCH_PATH "/lib64:/usr/lib64:/lib:/usr/lib:/usr/lib64/atlas:/usr/lib64//bind9-export/:/usr/lib64/dyninst:/usr/lib64/iscsi"
438
439
/* The archive extension */
440
#define LT_LIBEXT "a"
441
442
/* The archive prefix */
443
#define LT_LIBPREFIX "lib"
444
445
/* Define to the extension used for runtime loadable modules, say, ".so". */
446
#define LT_MODULE_EXT ".so"
447
448
/* Define to the name of the environment variable that determines the run-time
449
module search path. */
450
#define LT_MODULE_PATH_VAR "LD_LIBRARY_PATH"
451
452
/* Define to the sub-directory where libtool stores uninstalled libraries. */
453
#define LT_OBJDIR ".libs/"
454
455
/* Define to the shared library suffix, say, ".dylib". */
456
/* #undef LT_SHARED_EXT */
457
458
/* Define to the shared archive member specification, say "(shr.o)". */
459
/* #undef LT_SHARED_LIB_MEMBER */
460
461
/* Directory for nagios plugins metadata */
462
#define NAGIOS_METADATA_DIR "/usr/share/nagios/plugins-metadata"
463
464
/* Directory for nagios plugins */
465
#define NAGIOS_PLUGIN_DIR "/usr/libexec/nagios/plugins"
466
467
/* Define if dlsym() requires a leading underscore in symbol names. */
468
/* #undef NEED_USCORE */
469
470
/* OCF directories to search for resource agents */
471
#define OCF_RA_PATH "/usr/lib/ocf/resource.d"
472
473
/* OCF root directory for resource agents and libraries */
474
#define OCF_ROOT_DIR "/usr/lib/ocf"
475
476
/* Where to keep configuration files like authkey */
477
#define PACEMAKER_CONFIG_DIR "/etc/pacemaker"
478
479
/* Version number of this Pacemaker build */
480
#define PACEMAKER_VERSION "2.1.1"
481
482
/* Name of package */
483
#define PACKAGE "pacemaker"
484
485
/* Define to the address where bug reports for this package should be sent. */
486
#define PACKAGE_BUGREPORT "users@clusterlabs.org"
487
488
/* Define to the full name of this package. */
489
#define PACKAGE_NAME "pacemaker"
490
491
/* Define to the full name and version of this package. */
492
#define PACKAGE_STRING "pacemaker 2.1.1"
493
494
/* Define to the one symbol short name of this package. */
495
#define PACKAGE_TARNAME "pacemaker"
496
497
/* Define to the home page for this package. */
498
#define PACKAGE_URL "https://ClusterLabs.org/pacemaker/"
499
500
/* Define to the version of this package. */
501
#define PACKAGE_VERSION "2.1.1"
502
503
/* GnuTLS cipher priorities */
504
#define PCMK_GNUTLS_PRIORITIES "NORMAL"
505
506
/* Location for modifiable per-process data */
507
#define PCMK_RUN_DIR "/var/run"
508
509
/* Keep certain output compatible with 2.0 release series */
510
#define PCMK__COMPAT_2_0 1
511
512
/* Default value for concurrent-fencing cluster option */
513
#define PCMK__CONCURRENT_FENCING_DEFAULT "false"
514
515
/* Location for executable fence agents */
516
#define PCMK__FENCE_BINDIR "/usr/sbin"
517
518
/* Default value for resource-stickiness resource meta-attribute */
519
#define PCMK__RESOURCE_STICKINESS_DEFAULT 0
520
521
/* Default value for SBD_SYNC_RESOURCE_STARTUP environment variable */
522
#define PCMK__SBD_SYNC_DEFAULT false
523
524
/* Where to keep scheduler outputs */
525
#define PE_STATE_DIR "/var/lib/pacemaker/pengine"
526
527
/* Location for system binaries */
528
#define SBIN_DIR "/usr/sbin"
529
530
/* The size of `char', as computed by sizeof. */
531
#define SIZEOF_CHAR 1
532
533
/* The size of `int', as computed by sizeof. */
534
#define SIZEOF_INT 4
535
536
/* The size of `long', as computed by sizeof. */
537
#define SIZEOF_LONG 8
538
539
/* The size of `long long', as computed by sizeof. */
540
#define SIZEOF_LONG_LONG 8
541
542
/* The size of `short', as computed by sizeof. */
543
#define SIZEOF_SHORT 2
544
545
/* */
546
#define SSCANF_HAS_M 1
547
548
/* Define to 1 if you have the ANSI C header files. */
549
#define STDC_HEADERS 1
550
551
/* Support CIB secrets */
552
#define SUPPORT_CIBSECRETS 1
553
554
/* Support the Corosync messaging and membership layer */
555
#define SUPPORT_COROSYNC 1
556
557
/* Support dbus */
558
#define SUPPORT_DBUS 1
559
560
/* Support nagios plugins */
561
#define SUPPORT_NAGIOS 1
562
563
/* Define to 1 if procfs is supported */
564
#define SUPPORT_PROCFS 1
565
566
/* Support profiling */
567
#define SUPPORT_PROFILING 0
568
569
/* Support systemd resources */
570
#define SUPPORT_SYSTEMD 1
571
572
/* Support Upstart resources */
573
#define SUPPORT_UPSTART 0
574
575
/* Correct format specifier for U32T */
576
#define U32T PRIu32
577
578
/* Correct format specifier for U64T */
579
#define U64T PRIu64
580
581
/* Correct format specifier for U64TS */
582
#define U64TS SCNu64
583
584
/* Define if Unix socket auth method is getpeereid(s, &uid, &gid) */
585
/* #undef US_AUTH_GETPEEREID */
586
587
/* Define if Unix socket auth method is getpeercred(s, &ucred) */
588
/* #undef US_AUTH_GETPEERUCRED */
589
590
/* Define if Unix socket auth method is getsockopt(s, SO_PEERCRED,
591
&sockpeercred, ...) */
592
/* #undef US_AUTH_PEERCRED_SOCKPEERCRED */
593
594
/* Define if Unix socket auth method is getsockopt(s, SO_PEERCRED, &ucred,
595
...) */
596
#define US_AUTH_PEERCRED_UCRED 1
597
598
/* Valgrind command */
599
#define VALGRIND_BIN "/usr/bin/valgrind"
600
601
/* Version number of package */
602
#define VERSION "2.1.1"
603
604
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
605
significant byte first (like Motorola and SPARC, unlike Intel). */
606
#if defined AC_APPLE_UNIVERSAL_BUILD
607
# if defined __BIG_ENDIAN__
608
# define WORDS_BIGENDIAN 1
609
# endif
610
#else
611
# ifndef WORDS_BIGENDIAN
612
/* # undef WORDS_BIGENDIAN */
613
# endif
614
#endif
615
616
/* Correct format specifier for X32T */
617
#define X32T PRIx32
618
619
/* True if the compiler says it groks GNU C version MAJOR.MINOR. */
620
#if defined __GNUC__ && defined __GNUC_MINOR__
621
# define _GL_GNUC_PREREQ(major, minor) \
622
((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__))
623
#else
624
# define _GL_GNUC_PREREQ(major, minor) 0
625
#endif
626
627
628
/* The _Noreturn keyword of C11. */
629
#ifndef _Noreturn
630
# if (defined __cplusplus \
631
&& ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
632
|| (defined _MSC_VER && 1900 <= _MSC_VER)) \
633
&& 0)
634
/* [[noreturn]] is not practically usable, because with it the syntax
635
extern _Noreturn void func (...);
636
would not be valid; such a declaration would only be valid with 'extern'
637
and '_Noreturn' swapped, or without the 'extern' keyword. However, some
638
AIX system header files and several gnulib header files use precisely
639
this syntax with 'extern'. */
640
# define _Noreturn [[noreturn]]
641
# elif ((!defined __cplusplus || defined __clang__) \
642
&& (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
643
|| _GL_GNUC_PREREQ (4, 7) \
644
|| (defined __apple_build_version__ \
645
? 6000000 <= __apple_build_version__ \
646
: 3 < __clang_major__ + (5 <= __clang_minor__))))
647
/* _Noreturn works as-is. */
648
# elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C
649
# define _Noreturn __attribute__ ((__noreturn__))
650
# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
651
# define _Noreturn __declspec (noreturn)
652
# else
653
# define _Noreturn
654
# endif
655
#endif
656
657
658
/* Define so that glibc/gnulib argp.h does not typedef error_t. */
659
/* #undef __error_t_defined */
660
661
/* The _GL_ASYNC_SAFE marker should be attached to functions that are
662
signal handlers (for signals other than SIGABRT, SIGPIPE) or can be
663
invoked from such signal handlers. Such functions have some restrictions:
664
* All functions that it calls should be marked _GL_ASYNC_SAFE as well,
665
or should be listed as async-signal-safe in POSIX
666
<https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
667
section 2.4.3. Note that malloc(), sprintf(), and fwrite(), in
668
particular, are NOT async-signal-safe.
669
* All memory locations (variables and struct fields) that these functions
670
access must be marked 'volatile'. This holds for both read and write
671
accesses. Otherwise the compiler might optimize away stores to and
672
reads from such locations that occur in the program, depending on its
673
data flow analysis. For example, when the program contains a loop
674
that is intended to inspect a variable set from within a signal handler
675
while (!signal_occurred)
676
;
677
the compiler is allowed to transform this into an endless loop if the
678
variable 'signal_occurred' is not declared 'volatile'.
679
Additionally, recall that:
680
* A signal handler should not modify errno (except if it is a handler
681
for a fatal signal and ends by raising the same signal again, thus
682
provoking the termination of the process). If it invokes a function
683
that may clobber errno, it needs to save and restore the value of
684
errno. */
685
#define _GL_ASYNC_SAFE
686
687
688
/* Attributes. */
689
#ifdef __has_attribute
690
# define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)
691
#else
692
# define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr
693
# define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)
694
# define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)
695
# define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3)
696
# define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3)
697
# define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95)
698
# define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1)
699
# define _GL_ATTR_diagnose_if 0
700
# define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3)
701
# define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1)
702
# define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0)
703
# define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7)
704
# define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6)
705
# ifdef _ICC
706
# define _GL_ATTR_may_alias 0
707
# else
708
# define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3)
709
# endif
710
# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0)
711
# define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)
712
# define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3)
713
# define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)
714
# define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)
715
# define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)
716
# define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96)
717
# define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)
718
# define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0)
719
# define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)
720
# define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
721
#endif
722
723
724
#if _GL_HAS_ATTRIBUTE (alloc_size)
725
# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
726
#else
727
# define _GL_ATTRIBUTE_ALLOC_SIZE(args)
728
#endif
729
730
#if _GL_HAS_ATTRIBUTE (always_inline)
731
# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__))
732
#else
733
# define _GL_ATTRIBUTE_ALWAYS_INLINE
734
#endif
735
736
#if _GL_HAS_ATTRIBUTE (artificial)
737
# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__))
738
#else
739
# define _GL_ATTRIBUTE_ARTIFICIAL
740
#endif
741
742
/* Avoid __attribute__ ((cold)) on MinGW; see thread starting at
743
<https://lists.gnu.org/r/emacs-devel/2019-04/msg01152.html>.
744
Also, Oracle Studio 12.6 requires 'cold' not '__cold__'. */
745
#if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__
746
# ifndef __SUNPRO_C
747
# define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__))
748
# else
749
# define _GL_ATTRIBUTE_COLD __attribute__ ((cold))
750
# endif
751
#else
752
# define _GL_ATTRIBUTE_COLD
753
#endif
754
755
#if _GL_HAS_ATTRIBUTE (const)
756
# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
757
#else
758
# define _GL_ATTRIBUTE_CONST
759
#endif
760
761
#if 201710L < __STDC_VERSION__
762
# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
763
#elif _GL_HAS_ATTRIBUTE (deprecated)
764
# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__))
765
#else
766
# define _GL_ATTRIBUTE_DEPRECATED
767
#endif
768
769
#if _GL_HAS_ATTRIBUTE (error)
770
# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg)))
771
# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg)))
772
#elif _GL_HAS_ATTRIBUTE (diagnose_if)
773
# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error")))
774
# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning")))
775
#else
776
# define _GL_ATTRIBUTE_ERROR(msg)
777
# define _GL_ATTRIBUTE_WARNING(msg)
778
#endif
779
780
#if _GL_HAS_ATTRIBUTE (externally_visible)
781
# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible))
782
#else
783
# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
784
#endif
785
786
/* FALLTHROUGH is special, because it always expands to something. */
787
#if 201710L < __STDC_VERSION__
788
# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
789
#elif _GL_HAS_ATTRIBUTE (fallthrough)
790
# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
791
#else
792
# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0)
793
#endif
794
795
#if _GL_HAS_ATTRIBUTE (format)
796
# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
797
#else
798
# define _GL_ATTRIBUTE_FORMAT(spec)
799
#endif
800
801
#if _GL_HAS_ATTRIBUTE (leaf)
802
# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__))
803
#else
804
# define _GL_ATTRIBUTE_LEAF
805
#endif
806
807
/* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK. */
808
#if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C
809
# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__))
810
#else
811
# define _GL_ATTRIBUTE_MAY_ALIAS
812
#endif
813
814
#if 201710L < __STDC_VERSION__
815
# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
816
#elif _GL_HAS_ATTRIBUTE (unused)
817
# define _GL_ATTRIBUTE_MAYBE_UNUSED __attribute__ ((__unused__))
818
#else
819
# define _GL_ATTRIBUTE_MAYBE_UNUSED
820
#endif
821
/* Earlier spellings of this macro. */
822
#define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
823
#define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED
824
825
#if _GL_HAS_ATTRIBUTE (malloc)
826
# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
827
#else
828
# define _GL_ATTRIBUTE_MALLOC
829
#endif
830
831
#if 201710L < __STDC_VERSION__
832
# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
833
#elif _GL_HAS_ATTRIBUTE (warn_unused_result)
834
# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__))
835
#else
836
# define _GL_ATTRIBUTE_NODISCARD
837
#endif
838
839
#if _GL_HAS_ATTRIBUTE (noinline)
840
# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__))
841
#else
842
# define _GL_ATTRIBUTE_NOINLINE
843
#endif
844
845
#if _GL_HAS_ATTRIBUTE (nonnull)
846
# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args))
847
#else
848
# define _GL_ATTRIBUTE_NONNULL(args)
849
#endif
850
851
#if _GL_HAS_ATTRIBUTE (nonstring)
852
# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
853
#else
854
# define _GL_ATTRIBUTE_NONSTRING
855
#endif
856
857
/* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead. */
858
859
#if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus
860
# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__))
861
#else
862
# define _GL_ATTRIBUTE_NOTHROW
863
#endif
864
865
#if _GL_HAS_ATTRIBUTE (packed)
866
# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__))
867
#else
868
# define _GL_ATTRIBUTE_PACKED
869
#endif
870
871
#if _GL_HAS_ATTRIBUTE (pure)
872
# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
873
#else
874
# define _GL_ATTRIBUTE_PURE
875
#endif
876
877
#if _GL_HAS_ATTRIBUTE (returns_nonnull)
878
# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__))
879
#else
880
# define _GL_ATTRIBUTE_RETURNS_NONNULL
881
#endif
882
883
#if _GL_HAS_ATTRIBUTE (sentinel)
884
# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos))
885
#else
886
# define _GL_ATTRIBUTE_SENTINEL(pos)
887
#endif
888
889
890
/* To support C++ as well as C, use _GL_UNUSED_LABEL with trailing ';'. */
891
#if !defined __cplusplus || _GL_GNUC_PREREQ (4, 5)
892
# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_MAYBE_UNUSED
893
#else
894
# define _GL_UNUSED_LABEL
895
#endif
896
897
898
/* Define to a type to use for 'error_t' if it is not otherwise available. */
899
/* #undef error_t */
900
901
/* Please see the Gnulib manual for how to use these macros.
902
903
Suppress extern inline with HP-UX cc, as it appears to be broken; see
904
<https://lists.gnu.org/r/bug-texinfo/2013-02/msg00030.html>.
905
906
Suppress extern inline with Sun C in standards-conformance mode, as it
907
mishandles inline functions that call each other. E.g., for 'inline void f
908
(void) { } inline void g (void) { f (); }', c99 incorrectly complains
909
'reference to static identifier "f" in extern inline function'.
910
This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16.
911
912
Suppress extern inline (with or without __attribute__ ((__gnu_inline__)))
913
on configurations that mistakenly use 'static inline' to implement
914
functions or macros in standard C headers like <ctype.h>. For example,
915
if isdigit is mistakenly implemented via a static inline function,
916
a program containing an extern inline function that calls isdigit
917
may not work since the C standard prohibits extern inline functions
918
from calling static functions (ISO C 99 section 6.7.4.(3).
919
This bug is known to occur on:
920
921
OS X 10.8 and earlier; see:
922
https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html
923
924
DragonFly; see
925
http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log
926
927
FreeBSD; see:
928
https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html
929
930
OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and
931
for clang but remains for g++; see <https://trac.macports.org/ticket/41033>.
932
Assume DragonFly and FreeBSD will be similar.
933
934
GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
935
inline semantics, unless -fgnu89-inline is used. It defines a macro
936
__GNUC_STDC_INLINE__ to indicate this situation or a macro
937
__GNUC_GNU_INLINE__ to indicate the opposite situation.
938
GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline
939
semantics but warns, unless -fgnu89-inline is used:
940
warning: C99 inline functions are not supported; using GNU89
941
warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute
942
It defines a macro __GNUC_GNU_INLINE__ to indicate this situation.
943
*/
944
#if (((defined __APPLE__ && defined __MACH__) \
945
|| defined __DragonFly__ || defined __FreeBSD__) \
946
&& (defined __header_inline \
947
? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \
948
&& ! defined __clang__) \
949
: ((! defined _DONT_USE_CTYPE_INLINE_ \
950
&& (defined __GNUC__ || defined __cplusplus)) \
951
|| (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \
952
&& defined __GNUC__ && ! defined __cplusplus))))
953
# define _GL_EXTERN_INLINE_STDHEADER_BUG
954
#endif
955
#if ((__GNUC__ \
956
? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
957
: (199901L <= __STDC_VERSION__ \
958
&& !defined __HP_cc \
959
&& !defined __PGI \
960
&& !(defined __SUNPRO_C && __STDC__))) \
961
&& !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
962
# define _GL_INLINE inline
963
# define _GL_EXTERN_INLINE extern inline
964
# define _GL_EXTERN_INLINE_IN_USE
965
#elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \
966
&& !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
967
# if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__
968
/* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */
969
# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__))
970
# else
971
# define _GL_INLINE extern inline
972
# endif
973
# define _GL_EXTERN_INLINE extern
974
# define _GL_EXTERN_INLINE_IN_USE
975
#else
976
# define _GL_INLINE static _GL_UNUSED
977
# define _GL_EXTERN_INLINE static _GL_UNUSED
978
#endif
979
980
/* In GCC 4.6 (inclusive) to 5.1 (exclusive),
981
suppress bogus "no previous prototype for 'FOO'"
982
and "no previous declaration for 'FOO'" diagnostics,
983
when FOO is an inline function in the header; see
984
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and
985
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>. */
986
#if __GNUC__ == 4 && 6 <= __GNUC_MINOR__
987
# if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__
988
# define _GL_INLINE_HEADER_CONST_PRAGMA
989
# else
990
# define _GL_INLINE_HEADER_CONST_PRAGMA \
991
_Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"")
992
# endif
993
# define _GL_INLINE_HEADER_BEGIN \
994
_Pragma ("GCC diagnostic push") \
995
_Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \
996
_Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \
997
_GL_INLINE_HEADER_CONST_PRAGMA
998
# define _GL_INLINE_HEADER_END \
999
_Pragma ("GCC diagnostic pop")
1000
#else
1001
# define _GL_INLINE_HEADER_BEGIN
1002
# define _GL_INLINE_HEADER_END
1003
#endif
1004
1005
/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
1006
the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
1007
earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
1008
__APPLE__ && __MACH__ test for Mac OS X.
1009
__APPLE_CC__ tests for the Apple compiler and its version.
1010
__STDC_VERSION__ tests for the C99 mode. */
1011
#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
1012
# define __GNUC_STDC_INLINE__ 1
1013
#endif
1014
1015
/* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where
1016
n1 and n2 are expressions without side effects, that evaluate to real
1017
numbers (excluding NaN).
1018
It returns
1019
1 if n1 > n2
1020
0 if n1 == n2
1021
-1 if n1 < n2
1022
The naïve code (n1 > n2 ? 1 : n1 < n2 ? -1 : 0) produces a conditional
1023
jump with nearly all GCC versions up to GCC 10.
1024
This variant (n1 < n2 ? -1 : n1 > n2) produces a conditional with many
1025
GCC versions up to GCC 9.
1026
The better code (n1 > n2) - (n1 < n2) from Hacker's Delight § 2-9
1027
avoids conditional jumps in all GCC versions >= 3.4. */
1028
#define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2)))
1029
1030
1031
/* Define to the equivalent of the C99 'restrict' keyword, or to
1032
nothing if this is not supported. Do not define if restrict is
1033
supported directly. */
1034
#define restrict __restrict
1035
/* Work around a bug in older versions of Sun C++, which did not
1036
#define __restrict__ or support _Restrict or __restrict__
1037
even though the corresponding Sun C compiler ended up with
1038
"#define restrict _Restrict" or "#define restrict __restrict__"
1039
in the previous line. This workaround can be removed once
1040
we assume Oracle Developer Studio 12.5 (2016) or later. */
1041
#if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__
1042
# define _Restrict
1043
# define __restrict__
1044
#endif
1045
1046
/* Define to `unsigned int' if <sys/types.h> does not define. */
1047
/* #undef size_t */
Generated on Fri Sep 10 2021 09:15:59 for pacemaker by
1.8.14