PageRenderTime 32ms CodeModel.GetById 22ms app.highlight 5ms RepoModel.GetById 1ms app.codeStats 1ms

/src/zziplib/zzip/conf.h

https://bitbucket.org/cabalistic/ogredeps/
C++ Header | 264 lines | 209 code | 26 blank | 29 comment | 42 complexity | d337cb542690352f27ba0b1df87e0f38 MD5 | raw file
  1/*
  2 * Here we postprocess autoconf generated prefix-config.h entries.
  3 * This is generally for things like "off_t" which is left undefined
  4 * in plain config.h if the host system does already have it but we do
  5 * need the prefix variant - so we add here a #define _zzip_off_t off_t
  6 *
  7 * This file is supposed to only carry '#define's.
  8 * See <zzip/types.h> for definitions that might be seen by the compiler.
  9 *
 10 * Author:
 11 *      Guido Draheim <guidod@gmx.de>
 12 *
 13 *      Copyright (c) 2001,2002,2003,2004 Guido Draheim
 14 *          All rights reserved,
 15 *          use under the restrictions of the
 16 *          Lesser GNU General Public License
 17 *          or alternatively the restrictions
 18 *          of the Mozilla Public License 1.1
 19 */
 20
 21#ifndef _ZZIP_CONF_H
 22#define _ZZIP_CONF_H 1
 23
 24#if !defined ZZIP_OMIT_CONFIG_H
 25# if defined _MSC_VER || defined __BORLANDC__ || defined __WATCOMC__ || defined _WIN32
 26# include <zzip/_msvc.h>
 27# elif defined ZZIP_1_H
 28# include "zzip-1.h"
 29# elif defined ZZIP_2_H
 30# include "zzip-2.h"
 31# elif defined ZZIP_3_H
 32# include "zzip-3.h"
 33# elif defined ZZIP_4_H
 34# include "zzip-4.h"
 35# elif defined ZZIP_5_H
 36# include "zzip-5.h"
 37# else /* autoconf generated */
 38# include <zzip/_config.h>
 39# endif
 40#endif
 41
 42/* especially win32 platforms do not declare off_t so far - see zzip-msvc.h */
 43#ifndef _zzip_off_t
 44#ifdef   ZZIP_off_t
 45#define _zzip_off_t ZZIP_off_t
 46#else
 47#define _zzip_off_t off_t
 48#endif
 49#endif
 50
 51#ifndef _zzip_off64_t
 52#ifdef   ZZIP_off64_t
 53#define _zzip_off64_t ZZIP_off64_t
 54#else
 55#define _zzip_off64_t off64_t
 56#endif
 57#endif
 58
 59/* currently unused, all current zziplib-users do have ansi-C94 compilers. */
 60#ifndef _zzip_const
 61#ifdef   ZZIP_const
 62#define _zzip_const ZZIP_const
 63#else
 64#define _zzip_const const
 65#endif
 66#endif
 67#ifndef _zzip_inline
 68#ifdef   ZZIP_inline
 69#define _zzip_inline ZZIP_inline
 70#else
 71#define _zzip_inline inline
 72#endif
 73#endif
 74#ifndef _zzip_restrict
 75#ifdef   ZZIP_restrict
 76#define _zzip_restrict ZZIP_restrict
 77#else
 78#define _zzip_restrict restrict
 79#endif
 80#endif
 81#if defined __linux__ && __GNUC__+0 >= 4
 82#define zzip__new__ __attribute__((malloc))
 83#elif defined __linux__ && __GNUC__+0 >= 3 && __GNUC_MINOR_+0 >= 3
 84#define zzip__new__  __attribute__((malloc))
 85#else
 86#define zzip__new__
 87#endif
 88
 89#ifndef _zzip_size_t
 90#ifdef   ZZIP_size_t
 91#define _zzip_size_t ZZIP_size_t
 92#else
 93#define _zzip_size_t size_t
 94#endif
 95#endif
 96#ifndef _zzip_ssize_t
 97#ifdef   ZZIP_ssize_t
 98#define _zzip_ssize_t ZZIP_ssize_t
 99#else
