Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
6725 siemargl 1
/*
2
  Copyright (c) 1990-2009 Info-ZIP.  All rights reserved.
3
 
4
  See the accompanying file LICENSE, version 2009-Jan-02 or later
5
  (the contents of which are also included in unzip.h) for terms of use.
6
  If, for some reason, all these files are missing, the Info-ZIP license
7
  also may be found at:  ftp://ftp.info-zip.org/pub/infozip/license.html
8
*/
9
/*---------------------------------------------------------------------------
10
    Unix specific configuration section:
11
  ---------------------------------------------------------------------------*/
12
 
13
#ifndef __unxcfg_h
14
#define __unxcfg_h
15
 
16
 
17
/* LARGE FILE SUPPORT - 10/6/04 EG */
18
/* This needs to be set before the includes so they set the right sizes */
19
 
20
#if (defined(NO_LARGE_FILE_SUPPORT) && defined(LARGE_FILE_SUPPORT))
21
#  undef LARGE_FILE_SUPPORT
22
#endif
23
 
24
/* Automatically set ZIP64_SUPPORT if LFS */
25
#ifdef LARGE_FILE_SUPPORT
26
# if (!defined(NO_ZIP64_SUPPORT) && !defined(ZIP64_SUPPORT))
27
#   define ZIP64_SUPPORT
28
# endif
29
#endif
30
 
31
/* NO_ZIP64_SUPPORT takes preceedence over ZIP64_SUPPORT */
32
#if defined(NO_ZIP64_SUPPORT) && defined(ZIP64_SUPPORT)
33
#  undef ZIP64_SUPPORT
34
#endif
35
 
36
#ifdef LARGE_FILE_SUPPORT
37
  /* 64-bit Large File Support */
38
 
39
  /* The following Large File Summit (LFS) defines turn on large file support
40
     on Linux (probably 2.4 or later kernel) and many other unixen */
41
 
42
  /* These have to be before any include that sets types so the large file
43
     versions of the types are set in the includes */
44
 
45
# define _LARGEFILE_SOURCE      /* some OSes need this for fseeko */
46
# define _LARGEFILE64_SOURCE
47
# define _FILE_OFFSET_BITS 64   /* select default interface as 64 bit */
48
# define _LARGE_FILES           /* some OSes need this for 64-bit off_t */
49
# define __USE_LARGEFILE64
50
#endif /* LARGE_FILE_SUPPORT */
51
 
52
 
53
#include           /* off_t, time_t, dev_t, ... */
54
#include 
55
 
56
#ifdef NO_OFF_T
57
  typedef long zoff_t;
58
#else
59
  typedef off_t zoff_t;
60
#endif
61
#define ZOFF_T_DEFINED
62
typedef struct stat z_stat;
63
#define Z_STAT_DEFINED
64
 
65
#ifndef COHERENT
66
#  include             /* O_BINARY for open() w/o CR/LF translation */
67
#else /* COHERENT */
68
#  ifdef _I386
69
#    include           /* Coherent 4.0.x, Mark Williams C */
70
#  else
71
#    include       /* Coherent 3.10, Mark Williams C */
72
#  endif
73
#  define SHORT_SYMS
74
#  ifndef __COHERENT__          /* Coherent 4.2 has tzset() */
75
#    define tzset  settz
76
#  endif
77
#endif /* ?COHERENT */
78
 
79
#ifndef NO_PARAM_H
80
#  ifdef NGROUPS_MAX
81
#    undef NGROUPS_MAX      /* SCO bug:  defined again in  */
82
#  endif
83
#  ifdef BSD
84
#    define TEMP_BSD        /* may be defined again in  */
85
#    undef BSD
86
#  endif
87
#  include     /* conflict with , some systems? */
88
#  ifdef TEMP_BSD
89
#    undef TEMP_BSD
90
#    ifndef BSD
91
#      define BSD
92
#    endif
93
#  endif
94
#endif /* !NO_PARAM_H */
95
 
96
#ifdef __osf__
97
#  define DIRENT
98
#  ifdef BSD
99
#    undef BSD
100
#  endif
101
#endif /* __osf__ */
102
 
103
#ifdef __CYGWIN__
104
#  include 
105
#  define DIRENT
106
#  define HAVE_TERMIOS_H
107
#  ifndef timezone
108
#    define timezone _timezone
109
#  endif
110
#endif
111
 
112
#ifdef BSD
113
#  include 
114
#  include 
115
#  if (defined(_AIX) || defined(__GLIBC__) || defined(__GNU__))
116
#    include 
117
#  endif
118
#else
119
#  include 
120
   struct tm *gmtime(), *localtime();
121
#endif
122
 
