/* config.h.  Generated from config.h.in by configure.  */
/* config.h.in.  Generated from configure.ac by autoheader.  */

/* Define for the AArch64 architecture. */
/* #undef AARCH64 */

/* Define if building universal (internal helper macro) */
/* #undef AC_APPLE_UNIVERSAL_BUILD */

/* Define for the Alpha architecture. */
/* #undef ALPHA */

/* Define for the ARC architecture. */
/* #undef ARC */

/* Define for the ARM architecture. */
/* #undef ARM */

/* SA_RESTORER defined in <asm/signal.h> */
#define ASM_SA_RESTORER 0x04000000

/* SIGRTMIN defined in <asm/signal.h> */
/* #undef ASM_SIGRTMIN */

/* Define for the AVR32 architecture. */
/* #undef AVR32 */

/* Define for the Blackfin architecture. */
/* #undef BFIN */

/* Current copyright year. */
#define COPYRIGHT_YEAR "2017"

/* Define for the CRISv10 architecture. */
/* #undef CRISV10 */

/* Define for the CRISv32 architecture. */
/* #undef CRISV32 */

/* Define to 1 if you want OABI support on ARM EABI. */
#define ENABLE_ARM_OABI 0

/* Define to 1 if you have the `accept4' function. */
#define HAVE_ACCEPT4 1

/* Define to 1 if you have the <asm/cachectl.h> header file. */
/* #undef HAVE_ASM_CACHECTL_H */

/* Define to 1 if you have the <asm/sigcontext.h> header file. */
#define HAVE_ASM_SIGCONTEXT_H 1

/* Define to 1 if you have the <asm/sysmips.h> header file. */
/* #undef HAVE_ASM_SYSMIPS_H */

/* Define to 1 if you have the `be64toh' function. */
/* #undef HAVE_BE64TOH */

/* Define to 1 if you have BLKGETSIZE64. */
#define HAVE_BLKGETSIZE64 1

/* Define to 1 if you have the <bluetooth/bluetooth.h> header file. */
/* #undef HAVE_BLUETOOTH_BLUETOOTH_H */

/* Define to 1 if you have the declaration of `BTRFS_COMPRESS_LZO', and to 0
   if you don't. */
#define HAVE_DECL_BTRFS_COMPRESS_LZO 0

/* Define to 1 if you have the declaration of `BTRFS_COMPRESS_NONE', and to 0
   if you don't. */
#define HAVE_DECL_BTRFS_COMPRESS_NONE 0

/* Define to 1 if you have the declaration of `BTRFS_COMPRESS_ZLIB', and to 0
   if you don't. */
#define HAVE_DECL_BTRFS_COMPRESS_ZLIB 0

/* Define to 1 if you have the declaration of `CTL_ARLAN', and to 0 if you
   don't. */
#define HAVE_DECL_CTL_ARLAN 1

/* Define to 1 if you have the declaration of `CTL_FRV', and to 0 if you
   don't. */
#define HAVE_DECL_CTL_FRV 1

/* Define to 1 if you have the declaration of `CTL_PM', and to 0 if you don't.
   */
#define HAVE_DECL_CTL_PM 1

/* Define to 1 if you have the declaration of `CTL_PROC', and to 0 if you
   don't. */
#define HAVE_DECL_CTL_PROC 1

/* Define to 1 if you have the declaration of `CTL_S390DBF', and to 0 if you
   don't. */
#define HAVE_DECL_CTL_S390DBF 1

/* Define to 1 if you have the declaration of `CTL_SUNRPC', and to 0 if you
   don't. */
#define HAVE_DECL_CTL_SUNRPC 1

/* Define to 1 if you have the declaration of `KERN_ACPI_VIDEO_FLAGS', and to
   0 if you don't. */
#define HAVE_DECL_KERN_ACPI_VIDEO_FLAGS 1

/* Define to 1 if you have the declaration of `KERN_BOOTLOADER_TYPE', and to 0
   if you don't. */
#define HAVE_DECL_KERN_BOOTLOADER_TYPE 1

/* Define to 1 if you have the declaration of `KERN_COMPAT_LOG', and to 0 if
   you don't. */
#define HAVE_DECL_KERN_COMPAT_LOG 1

/* Define to 1 if you have the declaration of `KERN_HZ_TIMER', and to 0 if you
   don't. */
#define HAVE_DECL_KERN_HZ_TIMER 1

/* Define to 1 if you have the declaration of `KERN_IA64_UNALIGNED', and to 0
   if you don't. */
#define HAVE_DECL_KERN_IA64_UNALIGNED 1

/* Define to 1 if you have the declaration of `KERN_MAX_LOCK_DEPTH', and to 0
   if you don't. */
#define HAVE_DECL_KERN_MAX_LOCK_DEPTH 1

/* Define to 1 if you have the declaration of `KERN_NGROUPS_MAX', and to 0 if
   you don't. */
#define HAVE_DECL_KERN_NGROUPS_MAX 1

/* Define to 1 if you have the declaration of `KERN_NMI_WATCHDOG', and to 0 if
   you don't. */
#define HAVE_DECL_KERN_NMI_WATCHDOG 1

/* Define to 1 if you have the declaration of `KERN_PANIC_ON_NMI', and to 0 if
   you don't. */
#define HAVE_DECL_KERN_PANIC_ON_NMI 1

/* Define to 1 if you have the declaration of `KERN_PRINTK_RATELIMIT', and to
   0 if you don't. */
#define HAVE_DECL_KERN_PRINTK_RATELIMIT 1

/* Define to 1 if you have the declaration of `KERN_PRINTK_RATELIMIT_BURST',
   and to 0 if you don't. */
#define HAVE_DECL_KERN_PRINTK_RATELIMIT_BURST 1

/* Define to 1 if you have the declaration of `KERN_PTY', and to 0 if you
   don't. */
#define HAVE_DECL_KERN_PTY 1

/* Define to 1 if you have the declaration of `KERN_RANDOMIZE', and to 0 if
   you don't. */
#define HAVE_DECL_KERN_RANDOMIZE 1

/* Define to 1 if you have the declaration of `KERN_SETUID_DUMPABLE', and to 0
   if you don't. */
#define HAVE_DECL_KERN_SETUID_DUMPABLE 1

/* Define to 1 if you have the declaration of `KERN_SPARC_SCONS_PWROFF', and
   to 0 if you don't. */
#define HAVE_DECL_KERN_SPARC_SCONS_PWROFF 1

/* Define to 1 if you have the declaration of `KERN_SPIN_RETRY', and to 0 if
   you don't. */
#define HAVE_DECL_KERN_SPIN_RETRY 1

/* Define to 1 if you have the declaration of `KERN_UNKNOWN_NMI_PANIC', and to
   0 if you don't. */
#define HAVE_DECL_KERN_UNKNOWN_NMI_PANIC 1

/* Define to 1 if you have the declaration of `LO_FLAGS_AUTOCLEAR', and to 0
   if you don't. */
#define HAVE_DECL_LO_FLAGS_AUTOCLEAR 1

