At the time I wrote that, I was just doing New Project->Makefile Project With Existing Code, and selecting MinGW as the toolchain.
I progressed a long way since then. You can de-nobble CodeWarrior, and restore MinGW/x86 capabilities as follows:
Window->Preferences->General->Capabilities->Advanced->Development and select "Generic C/C++ GNU Development".
Now you'll be able to create MinGW/x86 C++ Projects when you create a new project. And run GDB to debug x86 executables.
For my initial question, I ended up sticking with building the libraries as MinGW C (not C++) libs, and building my unit test x86 executables as C++, linking the C libraries. I had to stub hardware registers in C, not using C++ template magic - this was unfortunate, but tolerable.
So I can now build my code as target applications, or build it for on-host unit testing. I have CppUTest, GCov, pmccabe, Doxygen, (and soon FlexeLint) all integrated into my build configurations within Code Warrior. Also got Git and Atlassian Connector in my CodeWarrior.