Fixes for the Jenkins C++ job
Using the modern modules like in !1971 (merged). Very messy so wondering if we want to continue to support this. More work needed on the function pointer prototypes as this just touches those used in the test, there are clearly many others that should also be cast. Should probably do a proper job and not just cast these to void *, that is used the function prototype signatures in the top-level files.
Edited by Peter W. Draper