/* Define to 1 if you have the declaration of `LO_FLAGS_DIRECT_IO', and to 0
   if you don't. */
#define HAVE_DECL_LO_FLAGS_DIRECT_IO 1

/* Define to 1 if you have the declaration of `LO_FLAGS_PARTSCAN', and to 0 if
   you don't. */
#define HAVE_DECL_LO_FLAGS_PARTSCAN 1

/* Define to 1 if you have the declaration of `LO_FLAGS_READ_ONLY', and to 0
   if you don't. */
#define HAVE_DECL_LO_FLAGS_READ_ONLY 1

/* Define to 1 if you have the declaration of `LO_FLAGS_USE_AOPS', and to 0 if
   you don't. */
#define HAVE_DECL_LO_FLAGS_USE_AOPS 0

/* Define to 1 if you have the declaration of `NET_CIPSOV4_CACHE_BUCKET_SIZE',
   and to 0 if you don't. */
#define HAVE_DECL_NET_CIPSOV4_CACHE_BUCKET_SIZE 1

/* Define to 1 if you have the declaration of `NET_CIPSOV4_CACHE_ENABLE', and
   to 0 if you don't. */
#define HAVE_DECL_NET_CIPSOV4_CACHE_ENABLE 1

/* Define to 1 if you have the declaration of `NET_CIPSOV4_RBM_OPTFMT', and to
   0 if you don't. */
#define HAVE_DECL_NET_CIPSOV4_RBM_OPTFMT 1

/* Define to 1 if you have the declaration of `NET_CIPSOV4_RBM_STRICTVALID',
   and to 0 if you don't. */
#define HAVE_DECL_NET_CIPSOV4_RBM_STRICTVALID 1

/* Define to 1 if you have the declaration of `NET_CORE_AEVENT_ETIME', and to
   0 if you don't. */
#define HAVE_DECL_NET_CORE_AEVENT_ETIME 1

/* Define to 1 if you have the declaration of `NET_CORE_AEVENT_RSEQTH', and to
   0 if you don't. */
#define HAVE_DECL_NET_CORE_AEVENT_RSEQTH 1

/* Define to 1 if you have the declaration of `NET_CORE_BUDGET', and to 0 if
   you don't. */
#define HAVE_DECL_NET_CORE_BUDGET 1

/* Define to 1 if you have the declaration of `NET_CORE_DESTROY_DELAY', and to
   0 if you don't. */
#define HAVE_DECL_NET_CORE_DESTROY_DELAY 0

/* Define to 1 if you have the declaration of `NET_CORE_WARNINGS', and to 0 if
   you don't. */
#define HAVE_DECL_NET_CORE_WARNINGS 1

/* Define to 1 if you have the declaration of `NET_DCCP', and to 0 if you
   don't. */
#define HAVE_DECL_NET_DCCP 1

/* Define to 1 if you have the declaration of `NET_IPV4_CONF_ARP_ACCEPT', and
   to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_CONF_ARP_ACCEPT 1

/* Define to 1 if you have the declaration of `NET_IPV4_CONF_ARP_ANNOUNCE',
   and to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_CONF_ARP_ANNOUNCE 1

/* Define to 1 if you have the declaration of `NET_IPV4_CONF_ARP_IGNORE', and
   to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_CONF_ARP_IGNORE 1

/* Define to 1 if you have the declaration of `NET_IPV4_CONF_ARP_NOTIFY', and
   to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_CONF_ARP_NOTIFY 1

/* Define to 1 if you have the declaration of
   `NET_IPV4_CONF_FORCE_IGMP_VERSION', and to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_CONF_FORCE_IGMP_VERSION 1

/* Define to 1 if you have the declaration of
   `NET_IPV4_CONF_PROMOTE_SECONDARIES', and to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_CONF_PROMOTE_SECONDARIES 1

/* Define to 1 if you have the declaration of
   `NET_IPV4_ICMP_ERRORS_USE_INBOUND_IFADDR', and to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_ICMP_ERRORS_USE_INBOUND_IFADDR 1

/* Define to 1 if you have the declaration of `NET_IPV4_IGMP_MAX_MSF', and to
   0 if you don't. */
#define HAVE_DECL_NET_IPV4_IGMP_MAX_MSF 1

/* Define to 1 if you have the declaration of `NET_IPV4_IPFRAG_MAX_DIST', and
   to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_IPFRAG_MAX_DIST 1

/* Define to 1 if you have the declaration of
   `NET_IPV4_ROUTE_GC_MIN_INTERVAL_MS', and to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_ROUTE_GC_MIN_INTERVAL_MS 1

/* Define to 1 if you have the declaration of
   `NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS', and to 0 if you don't. */
#define HAVE_DECL_NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS 1

/* Define to 1 if you have the declaration of `NET_IPV6_MLD_MAX_MSF', and to 0
   if you don't. */
#define HAVE_DECL_NET_IPV6_MLD_MAX_MSF 1

/* Define to 1 if you have the declaration of
   `NET_IPV6_ROUTE_GC_MIN_INTERVAL_MS', and to 0 if you don't. */
#define HAVE_DECL_NET_IPV6_ROUTE_GC_MIN_INTERVAL_MS 1

/* Define to 1 if you have the declaration of `NET_IRDA', and to 0 if you
   don't. */
#define HAVE_DECL_NET_IRDA 1

/* Define to 1 if you have the declaration of `NET_LLC', and to 0 if you
   don't. */
#define HAVE_DECL_NET_LLC 1

/* Define to 1 if you have the declaration of `NET_NETFILTER', and to 0 if you
   don't. */
#define HAVE_DECL_NET_NETFILTER 1

/* Define to 1 if you have the declaration of `NET_TCP_ABC', and to 0 if you
   don't. */
#define HAVE_DECL_NET_TCP_ABC 1

/* Define to 1 if you have the declaration of `NET_TCP_ALLOWED_CONG_CONTROL',
   and to 0 if you don't. */
#define HAVE_DECL_NET_TCP_ALLOWED_CONG_CONTROL 1

/* Define to 1 if you have the declaration of `NET_TCP_AVAIL_CONG_CONTROL',
   and to 0 if you don't. */
#define HAVE_DECL_NET_TCP_AVAIL_CONG_CONTROL 1

/* Define to 1 if you have the declaration of `NET_TCP_BASE_MSS', and to 0 if
   you don't. */
#define HAVE_DECL_NET_TCP_BASE_MSS 1

/* Define to 1 if you have the declaration of `NET_TCP_BIC_BETA', and to 0 if
   you don't. */
#define HAVE_DECL_NET_TCP_BIC_BETA 1

/* Define to 1 if you have the declaration of `NET_TCP_CONG_CONTROL', and to 0
   if you don't. */
#define HAVE_DECL_NET_TCP_CONG_CONTROL 1

/* Define to 1 if you have the declaration of `NET_TCP_DEFAULT_WIN_SCALE', and
   to 0 if you don't. */
#define HAVE_DECL_NET_TCP_DEFAULT_WIN_SCALE 1

