Home | History | Annotate | Download | only in protobuf
      1 /* Modified for Chromium to support stlport and libc++ adaptively */
      2 /* config.h.  Generated from config.h.in by configure.  */
      3 /* config.h.in.  Generated from configure.ac by autoheader.  */
      4 
      5 /* We want to detect which header files to include for the unordered (hash)
      6    collections standardized in C++11 but first introduced as part of TR1.
      7    Specifically, we want to avoid including ext/ headers when using libc++ as
      8    it will generate noisy build warnings.
      9 
     10    We take a several-tier approach. First, attempt to use clang's __has_include
     11    and test for libc++'s configuration header. If that isn't available, include
     12    <new> which will define libc++'s version macro (if using libc++).
     13 
     14    There are no really good alternative headers that do less work. For example,
     15    ciso646 and cstdbool and commonly recommended, but they both have issues.
     16    The first has side effects with MSVC, and the second does not exists on Apple
     17    platforms (the system libstdc++ is too old).
     18 
     19    This dynamic check is necessary to allow using this normally dynamically
     20    generated header with Chromium's many supported build configurations. It
     21    should be expanded to import the right header on other platforms as
     22    desired. */
     23 
     24 #if defined(__has_include)
     25 #if __has_include(<__config>)
     26 #include <__config>
     27 #else // __has_include(<__config>)
     28 #include <new>
     29 #endif // __has_include(<__config>)
     30 #endif // defined(__has_include)
     31 
     32 /* the name of <hash_map> */
     33 #if defined(_LIBCPP_VERSION)
     34 #define HASH_MAP_CLASS unordered_map
     35 #else
     36 #define HASH_MAP_CLASS hash_map
     37 #endif
     38 
     39 /* the location of <unordered_map> or <hash_map> */
     40 #if defined(USE_STLPORT)
     41 #define HASH_MAP_H <hash_map>
     42 #elif defined(_LIBCPP_VERSION)
     43 #define HASH_MAP_H <unordered_map>
     44 #else
     45 #define HASH_MAP_H <ext/hash_map>
     46 #endif
     47 
     48 /* the namespace of hash_map/hash_set */
     49 #if defined(USE_STLPORT) || defined(_LIBCPP_VERSION)
     50 #define HASH_NAMESPACE std
     51 #else
     52 #define HASH_NAMESPACE __gnu_cxx
     53 #endif
     54 
     55 /* the name of <hash_set> */
     56 #if defined(_LIBCPP_VERSION)
     57 #define HASH_SET_CLASS unordered_set
     58 #else
     59 #define HASH_SET_CLASS hash_set
     60 #endif
     61 
     62 /* the location of <unordered_set> or <hash_set> */
     63 #if defined(USE_STLPORT)
     64 #define HASH_SET_H <hash_set>
     65 #elif defined(_LIBCPP_VERSION)
     66 #define HASH_SET_H <unordered_set>
     67 #else
     68 #define HASH_SET_H <ext/hash_set>
     69 #endif
     70 
     71 /* Define to 1 if you have the <dlfcn.h> header file. */
     72 #define HAVE_DLFCN_H 1
     73 
     74 /* Define to 1 if you have the <fcntl.h> header file. */
     75 #define HAVE_FCNTL_H 1
     76 
     77 /* Define to 1 if you have the `ftruncate' function. */
     78 #define HAVE_FTRUNCATE 1
     79 
     80 /* define if the compiler has hash_map */
     81 #define HAVE_HASH_MAP 1
     82 
     83 /* define if the compiler has hash_set */
     84 #define HAVE_HASH_SET 1
     85 
     86 /* Define to 1 if you have the <inttypes.h> header file. */
     87 #define HAVE_INTTYPES_H 1
     88 
     89 /* Define to 1 if you have the <limits.h> header file. */
     90 #define HAVE_LIMITS_H 1
     91 
     92 /* Define to 1 if you have the <memory.h> header file. */
     93 #define HAVE_MEMORY_H 1
     94 
     95 /* Define to 1 if you have the `memset' function. */
     96 #define HAVE_MEMSET 1
     97 
     98 /* Define to 1 if you have the `mkdir' function. */
     99 #define HAVE_MKDIR 1
    100 
    101 /* Define if you have POSIX threads libraries and header files. */
    102 #define HAVE_PTHREAD 1
    103 
    104 /* Define to 1 if you have the <stdint.h> header file. */
    105 #define HAVE_STDINT_H 1
    106 
    107 /* Define to 1 if you have the <stdlib.h> header file. */
    108 #define HAVE_STDLIB_H 1
    109 
    110 /* Define to 1 if you have the `strchr' function. */
    111 #define HAVE_STRCHR 1
    112 
    113 /* Define to 1 if you have the `strerror' function. */
    114 #define HAVE_STRERROR 1
    115 
    116 /* Define to 1 if you have the <strings.h> header file. */
    117 #define HAVE_STRINGS_H 1
    118 
    119 /* Define to 1 if you have the <string.h> header file. */
    120 #define HAVE_STRING_H 1
    121 
    122 /* Define to 1 if you have the `strtol' function. */
    123 #define HAVE_STRTOL 1
    124 
    125 /* Define to 1 if you have the <sys/stat.h> header file. */
    126 #define HAVE_SYS_STAT_H 1
    127 
    128 /* Define to 1 if you have the <sys/types.h> header file. */
    129 #define HAVE_SYS_TYPES_H 1
    130 
    131 /* Define to 1 if you have the <unistd.h> header file. */
    132 #define HAVE_UNISTD_H 1
    133 
    134 /* Enable classes using zlib compression. */
    135 #define HAVE_ZLIB 1
    136 
    137 /* Name of package */
    138 #define PACKAGE "protobuf"
    139 
    140 /* Define to the address where bug reports for this package should be sent. */
    141 #define PACKAGE_BUGREPORT "protobuf (at) googlegroups.com"
    142 
    143 /* Define to the full name of this package. */
    144 #define PACKAGE_NAME "Protocol Buffers"
    145 
    146 /* Define to the full name and version of this package. */
    147 #define PACKAGE_STRING "Protocol Buffers 2.3.0"
    148 
    149 /* Define to the one symbol short name of this package. */
    150 #define PACKAGE_TARNAME "protobuf"
    151 
    152 /* Define to the version of this package. */
    153 #define PACKAGE_VERSION "2.3.0"
    154 
    155 /* Define to necessary symbol if this constant uses a non-standard name on
    156    your system. */
    157 /* #undef PTHREAD_CREATE_JOINABLE */
    158 
    159 /* Define to 1 if you have the ANSI C header files. */
    160 #define STDC_HEADERS 1
    161 
    162 /* Version number of package */
    163 #define VERSION "2.3.0"
    164 
    165 /* Define to 1 if on AIX 3.
    166    System headers sometimes define this.
    167    We just want to avoid a redefinition error message.  */
    168 #ifndef _ALL_SOURCE
    169 /* # undef _ALL_SOURCE */
    170 #endif
    171 
    172 /* Enable GNU extensions on systems that have them.  */
    173 #ifndef _GNU_SOURCE
    174 # define _GNU_SOURCE 1
    175 #endif
    176 
    177 /* Define to 1 if on MINIX. */
    178 /* #undef _MINIX */
    179 
    180 /* Define to 2 if the system does not provide POSIX.1 features except with
    181    this defined. */
    182 /* #undef _POSIX_1_SOURCE */
    183 
    184 /* Define to 1 if you need to in order for `stat' and other things to work. */
    185 /* #undef _POSIX_SOURCE */
    186 
    187 /* Enable extensions on Solaris.  */
    188 #ifndef __EXTENSIONS__
    189 # define __EXTENSIONS__ 1
    190 #endif
    191 #ifndef _POSIX_PTHREAD_SEMANTICS
    192 # define _POSIX_PTHREAD_SEMANTICS 1
    193 #endif
    194 #ifndef _TANDEM_SOURCE
    195 # define _TANDEM_SOURCE 1
    196 #endif
    197