summaryrefslogtreecommitdiffstats
path: root/tools/glwrapper/makewrapper.py
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2016-09-01 22:10:20 +0200
committerRémi Verschelde <rverschelde@gmail.com>2016-09-05 07:49:22 +0200
commitae9729b6df885eb04c63501b33399d401829a76a (patch)
tree9aeccaf18bd852a516ea137f2347f9a634993d34 /tools/glwrapper/makewrapper.py
parent08e5e8794aceff8de4a928d1876c6af88601a5db (diff)
downloadredot-engine-ae9729b6df885eb04c63501b33399d401829a76a.tar.gz
Move various scripts to the "scripts" folder
Thus cleaning up the "tools" folder a bit.
Diffstat (limited to 'tools/glwrapper/makewrapper.py')
-rw-r--r--tools/glwrapper/makewrapper.py183
1 files changed, 0 insertions, 183 deletions
diff --git a/tools/glwrapper/makewrapper.py b/tools/glwrapper/makewrapper.py
deleted file mode 100644
index 2e5f06be12..0000000000
--- a/tools/glwrapper/makewrapper.py
+++ /dev/null
@@ -1,183 +0,0 @@
-#! /usr/bin/python
-import sys
-
-if (len(sys.argv)<2):
- print("usage: makewrapper.py <headers>")
- sys.exit(255)
-
-
-functions=[]
-types=[]
-constants=[]
-
-READ_FUNCTIONS=0
-READ_TYPES=1
-READ_CONSTANTS=2
-
-read_what=READ_TYPES
-
-for x in (range(len(sys.argv)-1)):
- f=open(sys.argv[x+1],"r")
-
- while(True):
-
- line=f.readline()
- if (line==""):
- break
-
- line=line.replace("\n","").strip()
- """
- if (line.find("[types]")!=-1):
- read_what=READ_TYPES
- continue
- elif (line.find("[constants]")!=-1):
- read=READ_TYPES
- continue
- elif (line.find("[functions]")!=-1):
- read_what=READ_FUNCTIONS
- continue
- """
-
- if (line.find("#define")!=-1):
- if (line.find("0x")==-1 and line.find("GL_VERSION")==-1):
- continue
- constants.append(line)
- elif (line.find("typedef")!=-1):
- if (line.find("(")!=-1 or line.find(")")!=-1 or line.find("ARB")!=-1 or line.find("EXT")!=-1 or line.find("GL")==-1):
- continue
- types.append(line)
- elif (line.find("APIENTRY")!=-1 and line.find("GLAPI")!=-1):
-
- if (line.find("ARB")!=-1 or line.find("EXT")!=-1 or line.find("NV")!=-1):
- continue
-
- line=line.replace("APIENTRY","")
- line=line.replace("GLAPI","")
-
- glpos=line.find(" gl")
- if (glpos==-1):
-
- glpos=line.find("\tgl")
- if (glpos==-1):
- continue
-
- ret=line[:glpos].strip();
-
- line=line[glpos:].strip()
- namepos=line.find("(")
-
- if (namepos==-1):
- continue
-
- name=line[:namepos].strip()
- line=line[namepos:]
-
- argpos=line.rfind(")")
- if (argpos==-1):
- continue
-
- args=line[1:argpos]
-
- funcdata={}
- funcdata["ret"]=ret
- funcdata["name"]=name
- funcdata["args"]=args
-
- functions.append(funcdata)
- print(funcdata)
-
-
-
-#print(types)
-#print(constants)
-#print(functions)
-
-
-f=open("glwrapper.h","w")
-
-f.write("#ifndef GL_WRAPPER\n")
-f.write("#define GL_WRAPPER\n\n\n")
-
-header_code="""\
-#if defined(__gl_h_) || defined(__GL_H__)
-#error gl.h included before glwrapper.h
-#endif
-#if defined(__glext_h_) || defined(__GLEXT_H_)
-#error glext.h included before glwrapper.h
-#endif
-#if defined(__gl_ATI_h_)
-#error glATI.h included before glwrapper.h
-#endif
-
-#define __gl_h_
-#define __GL_H__
-#define __glext_h_
-#define __GLEXT_H_
-#define __gl_ATI_h_
-
-#define GL_TRUE 1
-#define GL_FALSE 0
-
-#define GL_ZERO 0
-#define GL_ONE 1
-#define GL_NONE 0
-#define GL_NO_ERROR 0
-
-\n\n
-"""
-
-f.write("#include <stddef.h>\n\n\n")
-
-f.write(header_code);
-
-f.write("#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n\n")
-f.write("#if defined(_WIN32) && !defined(__CYGWIN__)\n")
-f.write("#define GLWRP_APIENTRY __stdcall\n")
-f.write("#else\n");
-f.write("#define GLWRP_APIENTRY \n")
-f.write("#endif\n\n");
-for x in types:
- f.write(x+"\n")
-
-f.write("\n\n")
-
-for x in constants:
- f.write(x+"\n")
-
-f.write("\n\n")
-
-for x in functions:
- f.write("extern "+x["ret"]+" GLWRP_APIENTRY (*__wrapper_"+x["name"]+")("+x["args"]+");\n")
- f.write("#define "+x["name"]+" __wrapper_"+x["name"]+"\n")
-
-f.write("\n\n")
-f.write("typedef void (*GLWrapperFuncPtr)(void);\n\n");
-f.write("void glWrapperInit( GLWrapperFuncPtr (*wrapperFunc)(const char*) );\n")
-
-f.write("#ifdef __cplusplus\n}\n#endif\n")
-
-f.write("#endif\n\n")
-
-f=open("glwrapper.c","w")
-
-f.write("\n\n")
-f.write("#include \"glwrapper.h\"\n")
-f.write("\n\n")
-
-for x in functions:
- f.write(x["ret"]+" GLWRP_APIENTRY (*__wrapper_"+x["name"]+")("+x["args"]+")=NULL;\n")
-
-f.write("\n\n")
-f.write("void glWrapperInit( GLWrapperFuncPtr (*wrapperFunc)(const char*) ) {\n")
-f.write("\n")
-
-for x in functions:
- f.write("\t__wrapper_"+x["name"]+"=("+x["ret"]+" GLWRP_APIENTRY (*)("+x["args"]+"))wrapperFunc(\""+x["name"]+"\");\n")
-
-f.write("\n\n")
-f.write("}\n")
-f.write("\n\n")
-
-
-
-