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