1 #ifndef _ZZIP__STDINT_H /* zzip-stdint.h */
2 #define _ZZIP__STDINT_H 1
3 /* this file ensures that we have some kind of typedef declarations for
4    unsigned C9X typedefs. The ISO C 9X: 7.18 Integer types file is stdint.h
5  */
6 
7 #include <zzip/conf.h>
8 
9 /* enforce use of ifdef'd C9X entries in system headers */
10 #define __USE_ANSI 1
11 #define __USE_ISOC9X 1
12 
13 #ifdef ZZIP_HAVE_STDINT_H
14     /* ISO C 9X: 7.18 Integer types <stdint.h> */
15 #include <stdint.h>
16 #elif defined ZZIP_HAVE_SYS_INT_TYPES_H /*solaris*/
17 #include <sys/int_types.h>
18 #elif defined ZZIP_HAVE_INTTYPES_H /*freebsd*/
19 #include <inttypes.h>
20 #else
21     typedef unsigned char uint8_t;      typedef signed char int8_t;
22 
23 # if ZZIP_SIZEOF_INT && ZZIP_SIZEOF_INT == 2
24     typedef unsigned int uint16_t;      typedef signed int int16_t;
25 # elif ZZIP_SIZEOF_SHORT && ZZIP_SIZEOF_SHORT == 2
26     typedef unsigned short uint16_t;    typedef signed short int16_t;
27 # else
28 #   error unable to typedef int16_t from either int or short
29     typedef unsigned short uint16_t;    typedef signed short int16_t;
30 # endif
31 
32 # if defined ZZIP_SIZEOF_INT && ZZIP_SIZEOF_INT == 4
33     typedef unsigned int uint32_t;      typedef signed int int32_t;
34 # elif defined ZZIP_SIZEOF_LONG && ZZIP_SIZEOF_LONG == 4
35     typedef unsigned long uint32_t;     typedef signed long int32_t;
36 # else
37 #   error unable to typedef int32_t from either int or long
38     typedef unsigned long uint32_t;     typedef signed long int32_t;
39 # endif
40 
41 typedef unsigned _zzip___int64 uint64_t; typedef _zzip___int64 int64_t;
42 #endif
43 
44 #endif /*_ZZIP_STDINT_H*/
45 
46