pacemaker  2.1.1-77db578727
Scalable High-Availability cluster resource manager
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 "77db578727"
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/lib/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 corosync-ge-2 generated-manpages lha 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 "/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 "/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 #define HAVE_COROSYNC_CFG_TRACKSTART 1
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 #define HAVE_IPCC_AUTH_GET 1
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 #define HAVE_LIBPILS 1
216 
217 /* Define to 1 if you have the `plumb' library (-lplumb). */
218 #define HAVE_LIBPLUMB 1
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 `nanosleep' function. */
257 #define HAVE_NANOSLEEP 1
258 
259 /* Define to 1 if you have the <ncurses.h> header file. */
260 #define HAVE_NCURSES_H 1
261 
262 /* Define to 1 if you have the <ncurses/ncurses.h> header file. */
263 /* #undef HAVE_NCURSES_NCURSES_H */
264 
265 /* Define to 1 if you have the <netdb.h> header file. */
266 #define HAVE_NETDB_H 1
267 
268 /* Define to 1 if you have the <netinet/in.h> header file. */
269 #define HAVE_NETINET_IN_H 1
270 
271 /* Define to 1 if you have the <netinet/ip.h> header file. */
272 #define HAVE_NETINET_IP_H 1
273 
274 /* Define to 1 if you have the `NoSuchFunctionName' function. */
275 /* #undef HAVE_NOSUCHFUNCTIONNAME */
276 
277 /* Define to 1 if you have the `opendir' function. */
278 #define HAVE_OPENDIR 1
279 
280 /* Define to 1 if libcrypto is used for MD5. */
281 /* #undef HAVE_OPENSSL_MD5 */
282 
283 /* Define to 1 if you have the <openssl/md5.h> header file. */
284 /* #undef HAVE_OPENSSL_MD5_H */
285 
286 /* Define to 1 if you have the <pam/pam_appl.h> header file. */
287 /* #undef HAVE_PAM_PAM_APPL_H */
288 
289 /* Define if libtool can extract symbol lists from object files. */
290 #define HAVE_PRELOADED_SYMBOLS 1
291 
292 /* Define to 1 if you have the <pwd.h> header file. */
293 #define HAVE_PWD_H 1
294 
295 /* Define to 1 if you have the `qb_ipcc_auth_get' function. */
296 #define HAVE_QB_IPCC_AUTH_GET 1
297 
298 /* Define to 1 if you have the `readdir' function. */
299 #define HAVE_READDIR 1
300 
301 /* Define to 1 if you have the `scandir' function. */
302 #define HAVE_SCANDIR 1
303 
304 /* Define to 1 if you have the `sched_setscheduler' function. */
305 #define HAVE_SCHED_SETSCHEDULER 1
306 
307 /* Define to 1 if you have the <security/pam_appl.h> header file. */
308 #define HAVE_SECURITY_PAM_APPL_H 1
309 
310 /* Define if you have the shl_load function. */
311 /* #undef HAVE_SHL_LOAD */
312 
313 /* Define to 1 if sighandler_t is available */
314 /* #undef HAVE_SIGHANDLER_T */
315 
316 /* Define to 1 if you have the <signal.h> header file. */
317 #define HAVE_SIGNAL_H 1
318 
319 /* Define to 1 if you have the <stddef.h> header file. */
320 #define HAVE_STDDEF_H 1
321 
322 /* Define to 1 if you have the <stdint.h> header file. */
323 #define HAVE_STDINT_H 1
324 
325 /* Define to 1 if you have the <stdio.h> header file. */
326 #define HAVE_STDIO_H 1
327 
328 /* Define to 1 if you have the <stdlib.h> header file. */
329 #define HAVE_STDLIB_H 1
330 
331 /* Define to 1 if you have the <stonith/stonith.h> header file. */
332 #define HAVE_STONITH_STONITH_H 1
333 
334 /* Define to 1 if you have the `strchrnul' function. */
335 #define HAVE_STRCHRNUL 1
336 
337 /* Define to 1 if you have the `strerror' function. */
338 #define HAVE_STRERROR 1
339 
340 /* Define to 1 if you have the <strings.h> header file. */
341 #define HAVE_STRINGS_H 1
342 
343 /* Define to 1 if you have the <string.h> header file. */
344 #define HAVE_STRING_H 1
345 
346 /* Define to 1 if you have the `strlcat' function. */
347 /* #undef HAVE_STRLCAT */
348 
349 /* Define to 1 if you have the `strlcpy' function. */
350 /* #undef HAVE_STRLCPY */
351 
352 /* Define to 1 if you have the `strndup' function. */
353 #define HAVE_STRNDUP 1
354 
355 /* Define to 1 if you have the `strnlen' function. */
356 #define HAVE_STRNLEN 1
357 
358 /* Define this if struct dirent has d_type */
359 #define HAVE_STRUCT_DIRENT_D_TYPE 1
360 
361 /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */
362 #define HAVE_STRUCT_TM_TM_GMTOFF 1
363 
364 /* Define to 1 if you have the <sys/dl.h> header file. */
365 /* #undef HAVE_SYS_DL_H */
366 
367 /* Define to 1 if you have the <sys/ioctl.h> header file. */
368 #define HAVE_SYS_IOCTL_H 1
369 
370 /* Define to 1 if you have the <sys/param.h> header file. */
371 #define HAVE_SYS_PARAM_H 1
372 
373 /* Define to 1 if you have the <sys/reboot.h> header file. */
374 #define HAVE_SYS_REBOOT_H 1
375 
376 /* Define to 1 if you have the <sys/resource.h> header file. */
377 #define HAVE_SYS_RESOURCE_H 1
378 
379 /* Define to 1 if you have the <sys/signalfd.h> header file. */
380 #define HAVE_SYS_SIGNALFD_H 1
381 
382 /* Define to 1 if you have the <sys/socket.h> header file. */
383 #define HAVE_SYS_SOCKET_H 1
384 
385 /* Define to 1 if you have the <sys/stat.h> header file. */
386 #define HAVE_SYS_STAT_H 1
387 
388 /* Define to 1 if you have the <sys/time.h> header file. */
389 #define HAVE_SYS_TIME_H 1
390 
391 /* Define to 1 if you have the <sys/types.h> header file. */
392 #define HAVE_SYS_TYPES_H 1
393 
394 /* Define to 1 if you have the <sys/utsname.h> header file. */
395 #define HAVE_SYS_UTSNAME_H 1
396 
397 /* Define to 1 if you have the <sys/wait.h> header file. */
398 #define HAVE_SYS_WAIT_H 1
399 
400 /* Define to 1 if you have the <time.h> header file. */
401 #define HAVE_TIME_H 1
402 
403 /* Define to 1 if you have the <unistd.h> header file. */
404 #define HAVE_UNISTD_H 1
405 
406 /* Define to 1 if you have the `usleep' function. */
407 #define HAVE_USLEEP 1
408 
409 /* Define to 1 if you have the `uuid_unparse' function. */
410 #define HAVE_UUID_UNPARSE 1
411 
412 /* Define to 1 if you have the <uuid/uuid.h> header file. */
413 #define HAVE_UUID_UUID_H 1
414 
415 /* This value is set to 1 to indicate that the system argz facility works */
416 #define HAVE_WORKING_ARGZ 1
417 
418 /* */
419 /* #undef HAVE___PROGNAME */
420 
421 /* Whether enum qb_log_conf supports QB_LOG_CONF_ELLIPSIS */
422 #define HAVE_qb_log_conf_QB_LOG_CONF_ELLIPSIS 1
423 
424 /* Whether enum qb_log_conf supports QB_LOG_CONF_MAX_LINE_LEN */
425 #define HAVE_qb_log_conf_QB_LOG_CONF_MAX_LINE_LEN 1
426 
427 /* Location for CIB secrets */
428 #define LRM_CIBSECRETS_DIR "/var/lib/pacemaker/lrm/secrets"
429 
430 /* Define if the OS needs help to load dependent libraries for dlopen(). */
431 /* #undef LTDL_DLOPEN_DEPLIBS */
432 
433 /* Define to the system default library search path. */
434 #define LT_DLSEARCH_PATH "/lib:/usr/lib:/usr/lib/x86_64-linux-gnu/libfakeroot:/usr/local/lib:/usr/local/lib/x86_64-linux-gnu:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu"
435 
436 /* The archive extension */
437 #define LT_LIBEXT "a"
438 
439 /* The archive prefix */
440 #define LT_LIBPREFIX "lib"
441 
442 /* Define to the extension used for runtime loadable modules, say, ".so". */
443 #define LT_MODULE_EXT ".so"
444 
445 /* Define to the name of the environment variable that determines the run-time
446  module search path. */
447 #define LT_MODULE_PATH_VAR "LD_LIBRARY_PATH"
448 
449 /* Define to the sub-directory where libtool stores uninstalled libraries. */
450 #define LT_OBJDIR ".libs/"
451 
452 /* Define to the shared library suffix, say, ".dylib". */
453 /* #undef LT_SHARED_EXT */
454 
455 /* Define to the shared archive member specification, say "(shr.o)". */
456 /* #undef LT_SHARED_LIB_MEMBER */
457 
458 /* Directory for nagios plugins metadata */
459 #define NAGIOS_METADATA_DIR "/usr/share/nagios/plugins-metadata"
460 
461 /* Directory for nagios plugins */
462 #define NAGIOS_PLUGIN_DIR "/usr/lib/nagios/plugins"
463 
464 /* Define if dlsym() requires a leading underscore in symbol names. */
465 /* #undef NEED_USCORE */
466 
467 /* OCF directories to search for resource agents */
468 #define OCF_RA_PATH "/usr/lib/ocf/resource.d"
469 
470 /* OCF root directory for resource agents and libraries */
471 #define OCF_ROOT_DIR "/usr/lib/ocf"
472 
473 /* Where to keep configuration files like authkey */
474 #define PACEMAKER_CONFIG_DIR "/etc/pacemaker"
475 
476 /* Version number of this Pacemaker build */
477 #define PACEMAKER_VERSION "2.1.1"
478 
479 /* Name of package */
480 #define PACKAGE "pacemaker"
481 
482 /* Define to the address where bug reports for this package should be sent. */
483 #define PACKAGE_BUGREPORT "users@clusterlabs.org"
484 
485 /* Define to the full name of this package. */
486 #define PACKAGE_NAME "pacemaker"
487 
488 /* Define to the full name and version of this package. */
489 #define PACKAGE_STRING "pacemaker 2.1.1"
490 
491 /* Define to the one symbol short name of this package. */
492 #define PACKAGE_TARNAME "pacemaker"
493 
494 /* Define to the home page for this package. */
495 #define PACKAGE_URL "https://ClusterLabs.org/pacemaker/"
496 
497 /* Define to the version of this package. */
498 #define PACKAGE_VERSION "2.1.1"
499 
500 /* GnuTLS cipher priorities */
501 #define PCMK_GNUTLS_PRIORITIES "NORMAL"
502 
503 /* Location for modifiable per-process data */
504 #define PCMK_RUN_DIR "/run"
505 
506 /* Keep certain output compatible with 2.0 release series */
507 /* #undef PCMK__COMPAT_2_0 */
508 
509 /* Default value for concurrent-fencing cluster option */
510 #define PCMK__CONCURRENT_FENCING_DEFAULT "false"
511 
512 /* Location for executable fence agents */
513 #define PCMK__FENCE_BINDIR "/usr/sbin"
514 
515 /* Default value for resource-stickiness resource meta-attribute */
516 #define PCMK__RESOURCE_STICKINESS_DEFAULT 0
517 
518 /* Default value for SBD_SYNC_RESOURCE_STARTUP environment variable */
519 #define PCMK__SBD_SYNC_DEFAULT false
520 
521 /* Where to keep scheduler outputs */
522 #define PE_STATE_DIR "/var/lib/pacemaker/pengine"
523 
524 /* Location for system binaries */
525 #define SBIN_DIR "/usr/sbin"
526 
527 /* The size of `char', as computed by sizeof. */
528 #define SIZEOF_CHAR 1
529 
530 /* The size of `int', as computed by sizeof. */
531 #define SIZEOF_INT 4
532 
533 /* The size of `long', as computed by sizeof. */
534 #define SIZEOF_LONG 8
535 
536 /* The size of `long long', as computed by sizeof. */
537 #define SIZEOF_LONG_LONG 8
538 
539 /* The size of `short', as computed by sizeof. */
540 #define SIZEOF_SHORT 2
541 
542 /* */
543 #define SSCANF_HAS_M 1
544 
545 /* Define to 1 if all of the C90 standard headers exist (not just the ones
546  required in a freestanding environment). This macro is provided for
547  backward compatibility; new code need not use it. */
548 #define STDC_HEADERS 1
549 
550 /* Support CIB secrets */
551 #define SUPPORT_CIBSECRETS 1
552 
553 /* Support the Corosync messaging and membership layer */
554 #define SUPPORT_COROSYNC 1
555 
556 /* Support dbus */
557 #define SUPPORT_DBUS 1
558 
559 /* Support nagios plugins */
560 #define SUPPORT_NAGIOS 1
561 
562 /* Define to 1 if procfs is supported */
563 #define SUPPORT_PROCFS 1
564 
565 /* Support profiling */
566 #define SUPPORT_PROFILING 0
567 
568 /* Support systemd resources */
569 #define SUPPORT_SYSTEMD 1
570 
571 /* Support Upstart resources */
572 #define SUPPORT_UPSTART 0
573 
574 /* Correct format specifier for U32T */
575 #define U32T PRIu32
576 
577 /* Correct format specifier for U64T */
578 #define U64T PRIu64
579 
580 /* Correct format specifier for U64TS */
581 #define U64TS SCNu64
582 
583 /* Define if Unix socket auth method is getpeereid(s, &uid, &gid) */
584 /* #undef US_AUTH_GETPEEREID */
585 
586 /* Define if Unix socket auth method is getpeercred(s, &ucred) */
587 /* #undef US_AUTH_GETPEERUCRED */
588 
589 /* Define if Unix socket auth method is getsockopt(s, SO_PEERCRED,
590  &sockpeercred, ...) */
591 /* #undef US_AUTH_PEERCRED_SOCKPEERCRED */
592 
593 /* Define if Unix socket auth method is getsockopt(s, SO_PEERCRED, &ucred,
594  ...) */
595 #define US_AUTH_PEERCRED_UCRED 1
596 
597 /* Valgrind command */
598 #define VALGRIND_BIN "/usr/bin/valgrind"
599 
600 /* Version number of package */
601 #define VERSION "2.1.1"
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 /* Correct format specifier for X32T */
616 #define X32T PRIx32
617 
618 /* True if the compiler says it groks GNU C version MAJOR.MINOR. */
619 #if defined __GNUC__ && defined __GNUC_MINOR__
620 # define _GL_GNUC_PREREQ(major, minor) \
621  ((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__))
622 #else
623 # define _GL_GNUC_PREREQ(major, minor) 0
624 #endif
625 
626 
627 /* The _Noreturn keyword of C11. */
628 #ifndef _Noreturn
629 # if (defined __cplusplus \
630  && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
631  || (defined _MSC_VER && 1900 <= _MSC_VER)) \
632  && 0)
633  /* [[noreturn]] is not practically usable, because with it the syntax
634  extern _Noreturn void func (...);
635  would not be valid; such a declaration would only be valid with 'extern'
636  and '_Noreturn' swapped, or without the 'extern' keyword. However, some
637  AIX system header files and several gnulib header files use precisely
638  this syntax with 'extern'. */
639 # define _Noreturn [[noreturn]]
640 # elif ((!defined __cplusplus || defined __clang__) \
641  && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
642  || _GL_GNUC_PREREQ (4, 7) \
643  || (defined __apple_build_version__ \
644  ? 6000000 <= __apple_build_version__ \
645  : 3 < __clang_major__ + (5 <= __clang_minor__))))
646  /* _Noreturn works as-is. */
647 # elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C
648 # define _Noreturn __attribute__ ((__noreturn__))
649 # elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
650 # define _Noreturn __declspec (noreturn)
651 # else
652 # define _Noreturn
653 # endif
654 #endif
655 
656 
657 /* Define so that glibc/gnulib argp.h does not typedef error_t. */
658 /* #undef __error_t_defined */
659 
660 /* The _GL_ASYNC_SAFE marker should be attached to functions that are
661  signal handlers (for signals other than SIGABRT, SIGPIPE) or can be
662  invoked from such signal handlers. Such functions have some restrictions:
663  * All functions that it calls should be marked _GL_ASYNC_SAFE as well,
664  or should be listed as async-signal-safe in POSIX
665  <https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
666  section 2.4.3. Note that malloc(), sprintf(), and fwrite(), in
667  particular, are NOT async-signal-safe.
668  * All memory locations (variables and struct fields) that these functions
669  access must be marked 'volatile'. This holds for both read and write
670  accesses. Otherwise the compiler might optimize away stores to and
671  reads from such locations that occur in the program, depending on its
672  data flow analysis. For example, when the program contains a loop
673  that is intended to inspect a variable set from within a signal handler
674  while (!signal_occurred)
675  ;
676  the compiler is allowed to transform this into an endless loop if the
677  variable 'signal_occurred' is not declared 'volatile'.
678  Additionally, recall that:
679  * A signal handler should not modify errno (except if it is a handler
680  for a fatal signal and ends by raising the same signal again, thus
681  provoking the termination of the process). If it invokes a function
682  that may clobber errno, it needs to save and restore the value of
683  errno. */
684 #define _GL_ASYNC_SAFE
685 
686 
687 /* Attributes. */
688 #ifdef __has_attribute
689 # define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)
690 #else
691 # define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr
692 # define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)
693 # define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)
694 # define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3)
695 # define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3)
696 # define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95)
697 # define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1)
698 # define _GL_ATTR_diagnose_if 0
699 # define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3)
700 # define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1)
701 # define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0)
702 # define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7)
703 # define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6)
704 # ifdef _ICC
705 # define _GL_ATTR_may_alias 0
706 # else
707 # define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3)
708 # endif
709 # define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0)
710 # define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)
711 # define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3)
712 # define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)
713 # define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)
714 # define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)
715 # define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96)
716 # define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)
717 # define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0)
718 # define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)
719 # define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
720 #endif
721 
722 
723 #if _GL_HAS_ATTRIBUTE (alloc_size)
724 # define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
725 #else
726 # define _GL_ATTRIBUTE_ALLOC_SIZE(args)
727 #endif
728 
729 #if _GL_HAS_ATTRIBUTE (always_inline)
730 # define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__))
731 #else
732 # define _GL_ATTRIBUTE_ALWAYS_INLINE
733 #endif
734 
735 #if _GL_HAS_ATTRIBUTE (artificial)
736 # define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__))
737 #else
738 # define _GL_ATTRIBUTE_ARTIFICIAL
739 #endif
740 
741 /* Avoid __attribute__ ((cold)) on MinGW; see thread starting at
742  <https://lists.gnu.org/r/emacs-devel/2019-04/msg01152.html>.
743  Also, Oracle Studio 12.6 requires 'cold' not '__cold__'. */
744 #if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__
745 # ifndef __SUNPRO_C
746 # define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__))
747 # else
748 # define _GL_ATTRIBUTE_COLD __attribute__ ((cold))
749 # endif
750 #else
751 # define _GL_ATTRIBUTE_COLD
752 #endif
753 
754 #if _GL_HAS_ATTRIBUTE (const)
755 # define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
756 #else
757 # define _GL_ATTRIBUTE_CONST
758 #endif
759 
760 #if 201710L < __STDC_VERSION__
761 # define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
762 #elif _GL_HAS_ATTRIBUTE (deprecated)
763 # define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__))
764 #else
765 # define _GL_ATTRIBUTE_DEPRECATED
766 #endif
767 
768 #if _GL_HAS_ATTRIBUTE (error)
769 # define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg)))
770 # define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg)))
771 #elif _GL_HAS_ATTRIBUTE (diagnose_if)
772 # define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error")))
773 # define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning")))
774 #else
775 # define _GL_ATTRIBUTE_ERROR(msg)
776 # define _GL_ATTRIBUTE_WARNING(msg)
777 #endif
778 
779 #if _GL_HAS_ATTRIBUTE (externally_visible)
780 # define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible))
781 #else
782 # define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
783 #endif
784 
785 /* FALLTHROUGH is special, because it always expands to something. */
786 #if 201710L < __STDC_VERSION__
787 # define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
788 #elif _GL_HAS_ATTRIBUTE (fallthrough)
789 # define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
790 #else
791 # define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0)
792 #endif
793 
794 #if _GL_HAS_ATTRIBUTE (format)
795 # define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
796 #else
797 # define _GL_ATTRIBUTE_FORMAT(spec)
798 #endif
799 
800 #if _GL_HAS_ATTRIBUTE (leaf)
801 # define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__))
802 #else
803 # define _GL_ATTRIBUTE_LEAF
804 #endif
805 
806 /* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK. */
807 #if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C
808 # define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__))
809 #else
810 # define _GL_ATTRIBUTE_MAY_ALIAS
811 #endif
812 
813 #if 201710L < __STDC_VERSION__
814 # define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
815 #elif _GL_HAS_ATTRIBUTE (unused)
816 # define _GL_ATTRIBUTE_MAYBE_UNUSED __attribute__ ((__unused__))
817 #else
818 # define _GL_ATTRIBUTE_MAYBE_UNUSED
819 #endif
820 /* Earlier spellings of this macro. */
821 #define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
822 #define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED
823 
824 #if _GL_HAS_ATTRIBUTE (malloc)
825 # define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
826 #else
827 # define _GL_ATTRIBUTE_MALLOC
828 #endif
829 
830 #if 201710L < __STDC_VERSION__
831 # define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
832 #elif _GL_HAS_ATTRIBUTE (warn_unused_result)
833 # define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__))
834 #else
835 # define _GL_ATTRIBUTE_NODISCARD
836 #endif
837 
838 #if _GL_HAS_ATTRIBUTE (noinline)
839 # define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__))
840 #else
841 # define _GL_ATTRIBUTE_NOINLINE
842 #endif
843 
844 #if _GL_HAS_ATTRIBUTE (nonnull)
845 # define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args))
846 #else
847 # define _GL_ATTRIBUTE_NONNULL(args)
848 #endif
849 
850 #if _GL_HAS_ATTRIBUTE (nonstring)
851 # define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
852 #else
853 # define _GL_ATTRIBUTE_NONSTRING
854 #endif
855 
856 /* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead. */
857 
858 #if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus
859 # define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__))
860 #else
861 # define _GL_ATTRIBUTE_NOTHROW
862 #endif
863 
864 #if _GL_HAS_ATTRIBUTE (packed)
865 # define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__))
866 #else
867 # define _GL_ATTRIBUTE_PACKED
868 #endif
869 
870 #if _GL_HAS_ATTRIBUTE (pure)
871 # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
872 #else
873 # define _GL_ATTRIBUTE_PURE
874 #endif
875 
876 #if _GL_HAS_ATTRIBUTE (returns_nonnull)
877 # define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__))
878 #else
879 # define _GL_ATTRIBUTE_RETURNS_NONNULL
880 #endif
881 
882 #if _GL_HAS_ATTRIBUTE (sentinel)
883 # define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos))
884 #else
885 # define _GL_ATTRIBUTE_SENTINEL(pos)
886 #endif
887 
888 
889 /* To support C++ as well as C, use _GL_UNUSED_LABEL with trailing ';'. */
890 #if !defined __cplusplus || _GL_GNUC_PREREQ (4, 5)
891 # define _GL_UNUSED_LABEL _GL_ATTRIBUTE_MAYBE_UNUSED
892 #else
893 # define _GL_UNUSED_LABEL
894 #endif
895 
896 
897 /* Define to a type to use for 'error_t' if it is not otherwise available. */
898 /* #undef error_t */
899 
900 /* Please see the Gnulib manual for how to use these macros.
901 
902  Suppress extern inline with HP-UX cc, as it appears to be broken; see
903  <https://lists.gnu.org/r/bug-texinfo/2013-02/msg00030.html>.
904 
905  Suppress extern inline with Sun C in standards-conformance mode, as it
906  mishandles inline functions that call each other. E.g., for 'inline void f
907  (void) { } inline void g (void) { f (); }', c99 incorrectly complains
908  'reference to static identifier "f" in extern inline function'.
909  This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16.
910 
911  Suppress extern inline (with or without __attribute__ ((__gnu_inline__)))
912  on configurations that mistakenly use 'static inline' to implement
913  functions or macros in standard C headers like <ctype.h>. For example,
914  if isdigit is mistakenly implemented via a static inline function,
915  a program containing an extern inline function that calls isdigit
916  may not work since the C standard prohibits extern inline functions
917  from calling static functions (ISO C 99 section 6.7.4.(3).
918  This bug is known to occur on:
919 
920  OS X 10.8 and earlier; see:
921  https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html
922 
923  DragonFly; see
924  http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log
925 
926  FreeBSD; see:
927  https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html
928 
929  OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and
930  for clang but remains for g++; see <https://trac.macports.org/ticket/41033>.
931  Assume DragonFly and FreeBSD will be similar.
932 
933  GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
934  inline semantics, unless -fgnu89-inline is used. It defines a macro
935  __GNUC_STDC_INLINE__ to indicate this situation or a macro
936  __GNUC_GNU_INLINE__ to indicate the opposite situation.
937  GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline
938  semantics but warns, unless -fgnu89-inline is used:
939  warning: C99 inline functions are not supported; using GNU89
940  warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute
941  It defines a macro __GNUC_GNU_INLINE__ to indicate this situation.
942  */
943 #if (((defined __APPLE__ && defined __MACH__) \
944  || defined __DragonFly__ || defined __FreeBSD__) \
945  && (defined __header_inline \
946  ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \
947  && ! defined __clang__) \
948  : ((! defined _DONT_USE_CTYPE_INLINE_ \
949  && (defined __GNUC__ || defined __cplusplus)) \
950  || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \
951  && defined __GNUC__ && ! defined __cplusplus))))
952 # define _GL_EXTERN_INLINE_STDHEADER_BUG
953 #endif
954 #if ((__GNUC__ \
955  ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
956  : (199901L <= __STDC_VERSION__ \
957  && !defined __HP_cc \
958  && !defined __PGI \
959  && !(defined __SUNPRO_C && __STDC__))) \
960  && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
961 # define _GL_INLINE inline
962 # define _GL_EXTERN_INLINE extern inline
963 # define _GL_EXTERN_INLINE_IN_USE
964 #elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \
965  && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
966 # if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__
967  /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */
968 # define _GL_INLINE extern inline __attribute__ ((__gnu_inline__))
969 # else
970 # define _GL_INLINE extern inline
971 # endif
972 # define _GL_EXTERN_INLINE extern
973 # define _GL_EXTERN_INLINE_IN_USE
974 #else
975 # define _GL_INLINE static _GL_UNUSED
976 # define _GL_EXTERN_INLINE static _GL_UNUSED
977 #endif
978 
979 /* In GCC 4.6 (inclusive) to 5.1 (exclusive),
980  suppress bogus "no previous prototype for 'FOO'"
981  and "no previous declaration for 'FOO'" diagnostics,
982  when FOO is an inline function in the header; see
983  <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and
984  <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>. */
985 #if __GNUC__ == 4 && 6 <= __GNUC_MINOR__
986 # if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__
987 # define _GL_INLINE_HEADER_CONST_PRAGMA
988 # else
989 # define _GL_INLINE_HEADER_CONST_PRAGMA \
990  _Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"")
991 # endif
992 # define _GL_INLINE_HEADER_BEGIN \
993  _Pragma ("GCC diagnostic push") \
994  _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \
995  _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \
996  _GL_INLINE_HEADER_CONST_PRAGMA
997 # define _GL_INLINE_HEADER_END \
998  _Pragma ("GCC diagnostic pop")
999 #else
1000 # define _GL_INLINE_HEADER_BEGIN
1001 # define _GL_INLINE_HEADER_END
1002 #endif
1003 
1004 /* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
1005  the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
1006  earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
1007  __APPLE__ && __MACH__ test for Mac OS X.
1008  __APPLE_CC__ tests for the Apple compiler and its version.
1009  __STDC_VERSION__ tests for the C99 mode. */
1010 #if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
1011 # define __GNUC_STDC_INLINE__ 1
1012 #endif
1013 
1014 /* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where
1015  n1 and n2 are expressions without side effects, that evaluate to real
1016  numbers (excluding NaN).
1017  It returns
1018  1 if n1 > n2
1019  0 if n1 == n2
1020  -1 if n1 < n2
1021  The naïve code (n1 > n2 ? 1 : n1 < n2 ? -1 : 0) produces a conditional
1022  jump with nearly all GCC versions up to GCC 10.
1023  This variant (n1 < n2 ? -1 : n1 > n2) produces a conditional with many
1024  GCC versions up to GCC 9.
1025  The better code (n1 > n2) - (n1 < n2) from Hacker's Delight § 2-9
1026  avoids conditional jumps in all GCC versions >= 3.4. */
1027 #define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2)))
1028 
1029 
1030 /* Define to the equivalent of the C99 'restrict' keyword, or to
1031  nothing if this is not supported. Do not define if restrict is
1032  supported directly. */
1033 #define restrict __restrict
1034 /* Work around a bug in older versions of Sun C++, which did not
1035  #define __restrict__ or support _Restrict or __restrict__
1036  even though the corresponding Sun C compiler ended up with
1037  "#define restrict _Restrict" or "#define restrict __restrict__"
1038  in the previous line. This workaround can be removed once
1039  we assume Oracle Developer Studio 12.5 (2016) or later. */
1040 #if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__
1041 # define _Restrict
1042 # define __restrict__
1043 #endif
1044 
1045 /* Define to `unsigned int' if <sys/types.h> does not define. */
1046 /* #undef size_t */