/* Define to 1 if you have the declaration of `NET_TCP_DMA_COPYBREAK', and to
   0 if you don't. */
#define HAVE_DECL_NET_TCP_DMA_COPYBREAK 1

/* Define to 1 if you have the declaration of `NET_TCP_FRTO_RESPONSE', and to
   0 if you don't. */
#define HAVE_DECL_NET_TCP_FRTO_RESPONSE 1

/* Define to 1 if you have the declaration of `NET_TCP_MAX_SSTHRESH', and to 0
   if you don't. */
#define HAVE_DECL_NET_TCP_MAX_SSTHRESH 1

/* Define to 1 if you have the declaration of `NET_TCP_MODERATE_RCVBUF', and
   to 0 if you don't. */
#define HAVE_DECL_NET_TCP_MODERATE_RCVBUF 1

/* Define to 1 if you have the declaration of `NET_TCP_MTU_PROBING', and to 0
   if you don't. */
#define HAVE_DECL_NET_TCP_MTU_PROBING 1

/* Define to 1 if you have the declaration of `NET_TCP_NO_METRICS_SAVE', and
   to 0 if you don't. */
#define HAVE_DECL_NET_TCP_NO_METRICS_SAVE 1

/* Define to 1 if you have the declaration of `NET_TCP_SLOW_START_AFTER_IDLE',
   and to 0 if you don't. */
#define HAVE_DECL_NET_TCP_SLOW_START_AFTER_IDLE 1

/* Define to 1 if you have the declaration of `NET_TCP_TSO_WIN_DIVISOR', and
   to 0 if you don't. */
#define HAVE_DECL_NET_TCP_TSO_WIN_DIVISOR 1

/* Define to 1 if you have the declaration of `PTRACE_PEEKUSER', and to 0 if
   you don't. */
#define HAVE_DECL_PTRACE_PEEKUSER 1

/* Define to 1 if you have the declaration of `PTRACE_POKEUSER', and to 0 if
   you don't. */
#define HAVE_DECL_PTRACE_POKEUSER 1

/* Define to 1 if you have the declaration of `P_ALL', and to 0 if you don't.
   */
#define HAVE_DECL_P_ALL 1

/* Define to 1 if you have the declaration of `P_CID', and to 0 if you don't.
   */
#define HAVE_DECL_P_CID 0

/* Define to 1 if you have the declaration of `P_GID', and to 0 if you don't.
   */
#define HAVE_DECL_P_GID 0

/* Define to 1 if you have the declaration of `P_LWPID', and to 0 if you
   don't. */
#define HAVE_DECL_P_LWPID 0

/* Define to 1 if you have the declaration of `P_PGID', and to 0 if you don't.
   */
#define HAVE_DECL_P_PGID 1

/* Define to 1 if you have the declaration of `P_PID', and to 0 if you don't.
   */
#define HAVE_DECL_P_PID 1

/* Define to 1 if you have the declaration of `P_PPID', and to 0 if you don't.
   */
#define HAVE_DECL_P_PPID 0

/* Define to 1 if you have the declaration of `P_SID', and to 0 if you don't.
   */
#define HAVE_DECL_P_SID 0

/* Define to 1 if you have the declaration of `P_UID', and to 0 if you don't.
   */
#define HAVE_DECL_P_UID 0

/* Define to 1 if you have the declaration of `sys_errlist', and to 0 if you
   don't. */
#define HAVE_DECL_SYS_ERRLIST 0

/* Define to 1 if you have the declaration of `V4L2_BUF_TYPE_SDR_CAPTURE', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_SDR_CAPTURE 1

/* Define to 1 if you have the declaration of `V4L2_BUF_TYPE_SDR_OUTPUT', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_SDR_OUTPUT 1

/* Define to 1 if you have the declaration of
   `V4L2_BUF_TYPE_SLICED_VBI_CAPTURE', and to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_SLICED_VBI_CAPTURE 1

/* Define to 1 if you have the declaration of
   `V4L2_BUF_TYPE_SLICED_VBI_OUTPUT', and to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_SLICED_VBI_OUTPUT 1

/* Define to 1 if you have the declaration of `V4L2_BUF_TYPE_VBI_CAPTURE', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_VBI_CAPTURE 1

/* Define to 1 if you have the declaration of `V4L2_BUF_TYPE_VBI_OUTPUT', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_VBI_OUTPUT 1

/* Define to 1 if you have the declaration of `V4L2_BUF_TYPE_VIDEO_CAPTURE',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_VIDEO_CAPTURE 1

/* Define to 1 if you have the declaration of
   `V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE', and to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE 1

/* Define to 1 if you have the declaration of `V4L2_BUF_TYPE_VIDEO_OUTPUT',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_VIDEO_OUTPUT 1

/* Define to 1 if you have the declaration of
   `V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE', and to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE 1

/* Define to 1 if you have the declaration of
   `V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY', and to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY 1

/* Define to 1 if you have the declaration of `V4L2_BUF_TYPE_VIDEO_OVERLAY',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_BUF_TYPE_VIDEO_OVERLAY 1

/* Define to 1 if you have the declaration of `V4L2_COLORSPACE_470_SYSTEM_BG',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_COLORSPACE_470_SYSTEM_BG 1

/* Define to 1 if you have the declaration of `V4L2_COLORSPACE_470_SYSTEM_M',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_COLORSPACE_470_SYSTEM_M 1

/* Define to 1 if you have the declaration of `V4L2_COLORSPACE_BT878', and to
   0 if you don't. */
#define HAVE_DECL_V4L2_COLORSPACE_BT878 1

/* Define to 1 if you have the declaration of `V4L2_COLORSPACE_JPEG', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_COLORSPACE_JPEG 1

/* Define to 1 if you have the declaration of `V4L2_COLORSPACE_REC709', and to
   0 if you don't. */
#define HAVE_DECL_V4L2_COLORSPACE_REC709 1

/* Define to 1 if you have the declaration of `V4L2_COLORSPACE_SMPTE170M', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_COLORSPACE_SMPTE170M 1

/* Define to 1 if you have the declaration of `V4L2_COLORSPACE_SMPTE240M', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_COLORSPACE_SMPTE240M 1

/* Define to 1 if you have the declaration of `V4L2_COLORSPACE_SRGB', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_COLORSPACE_SRGB 1

/* Define to 1 if you have the declaration of `V4L2_CTRL_TYPE_BITMASK', and to
   0 if you don't. */
#define HAVE_DECL_V4L2_CTRL_TYPE_BITMASK 1

/* Define to 1 if you have the declaration of `V4L2_CTRL_TYPE_BOOLEAN', and to
   0 if you don't. */
#define HAVE_DECL_V4L2_CTRL_TYPE_BOOLEAN 1

/* Define to 1 if you have the declaration of `V4L2_CTRL_TYPE_BUTTON', and to
   0 if you don't. */
#define HAVE_DECL_V4L2_CTRL_TYPE_BUTTON 1

