#69 Option to break output into header/implementation files

Zack S.

I use SWIG regularly to produce a Lua wrapper for over a hundred classes. Each class is dependent upon many others, which are in turn dependent upon many others. It simplifies my development a lot to produce one very large wrapper file that can be compiled as one large module rather than producing a large number of smaller modules.

That said, I have several programs that I build that need to be able to make use of the module. At the moment, because the module is a single .cxx file, the module ends up being recompiled into each program's executable. This makes my build process take a tremendous amount of time.

It would be fantastic if SWIG could produce both a .h and a .cxx file for the wrapper. That way I would be able to #include the header file into each of my programs and compile the module itself only once per project build.

I'm a big fan of SWIG. Thanks for making such a great tool!