summaryrefslogtreecommitdiff
path: root/src/mesa/glapi
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/glapi')
-rw-r--r--src/mesa/glapi/Makefile10
-rw-r--r--src/mesa/glapi/glX_proto_recv.py21
-rw-r--r--src/mesa/glapi/glX_proto_size.py12
3 files changed, 12 insertions, 31 deletions
diff --git a/src/mesa/glapi/Makefile b/src/mesa/glapi/Makefile
index 2f8da126b8..c52c090347 100644
--- a/src/mesa/glapi/Makefile
+++ b/src/mesa/glapi/Makefile
@@ -26,6 +26,8 @@ GLX_DIR = $(XORG_BASE)/GL/glx
SERVER_OUTPUTS = $(GLX_DIR)/indirect_dispatch.c \
$(GLX_DIR)/indirect_dispatch_swap.c \
$(GLX_DIR)/indirect_dispatch.h \
+ $(GLX_DIR)/indirect_reqsize.c \
+ $(GLX_DIR)/indirect_reqsize.h \
$(GLX_DIR)/indirect_size_get.c \
$(GLX_DIR)/indirect_size_get.h \
$(GLX_DIR)/indirect_table.c
@@ -37,7 +39,7 @@ API_XML = gl_API.xml \
COMMON = gl_XML.py glX_XML.py license.py $(API_XML) typeexpr.py
COMMON_GLX = $(COMMON) glX_API.xml glX_XML.py glX_proto_common.py
-INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce
+INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce -T GLubyte -T GLbyte -T Bool
all: $(OUTPUTS)
@@ -104,6 +106,12 @@ $(GLX_DIR)/indirect_size_get.h: $(COMMON_GLX) glX_proto_size.py
$(GLX_DIR)/indirect_size_get.c: $(COMMON_GLX) glX_proto_size.py
$(PYTHON2) $(PYTHON_FLAGS) glX_proto_size.py -m size_c | indent $(INDENT_FLAGS) > $@
+$(GLX_DIR)/indirect_reqsize.h: $(COMMON_GLX) glX_proto_size.py
+ $(PYTHON2) $(PYTHON_FLAGS) glX_proto_size.py -m reqsize_h --only-get -h '_INDIRECT_SIZE_GET_H_' | indent $(INDENT_FLAGS) -l200 > $@
+
+$(GLX_DIR)/indirect_reqsize.c: $(COMMON_GLX) glX_proto_size.py
+ $(PYTHON2) $(PYTHON_FLAGS) glX_proto_size.py -m reqsize_c | indent $(INDENT_FLAGS) > $@
+
$(GLX_DIR)/indirect_table.c: $(COMMON_GLX) glX_server_table.py glX_API.xml
$(PYTHON2) $(PYTHON_FLAGS) glX_server_table.py -f gl_and_glX_API.xml > $@
diff --git a/src/mesa/glapi/glX_proto_recv.py b/src/mesa/glapi/glX_proto_recv.py
index 527f6f10ee..20f75575cf 100644
--- a/src/mesa/glapi/glX_proto_recv.py
+++ b/src/mesa/glapi/glX_proto_recv.py
@@ -81,31 +81,12 @@ class PrintGlxDispatchFunctions(glX_proto_common.glx_print_proto):
print '#include <GL/gl.h>'
print '#include <GL/glxproto.h>'
-
- # FIXME: Since this block will require changes as other
- # FIXME: platforms are added, it should probably be in a
- # FIXME: header file that is not generated by a script.
-
- if self.do_swap:
- print '#ifdef __linux__'
- print '#include <byteswap.h>'
- print '#elif defined(__OpenBSD__)'
- print '#include <sys/endian.h>'
- print '#define bswap_16 __swap16'
- print '#define bswap_32 __swap32'
- print '#define bswap_64 __swap64'
- print '#else'
- print '#include <sys/endian.h>'
- print '#define bswap_16 bswap16'
- print '#define bswap_32 bswap32'
- print '#define bswap_64 bswap64'
- print '#endif'
-
print '#include <inttypes.h>'
print '#include "indirect_size.h"'
print '#include "indirect_size_get.h"'
print '#include "indirect_dispatch.h"'
print '#include "glxserver.h"'
+ print '#include "glxbyteorder.h"'
print '#include "indirect_util.h"'
print '#include "singlesize.h"'
print '#include "glapitable.h"'
diff --git a/src/mesa/glapi/glX_proto_size.py b/src/mesa/glapi/glX_proto_size.py
index 18bfa1b71b..2b9a643362 100644
--- a/src/mesa/glapi/glX_proto_size.py
+++ b/src/mesa/glapi/glX_proto_size.py
@@ -447,18 +447,10 @@ class PrintGlxReqSize_c(PrintGlxReqSize_common):
print ''
print '#include <GL/gl.h>'
print '#include "glxserver.h"'
+ print '#include "glxbyteorder.h"'
print '#include "indirect_size.h"'
print '#include "indirect_reqsize.h"'
print ''
- print '#if defined(linux)'
- print '# include <byteswap.h>'
- print '# define SWAP_32(v) do { (v) = bswap_32(v); } while(0)'
- print '#else'
- print '# include <X11/misc.h>'
- print '# define SWAP_32(v) do { char tmp; swapl(&v, tmp); } while(0)'
- print '#endif'
-
- print ''
print '#define __GLX_PAD(x) (((x) + 3) & ~3)'
print ''
print '#if defined(__CYGWIN__) || defined(__MINGW32__)'
@@ -538,7 +530,7 @@ class PrintGlxReqSize_c(PrintGlxReqSize_common):
if fixup:
print ' if (swap) {'
for name in fixup:
- print ' SWAP_32( %s );' % (name)
+ print ' %s = bswap_32(%s);' % (name, name)
print ' }'
return