Removing $target did the trick perfectly, thanks! Now I'm seeing the "right" errors. I did say I was trying to port a program, after all. Except now it's a lot quicker for me to do what has to be done.
I do have a follow up question. I noticed that the Make commands screen was laid out in a tree. The project as the root, and then Debug and Release as leaves. What got me was the project had the make options too, which were independent of Debug and Release. I removed $target from that too, but if it's neither debug or release when is it used?
I don't really have much of an option for debugging so the flags are largely irrelevant. Because I'm cross-compiling I can't run it via the IDE either. It's no big deal.
Thanks for the help. I really appreciated it. I wasn't even sure if I could get GCCSDK to work right with Code::Blocks initially because of the ro-make wrapper for make, and the slightly odd directory tree for the toolchain. But it all seems to work fine.