As a rule of thumb, if anything under src/emu or the makefile changes do a clean build. That doesn't cover all cases, but it's a reasonable heuristic.