100#define _zzip_ssize_t ssize_t
101#endif
102#endif
103#ifndef _zzip___int64
104#ifdef   ZZIP___int64
105#define _zzip___int64 ZZIP___int64
106#else
107#define _zzip___int64 long long
108#endif
109#endif
110
111/* whether this library shall use a 64bit off_t largefile variant in 64on32: */
112/* (some exported names must be renamed to avoid bad calls after linking) */
113#if defined ZZIP_LARGEFILE_SENSITIVE
114# if _FILE_OFFSET_BITS+0 == 64
115# define  ZZIP_LARGEFILE_RENAME
116# elif defined  _LARGE_FILES    /* used on older AIX to get at 64bit off_t */
117# define  ZZIP_LARGEFILE_RENAME
118# elif defined  _ZZIP_LARGEFILE /* or simply use this one for zzip64 runs */
119# define  ZZIP_LARGEFILE_RENAME
120# endif
121#endif
122
123/* if the environment did not setup these for 64bit off_t largefile... */
124#ifdef   ZZIP_LARGEFILE_RENAME
125# ifndef      _FILE_OFFSET_BITS
126#  ifdef ZZIP__FILE_OFFSET_BITS /* == 64 */
127#  define     _FILE_OFFSET_BITS ZZIP__FILE_OFFSET_BITS
128#  endif
129# endif
130# ifndef      _LARGE_FILES
131#  ifdef ZZIP__LARGE_FILES /* == 1 */
132#  define     _LARGE_FILES ZZIP__LARGE_FILES
133#  endif
134# endif
135# ifndef      _LARGEFILE_SOURCE
136#  ifdef ZZIP__LARGEFILE_SOURCE /* == 1 */
137#  define     _LARGEFILE_SOURCE ZZIP__LARGEFILE_SOURCE
138#  endif
139# endif
140#endif
141
142#include <errno.h>
143
144/* mingw32msvc errno : would be in winsock.h */
145#ifndef EREMOTE
146#define EREMOTE ESPIPE
147#endif
148
149#ifndef ELOOP
150#if   defined EILSEQ
151#define ELOOP EILSEQ
152#else
153#define ELOOP ENOEXEC
154#endif
155#endif
156
157#if defined __WATCOMC__
158#undef  _zzip_inline
159#define _zzip_inline static
160#endif
161
162#if defined _MSC_VER || defined __WATCOMC__ || defined _WIN32
163#include <io.h>
164#endif
165
166#if defined _MSC_VER || defined _WIN32
167# if !__STDC__
168#  ifndef _zzip_lseek
169#  define _zzip_lseek _lseek
170#  endif
171#  ifndef _zzip_read
172#  define _zzip_read _read
173#  endif
174#  ifndef _zzip_write
175#  define _zzip_write _write
176#  endif
177#      if 0
178#  ifndef _zzip_stat
179#  define _zzip_stat _stat
180#  endif
181#      endif
182# endif /* !__STDC__ */
183#endif
184  /*MSVC*/
185
186#if defined _MSC_VER || defined __WATCOMC__ || defined _WIN32
187#  ifndef strcasecmp
188#  define strcasecmp _stricmp
189#  endif
190#endif
191
192#  ifndef _zzip_lseek
193#  define _zzip_lseek lseek
194#  endif
195
196#  ifndef _zzip_read
197#  define _zzip_read  read
198#  endif
199
200#  ifndef _zzip_write
201#  define _zzip_write  write
202#  endif
203
204#      if 0
205#  ifndef _zzip_stat
206#  define _zzip_stat  stat
207#  endif
208#     endif
209
210
211#if defined ZZIP_EXPORTS || defined ZZIPLIB_EXPORTS
212# undef ZZIP_DLL
213#define ZZIP_DLL 1
214#endif
215
216/* based on zconf.h : */
217/* compile with -DZZIP_DLL for Windows DLL support */
218#if defined ZZIP_DLL
219#  if defined _WINDOWS || defined WINDOWS || defined _WIN32
220/*#  include <windows.h>*/
221#  endif
222#  if !defined _zzip_export && defined _MSC_VER && (defined WIN32 || defined _WIN32)
223#    define _zzip_export __declspec(dllexport) /*WINAPI*/
224#  endif
225#  if !defined _zzip_export && defined __BORLANDC__
226#    if __BORLANDC__ >= 0x0500 && defined WIN32
227#    include <windows.h>
228#    define _zzip_export __declspec(dllexport) /*WINAPI*/
229#    else
230#      if defined _Windows && defined __DLL__
231#      define _zzip_export _export
232#      endif
233#    endif
234#  endif
235#  if !defined _zzip_export && defined __GNUC__
236#    if defined __declspec
237#      define _zzip_export extern __declspec(dllexport)
238#    else
239#      define _zzip_export extern
240#    endif
241#  endif
242#  if !defined _zzip_export && defined __BEOS__
243#    define _zzip_export extern __declspec(export)
244#  endif
245#  if !defined _zzip_export && defined __WATCOMC__
246#    define _zzip_export extern __declspec(dllexport)
247#    define ZEXPORT __syscall
248#    define ZEXTERN extern
249#  endif
250#endif
251
252#if !defined _zzip_export
253#  if defined __GNUC__ /* || !defined HAVE_LIBZZIP */
254#  define _zzip_export extern
255#  elif defined __declspec || (defined _MSC_VER && defined ZZIP_DLL)
256#  define _zzip_export extern __declspec(dllimport)
257#  else
258#  define _zzip_export extern
259#  endif
260#endif
261
262#endif
263
264