/* Define to 1 if you have the declaration of `V4L2_CTRL_TYPE_CTRL_CLASS', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_CTRL_TYPE_CTRL_CLASS 1

/* Define to 1 if you have the declaration of `V4L2_CTRL_TYPE_INTEGER', and to
   0 if you don't. */
#define HAVE_DECL_V4L2_CTRL_TYPE_INTEGER 1

/* Define to 1 if you have the declaration of `V4L2_CTRL_TYPE_INTEGER64', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_CTRL_TYPE_INTEGER64 1

/* Define to 1 if you have the declaration of `V4L2_CTRL_TYPE_INTEGER_MENU',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_CTRL_TYPE_INTEGER_MENU 1

/* Define to 1 if you have the declaration of `V4L2_CTRL_TYPE_MENU', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_CTRL_TYPE_MENU 1

/* Define to 1 if you have the declaration of `V4L2_CTRL_TYPE_STRING', and to
   0 if you don't. */
#define HAVE_DECL_V4L2_CTRL_TYPE_STRING 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_ALTERNATE', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_FIELD_ALTERNATE 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_ANY', and to 0 if
   you don't. */
#define HAVE_DECL_V4L2_FIELD_ANY 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_BOTTOM', and to 0 if
   you don't. */
#define HAVE_DECL_V4L2_FIELD_BOTTOM 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_INTERLACED', and to
   0 if you don't. */
#define HAVE_DECL_V4L2_FIELD_INTERLACED 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_INTERLACED_BT', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_FIELD_INTERLACED_BT 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_INTERLACED_TB', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_FIELD_INTERLACED_TB 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_NONE', and to 0 if
   you don't. */
#define HAVE_DECL_V4L2_FIELD_NONE 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_SEQ_BT', and to 0 if
   you don't. */
#define HAVE_DECL_V4L2_FIELD_SEQ_BT 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_SEQ_TB', and to 0 if
   you don't. */
#define HAVE_DECL_V4L2_FIELD_SEQ_TB 1

/* Define to 1 if you have the declaration of `V4L2_FIELD_TOP', and to 0 if
   you don't. */
#define HAVE_DECL_V4L2_FIELD_TOP 1

/* Define to 1 if you have the declaration of `V4L2_FRMIVAL_TYPE_CONTINUOUS',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_FRMIVAL_TYPE_CONTINUOUS 1

/* Define to 1 if you have the declaration of `V4L2_FRMIVAL_TYPE_DISCRETE',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_FRMIVAL_TYPE_DISCRETE 1

/* Define to 1 if you have the declaration of `V4L2_FRMIVAL_TYPE_STEPWISE',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_FRMIVAL_TYPE_STEPWISE 1

/* Define to 1 if you have the declaration of `V4L2_FRMSIZE_TYPE_CONTINUOUS',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_FRMSIZE_TYPE_CONTINUOUS 1

/* Define to 1 if you have the declaration of `V4L2_FRMSIZE_TYPE_DISCRETE',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_FRMSIZE_TYPE_DISCRETE 1

/* Define to 1 if you have the declaration of `V4L2_FRMSIZE_TYPE_STEPWISE',
   and to 0 if you don't. */
#define HAVE_DECL_V4L2_FRMSIZE_TYPE_STEPWISE 1

/* Define to 1 if you have the declaration of `V4L2_MEMORY_DMABUF', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_MEMORY_DMABUF 1

/* Define to 1 if you have the declaration of `V4L2_MEMORY_MMAP', and to 0 if
   you don't. */
#define HAVE_DECL_V4L2_MEMORY_MMAP 1

/* Define to 1 if you have the declaration of `V4L2_MEMORY_OVERLAY', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_MEMORY_OVERLAY 1

/* Define to 1 if you have the declaration of `V4L2_MEMORY_USERPTR', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_MEMORY_USERPTR 1

/* Define to 1 if you have the declaration of `V4L2_PRIORITY_BACKGROUND', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_PRIORITY_BACKGROUND 1

/* Define to 1 if you have the declaration of `V4L2_PRIORITY_INTERACTIVE', and
   to 0 if you don't. */
#define HAVE_DECL_V4L2_PRIORITY_INTERACTIVE 1

/* Define to 1 if you have the declaration of `V4L2_PRIORITY_RECORD', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_PRIORITY_RECORD 1

/* Define to 1 if you have the declaration of `V4L2_PRIORITY_UNSET', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_PRIORITY_UNSET 1

/* Define to 1 if you have the declaration of `V4L2_TUNER_ANALOG_TV', and to 0
   if you don't. */
#define HAVE_DECL_V4L2_TUNER_ANALOG_TV 1

/* Define to 1 if you have the declaration of `V4L2_TUNER_DIGITAL_TV', and to
   0 if you don't. */
#define HAVE_DECL_V4L2_TUNER_DIGITAL_TV 1

/* Define to 1 if you have the declaration of `V4L2_TUNER_RADIO', and to 0 if
   you don't. */
#define HAVE_DECL_V4L2_TUNER_RADIO 1

/* Define to 1 if you have the declaration of `VM_BLOCK_DUMP', and to 0 if you
   don't. */
#define HAVE_DECL_VM_BLOCK_DUMP 1

/* Define to 1 if you have the declaration of `VM_HUGETLB_GROUP', and to 0 if
   you don't. */
#define HAVE_DECL_VM_HUGETLB_GROUP 1

/* Define to 1 if you have the declaration of `VM_LAPTOP_MODE', and to 0 if
   you don't. */
#define HAVE_DECL_VM_LAPTOP_MODE 1

/* Define to 1 if you have the declaration of `VM_LEGACY_VA_LAYOUT', and to 0
   if you don't. */
#define HAVE_DECL_VM_LEGACY_VA_LAYOUT 1

/* Define to 1 if you have the declaration of `VM_MAX_MAP_COUNT', and to 0 if
   you don't. */
#define HAVE_DECL_VM_MAX_MAP_COUNT 1

/* Define to 1 if you have the declaration of `VM_SWAP_TOKEN_TIMEOUT', and to
   0 if you don't. */
#define HAVE_DECL_VM_SWAP_TOKEN_TIMEOUT 1

/* Define to 1 if you have the declaration of `VM_VFS_CACHE_PRESSURE', and to
   0 if you don't. */
#define HAVE_DECL_VM_VFS_CACHE_PRESSURE 1

/* Define to 1 if the system provides dladdr */
#define HAVE_DLADDR 1

/* Define to 1 if you have the <elf.h> header file. */
#define HAVE_ELF_H 1

/* Define to 1 if you have the `fallocate' function. */
#define HAVE_FALLOCATE 1

/* Define to 1 if you have the `fanotify_mark' function. */
/* #undef HAVE_FANOTIFY_MARK */

/* Define to 1 if you have the `fopen64' function. */
#define HAVE_FOPEN64 1

/* Define to 1 if you have the `fork' function. */
#define HAVE_FORK 1

/* Define to 1 if you have the `fputs_unlocked' function. */
/* #undef HAVE_FPUTS_UNLOCKED */

/* Define to 1 if you have the `fstatat' function. */
#define HAVE_FSTATAT 1

