Wrapping build is done in several steps.
This is done with CMake. During this step, the template instantiations are generated by parsing the files in Wrapping/WrapITK/Libraries. For each macro call of the template instantiation process, some callback macros specific of each language generator are called to generate the files and the commands needed to build the wrappers.
Everything is done in the 'Libraries' directory. The instantiations are separated in two levels:
- the libraries, which are grouping several modules. Generally, one binary for a target language contains all the instantiations from one library;
- the modules, inside those libraries. Each module groups several template instantiations. The swig interface generator generates one '.i' file per module.
Several macros are available to simplify the template instantiations.
Everything is done in the 'Languages' directory.