Icons are changed
[gnuplot] / src / ansichek.h
1 /*
2  * $Id: ansichek.h,v 1.5 2004/04/13 17:23:51 broeker Exp $
3  */
4
5 /* GNUPLOT - ansichek.h */
6
7 /*[
8  * Copyright 1986 - 1993, 1998, 2004   Thomas Williams, Colin Kelley
9  *
10  * Permission to use, copy, and distribute this software and its
11  * documentation for any purpose with or without fee is hereby granted,
12  * provided that the above copyright notice appear in all copies and
13  * that both that copyright notice and this permission notice appear
14  * in supporting documentation.
15  *
16  * Permission to modify the software is granted, but not the right to
17  * distribute the complete modified source code.  Modifications are to
18  * be distributed as patches to the released version.  Permission to
19  * distribute binaries produced by compiling modified sources is granted,
20  * provided you
21  *   1. distribute the corresponding source modifications from the
22  *    released version in the form of a patch file along with the binaries,
23  *   2. add special version identification to distinguish your version
24  *    in addition to the base release version number,
25  *   3. provide your name and address as the primary contact for the
26  *    support of your modified version, and
27  *   4. retain our contact information in regard to use of the base
28  *    software.
29  * Permission to distribute the released version of the source code along
30  * with corresponding source modifications in the form of a patch file is
31  * granted with same provisions 2 through 4 for binary distributions.
32  *
33  * This software is provided "as is" without express or implied warranty
34  * to the extent permitted by applicable law.
35 ]*/
36
37
38 /* figure out if we can handle ANSI prototypes
39  * We invent and use ANSI_C rather than using __STDC__ directly
40  * because some compilers (eg MS VC++ 4.1) switch off __STDC__
41  * when extensions are enabled, but if extensions are disabled,
42  * the standard headers cause compile errors. We can -DANSI_C
43  * but -D__STDC__ might confuse headers
44  */
45
46 #ifndef ANSI_CHECK_H
47 # define ANSI_CHECK_H
48
49 # if defined(__STDC__) && __STDC__
50 #  ifndef ANSI_C
51 #   define ANSI_C
52 #  endif
53 # endif /* __STDC__ */
54
55 # ifndef HAVE_CONFIG_H
56 /* Only relevant for systems which don't run configure */
57
58 /* are all these compiler tests necessary ? - can the makefiles not
59  * just set ANSI_C ?
60  */
61
62 #  if defined(ANSI_C) || defined(__TURBOC__) || defined (__PUREC__) || defined (__ZTC__) || defined (_MSC_VER) || (defined(OSK) && defined(_ANSI_EXT))
63 #   ifndef PROTOTYPES
64 #    define PROTOTYPES
65 #   endif
66 #   ifndef HAVE_STRINGIZE
67 #    ifndef VAXC           /* not quite ANSI_C */
68 #     define HAVE_STRINGIZE
69 #    endif
70 #   endif
71 #  endif /* ANSI_C ... */
72
73 #  ifndef ANSI_C
74 #   define const
75 #  endif
76
77 # endif /* !HAVE_CONFIG_H */
78
79 /* used to be __P but it was just too difficult to guess whether
80  * standard headers define it. It's not as if the defn is
81  * particularly difficult to do ourselves...
82  */
83 # ifdef PROTOTYPES
84 #  define __PROTO(proto) proto
85 # else
86 #  define __PROTO(proto) ()
87 # endif
88
89 /* generic pointer type. For old compilers this has to be changed to char *,
90  * but I don't know if there are any CC's that support void and not void *
91  */
92 #  define generic void
93
94 #endif /* ANSI_CHECK_H */