Ok, the shared lib is looking good. Compiles cleanly and the game runs.
Now for the fun part
As with shared lib, there will be more stuff in the diffs than is actually missing. Unfortunate perhaps, but at least we don't have to add more code that could break things
Here's what I'm thinking, do the files one at a time (or two, if there are changes in header and module file).
Upon adding some code, tag it with a merge comment...
//MERGE ADD START
addedNewCodeHere ();
//MERGE ADD END
Where deletion of code is called for, just comment out the code and tag it thus
//MERGE DELETE START
/*
someOldCode ();
thatWeDontWant ();
*/
//MERGE DELETE END
Edit: for one line additions/deletions, use //MERGE ADD, or //MERGE DELETE, immediately before the line, omit the START and corresponding END.
Once you've done the file, try to compile it. If it compiles move on, if not then find the offending undeclared function call(s) or variables or whatever they are, and comment it(/them) out...
//MERGE ADD START
//addedNewCodeHere ();
//butItWontCompileYet ();
//MERGE ADD END
Probably best to keep
//MERGE ADD START
//MERGE ADD END
//MERGE DELETE START
//MERGE DELETE END
in the clipboard, the idea is changes will be easy to find later with a grep/find all. So, no typos!
It'll be a bit tedious, but I think a bit of care here will help a lot later.
We'll do the "bit's and pieces" first, and the 'world' and 'game' directories last,
I'm going to start on the 'facilities' and 'menu' directories now, let me know when you're ready and I'll mail some patches through...
PS: diff just pulled the files in alphabetically, so afile.cpp comes before afile.h, make sure to check for header changes before you try to compile a *.cpp.