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
41 #include <sys/utime.h>
42 #if defined(_DEBUG) && !defined(__MINGW32__)
46 #define PROT_READ 0x01
47 #define PROT_WRITE 0x02
48 #define MAP_SHARED 0x01
49 #define MAP_PRIVATE 0x02
50 #define MAP_ANONYMOUS 0x20
55 #define _SC_PAGESIZE 1
56 #define _SC_PHYS_PAGES 2
57 #define _SC_OPEN_MAX 3
58 #if !defined(SSIZE_MAX)
59 #define SSIZE_MAX 0x7fffffffL
77 # if defined(__BORLANDC__)
78 # define chsize(file,length) chsize(file,length)
80 # define chsize(file,length) _chsize(file,length)
85 #if defined(_VISUALC_) && (_MSC_VER >= 1400)
86 # define access(path,mode) _access_s(path,mode)
95 #if !defined(closedir)
96 # define closedir(directory) NTCloseDirectory(directory)
99 # define fdopen _fdopen
102 # define fileno _fileno
104 #if !defined(freelocale)
105 # define freelocale _free_locale
107 #if !defined(fseek) && !defined(__MINGW32__)
108 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(Windows95) && \
109 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
110 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
111 # define fseek _fseeki64
114 #if !defined(fstat) && !defined(__BORLANDC__)
115 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(Windows95) && \
116 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
117 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
118 # define fstat _fstati64
120 # define fstat _fstat
124 # define fsync _commit
126 #if !defined(ftell) && !defined(__MINGW32__)
127 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(Windows95) && \
128 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
129 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
130 # define ftell _ftelli64
133 #if !defined(ftruncate)
134 # define ftruncate(file,length) NTTruncateFile(file,length)
137 # define getcwd _getcwd
140 # define getpid _getpid
143 # define hypot _hypot
146 # define inline __inline
149 # define isatty _isatty
151 #if !defined(locale_t)
152 #define locale_t _locale_t
154 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(Windows95) && \
155 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
156 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
158 # define lseek _lseeki64
162 # define lseek _lseek
165 #if !defined(MAGICKCORE_LTDL_DELEGATE)
166 #if !defined(lt_dlclose)
167 # define lt_dlclose(handle) NTCloseLibrary(handle)
169 #if !defined(lt_dlerror)
170 # define lt_dlerror() NTGetLibraryError()
172 #if !defined(lt_dlexit)
173 # define lt_dlexit() NTExitLibrary()
175 #if !defined(lt_dlinit)
176 # define lt_dlinit() NTInitializeLibrary()
178 #if !defined(lt_dlopen)
179 # define lt_dlopen(filename) NTOpenLibrary(filename)
181 #if !defined(lt_dlsetsearchpath)
182 # define lt_dlsetsearchpath(path) NTSetSearchPath(path)
184 #if !defined(lt_dlsym)
185 # define lt_dlsym(handle,name) NTGetLibrarySymbol(handle,name)
189 # define mkdir _mkdir
192 # define mmap(address,length,protection,access,file,offset) \
193 NTMapMemory(address,length,protection,access,file,offset)
196 # define msync(address,length,flags) NTSyncMemory(address,length,flags)
199 # define munmap(address,length) NTUnmapMemory(address,length)
201 #if !defined(opendir)
202 # define opendir(directory) NTOpenDirectory(directory)
208 # define pclose _pclose
211 # define popen _popen
213 #if !defined(fprintf_l)
214 #define fprintf_l _fprintf_s_l
217 # define read(fd,buffer,count) _read(fd,buffer,(unsigned int) count)
219 #if !defined(readdir)
220 # define readdir(directory) NTReadDirectory(directory)
222 #if !defined(seekdir)
223 # define seekdir(directory,offset) NTSeekDirectory(directory,offset)
225 #if !defined(setmode)
226 # define setmode _setmode
228 #if !defined(spawnvp)
229 # define spawnvp _spawnvp
231 #if !defined(strtod_l)
232 #define strtod_l _strtod_l
234 #if !defined(stat) && !defined(__BORLANDC__)
235 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(Windows95) && \
236 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
237 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
238 # define stat _stati64
243 #if !defined(strcasecmp)
244 # define strcasecmp _stricmp
246 #if !defined(strncasecmp)
247 # define strncasecmp _strnicmp
249 #if !defined(sysconf)
250 # define sysconf(name) NTSystemConfiguration(name)
252 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(Windows95) && \
253 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
254 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
255 # define tell _telli64
259 #if !defined(telldir)
260 # define telldir(directory) NTTellDirectory(directory)
262 #if !defined(tempnam)
263 # define tempnam _tempnam_s
265 #if !defined(tolower_l)
266 #define tolower_l _tolower_l
268 #if !defined(toupper_l)
269 #define toupper_l _toupper_l
272 # define umask _umask
275 # define unlink _unlink
278 # define utime _utime
280 #if !defined(vfprintf_l)
281 #define vfprintf_l _vfprintf_l
283 #if !defined(vsnprintf)
284 #if !defined(_MSC_VER) || (defined(_MSC_VER) && _MSC_VER < 1500)
285 #define vsnprintf _vsnprintf
288 #if !defined(vsnprintf_l)
289 #define vsnprintf_l _vsnprintf_l
292 # define write(fd,buffer,count) _write(fd,buffer,(unsigned int) count)
294 #if !defined(wstat) && !defined(__BORLANDC__)
295 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(Windows95) && \
296 !(defined(_MSC_VER) && (_MSC_VER < 1400)) && \
297 !(defined(__MSVCRT_VERSION__) && (__MSVCRT_VERSION__ < 0x800))
298 # define wstat _wstati64
300 # define wstat _wstat
304 #if defined(__BORLANDC__)
308 #define _O_SEQUENTIAL 0
309 #undef _O_SHORT_LIVED
310 #define _O_SHORT_LIVED 0
312 #define _O_TEMPORARY 0
321 **NTArgvToUTF8(
const int argc,
wchar_t **);
324 *NTGhostscriptDLLVectors(
void);
327 NTGhostscriptUnLoadDLL(
void);
330 NTErrorHandler(
const ExceptionType,
const char *,
const char *),
331 NTWarningHandler(
const ExceptionType,
const char *,
const char *);
335 #if defined(__cplusplus) || defined(c_plusplus)
ExceptionType
Definition: exception.h:28
Definition: delegate-private.h:52
#define MagickExport
Definition: method-attribute.h:80