/* Define to 1 if you have the `ftruncate' function. */
#define HAVE_FTRUNCATE 1

/* Define to 1 if you have the `futimens' function. */
#define HAVE_FUTIMENS 1

/* Define to 1 if you have the <gnu_stubs> header file. */
/* #undef HAVE_GNU_STUBS */

/* Define to 1 if you have the <gnu/stubs-32.h> header file. */
/* #undef HAVE_GNU_STUBS_32_H */

/* Define to 1 if you have the <gnu/stubs-x32.h> header file. */
/* #undef HAVE_GNU_STUBS_X32_H */

/* Define to 1 if you have the `if_indextoname' function. */
#define HAVE_IF_INDEXTONAME 1

/* Define to 1 if you have the <inttypes.h> header file. */
#define HAVE_INTTYPES_H 1

/* Define to 1 if you have the <libunwind-ptrace.h> header file. */
/* #undef HAVE_LIBUNWIND_PTRACE_H */

/* Define to 1 if you have the <linux/bpf.h> header file. */
#define HAVE_LINUX_BPF_H 1

/* Define to 1 if you have the <linux/bsg.h> header file. */
#define HAVE_LINUX_BSG_H 1

/* Define to 1 if you have the <linux/btrfs.h> header file. */
#define HAVE_LINUX_BTRFS_H 1

/* Define to 1 if you have the <linux/cryptouser.h> header file. */
#define HAVE_LINUX_CRYPTOUSER_H 1

/* Define to 1 if you have the <linux/dm-ioctl.h> header file. */
#define HAVE_LINUX_DM_IOCTL_H 1

/* Define to 1 if you have the <linux/dqblk_xfs.h> header file. */
#define HAVE_LINUX_DQBLK_XFS_H 1

/* Define to 1 if you have the <linux/falloc.h> header file. */
#define HAVE_LINUX_FALLOC_H 1

/* Define to 1 if you have the <linux/fib_rules.h> header file. */
#define HAVE_LINUX_FIB_RULES_H 1

/* Define to 1 if you have the <linux/fiemap.h> header file. */
#define HAVE_LINUX_FIEMAP_H 1

/* Define to 1 if you have the <linux/genetlink.h> header file. */
#define HAVE_LINUX_GENETLINK_H 1

/* Define to 1 if you have the <linux/hiddev.h> header file. */
#define HAVE_LINUX_HIDDEV_H 1

/* Define to 1 if you have the <linux/if_addr.h> header file. */
#define HAVE_LINUX_IF_ADDR_H 1

/* Define to 1 if you have the <linux/if_link.h> header file. */
#define HAVE_LINUX_IF_LINK_H 1

/* Define to 1 if you have the <linux/input.h> header file. */
#define HAVE_LINUX_INPUT_H 1

/* Define to 1 if you have the <linux/ipc.h> header file. */
#define HAVE_LINUX_IPC_H 1

/* Define to 1 if you have the <linux/ip_vs.h> header file. */
#define HAVE_LINUX_IP_VS_H 1

/* Define to 1 if you have the <linux/mmtimer.h> header file. */
#define HAVE_LINUX_MMTIMER_H 1

/* Define to 1 if you have the <linux/mqueue.h> header file. */
#define HAVE_LINUX_MQUEUE_H 1

/* Define to 1 if you have the <linux/msg.h> header file. */
#define HAVE_LINUX_MSG_H 1

/* Define to 1 if you have the <linux/neighbour.h> header file. */
#define HAVE_LINUX_NEIGHBOUR_H 1

/* Define to 1 if you have the <linux/netfilter_arp/arp_tables.h> header file.
   */
#define HAVE_LINUX_NETFILTER_ARP_ARP_TABLES_H 1

/* Define to 1 if you have the <linux/netfilter_bridge/ebtables.h> header
   file. */
#define HAVE_LINUX_NETFILTER_BRIDGE_EBTABLES_H 1

/* Define to 1 if you have the <linux/netfilter_ipv4/ip_tables.h> header file.
   */
#define HAVE_LINUX_NETFILTER_IPV4_IP_TABLES_H 1

/* Define to 1 if you have the <linux/netfilter_ipv6/ip6_tables.h> header
   file. */
#define HAVE_LINUX_NETFILTER_IPV6_IP6_TABLES_H 1

/* Define to 1 if you have the <linux/netfilter/nfnetlink.h> header file. */
#define HAVE_LINUX_NETFILTER_NFNETLINK_H 1

/* Define to 1 if you have the <linux/nsfs.h> header file. */
#define HAVE_LINUX_NSFS_H 1

/* Define to 1 if you have the <linux/perf_event.h> header file. */
#define HAVE_LINUX_PERF_EVENT_H 1

/* Define to 1 if you have the <linux/quota.h> header file. */
#define HAVE_LINUX_QUOTA_H 1

/* Define to 1 if you have the <linux/seccomp.h> header file. */
#define HAVE_LINUX_SECCOMP_H 1

/* Define to 1 if you have the <linux/securebits.h> header file. */
#define HAVE_LINUX_SECUREBITS_H 1

/* Define to 1 if you have the <linux/sem.h> header file. */
#define HAVE_LINUX_SEM_H 1

/* Define to 1 if you have the <linux/shm.h> header file. */
#define HAVE_LINUX_SHM_H 1

/* Define to 1 if you have the <linux/userfaultfd.h> header file. */
#define HAVE_LINUX_USERFAULTFD_H 1

/* Define to 1 if you have the <linux/utsname.h> header file. */
#define HAVE_LINUX_UTSNAME_H 1

/* Define to 1 if you have CFLAG mpers support */
/* #undef HAVE_M32_MPERS */

/* Define to 1 if MPERS_NAME has the type 'struct stat'. */
/* #undef HAVE_M32_STRUCT_STAT */

/* Define to 1 if MPERS_NAME has the type 'struct stat64'. */
/* #undef HAVE_M32_STRUCT_STAT64 */

/* Define to 1 if 'st_mtime_nsec' is a member of MPERS_NAME 'struct stat64'.
   */
/* #undef HAVE_M32_STRUCT_STAT64_ST_MTIME_NSEC */

/* Define to 1 if 'st_mtime_nsec' is a member of MPERS_NAME 'struct stat'. */
/* #undef HAVE_M32_STRUCT_STAT_ST_MTIME_NSEC */

/* Define to 1 if you have the <memory.h> header file. */
#define HAVE_MEMORY_H 1

/* Define to 1 if you have the <mqueue.h> header file. */
/* #undef HAVE_MQUEUE_H */

/* Define to 1 if you have CFLAG mpers support */
/* #undef HAVE_MX32_MPERS */

/* Define to 1 if MPERS_NAME has the type 'struct stat'. */
/* #undef HAVE_MX32_STRUCT_STAT */

/* Define to 1 if MPERS_NAME has the type 'struct stat64'. */
/* #undef HAVE_MX32_STRUCT_STAT64 */

/* Define to 1 if 'st_mtime_nsec' is a member of MPERS_NAME 'struct stat64'.
   */
