Avoid half-written sys.o files

If make is interrupted while generating sys.o (and this step takes a long time), then an empty sys.o file may be left. If make is then re-run, it will not attempt to re-generate sys.o, requiring a "make clean".