#!/usr/bin/python
import sys
+import os
if len(sys.argv)<2:
print """Usage:
sys.exit(0)
ext = sys.argv[1]
+out_base = None
+if ext.endswith(".glext"):
+ fn = ext
+ ext = None
+ ver = None
+ secondary = []
+ for line in open(fn):
+ parts = line.split()
+ if parts[0]=="extension":
+ ext = parts[1]
+ elif parts[0]=="core_version":
+ ver = parts[1]
+ elif parts[0]=="secondary":
+ secondary.append(parts[1])
+ if len(sys.argv)>=3:
+ out_base = os.path.splitext(sys.argv[2])[0]
+else:
+ secondary = sys.argv[2:]
+ ver = None
+ if secondary and secondary[0][0].isdigit():
+ ver = secondary.pop(0)
+
exttype = ext.split('_')[0]
-secondary = sys.argv[2:]
-ver = None
-if secondary and secondary[0][0].isdigit():
- ver = secondary.pop(0)
bp_ext = None
+if not out_base:
+ out_base = ext.lower()
+
class Function:
def __init__(self, name):
self.name = name
if ver:
ver = map(int, ver.split('.'))
-out = file(ext.lower()+".h", "w")
+out = file(out_base+".h", "w")
out.write("#ifndef MSP_GL_%s_\n"%ext.upper())
out.write("#define MSP_GL_%s_\n"%ext.upper())
out.write("""
-#include "extension.h"
-#include "gl.h"
+#include <msp/gl/extension.h>
+#include <msp/gl/gl.h>
#include <GL/glext.h>
namespace Msp {
#endif
""")
-out = file(ext.lower()+".cpp", "w")
+out = file(out_base+".cpp", "w")
out.write("#include \"%s.h\"\n"%ext.lower())
out.write("""