Use ninja rspfile for list of provenance metadata file of modules, in case there are many provenance metadata files and the list might exceed the command line length limit.

Bug: 297350341
Test: CIs & manual test
Change-Id: Iff4da6de019d62d7ce8545241b3a289cff0f33de
This commit is contained in:
Wei Li 2023-08-24 23:19:30 -07:00
parent b0e1035417
commit 04e4dfa26e

View file

@ -38,7 +38,9 @@ var (
Command: `rm -rf $out && ` + Command: `rm -rf $out && ` +
`echo "# proto-file: build/soong/provenance/proto/provenance_metadata.proto" > $out && ` + `echo "# proto-file: build/soong/provenance/proto/provenance_metadata.proto" > $out && ` +
`echo "# proto-message: ProvenanceMetaDataList" >> $out && ` + `echo "# proto-message: ProvenanceMetaDataList" >> $out && ` +
`for file in $in; do echo '' >> $out; echo 'metadata {' | cat - $$file | grep -Ev "^#.*|^$$" >> $out; echo '}' >> $out; done`, `cat $out.rsp | tr ' ' '\n' | while read -r file || [ -n "$$file" ]; do echo '' >> $out; echo 'metadata {' | cat - $$file | grep -Ev "^#.*|^$$" >> $out; echo '}' >> $out; done`,
Rspfile: `$out.rsp`,
RspfileContent: `$in`,
}) })
) )