Do trial generation of Makefile.tcl and do not clear if Makefile.tcl was unchanged.
The generation of Makefile.tcl is explicit and it overwrites the existing Makefile.tcl.
When Makefile.tcl regeneration is detected, the building process does 'clean' automatically. Sometimes, however, the only change done in Silverball file was some comment or cosmetics, which did not influence on the form of Makefile.tcl at all.
It's needed to make a generation of Makefile to a temporary file, and then rename it to the target name, when it's different than the previous form. This way the makefile generation will not be detected, if it was unchanged.