summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
diff options
context:
space:
mode:
authorChia-I Wu <[email protected]>2010-05-05 10:59:44 +0800
committerChia-I Wu <[email protected]>2010-05-05 11:57:46 +0800
commita6ec153830ea25958f8cb5f5b5ae7a3433d61bbc (patch)
treed7a97f7581cb6e9c5232c1a17ff1452eb4614dbb /src/mesa/main
parentb29b27c118f2f813b07475e0c470b338ed5987aa (diff)
mesa: Fix build of ES overlay.
ES overlay is built with FEATURE_ES1 or FEATURE_ES2, and is built without FEATURE_GL. Fix the build by always building OpenGL ES sources, but test for FEATURE_ES1 or FEATURE_ES2. Also, define symbols that are missing because FEATURE_GL is not defined.
Diffstat (limited to 'src/mesa/main')
-rw-r--r--src/mesa/main/es_generator.py14
-rw-r--r--src/mesa/main/get_gen_es.py20
2 files changed, 30 insertions, 4 deletions
diff --git a/src/mesa/main/es_generator.py b/src/mesa/main/es_generator.py
index 8f08a3a6f92..12f03a5c229 100644
--- a/src/mesa/main/es_generator.py
+++ b/src/mesa/main/es_generator.py
@@ -190,7 +190,10 @@ print """/* DO NOT EDIT *************************************************
print """
#include "%s"
#include "%s"
-""" % (versionHeader, versionExtHeader)
+#include "main/mfeatures.h"
+
+#if FEATURE_%s
+""" % (versionHeader, versionExtHeader, shortname.upper())
# Everyone needs these types.
print """
@@ -211,16 +214,20 @@ extern void _mesa_error(void *ctx, GLenum error, const char *fmtString, ... );
#include "main/api_exec.h"
#include "main/remap.h"
+/* cannot include main/dispatch.h here */
#ifdef IN_DRI_DRIVER
#define _GLAPI_USE_REMAP_TABLE
#endif
-
#include "es/glapi/glapi-%s/glapi/glapitable.h"
#include "es/glapi/glapi-%s/glapi/glapioffsets.h"
#include "es/glapi/glapi-%s/glapi/glapidispatch.h"
#if FEATURE_remap_table
+#if !FEATURE_GL
+int driDispatchRemapTable[driDispatchRemapTable_size];
+#endif
+
#define need_MESA_remap_table
#include "es/glapi/glapi-%s/main/remap_helper.h"
@@ -728,3 +735,6 @@ for func in keys:
print ""
print " return exec;"
print "}"
+
+print """
+#endif /* FEATURE_%s */""" % (shortname.upper())
diff --git a/src/mesa/main/get_gen_es.py b/src/mesa/main/get_gen_es.py
index 5fadfee8411..0c45b3d5d7c 100644
--- a/src/mesa/main/get_gen_es.py
+++ b/src/mesa/main/get_gen_es.py
@@ -584,6 +584,7 @@ def EmitGetFunction(stateVars, returnType, API):
function = "_es%d_GetFixedv" % API
else:
abort()
+ mesa_function = "_mesa_" + function[5:]
print "void GLAPIENTRY"
print "%s( GLenum pname, %s *params )" % (function, strType)
@@ -634,11 +635,20 @@ def EmitGetFunction(stateVars, returnType, API):
print " }"
print "}"
print ""
+
+ print "#if !FEATURE_GL"
+ print "/* define _mesa_ version for internal use */"
+ print "void GLAPIENTRY"
+ print "%s( GLenum pname, %s *params )" % (mesa_function, strType)
+ print "{"
+ print " %s(pname, params);" % (function)
+ print "}"
+ print "#endif /* !FEATURE_GL */"
return
-def EmitHeader():
+def EmitHeader(API):
"""Print the get.c file header."""
print """
/***
@@ -656,8 +666,11 @@ def EmitHeader():
#include "main/state.h"
#include "main/texcompress.h"
#include "main/framebuffer.h"
+"""
+ print "#if FEATURE_ES%d" % (API)
+ print """
/* ES1 tokens that should be in gl.h but aren't */
#define GL_MAX_ELEMENTS_INDICES 0x80E9
#define GL_MAX_ELEMENTS_VERTICES 0x80E8
@@ -778,13 +791,16 @@ static GLenum compressed_formats[] = {
def EmitAll(stateVars, API):
- EmitHeader()
+ EmitHeader(API)
EmitGetFunction(stateVars, GLboolean, API)
EmitGetFunction(stateVars, GLfloat, API)
EmitGetFunction(stateVars, GLint, API)
if API == 1:
EmitGetFunction(stateVars, GLfixed, API)
+ # close the #if emitted in EmitHeader
+ print "#endif /* FEATURE_ES%d */" % (API)
+
def main(args):
# Determine whether to generate ES1 or ES2 queries