/* #undef HAVE_MX32_STRUCT_STAT64_ST_MTIME_NSEC */

/* Define to 1 if 'st_mtime_nsec' is a member of MPERS_NAME 'struct stat'. */
/* #undef HAVE_MX32_STRUCT_STAT_ST_MTIME_NSEC */

/* Define to 1 if you have the <netinet/sctp.h> header file. */
/* #undef HAVE_NETINET_SCTP_H */

/* Define to 1 if you have the <netinet/tcp.h> header file. */
#define HAVE_NETINET_TCP_H 1

/* Define to 1 if you have the <netinet/udp.h> header file. */
#define HAVE_NETINET_UDP_H 1

/* Define to 1 if you have the <netipx/ipx.h> header file. */
/* #undef HAVE_NETIPX_IPX_H */

/* Define to 1 if you have the `open64' function. */
#define HAVE_OPEN64 1

/* Define to 1 if you have the `prctl' function. */
#define HAVE_PRCTL 1

/* Define to 1 if you have the `preadv' function. */
#define HAVE_PREADV 1

/* Define to 1 if you have the `process_vm_readv' function. */
#define HAVE_PROCESS_VM_READV 1

/* Define to 1 if the system provides program_invocation_name variable */
/* #undef HAVE_PROGRAM_INVOCATION_NAME */

/* Define to 1 if you have the `pwritev' function. */
#define HAVE_PWRITEV 1

/* Define to 1 if you have the `readahead' function. */
#define HAVE_READAHEAD 1

/* Define to 1 if you have the <scsi/sg.h> header file. */
#define HAVE_SCSI_SG_H 1

/* Define to 1 if `si_overrun' is a member of `siginfo_t'. */
#define HAVE_SIGINFO_T_SI_OVERRUN 1

/* Define to 1 if `si_syscall' is a member of `siginfo_t'. */
#define HAVE_SIGINFO_T_SI_SYSCALL 1

/* Define to 1 if `si_timerid' is a member of `siginfo_t'. */
#define HAVE_SIGINFO_T_SI_TIMERID 1

/* Define to 1 if you have the `signalfd' function. */
#define HAVE_SIGNALFD 1

/* Define to 1 if the system has the type `sig_atomic_t'. */
#define HAVE_SIG_ATOMIC_T 1

/* Define to 1 if you have the <stdint.h> header file. */
#define HAVE_STDINT_H 1

/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1

/* Define to 1 if you have the `stpcpy' function. */
#define HAVE_STPCPY 1

/* Define to 1 if you have the `strerror' function. */
#define HAVE_STRERROR 1

/* Define to 1 if you have the <strings.h> header file. */
#define HAVE_STRINGS_H 1

/* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1

/* Define to 1 if you have the `strndup' function. */
#define HAVE_STRNDUP 1

/* Define to 1 if you have the <stropts.h> header file. */
/* #undef HAVE_STROPTS_H */

/* Define to 1 if you have the `strsignal' function. */
#define HAVE_STRSIGNAL 1

/* Define to 1 if the system has the type `struct blk_user_trace_setup'. */
#define HAVE_STRUCT_BLK_USER_TRACE_SETUP 1

/* Define to 1 if the system has the type `struct br_port_msg'. */
#define HAVE_STRUCT_BR_PORT_MSG 1

/* Define to 1 if `start' is a member of `struct
   btrfs_ioctl_defrag_range_args'. */
#define HAVE_STRUCT_BTRFS_IOCTL_DEFRAG_RANGE_ARGS_START 1

/* Define to 1 if `compat_flags' is a member of `struct
   btrfs_ioctl_feature_flags'. */
#define HAVE_STRUCT_BTRFS_IOCTL_FEATURE_FLAGS_COMPAT_FLAGS 1

/* Define to 1 if `nodesize' is a member of `struct btrfs_ioctl_fs_info_args'.
   */
#define HAVE_STRUCT_BTRFS_IOCTL_FS_INFO_ARGS_NODESIZE 1

/* Define to 1 if `buf_size' is a member of `struct
   btrfs_ioctl_search_args_v2'. */
#define HAVE_STRUCT_BTRFS_IOCTL_SEARCH_ARGS_V2_BUF_SIZE 1

/* Define to 1 if the system has the type `struct crypto_report_aead'. */
#define HAVE_STRUCT_CRYPTO_REPORT_AEAD 1

/* Define to 1 if the system has the type `struct crypto_report_blkcipher'. */
#define HAVE_STRUCT_CRYPTO_REPORT_BLKCIPHER 1

/* Define to 1 if the system has the type `struct crypto_report_cipher'. */
#define HAVE_STRUCT_CRYPTO_REPORT_CIPHER 1

/* Define to 1 if the system has the type `struct crypto_report_hash'. */
#define HAVE_STRUCT_CRYPTO_REPORT_HASH 1

/* Define to 1 if the system has the type `struct crypto_report_rng'. */
#define HAVE_STRUCT_CRYPTO_REPORT_RNG 1

/* Define to 1 if the system has the type `struct dcbmsg'. */
#define HAVE_STRUCT_DCBMSG 1

/* Define to 1 if the system has the type `struct fib_rule_uid_range'. */
#define HAVE_STRUCT_FIB_RULE_UID_RANGE 1

/* Define to 1 if the system has the type `struct flock'. */
#define HAVE_STRUCT_FLOCK 1

/* Define to 1 if the system has the type `struct flock64'. */
#define HAVE_STRUCT_FLOCK64 1

/* Define to 1 if the system has the type `struct ia64_fpreg'. */
/* #undef HAVE_STRUCT_IA64_FPREG */

/* Define to 1 if the system has the type `struct ifaddrlblmsg'. */
#define HAVE_STRUCT_IFADDRLBLMSG 1

/* Define to 1 if the system has the type `struct ifla_bridge_id'. */
#define HAVE_STRUCT_IFLA_BRIDGE_ID 1

/* Define to 1 if the system has the type `struct ifla_port_vsi'. */
#define HAVE_STRUCT_IFLA_PORT_VSI 1

/* Define to 1 if `resolution' is a member of `struct input_absinfo'. */
#define HAVE_STRUCT_INPUT_ABSINFO_RESOLUTION 1

/* Define to 1 if the system has the type `struct keyctl_kdf_params'. */
#define HAVE_STRUCT_KEYCTL_KDF_PARAMS 1

/* Define to 1 if the system has the type `struct mmsghdr'. */
#define HAVE_STRUCT_MMSGHDR 1

/* Define to 1 if the system has the type `struct ndt_config'. */
#define HAVE_STRUCT_NDT_CONFIG 1

/* Define to 1 if the system has the type `struct ndt_stats'. */
#define HAVE_STRUCT_NDT_STATS 1

/* Define to 1 if `ndts_table_fulls' is a member of `struct ndt_stats'. */
#define HAVE_STRUCT_NDT_STATS_NDTS_TABLE_FULLS 1

/* Define to 1 if the system has the type `struct netconfmsg'. */
#define HAVE_STRUCT_NETCONFMSG 1

