I do this:
1. Open the ContribPlugins.workspace
2. Activate (if yet not) the CodeStat project
3. Open the codestat.cpp file
4. Insert an empty line into a file beginning
5. Press Ctrl-F9
6. Ok, "*" is gone (saved, and compiled now)
So, I try this:
1. Open the codestat project properties
2. Check "This is a custom Makefile"
3. Activate (if yet not) the CodeStat project
4. Open the codestat.cpp file
5. Insert an empty line into a file beginning
6. Press Ctrl-F9
7.

"*" no gone. Changes no saved.
== Build log start
mingw32-make.exe: Makefile: No such file or directory
mingw32-make.exe: *** No rule to make target `Makefile'. Stop.
Process terminated with status 2 (0 minutes, 0 seconds)
0 errors, 0 warnings
== Build log end
It's right, codestat have no makefile.
Resume: on an external makefile, a modified file(s) don't saved before the makefile is called