GSoC/GCI Archive
Google Code-in 2013 Copyleft Games

PySoy: Write Waf GLSL Tool

completed by: Ondrej Skopek

mentors: Anthus Williams, Arc Riley, David Czech

Waf is written in Python and supports adding additional tools for building different kinds of source files, different platform targets, etc. For example, our genie.py tool finds valac, uses it to build all our .gs files to .c, and then lets waf's standard compiler_c tool do the rest.

Write a new tool called glsl.py which builds a build/*/*.glslv.c file for each .glslv file, a build/*/*.glslf.c for each .glslf file, and a single build/*/glsl.h and build/*/glsl.vapi file for all .glsl* source files which allows Genie and the generated .gs.c files to use the C strings in code.

Upgrade our wscripts to use this new tool and refactor our existing shaders to separate files in order to test and show this tool is working properly.

While working on this task you should join and remain in #PySoy on Freenode to get help, feedback, and guidance from mentors and other developers.

When you've done, commit your work and post the resulting changeset url to this task.