/* Define to 1 if `aux_watermark' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_AUX_WATERMARK 1

/* Define to 1 if `bp_type' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_BP_TYPE 1

/* Define to 1 if `branch_sample_type' is a member of `struct
   perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_BRANCH_SAMPLE_TYPE 1

/* Define to 1 if `comm_exec' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_COMM_EXEC 1

/* Define to 1 if `config1' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_CONFIG1 1

/* Define to 1 if `config2' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_CONFIG2 1

/* Define to 1 if `context_switch' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_CONTEXT_SWITCH 1

/* Define to 1 if `exclude_callchain_kernel' is a member of `struct
   perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_EXCLUDE_CALLCHAIN_KERNEL 1

/* Define to 1 if `exclude_callchain_user' is a member of `struct
   perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_EXCLUDE_CALLCHAIN_USER 1

/* Define to 1 if `exclude_guest' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_EXCLUDE_GUEST 1

/* Define to 1 if `exclude_host' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_EXCLUDE_HOST 1

/* Define to 1 if `mmap2' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_MMAP2 1

/* Define to 1 if `mmap_data' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_MMAP_DATA 1

/* Define to 1 if `precise_ip' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_PRECISE_IP 1

/* Define to 1 if `sample_id_all' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_SAMPLE_ID_ALL 1

/* Define to 1 if `sample_max_stack' is a member of `struct perf_event_attr'.
   */
#define HAVE_STRUCT_PERF_EVENT_ATTR_SAMPLE_MAX_STACK 1

/* Define to 1 if `sample_regs_intr' is a member of `struct perf_event_attr'.
   */
#define HAVE_STRUCT_PERF_EVENT_ATTR_SAMPLE_REGS_INTR 1

/* Define to 1 if `sample_regs_user' is a member of `struct perf_event_attr'.
   */
#define HAVE_STRUCT_PERF_EVENT_ATTR_SAMPLE_REGS_USER 1

/* Define to 1 if `sample_stack_user' is a member of `struct perf_event_attr'.
   */
#define HAVE_STRUCT_PERF_EVENT_ATTR_SAMPLE_STACK_USER 1

/* Define to 1 if `use_clockid' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_USE_CLOCKID 1

/* Define to 1 if `write_backward' is a member of `struct perf_event_attr'. */
#define HAVE_STRUCT_PERF_EVENT_ATTR_WRITE_BACKWARD 1

/* Define to 1 if the system has the type `struct ptrace_peeksiginfo_args'. */
#define HAVE_STRUCT_PTRACE_PEEKSIGINFO_ARGS 1

/* Define to 1 if the system has the type `struct pt_all_user_regs'. */
/* #undef HAVE_STRUCT_PT_ALL_USER_REGS */

/* Define to 1 if the system has the type `struct rta_mfc_stats'. */
#define HAVE_STRUCT_RTA_MFC_STATS 1

/* Define to 1 if the system has the type `struct rtnl_link_stats64'. */
#define HAVE_STRUCT_RTNL_LINK_STATS64 1

/* Define to 1 if `rx_nohandler' is a member of `struct rtnl_link_stats64'. */
#define HAVE_STRUCT_RTNL_LINK_STATS64_RX_NOHANDLER 1

/* Define to 1 if `rx_nohandler' is a member of `struct rtnl_link_stats'. */
#define HAVE_STRUCT_RTNL_LINK_STATS_RX_NOHANDLER 1

/* Define to 1 if the system has the type `struct rtvia'. */
#define HAVE_STRUCT_RTVIA 1

/* Define to 1 if the system has the type `struct sigcontext'. */
#define HAVE_STRUCT_SIGCONTEXT 1

/* Define to 1 if the system has the type `struct stat64'. */
/* #undef HAVE_STRUCT_STAT64 */

/* Define to 1 if `st_mtime_nsec' is a member of `struct stat64'. */
/* #undef HAVE_STRUCT_STAT64_ST_MTIME_NSEC */

/* Define to 1 if the system has the type `struct statfs'. */
#define HAVE_STRUCT_STATFS 1

/* Define to 1 if the system has the type `struct statfs64'. */
#define HAVE_STRUCT_STATFS64 1

/* Define to 1 if `f_flags' is a member of `struct statfs64'. */
#define HAVE_STRUCT_STATFS64_F_FLAGS 1

/* Define to 1 if `f_frsize' is a member of `struct statfs64'. */
#define HAVE_STRUCT_STATFS64_F_FRSIZE 1

/* Define to 1 if `f_fsid.val' is a member of `struct statfs64'. */
#define HAVE_STRUCT_STATFS64_F_FSID_VAL 1

/* Define to 1 if `f_fsid.__val' is a member of `struct statfs64'. */
/* #undef HAVE_STRUCT_STATFS64_F_FSID___VAL */

/* Define to 1 if `f_flags' is a member of `struct statfs'. */
#define HAVE_STRUCT_STATFS_F_FLAGS 1

/* Define to 1 if `f_frsize' is a member of `struct statfs'. */
#define HAVE_STRUCT_STATFS_F_FRSIZE 1

/* Define to 1 if `f_fsid.val' is a member of `struct statfs'. */
#define HAVE_STRUCT_STATFS_F_FSID_VAL 1

/* Define to 1 if `f_fsid.__val' is a member of `struct statfs'. */
/* #undef HAVE_STRUCT_STATFS_F_FSID___VAL */

/* Define to 1 if `st_mtime_nsec' is a member of `struct stat'. */
#define HAVE_STRUCT_STAT_ST_MTIME_NSEC 1

/* Define to 1 if `tai' is a member of `struct timex'. */
#define HAVE_STRUCT_TIMEX_TAI 1

/* Define to 1 if the system has the type `struct user_desc'. */
/* #undef HAVE_STRUCT_USER_DESC */

/* Define to 1 if `domainname' is a member of `struct utsname'. */
#define HAVE_STRUCT_UTSNAME_DOMAINNAME 1

/* Define to 1 if `buffersize' is a member of `struct v4l2_sdr_format'. */
#define HAVE_STRUCT_V4L2_SDR_FORMAT_BUFFERSIZE 1

/* Define to 1 if `global_alpha' is a member of `struct v4l2_window'. */
#define HAVE_STRUCT_V4L2_WINDOW_GLOBAL_ALPHA 1

/* Define to 1 if the system has the type `struct __kernel_flock'. */
/* #undef HAVE_STRUCT___KERNEL_FLOCK */

/* Define to 1 if the system has the type `struct __kernel_flock64'. */
/* #undef HAVE_STRUCT___KERNEL_FLOCK64 */

/* Define to 1 if the system has the type `struct __old_kernel_stat'. */
/* #undef HAVE_STRUCT___OLD_KERNEL_STAT */

/* Define to 1 if you have the `sync_file_range' function. */
#define HAVE_SYNC_FILE_RANGE 1

/* Define to 1 if you have the <sys/conf.h> header file. */
/* #undef HAVE_SYS_CONF_H */

/* Define to 1 if you have the <sys/eventfd.h> header file. */
#define HAVE_SYS_EVENTFD_H 1

