GSoC/GCI Archive
Google Code-in 2013 Copyleft Games

PySoy: Waf Static Dependency Download

completed by: Matt Habel

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.

For several platforms we use static libraries, rather than system-wide shared libraries, for most or all of libsoy's dependencies to simplify distribution. On these platforms we generally put those static libraries on our mirror server to use for building.

Create a new tool which, instead of building the libraries we need, downloads them from a specified URL to the appropriate directory in build/ and informs waf of their path for static linking.

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.