2010-04-01 19:01:31 +01:00
|
|
|
/*
|
2011-06-08 02:51:17 +01:00
|
|
|
Copyright (c) 2009-2011 Apple Inc.
|
2010-04-01 19:01:31 +01:00
|
|
|
|
|
|
|
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.
|
|
|
|
*/
|
2010-04-13 02:37:47 +01:00
|
|
|
|
|
|
|
#include "glxclient.h"
|
2010-04-01 19:01:31 +01:00
|
|
|
#include "apple_glx_context.h"
|
|
|
|
#include "apple_xgl_api.h"
|
Fix build of appleglx
Define GLX_USE_APPLEGL, as config/darwin used to, to turn on specific code to
use the applegl direct renderer
Convert src/glx/apple/Makefile to automake
Since the applegl libGL is now built by linking libappleglx into libGL, rather
than by linking selected files into a special libGL:
- Remove duplicate code in apple/glxreply.c and apple/apple_glx.c. This makes
apple/glxreply.c empty, so remove it
- Some indirect rendering code is already guarded by !GLX_USE_APPLEGL, but we
need to add those guards to indirect_glx.c, indirect_init.c (via it's
generator), render2.c and vertarr.c so they don't generate anything
Fix and update various includes
glapi_gentable.c (which is only used on darwin), should be included in shared
glapi as well, to provide _glapi_create_table_from_handle()
Note that neither swrast nor indirect is supported in the APPLEGL path at the
moment, which makes things more complex than they need to be. More untangling
is needed to allow that
v2: Correct apple/Makefile.am for srcdir != builddir
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2014-05-12 10:47:07 +01:00
|
|
|
#include "main/glheader.h"
|
2011-06-08 02:51:17 +01:00
|
|
|
#include "glapitable.h"
|
2010-04-01 19:01:31 +01:00
|
|
|
|
2011-06-08 02:51:17 +01:00
|
|
|
extern struct _glapi_table * __ogl_framework_api;
|
2010-04-01 19:01:31 +01:00
|
|
|
|
|
|
|
void
|
2011-06-08 02:51:17 +01:00
|
|
|
__applegl_glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
|
2010-04-01 19:01:31 +01:00
|
|
|
{
|
2011-06-05 22:22:56 +01:00
|
|
|
struct glx_context *gc = __glXGetCurrentContext();
|
2010-04-01 19:01:31 +01:00
|
|
|
Display *dpy = glXGetCurrentDisplay();
|
|
|
|
|
2016-06-07 11:33:34 +01:00
|
|
|
if (gc != &dummyContext && gc->driContext)
|
2010-04-02 09:35:19 +01:00
|
|
|
apple_glx_context_update(dpy, gc->driContext);
|
2010-04-01 19:01:31 +01:00
|
|
|
|
2011-06-08 02:51:17 +01:00
|
|
|
__ogl_framework_api->Viewport(x, y, width, height);
|
2010-04-01 19:01:31 +01:00
|
|
|
}
|