diff options
author | Jeremy Huddleston <jeremyhu@apple.com> | 2010-04-12 18:37:47 -0700 |
---|---|---|
committer | Jeremy Huddleston <jeremyhu@apple.com> | 2010-04-27 12:37:16 -0700 |
commit | a1cb3babbef2af222b839a058694acc82a7074f1 (patch) | |
tree | aabd71a9c7b24c61816f759fd835dc2e1f4170ba /src/glx/apple | |
parent | f64773010d0dd204177d08716565db69f6263e0f (diff) |
Buildfixes to work around issues in OpenGL.framework
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Diffstat (limited to 'src/glx/apple')
-rw-r--r-- | src/glx/apple/apple_glx.h | 2 | ||||
-rw-r--r-- | src/glx/apple/apple_glx_context.h | 12 | ||||
-rw-r--r-- | src/glx/apple/apple_glx_drawable.h | 6 | ||||
-rw-r--r-- | src/glx/apple/apple_glx_pbuffer.c | 23 | ||||
-rw-r--r-- | src/glx/apple/apple_visual.c | 9 | ||||
-rw-r--r-- | src/glx/apple/apple_xgl_api_read.c | 5 | ||||
-rw-r--r-- | src/glx/apple/apple_xgl_api_read.h | 47 | ||||
-rw-r--r-- | src/glx/apple/apple_xgl_api_stereo.c | 13 | ||||
-rw-r--r-- | src/glx/apple/apple_xgl_api_stereo.h | 39 | ||||
-rw-r--r-- | src/glx/apple/apple_xgl_api_viewport.c | 3 | ||||
-rw-r--r-- | src/glx/apple/apple_xgl_api_viewport.h | 36 |
11 files changed, 60 insertions, 135 deletions
diff --git a/src/glx/apple/apple_glx.h b/src/glx/apple/apple_glx.h index 3ee54aa6cf..9b3643bf15 100644 --- a/src/glx/apple/apple_glx.h +++ b/src/glx/apple/apple_glx.h @@ -31,10 +31,10 @@ #define APPLE_GLX_H #include <stdbool.h> -#include <OpenGL/CGLTypes.h> #include <GL/gl.h> #include <GL/glxint.h> #include <X11/Xlib.h> + #define XP_NO_X_HEADERS #include <Xplugin.h> diff --git a/src/glx/apple/apple_glx_context.h b/src/glx/apple/apple_glx_context.h index 7e2394f2bb..c2a3e3fcf6 100644 --- a/src/glx/apple/apple_glx_context.h +++ b/src/glx/apple/apple_glx_context.h @@ -29,11 +29,19 @@ #ifndef APPLE_GLX_CONTEXT_H #define APPLE_GLX_CONTEXT_H +/* <rdar://problem/6953344> */ +#define glTexImage1D glTexImage1D_OSX +#define glTexImage2D glTexImage2D_OSX +#define glTexImage3D glTexImage3D_OSX +#include <OpenGL/CGLTypes.h> +#include <OpenGL/CGLContext.h> +#undef glTexImage1D +#undef glTexImage2D +#undef glTexImage3D + #include <stdbool.h> #include <X11/Xlib.h> #include <GL/glx.h> -#include <OpenGL/CGLTypes.h> -#include <OpenGL/CGLContext.h> #define XP_NO_X_HEADERS #include <Xplugin.h> #undef XP_NO_X_HEADERS diff --git a/src/glx/apple/apple_glx_drawable.h b/src/glx/apple/apple_glx_drawable.h index a15858963d..e49eae355e 100644 --- a/src/glx/apple/apple_glx_drawable.h +++ b/src/glx/apple/apple_glx_drawable.h @@ -29,6 +29,11 @@ #ifndef APPLE_GLX_DRAWABLE_H #define APPLE_GLX_DRAWABLE_H +/* Must be first for: + * <rdar://problem/6953344> + */ +#include "apple_glx_context.h" + #include <pthread.h> #include <stdbool.h> #include <limits.h> @@ -36,7 +41,6 @@ #define XP_NO_X_HEADERS #include <Xplugin.h> #undef XP_NO_X_HEADERS -#include "apple_glx_context.h" enum { diff --git a/src/glx/apple/apple_glx_pbuffer.c b/src/glx/apple/apple_glx_pbuffer.c index fb56b7512e..1466fea487 100644 --- a/src/glx/apple/apple_glx_pbuffer.c +++ b/src/glx/apple/apple_glx_pbuffer.c @@ -27,16 +27,33 @@ prior written authorization. */ +/* Must be before OpenGL.framework is included. Remove once fixed: + * <rdar://problem/7872773> + */ +#include <GL/gl.h> +#include <GL/glext.h> +#define __gltypes_h_ 1 + +/* Must be first for: + * <rdar://problem/6953344> + */ +#include "apple_glx_context.h" +#include "apple_glx_drawable.h" + #include <stdlib.h> #include <pthread.h> #include <assert.h> -#include <GL/glew.h> #include "apple_glx.h" #include "glcontextmodes.h" -#include "apple_glx_context.h" -#include "apple_glx_drawable.h" #include "apple_cgl.h" +/* mesa defines in glew.h, Apple in glext.h. + * Due to namespace nightmares, just do it here. + */ +#ifndef GL_TEXTURE_RECTANGLE_EXT +#define GL_TEXTURE_RECTANGLE_EXT 0x84F5 +#endif + static bool pbuffer_make_current(struct apple_glx_context *ac, struct apple_glx_drawable *d); diff --git a/src/glx/apple/apple_visual.c b/src/glx/apple/apple_visual.c index e80914741e..da5aa05fd5 100644 --- a/src/glx/apple/apple_visual.c +++ b/src/glx/apple/apple_visual.c @@ -32,9 +32,18 @@ #include <stdlib.h> #include <assert.h> #include <GL/gl.h> + +/* <rdar://problem/6953344> */ +#define glTexImage1D glTexImage1D_OSX +#define glTexImage2D glTexImage2D_OSX +#define glTexImage3D glTexImage3D_OSX #include <OpenGL/OpenGL.h> #include <OpenGL/CGLContext.h> #include <OpenGL/CGLRenderers.h> +#undef glTexImage1D +#undef glTexImage2D +#undef glTexImage3D + #include "apple_cgl.h" #include "apple_visual.h" #include "apple_glx.h" diff --git a/src/glx/apple/apple_xgl_api_read.c b/src/glx/apple/apple_xgl_api_read.c index 36357c7fc2..0798f45bbf 100644 --- a/src/glx/apple/apple_xgl_api_read.c +++ b/src/glx/apple/apple_xgl_api_read.c @@ -34,10 +34,9 @@ * drawable if they are different. */ #include <stdbool.h> -#include "apple_xgl_api_read.h" -#include "apple_xgl_api.h" -#include "apple_cgl.h" +#include "glxclient.h" #include "apple_glx_context.h" +#include "apple_xgl_api.h" extern struct apple_xgl_api __gl_api; diff --git a/src/glx/apple/apple_xgl_api_read.h b/src/glx/apple/apple_xgl_api_read.h deleted file mode 100644 index ffeb32afb8..0000000000 --- a/src/glx/apple/apple_xgl_api_read.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - Copyright (c) 2008, 2009 Apple Inc. - - Permission is hereby granted, free of charge, to any person - obtaining a copy of this software and associated documentation files - (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, - publish, distribute, sublicense, and/or sell copies of the Software, - and to permit persons to whom the Software is furnished to do so, - subject to the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT - HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name(s) of the above - copyright holders shall not be used in advertising or otherwise to - promote the sale, use or other dealings in this Software without - prior written authorization. -*/ - -/* - * This file works with the glXMakeContextCurrent readable drawable. - */ -#ifndef APPLE_XGL_API_READ_H -#define APPLE_XGL_API_READ_H - -#include "glxclient.h" - -extern void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, - GLenum format, GLenum type, void *pixels); - -extern void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, - GLenum type); - -extern void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, - GLint y, GLsizei width); - -#endif diff --git a/src/glx/apple/apple_xgl_api_stereo.c b/src/glx/apple/apple_xgl_api_stereo.c index 7dd946f764..64a15f7486 100644 --- a/src/glx/apple/apple_xgl_api_stereo.c +++ b/src/glx/apple/apple_xgl_api_stereo.c @@ -27,10 +27,19 @@ prior written authorization. */ +/* This should be removed once stereo hardware bugs are fixed + * <rdar://problem/6729006> + */ + #include <stdbool.h> -#include "apple_xgl_api_stereo.h" -#include "apple_xgl_api.h" + +#define GL_GLEXT_PROTOTYPES +#include <GL/gl.h> +#include <GL/glext.h> + +#include "glxclient.h" #include "apple_glx_context.h" +#include "apple_xgl_api.h" extern struct apple_xgl_api __gl_api; /* diff --git a/src/glx/apple/apple_xgl_api_stereo.h b/src/glx/apple/apple_xgl_api_stereo.h deleted file mode 100644 index c285363f6f..0000000000 --- a/src/glx/apple/apple_xgl_api_stereo.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - Copyright (c) 2009 Apple Inc. - - Permission is hereby granted, free of charge, to any person - obtaining a copy of this software and associated documentation files - (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, - publish, distribute, sublicense, and/or sell copies of the Software, - and to permit persons to whom the Software is furnished to do so, - subject to the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT - HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name(s) of the above - copyright holders shall not be used in advertising or otherwise to - promote the sale, use or other dealings in this Software without - prior written authorization. -*/ - -#include "glxclient.h" - -#ifndef APPLE_XGL_API_STEREO_H -#define APPLE_XGL_API_STEREO_H - -extern void glDrawBuffer(GLenum mode); -extern void glDrawBuffers(GLsizei n, const GLenum * bufs); -extern void glDrawBuffersARB(GLsizei n, const GLenum * bufs); - -#endif diff --git a/src/glx/apple/apple_xgl_api_viewport.c b/src/glx/apple/apple_xgl_api_viewport.c index f556eefa22..e39ab15223 100644 --- a/src/glx/apple/apple_xgl_api_viewport.c +++ b/src/glx/apple/apple_xgl_api_viewport.c @@ -26,9 +26,10 @@ promote the sale, use or other dealings in this Software without prior written authorization. */ + +#include "glxclient.h" #include "apple_glx_context.h" #include "apple_xgl_api.h" -#include "apple_xgl_api_viewport.h" extern struct apple_xgl_api __gl_api; diff --git a/src/glx/apple/apple_xgl_api_viewport.h b/src/glx/apple/apple_xgl_api_viewport.h deleted file mode 100644 index 6c89ca7998..0000000000 --- a/src/glx/apple/apple_xgl_api_viewport.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - Copyright (c) 2009 Apple Inc. - - Permission is hereby granted, free of charge, to any person - obtaining a copy of this software and associated documentation files - (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, - publish, distribute, sublicense, and/or sell copies of the Software, - and to permit persons to whom the Software is furnished to do so, - subject to the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT - HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name(s) of the above - copyright holders shall not be used in advertising or otherwise to - promote the sale, use or other dealings in this Software without - prior written authorization. -*/ -#ifndef APPLE_XGL_API_VIEWPORT_H -#define APPLE_XGL_API_VIEWPORT_H - -#include "glxclient.h" - -void glViewport(GLint x, GLint y, GLsizei width, GLsizei height); - -#endif |