123
#if (defined(BSD4_4) || (defined(SYSV) && defined(MODERN)))
124
#  include            /* this includes utime.h on SGIs */
125
#  if (defined(BSD4_4) || defined(linux) || defined(__GLIBC__))
126
#    include 
127
#    define GOT_UTIMBUF
128
#  endif
129
#  if (!defined(GOT_UTIMBUF) && (defined(__hpux) || defined(__SUNPRO_C)))
130
#    include 
131
#    define GOT_UTIMBUF
132
#  endif
133
#  if (!defined(GOT_UTIMBUF) && defined(__GNU__))
134
#    include 
135
#    define GOT_UTIMBUF
136
#  endif
137
#endif
138
#if (defined(__DGUX__) && !defined(GOT_UTIMBUF))
139
   /* DG/UX requires this because of a non-standard struct utimebuf */
140
#  include 
141
#  define GOT_UTIMBUF
142
#endif
143
 
144
#if (defined(V7) || defined(pyr_bsd))
145
#  define strchr   index
146
#  define strrchr  rindex
147
#endif
148
#ifdef V7
149
#  define O_RDONLY 0
150
#  define O_WRONLY 1
151
#  define O_RDWR   2
152
#endif
153
 
154
#if defined(NO_UNICODE_SUPPORT) && defined(UNICODE_SUPPORT)
155
   /* disable Unicode (UTF-8) support when requested */
156
#  undef UNICODE_SUPPORT
157
#endif
158
 
159
#if (defined(_MBCS) && defined(NO_MBCS))
160
   /* disable MBCS support when requested */
161
#  undef _MBCS
162
#endif
163
 
164
#if (!defined(NO_SETLOCALE) && !defined(_MBCS))
165
# if (!defined(UNICODE_SUPPORT) || !defined(UTF8_MAYBE_NATIVE))
166
   /* enable setlocale here, unless this happens later for UTF-8 and/or
167
    * MBCS support */
168
#  include 
169
#  ifndef SETLOCALE
170
#    define SETLOCALE(category, locale) setlocale(category, locale)
171
#  endif
172
# endif
173
#endif
174
#ifndef NO_SETLOCALE
175
# if (!defined(NO_WORKING_ISPRINT) && !defined(HAVE_WORKING_ISPRINT))
176
   /* enable "enhanced" unprintable chars detection in fnfilter() */
177
#  define HAVE_WORKING_ISPRINT
178
# endif
179
#endif
180
 
181
#ifdef MINIX
182
#  include 
183
#endif
184
#if (!defined(HAVE_STRNICMP) & !defined(NO_STRNICMP))
185
#  define NO_STRNICMP
186
#endif
187
#ifndef DATE_FORMAT
188
#  define DATE_FORMAT DF_MDY    /* GRR:  customize with locale.h somehow? */
189
#endif
190
#define lenEOL          1
191
#ifdef EBCDIC
192
#  define PutNativeEOL  *q++ = '\n';
193
#else
194
#  define PutNativeEOL  *q++ = native(LF);
195
#endif
196
#define SCREENSIZE(ttrows, ttcols)  screensize(ttrows, ttcols)
197
#define SCREENWIDTH     80
198
#define SCREENLWRAP     1
199
#define USE_EF_UT_TIME
200
#if (!defined(NO_LCHOWN) || !defined(NO_LCHMOD))
201
#  define SET_SYMLINK_ATTRIBS
202
#endif
203
#ifdef MTS
204
#  ifdef SET_DIR_ATTRIB
205
#    undef SET_DIR_ATTRIB
206
#  endif
207
#else /* !MTS */
208
#  define SET_DIR_ATTRIB
209
#  if (!defined(NOTIMESTAMP) && !defined(TIMESTAMP))   /* GRR 970513 */
210
#    define TIMESTAMP
211
#  endif
212
#  define RESTORE_UIDGID
213
#endif /* ?MTS */
214
 
215
/* Static variables that we have to add to Uz_Globs: */
216
#define SYSTEM_SPECIFIC_GLOBALS \
217
    int created_dir, renamed_fullpath;\
218
    char *rootpath, *buildpath, *end;\
219
    ZCONST char *wildname;\
220
    char *dirname, matchname[FILNAMSIZ];\
221
    int rootlen, have_dirname, dirnamelen, notfirstcall;\
222
    zvoid *wild_dir;
223
 
224
/* created_dir, and renamed_fullpath are used by both mapname() and    */
225
/*    checkdir().                                                      */
226
/* rootlen, rootpath, buildpath and end are used by checkdir().        */
227
/* wild_dir, dirname, wildname, matchname[], dirnamelen, have_dirname, */
228
/*    and notfirstcall are used by do_wild().                          */
229
 
230
#endif /* !__unxcfg_h */