/* Define to 1 if you have the <sys/fanotify.h> header file. */
/* #undef HAVE_SYS_FANOTIFY_H */

/* Define to 1 if you have the <sys/ipc.h> header file. */
#define HAVE_SYS_IPC_H 1

/* Define to 1 if you have the <sys/msg.h> header file. */
#define HAVE_SYS_MSG_H 1

/* Define to 1 if you have the <sys/quota.h> header file. */
#define HAVE_SYS_QUOTA_H 1

/* Define to 1 if you have the <sys/reg.h> header file. */
#define HAVE_SYS_REG_H 1

/* Define to 1 if you have the <sys/sem.h> header file. */
#define HAVE_SYS_SEM_H 1

/* Define to 1 if you have the <sys/shm.h> header file. */
#define HAVE_SYS_SHM_H 1

/* Define to 1 if you have the <sys/signalfd.h> header file. */
#define HAVE_SYS_SIGNALFD_H 1

/* Define to 1 if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1

/* Define to 1 if you have the <sys/types.h> header file. */
#define HAVE_SYS_TYPES_H 1

/* Define to 1 if you have the <sys/xattr.h> header file. */
#define HAVE_SYS_XATTR_H 1

/* Define to 1 if typeof works with your compiler. */
#define HAVE_TYPEOF 1

/* Define to 1 if attr_text initialization works */
#define HAVE_UNION_BPF_ATTR_ATTACH_FLAGS 1

/* Define to 1 if attr_text initialization works */
#define HAVE_UNION_BPF_ATTR_BPF_FD 1

/* Define to 1 if attr_text initialization works */
#define HAVE_UNION_BPF_ATTR_FLAGS 1

/* Define to 1 if attr_text initialization works */
#define HAVE_UNION_BPF_ATTR_INNER_MAP_FD 1

/* Define to 1 if attr_text initialization works */
#define HAVE_UNION_BPF_ATTR_PROG_FLAGS 1

/* Define to 1 if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1

/* Define to 1 if you have the <ustat.h> header file. */
/* #undef HAVE_USTAT_H */

/* Define to 1 if you have the `utimensat' function. */
#define HAVE_UTIMENSAT 1

/* Define to 1 if the system provides __builtin_popcount function */
#define HAVE___BUILTIN_POPCOUNT 1

/* Define to 1 if the system has the type `__kernel_long_t'. */
#define HAVE___KERNEL_LONG_T 1

/* Define to 1 if the system has the type `__kernel_ulong_t'. */
#define HAVE___KERNEL_ULONG_T 1

/* Define for the HPPA architecture. */
/* #undef HPPA */

/* Define for the i386 architecture. */
/* #undef I386 */

/* Define for the IA64 architecture. */
/* #undef IA64 */

/* Define for _ABIN32. */
/* #undef LINUX_MIPSN32 */

/* Define for _ABI64. */
/* #undef LINUX_MIPSN64 */

/* Define for _ABIO32. */
/* #undef LINUX_MIPSO32 */

/* Define for the m68k architecture. */
/* #undef M68K */

/* Date */
#define MANPAGE_DATE "2017-08-28"

/* Define for the Meta architecture. */
/* #undef METAG */

/* Define for the MicroBlaze architecture. */
/* #undef MICROBLAZE */

/* Define for the MIPS architecture. */
/* #undef MIPS */

/* Define for the Nios-II architecture. */
/* #undef NIOS2 */

/* Define for the OpenRISC 1000 architecture. */
/* #undef OR1K */

/* Name of package */
#define PACKAGE "strace"

/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT "strace-devel@lists.sourceforge.net"

/* Define to the full name of this package. */
#define PACKAGE_NAME "strace"

/* Define to the full name and version of this package. */
#define PACKAGE_STRING "strace 4.19"

/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "strace"

/* Define to the home page for this package. */
#define PACKAGE_URL "https://strace.io"

/* Define to the version of this package. */
#define PACKAGE_VERSION "4.19"

/* Define for the PowerPC architecture. */
/* #undef POWERPC */

/* Define for the PowerPC64 architecture. */
/* #undef POWERPC64 */

/* Define for the RISC-V architecture */
/* #undef RISCV */

/* Define for the S390 architecture. */
/* #undef S390 */

/* Define for the S390x architecture. */
/* #undef S390X */

/* Define for the SH architecture. */
/* #undef SH */

/* Define for the SH64 architecture. */
/* #undef SH64 */

/* The size of `kernel_long_t', as computed by sizeof. */

/* The size of `long', as computed by sizeof. */

/* The size of `long long', as computed by sizeof. */

/* The size of `off_t', as computed by sizeof. */

/* The size of `struct i64_i32', as computed by sizeof. */
#define SIZEOF_STRUCT_I64_I32 16

/* Define for the SPARC architecture. */
/* #undef SPARC */

/* Define for the SPARC64 architecture. */
/* #undef SPARC64 */

/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1

/* Define for the Tile architecture */
/* #undef TILE */

/* Compile stack tracing functionality */
/* #undef USE_LIBUNWIND */

/* Enable extensions on AIX 3, Interix.  */
#ifndef _ALL_SOURCE
# define _ALL_SOURCE 1
#endif
/* Enable GNU extensions on systems that have them.  */
#ifndef _GNU_SOURCE
# define _GNU_SOURCE 1
#endif
/* Enable threading extensions on Solaris.  */
#ifndef _POSIX_PTHREAD_SEMANTICS
# define _POSIX_PTHREAD_SEMANTICS 1
#endif
/* Enable extensions on HP NonStop.  */
#ifndef _TANDEM_SOURCE
# define _TANDEM_SOURCE 1
#endif
/* Enable general extensions on Solaris.  */
#ifndef __EXTENSIONS__
# define __EXTENSIONS__ 1
#endif


/* Version number of package */
#define VERSION "4.19"

/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
   significant byte first (like Motorola and SPARC, unlike Intel). */
#if defined AC_APPLE_UNIVERSAL_BUILD
# if defined __BIG_ENDIAN__
#  define WORDS_BIGENDIAN 1
# endif
#else
# ifndef WORDS_BIGENDIAN
/* #  undef WORDS_BIGENDIAN */
# endif
#endif

/* Define for the 32bit AMD x86-64 architecture. */
/* #undef X32 */

/* Define for the 64bit AMD x86-64 architecture. */
/* #undef X86_64 */

/* Define for the Xtensa architecture */
/* #undef XTENSA */

/* Define to 1 if on MINIX. */
/* #undef _MINIX */

/* Define to 2 if the system does not provide POSIX.1 features except with
   this defined. */
/* #undef _POSIX_1_SOURCE */

/* Define to 1 if you need to in order for `stat' and other things to work. */
/* #undef _POSIX_SOURCE */

/* Define to `int' if <sys/types.h> doesn't define. */
/* #undef gid_t */

/* Define to __typeof__ if your compiler spells it that way. */
/* #undef typeof */

/* Define to `int' if <sys/types.h> doesn't define. */
/* #undef uid_t */
