There exists an LGPL licensed library known as librsvg. The library can be found at the following site: [login to view URL]
While the library is advertised as requiring only libxml and libart at a minimum, this is in fact not quite the case. The library additionally requires GLib and GDK+, which come with their own dependencies as well. In short, it is impossible to build a truly standalone version of libxml (even with libxml and libart).
The goal of this project is to be able to build librsvg as a standalone library.
**Recommended approaches:
**
1) Modify librsvg so that it does not require Glib, GDK+, etc. This would involve creating a new pixmap class, replacing the use of gdk pixmap within librsvg. This would also require replacing uses of Glib with standard C libraries.
2) Borrow from the GDK+ and GLib "lite" GDK pixmap and Glib that will fulfill the minimal requirements of librsvg. Simple linking into Glib and GDK+ is NOT acceptable.
3) Alternative approaches will be considered, but must be well defined.
**Solution requirements:**
All code MUST be either LGPL, MIT, or proprietary. GPL code is not acceptable.
The final solution must be standalone with no external requirements other than the standard C/C++ library. (It is additionally acceptable to require libxml and/or libart).
Preference will be given to solutions that are designed around either Apple's XCode, or a Visual Studio Express project. (A modified ./configure + autotools is less likely to be accepted, but will be considered.)
The final solution should have a basic test program to demonstrate the functionality. A program that can read an SVG file and output a BMP or PNG is sufficient.
## Deliverables
Note: Payment will be made via PayPal upon completion of the project (including demonstration of a working test program.)