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#define _CRT_SECURE_NO_DEPRECATE 1
42#if defined(_DEBUG) && !defined(__MINGW32__)
47#define PROT_WRITE 0x02
48#define MAP_SHARED 0x01
49#define MAP_PRIVATE 0x02
50#define MAP_ANONYMOUS 0x20
55#define _SC_PAGE_SIZE 1
56#define _SC_PHYS_PAGES 2
58#if !defined(SSIZE_MAX)
60# define SSIZE_MAX LLONG_MAX
62# define SSIZE_MAX LONG_MAX
81# if defined(__BORLANDC__)
82# define chsize(file,length) chsize(file,length)
84# define chsize(file,length) _chsize(file,length)
89#if defined(_VISUALC_) && (_MSC_VER >= 1400)
90# define access(path,mode) _access_s(path,mode)
100# define closedir(directory) NTCloseDirectory(directory)
103# define fdopen _fdopen
106# define fileno _fileno
108#if !defined(freelocale)
109# define freelocale _free_locale
111#if !defined(fseek) && !defined(__MINGW32__)
112#if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
113 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
114 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
115# define fseek _fseeki64
118#if !defined(fstat) && !defined(__BORLANDC__)
119#if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
120 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
121 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
122# define fstat _fstati64
128# define fsync _commit
130#if !defined(ftell) && !defined(__MINGW32__)
131#if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
132 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
133 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
134# define ftell _ftelli64
137#if !defined(ftruncate)
138# define ftruncate(file,length) NTTruncateFile(file,length)
141# define getcwd _getcwd
144# define getpid _getpid
150# define inline __inline
153# define isatty _isatty
155#if !defined(locale_t)
156#define locale_t _locale_t
158#if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
159 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
160 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
162# define lseek _lseeki64
169#if !defined(MAGICKCORE_LTDL_DELEGATE)
170#if !defined(lt_dlclose)
171# define lt_dlclose(handle) NTCloseLibrary(handle)
173#if !defined(lt_dlerror)
174# define lt_dlerror() NTGetLibraryError()
176#if !defined(lt_dlexit)
177# define lt_dlexit() NTExitLibrary()
179#if !defined(lt_dlinit)
180# define lt_dlinit() NTInitializeLibrary()
182#if !defined(lt_dlopen)
183# define lt_dlopen(filename) NTOpenLibrary(filename)
185#if !defined(lt_dlsetsearchpath)
186# define lt_dlsetsearchpath(path) NTSetSearchPath(path)
188#if !defined(lt_dlsym)
189# define lt_dlsym(handle,name) NTGetLibrarySymbol(handle,name)
196# define mmap(address,length,protection,access,file,offset) \
197 NTMapMemory(address,length,protection,access,file,offset)
200# define munmap(address,length) NTUnmapMemory(address,length)
203# define opendir(directory) NTOpenDirectory(directory)
209# define pclose _pclose
214#if !defined(fprintf_l)
215#define fprintf_l _fprintf_s_l
218# define read(fd,buffer,count) _read(fd,buffer,(unsigned int) count)
221# define readdir(directory) NTReadDirectory(directory)
224# define setmode _setmode
227# define spawnvp _spawnvp
229#if !defined(strtod_l)
230#define strtod_l _strtod_l
232#if !defined(stat) && !defined(__BORLANDC__)
233#if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
234 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
235 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
236# define stat _stati64
241#if !defined(strcasecmp)
242# define strcasecmp _stricmp
244#if !defined(strncasecmp)
245# define strncasecmp _strnicmp
248# define sysconf(name) NTSystemConfiguration(name)
250#if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
251 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
252 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
253# define tell _telli64
258# define tempnam _tempnam_s
260#if !defined(tolower_l)
261#define tolower_l _tolower_l
263#if !defined(toupper_l)
264#define toupper_l _toupper_l
270# define unlink _unlink
275#if !defined(vfprintf_l)
276#define vfprintf_l _vfprintf_l
278#if !defined(vsnprintf)
279#if !defined(_MSC_VER) || (defined(_MSC_VER) && _MSC_VER < 1500)
280#define vsnprintf _vsnprintf
283#if !defined(vsnprintf_l)
284#define vsnprintf_l _vsnprintf_l
287# define write(fd,buffer,count) _write(fd,buffer,(unsigned int) count)
289#if !defined(wstat) && !defined(__BORLANDC__)
290#if defined(MAGICKCORE_WINDOWS_SUPPORT) && \
291 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
292 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
293# define wstat _wstati64
299#if defined(__BORLANDC__)
303#define _O_SEQUENTIAL 0
305#define _O_SHORT_LIVED 0
307#define _O_TEMPORARY 0
316 **NTArgvToUTF8(
const int argc,
wchar_t **);
319 *NTGhostscriptDLLVectors(
void);
322 NTGhostscriptUnLoadDLL(
void);
325 NTErrorHandler(
const ExceptionType,
const char *,
const char *),
326 NTWarningHandler(
const ExceptionType,
const char *,
const char *);
330#if defined(__cplusplus) || defined(c_plusplus)
ExceptionType
Definition: exception.h:29
#define MagickExport
Definition: method-attribute.h:80
Definition: delegate-private.h:55