Write raw files to disk instead of the ninja file
Writing raw files as rules in the ninja file unnecessarily bloats the ninja file. Write files immediately to disk instead to files based on the hash of the contents, and then emit ninja rules to copy the files into place during the build. Delete obsolete files in a singleton at the end of analysis. Bug: 306029038 Test: Run: m libc_musl_version.h touch build/soong/Android.bp m libc_musl_version.h libc_musl_version.h/genrule.sbox.textproto is not recopied. Test: Run: lunch aosp_cf_x86_64_phone-userdebug m libc_musl_version.h lunch aosp_x86_64-userdebug m libc_musl_version.h lunch aosp_cf_x86_64_phone-userdebug m libc_musl_version.h libc_musl_version.h/genrule.sbox.textproto is recopied but restat prevents rerunning the genrule. Test: Run: touch out/soong/raw-aosp_cf_x86_64_phone/00/foo touch build/soong/Android.bp m nothing out/soong/raw-aosp_cf_x86_64_phone/00/foo is removed. Change-Id: I172869c4d49565504794c051e2e8c1f7cf46486e
Loading
Please register or sign in to comment