Annotation of OpenXM_contrib/gnuplot/syscfg.h, Revision 1.1.1.3
1.1 maekawa 1: /*
1.1.1.3 ! ohara 2: * $Id: syscfg.h,v 1.9.2.7 2002/03/11 16:07:20 lhecking Exp $
1.1 maekawa 3: *
4: */
5:
6: /* GNUPLOT - syscfg.h */
7:
8: /*[
9: * Copyright 1986 - 1993, 1998 Thomas Williams, Colin Kelley
10: *
11: * Permission to use, copy, and distribute this software and its
12: * documentation for any purpose with or without fee is hereby granted,
13: * provided that the above copyright notice appear in all copies and
14: * that both that copyright notice and this permission notice appear
15: * in supporting documentation.
16: *
17: * Permission to modify the software is granted, but not the right to
18: * distribute the complete modified source code. Modifications are to
19: * be distributed as patches to the released version. Permission to
20: * distribute binaries produced by compiling modified sources is granted,
21: * provided you
22: * 1. distribute the corresponding source modifications from the
23: * released version in the form of a patch file along with the binaries,
24: * 2. add special version identification to distinguish your version
25: * in addition to the base release version number,
26: * 3. provide your name and address as the primary contact for the
27: * support of your modified version, and
28: * 4. retain our contact information in regard to use of the base
29: * software.
30: * Permission to distribute the released version of the source code along
31: * with corresponding source modifications in the form of a patch file is
32: * granted with same provisions 2 through 4 for binary distributions.
33: *
34: * This software is provided "as is" without express or implied warranty
35: * to the extent permitted by applicable law.
36: ]*/
37:
38: /* This header file provides system dependent definitions. New features
39: * and platforms should be added here.
40: */
41:
42: #ifndef SYSCFG_H
43: #define SYSCFG_H
44:
45: #ifdef HAVE_CONFIG_H
46: # include "config.h"
47: #endif
48:
49: #include "ansichek.h"
50:
51: /*
52: * Define operating system dependent constants [default value]:
53: *
1.1.1.3 ! ohara 54: * OS: [""] Name of OS; only required if system has no uname(2) call
1.1.1.2 maekawa 55: * HELPFILE: ["docs/gnuplot.gih"] Location of helpfile - overridden by Makefile
1.1 maekawa 56: * HOME: ["HOME"] Name of environment variable which points to
57: * the directory where gnuplot's config file is found.
58: * PLOTRC: [".gnuplot"] Name of the gnuplot startup file.
59: * SHELL: ["/bin/sh"] Name, and in some cases, full path to the shell
60: * that is used to run external commands.
61: * DIRSEP1: ['/'] Primary character which separates path components.
62: * DIRSEP2: ['\0'] Secondary character which separates path components.
63: *
64: */
65:
66: #if defined(AMIGA_SC_6_1) || defined(AMIGA_AC_5) || defined(__amigaos__)
67: # ifndef __amigaos__
1.1.1.3 ! ohara 68: # define OS "Amiga"
1.1 maekawa 69: # define HELPFILE "S:gnuplot.gih"
70: # define HOME "GNUPLOT"
71: # define SHELL "NewShell"
72: # define DIRSEP2 ':'
73: # endif
74: # ifndef AMIGA
75: # define AMIGA
76: # endif
77: /* Fake S_IFIFO for SAS/C
78: * See stdfn.h for details
79: */
80: # ifdef AMIGA_SC_6_1
81: # define S_IFIFO S_IREAD
82: # endif
83: #endif /* Amiga */
84:
85: #ifdef ATARI
1.1.1.3 ! ohara 86: # define OS "TOS"
1.1.1.2 maekawa 87: # define HOME "GNUPLOT"
88: # define PLOTRC "gnuplot.ini"
89: # define SHELL "gulam.prg"
90: # define DIRSEP1 '\\'
1.1 maekawa 91: # ifdef MTOS
92: # define DIRSEP2 '/'
93: # endif
94: /* I hope this is correct ... */
95: # ifdef __PUREC__
96: # define sscanf purec_sscanf
97: # endif
98: #endif /* Atari */
99:
100: #ifdef DOS386
1.1.1.3 ! ohara 101: # define OS "DOS 386"
1.1 maekawa 102: # define HELPFILE "gnuplot.gih"
1.1.1.2 maekawa 103: # define HOME "GNUPLOT"
104: # define PLOTRC "gnuplot.ini"
105: # define SHELL "\\command.com"
106: # define DIRSEP1 '\\'
1.1 maekawa 107: #endif /* DOS386 */
108:
1.1.1.2 maekawa 109: #if defined(__NeXT__) || defined(NEXT)
110: # ifndef NEXT
111: # define NEXT
112: # endif
1.1 maekawa 113: #endif /* NeXT */
114:
115: #ifdef OS2
1.1.1.3 ! ohara 116: # define OS "OS/2"
1.1 maekawa 117: # define HELPFILE "gnuplot.gih"
1.1.1.2 maekawa 118: # define HOME "GNUPLOT"
119: # define PLOTRC "gnuplot.ini"
120: # define SHELL "c:\\os2\\cmd.exe"
121: # define DIRSEP1 '\\'
1.1 maekawa 122: #endif /* OS/2 */
123:
124: #ifdef OSK
1.1.1.3 ! ohara 125: # define OS "OS-9"
1.1 maekawa 126: # define SHELL "/dd/cmds/shell"
127: #endif /* OS-9 */
128:
129: #if defined(vms) || defined(VMS)
1.1.1.3 ! ohara 130: # define OS "VMS"
1.1 maekawa 131: # ifndef VMS
132: # define VMS
133: # endif
1.1.1.2 maekawa 134: # define HOME "sys$login:"
1.1 maekawa 135: # define PLOTRC "gnuplot.ini"
136: # ifdef NO_GIH
137: /* for show version long */
138: # define HELPFILE "GNUPLOT$HELP"
139: # endif
140: # if !defined(VAXCRTL) && !defined(DECCRTL)
1.1.1.2 maekawa 141: # define VAXCRTL VAXCRTL_AND_DECCRTL_UNDEFINED
142: # define DECCRTL VAXCRTL_AND_DECCRTL_UNDEFINED
1.1 maekawa 143: # endif
144: /* avoid some IMPLICITFUNC warnings */
145: # ifdef __DECC
146: # include <starlet.h>
147: # endif /* __DECC */
148: #endif /* VMS */
149:
150: #if defined(_WINDOWS) || defined(_Windows)
151: # ifndef _Windows
152: # define _Windows
153: # endif
154: # ifdef WIN32
1.1.1.3 ! ohara 155: # define OS "MS-Windows 32 bit"
1.1 maekawa 156: /* introduced by Pedro Mendes, prm@aber.ac.uk */
157: # define far
158: /* Fix for broken compiler headers
159: * See stdfn.h
160: */
161: # define S_IFIFO _S_IFIFO
162: # else
1.1.1.3 ! ohara 163: # define OS "MS-Windows"
1.1 maekawa 164: # ifndef WIN16
165: # define WIN16
166: # endif
167: # endif /* WIN32 */
1.1.1.2 maekawa 168: # define HOME "GNUPLOT"
169: # define PLOTRC "gnuplot.ini"
170: # define SHELL "\\command.com"
1.1 maekawa 171: # define DIRSEP1 '\\'
172: #endif /* _WINDOWS */
173:
174: #if defined(MSDOS) && !defined(_Windows)
175: # if !defined(DOS32) && !defined(DOS16)
176: # define DOS16
177: # endif
1.1.1.2 maekawa 178: /* should this be here ? */
1.1 maekawa 179: # ifdef MTOS
1.1.1.3 ! ohara 180: # define OS "TOS & MiNT & MULTITOS & Magic -"
1.1 maekawa 181: # endif /* MTOS */
1.1.1.3 ! ohara 182: # define OS "MS-DOS"
1.1 maekawa 183: # undef HELPFILE
184: # define HELPFILE "gnuplot.gih"
1.1.1.2 maekawa 185: # define HOME "GNUPLOT"
186: # define PLOTRC "gnuplot.ini"
187: # define SHELL "\\command.com"
188: # define DIRSEP1 '\\'
1.1 maekawa 189: # ifdef __DJGPP__
190: # define DIRSEP2 '/'
191: # endif
192: #endif /* MSDOS */
193:
194: /* End OS dependent constants; fall-through defaults
195: * for the constants defined above are following.
196: */
197:
1.1.1.3 ! ohara 198: #ifndef HAVE_SYS_UTSNAME
! 199: # ifndef OS
! 200: # define OS "(unknown)"
! 201: # endif
1.1 maekawa 202: #endif
203:
204: #ifndef HELPFILE
205: # define HELPFILE "docs/gnuplot.gih"
1.1.1.2 maekawa 206: #endif
1.1 maekawa 207:
208: #ifndef HOME
209: # define HOME "HOME"
210: #endif
211:
212: #ifndef PLOTRC
213: # define PLOTRC ".gnuplot"
214: #endif
215:
216: #ifndef SHELL
217: # define SHELL "/bin/sh" /* used if SHELL env variable not set */
218: #endif
219:
220: #ifndef DIRSEP1
221: # define DIRSEP1 '/'
222: #endif
223:
224: #ifndef DIRSEP2
225: # define DIRSEP2 NUL
226: #endif
227:
228: #ifndef FAQ_LOCATION
1.1.1.3 ! ohara 229: #define FAQ_LOCATION "http://www.gnuplot.info/gnuplot-faq.html"
1.1 maekawa 230: #endif
231:
232: #ifndef CONTACT
233: # define CONTACT "bug-gnuplot@dartmouth.edu"
234: #endif
235:
236: #ifndef HELPMAIL
237: # define HELPMAIL "info-gnuplot@dartmouth.edu"
238: #endif
239: /* End fall-through defaults */
240:
241: /* Atari stuff. Moved here from command.c, plot2d.c, readline.c */
242: #if defined(ATARI) || defined(MTOS)
243: # ifdef __PUREC__
244: # include <ext.h>
245: # include <tos.h>
246: # include <aes.h>
247: # else
248: # include <osbind.h>
249: # include <aesbind.h>
250: # include <support.h>
251: # endif /* __PUREC__ */
252: #endif /* ATARI || MTOS */
253:
254:
255: /* DOS/Windows stuff. Moved here from command.c */
256: #if defined(MSDOS) || defined(DOS386)
257:
258: # ifdef DJGPP
259: # include <dos.h>
260: # include <dir.h> /* HBB: for setdisk() */
261: # else
262: # include <process.h>
263: # endif /* !DJGPP */
264:
265: # ifdef __ZTC__
266: # define HAVE_SLEEP 1
267: # define P_WAIT 0
268:
269: # elif defined(__TURBOC__)
270: # include <dos.h> /* for sleep() prototype */
271: # ifndef _Windows
272: # define HAVE_SLEEP 1
273: # include <conio.h>
274: # include <dir.h> /* setdisk() */
275: # endif /* _Windows */
276: # ifdef WIN32
277: # define HAVE_SLEEP 1
278: # endif
279:
280: # else /* must be MSC */
281: # if !defined(__EMX__) && !defined(DJGPP)
282: # ifdef __MSC__
283: # include <direct.h> /* for _chdrive() */
284: # endif /* __MSC__ */
285: # endif /* !__EMX__ && !DJGPP */
286: # endif /* !ZTC */
287:
288: #endif /* MSDOS */
289:
290:
291: /* Watcom's compiler; this should probably be somewhere
292: * in the Windows section
293: */
294: #ifdef __WATCOMC__
295: # include <direct.h>
296: # define HAVE_GETCWD 1
297: #endif
298:
299:
300: /* Misc platforms */
1.1.1.2 maekawa 301: #ifdef apollo
302: # ifndef APOLLO
303: # define APOLLO
304: # endif
305: # define GPR
306: #endif
307:
308: #if defined(APOLLO) || defined(alliant)
1.1 maekawa 309: # define NO_LIMITS_H
310: #endif
311:
312: #ifdef sequent
313: # define NO_LIMITS_H
314: # define NO_STRCHR
315: #endif
316:
1.1.1.2 maekawa 317: #ifdef unixpc
318: # ifndef UNIXPC
319: # define UNIXPC
320: # endif
1.1.1.3 ! ohara 321: #endif
! 322:
! 323: #ifdef HAVE_SIGSETJMP
! 324: # define SETJMP(env, save_signals) sigsetjmp(env, save_signals)
! 325: # define LONGJMP(env, retval) siglongjmp(env, retval)
! 326: # define JMP_BUF sigjmp_buf
! 327: #else
! 328: # define SETJMP(env, save_signals) setjmp(env)
! 329: # define LONGJMP(env, retval) longjmp(env, retval)
! 330: # define JMP_BUF jmp_buf
1.1.1.2 maekawa 331: #endif
1.1 maekawa 332:
333: /* Autoconf related stuff
334: * Transform autoconf defines to gnuplot coding standards
335: * This is only relevant for standard ANSI headers and functions
336: */
337: #ifdef HAVE_CONFIG_H
338:
339: # ifndef HAVE_ERRNO_H
340: # define NO_ERRNO_H
341: # endif
342:
343: # ifndef HAVE_FLOAT_H
344: # define NO_FLOAT_H
345: # endif
346:
347: # ifndef HAVE_LIMITS_H
348: # define NO_LIMITS_H
349: # endif
350:
351: # ifndef HAVE_LOCALE_H
352: # define NO_LOCALE_H
353: # endif
354:
355: # ifndef HAVE_MATH_H
356: # define NO_MATH_H
357: # endif
358:
359: # ifndef HAVE_STDLIB_H
360: # define NO_STDLIB_H
361: # endif
362:
363: # ifndef HAVE_STRING_H
364: # define NO_STRING_H
365: # endif
366:
367: # ifndef HAVE_TIME_H
368: # define NO_TIME_H
369: # endif
370:
371: # ifndef HAVE_SYS_TIME_H
372: # define NO_SYS_TIME_H
373: # endif
374:
375: # ifndef HAVE_SYS_TYPES_H
376: # define NO_SYS_TYPES_H
377: # endif
378:
379: # ifndef HAVE_ATEXIT
380: # define NO_ATEXIT
381: # endif
382:
383: # ifndef HAVE_MEMCPY
384: # define NO_MEMCPY
385: # endif
386:
387: # ifndef HAVE_MEMMOVE
388: # define NO_MEMMOVE
389: # endif
390:
391: # ifndef HAVE_MEMSET
392: # define NO_MEMSET
393: # endif
394:
395: # ifndef HAVE_SETVBUF
396: # define NO_SETVBUF
397: # endif
398:
399: # ifndef HAVE_STRERROR
400: # define NO_STRERROR
401: # endif
402:
403: # ifndef HAVE_STRCHR
404: # define NO_STRCHR
405: # endif
406:
407: # ifndef HAVE_STRRCHR
408: # define NO_STRRCHR
409: # endif
410:
411: # ifndef HAVE_STRSTR
412: # define NO_STRSTR
413: # endif
414:
415: #endif /* HAVE_CONFIG_H */
416: /* End autoconf related stuff */
417:
418: #endif /* !SYSCFG_H */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>