This is my custom fork of Mono.Cxxi that aims to replace the GCC-XML parser with a Clang-based one, and remove all the C++-ABI specific code for things like object layout and name mangling from the runtime library while replacing it with metadata generated by Clang (it already provides all the needed info). This is a work-in-progress and is currently unusable for real work. Directory structure ------------------- Manual.md Work-in-progress documentation for this tool. src/ Mono.Cxxi The runtime library Bridge Contains the needed classes to bridge the parser and the generator. Parser C++/CLI based wrapper around the C++ Clang libraries. Generator The Clang-based binding generator GCCGenerator The GCC-XML based binding generator (deprecated) qt Auto generated Qt bindings + test program tests/ Regression tests examples/ Hello Small, Hello, World! example Inlining -------- Inline methods are mapped to a shared library name libFoo-inline.so where libFoo.so is the original shared library we are binding to. This library should be compiled using gcc's -fkeep-inline-functions option: g++ `pkg-config --cflags QtCore QtGui` --shared -fPIC -o libQtGui-inline.so -fkeep-inline-functions qt-gui.cpp `pkg-config --libs QtCore QtGui`