glu/sgi: Initialize members of class Arc.
[mesa.git] / src / glu / mesa / gluP.h
1 /*
2 * Mesa 3-D graphics library
3 * Version: 6.3
4 * Copyright (C) 1995-2004 Brian Paul
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Library General Public License for more details.
15 *
16 * You should have received a copy of the GNU Library General Public
17 * License along with this library; if not, write to the Free
18 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 */
20
21
22 /*
23 * This file allows the GLU code to be compiled either with the Mesa
24 * headers or with the real OpenGL headers.
25 */
26
27
28 #ifndef GLUP_H
29 #define GLUP_H
30
31
32 #include <GL/gl.h>
33 #include <GL/glu.h>
34 #include <string.h>
35
36
37 #if defined(_WIN32) && !defined(__WIN32__)
38 # define __WIN32__
39 #endif
40
41 #if !defined(OPENSTEP) && (defined(__WIN32__) || defined(__CYGWIN__))
42 # pragma warning( disable : 4068 ) /* unknown pragma */
43 # pragma warning( disable : 4710 ) /* function 'foo' not inlined */
44 # pragma warning( disable : 4711 ) /* function 'foo' selected for automatic inline expansion */
45 # pragma warning( disable : 4127 ) /* conditional expression is constant */
46 # if defined(MESA_MINWARN)
47 # pragma warning( disable : 4244 ) /* '=' : conversion from 'const double ' to 'float ', possible loss of data */
48 # pragma warning( disable : 4018 ) /* '<' : signed/unsigned mismatch */
49 # pragma warning( disable : 4305 ) /* '=' : truncation from 'const double ' to 'float ' */
50 # pragma warning( disable : 4550 ) /* 'function' undefined; assuming extern returning int */
51 # pragma warning( disable : 4761 ) /* integral size mismatch in argument; conversion supplied */
52 # endif
53 # define GLCALLBACK __stdcall
54 # if defined(__CYGWIN__)
55 # define GLCALLBACKPCAST *
56 # else
57 # define GLCALLBACKPCAST __stdcall *
58 # endif
59 #else
60 /* non-Windows compilation */
61 # define GLCALLBACK
62 # define GLCALLBACKPCAST *
63 #endif /* WIN32 / CYGWIN bracket */
64
65 /* compatability guard so we don't need to change client code */
66
67 #if defined(_WIN32) && !defined(_WINDEF_) && !defined(_GNU_H_WINDOWS32_BASE) && !defined(OPENSTEP)
68 # define CALLBACK GLCALLBACK
69 #endif
70
71
72
73 #ifndef GLU_TESS_ERROR9
74 /* If we're using the real OpenGL header files... */
75 # define GLU_TESS_ERROR9 100159
76 #endif
77
78
79 #define GLU_NO_ERROR GL_NO_ERROR
80
81
82 /* for Sun: */
83 #ifdef SUNOS4
84 #define MEMCPY( DST, SRC, BYTES) \
85 memcpy( (char *) (DST), (char *) (SRC), (int) (BYTES) )
86 #else
87 #define MEMCPY( DST, SRC, BYTES) \
88 memcpy( (void *) (DST), (void *) (SRC), (size_t) (BYTES) )
89 #endif
90
91
92 #ifndef NULL
93 # define NULL 0
94 #endif
95
96
97 #endif