executables are not rebuilt if they dont need to be