hub-cap/sneaky-pete — pull request #13 by TimSimpsonR (2011-10-10 21:25:31+00:00)
Title: Added APT functionality and other fun stuff

Added APT functionality along with several utility classes, cleaned up build file.

* Added wrapper classes to the JSON stuff to avoid having to check for errors in every single spot. Updated the code to use these.
* Added APT functionality. I wanted to use the real native APT code but so much of the functionality in apt-get is not easily callable. We'll look at doing it the real way later, for now I'm calling the process the same way we did in the Python guest.
* Simply calling apt-get was not as easy as I'd have liked either. I created a Process class to help with this along with a IO module which uses the SIGALRM signal for time outs.
* Coded the JSON part of the apt code and wrote tests for it which execute seperately.
* Polished the Jamroot.jam file. There were issues in Boost Build with referring to the same source file from multiple targets, so I created a custom rule making it easy (I hope anyway) to define a compilation unit, its unit-test code, and the dependencies it requires. Before, the lib dependency was dependent on all the unit tests. Now each unit is dependent on its own tests, and anything which uses that unit can only run if the tests pass.