{
in_suffix ".glsl";
out_suffix ".cpp";
- command "scripts/resgen.py";
+ command "mspdatatool";
+ arguments "-i" "-n" "Msp::GL";
+ out_argument "-o";
processing_unit DIRECTORY;
};
+++ /dev/null
-#!/usr/bin/python
-
-import sys
-import os
-
-def makename(text):
- result = ""
- for c in text:
- if c.isalnum():
- result += c
- else:
- result += '_'
- return result
-
-def escape_char(c):
- if c=='\t':
- return "\\t"
- elif c=='\n':
- return "\\n"
- elif c=='"':
- return "\\\""
- else:
- return c
-
-out = open(sys.argv[-1], "w")
-
-out.write("""#include <msp/datafile/builtinsource.h>
-
-namespace Msp {
-namespace GL {
-
-""")
-
-objects = {}
-for fn in sys.argv[1:-1]:
- in_base = os.path.split(fn)[1]
- name = makename(in_base)+"_data"
- objects[in_base] = name
- out.write("const char {}[] =\n".format(name))
- data = open(fn).read()
- line = ""
- for c in data:
- line += escape_char(c)
- if len(line)>=68:
- out.write("\t\"{}\"\n".format(line))
- line = ""
- out.write("\t\"{}\";\n\n".format(line))
-
-out_base = os.path.splitext(os.path.split(sys.argv[-1])[1])[0]
-out.write("void init_{}(DataFile::BuiltinSource &source)\n{{\n".format(makename(out_base)))
-for n, d in objects.items():
- out.write("\tsource.add_object(\"{}\", {});\n".format(n, d))
-out.write("}\n")
-
-out.write("""
-} // namespace GL
-} // namespace Msp
-""")