18 #ifndef MAGICKCORE_NT_BASE_H
19 #define MAGICKCORE_NT_BASE_H
24 #if defined(__cplusplus) || defined(c_plusplus)
28 #if defined(MAGICKCORE_WINDOWS_SUPPORT)
30 #define WIN32_LEAN_AND_MEAN
32 #if !defined(_CRT_SECURE_NO_DEPRECATE)
33 # define _CRT_SECURE_NO_DEPRECATE 1
43 #include <sys/utime.h>
44 #if defined(_DEBUG) && !defined(__MINGW32__)
48 #define PROT_READ 0x01
49 #define PROT_WRITE 0x02
50 #define MAP_SHARED 0x01
51 #define MAP_PRIVATE 0x02
52 #define MAP_ANONYMOUS 0x20
57 #define _SC_PAGE_SIZE 1
58 #define _SC_PHYS_PAGES 2
59 #define _SC_OPEN_MAX 3
60 #if !defined(SSIZE_MAX)
62 # define SSIZE_MAX LLONG_MAX
64 # define SSIZE_MAX LONG_MAX
83 # if defined(__BORLANDC__)
84 # define chsize(file,length) chsize(file,length)
86 # define chsize(file,length) _chsize(file,length)
91 #if defined(_VISUALC_) && (_MSC_VER >= 1400)
92 # define access(path,mode) _access_s(path,mode)
101 #if !defined(closedir)
102 # define closedir(directory) NTCloseDirectory(directory)
105 # define fdopen _fdopen
108 # define fileno _fileno
110 #if !defined(freelocale)
111 # define freelocale _free_locale
113 #if !defined(fseek) && !defined(__MINGW32__)
114 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
115 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
116 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
117 # define fseek _fseeki64
120 #if !defined(fstat) && !defined(__BORLANDC__)
121 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
122 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
123 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
124 # define fstat _fstati64
126 # define fstat _fstat
130 # define fsync _commit
132 #if !defined(ftell) && !defined(__MINGW32__)
133 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
134 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
135 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
136 # define ftell _ftelli64
139 #if !defined(ftruncate)
140 # define ftruncate(file,length) NTTruncateFile(file,length)
143 # define getcwd _getcwd
146 # define getpid _getpid
149 # define hypot _hypot
152 # define inline __inline
155 # define isatty _isatty
157 #if !defined(locale_t)
158 #define locale_t _locale_t
160 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
161 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
162 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
164 # define lseek _lseeki64
168 # define lseek _lseek
171 #if !defined(MAGICKCORE_LTDL_DELEGATE)
172 #if !defined(lt_dlclose)
173 # define lt_dlclose(handle) NTCloseLibrary(handle)
175 #if !defined(lt_dlerror)
176 # define lt_dlerror() NTGetLibraryError()
178 #if !defined(lt_dlexit)
179 # define lt_dlexit() NTExitLibrary()
181 #if !defined(lt_dlinit)
182 # define lt_dlinit() NTInitializeLibrary()
184 #if !defined(lt_dlopen)
185 # define lt_dlopen(filename) NTOpenLibrary(filename)
187 #if !defined(lt_dlsetsearchpath)
188 # define lt_dlsetsearchpath(path) NTSetSearchPath(path)
190 #if !defined(lt_dlsym)
191 # define lt_dlsym(handle,name) NTGetLibrarySymbol(handle,name)
195 # define mkdir _mkdir
198 # define MAGICKCORE_HAVE_MMAP 1
199 # define mmap(address,length,protection,access,file,offset) \
200 NTMapMemory(address,length,protection,access,file,offset)
203 # define munmap(address,length) NTUnmapMemory(address,length)
205 #if !defined(opendir)
206 # define opendir(directory) NTOpenDirectory(directory)
212 # define pclose _pclose
215 # define popen _popen
217 #if !defined(fprintf_l)
218 #define fprintf_l _fprintf_s_l
221 # define read(fd,buffer,count) _read(fd,buffer,(unsigned int) count)
223 #if !defined(readdir)
224 # define readdir(directory) NTReadDirectory(directory)
226 #if !defined(setmode)
227 # define setmode _setmode
229 #if !defined(spawnvp)
230 # define spawnvp _spawnvp
232 #if !defined(strtod_l)
233 #define strtod_l _strtod_l
235 #if !defined(stat) && !defined(__BORLANDC__)
236 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
237 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
238 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
239 # define stat _stati64
244 #if !defined(strcasecmp)
245 # define strcasecmp _stricmp
247 #if !defined(strncasecmp)
248 # define strncasecmp _strnicmp
250 #if !defined(sysconf)
251 # define sysconf(name) NTSystemConfiguration(name)
252 # define MAGICKCORE_HAVE_SYSCONF 1
254 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
255 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
256 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
257 # define tell _telli64
261 #if !defined(tempnam)
262 # define tempnam _tempnam_s
264 #if !defined(tolower_l)
265 #define tolower_l _tolower_l
267 #if !defined(toupper_l)
268 #define toupper_l _toupper_l
271 # define umask _umask
274 # define unlink _unlink
277 # define utime _utime
279 #if !defined(vfprintf_l)
280 #define vfprintf_l _vfprintf_l
282 #if !defined(vsnprintf)
283 #if !defined(_MSC_VER) || (defined(_MSC_VER) && _MSC_VER < 1500)
284 #define vsnprintf _vsnprintf
287 #if !defined(vsnprintf_l)
288 #define vsnprintf_l _vsnprintf_l
291 # define write(fd,buffer,count) _write(fd,buffer,(unsigned int) count)
293 #if !defined(wstat) && !defined(__BORLANDC__)
294 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
295 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
296 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
297 # define wstat _wstati64
299 # define wstat _wstat
303 #if defined(__BORLANDC__)
307 #define _O_SEQUENTIAL 0
308 #undef _O_SHORT_LIVED
309 #define _O_SHORT_LIVED 0
311 #define _O_TEMPORARY 0
320 **NTArgvToUTF8(
const int argc,
wchar_t **);
323 *NTGhostscriptDLLVectors(
void);
326 NTGhostscriptUnLoadDLL(
void);
329 NTErrorHandler(
const ExceptionType,
const char *,
const char *),
330 NTWarningHandler(
const ExceptionType,
const char *,
const char *);
334 #if defined(__cplusplus) || defined(c_plusplus)
ExceptionType
Definition: exception.h:28
Definition: delegate-private.h:54
#define MagickExport
Definition: method-attribute.h:80