[ios] Pass zipped xcassets to compile_xcassets.py.

The existing mechanism of hardlinking individual assets fails when an
asset is renamed, because stale files remain in the output directory,
and actool operates on the entire directory at once.

Sidestep the problem of stale files by creating a zip file with the
assets for each target, then extracting those zips to a temporary
directory and passing the result to actool. Since we extract to a new
temp directory each time, stale files cannot exist.

Bug: 332929378
Change-Id: I26e829bd625fcdbba1a87e75c76a21024f58415d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5454598
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Commit-Queue: Rohit Rao <rohitrao@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1288230}
NOKEYCHECK=True
GitOrigin-RevId: 311b90905db03b8c72301fc1a969b2ea67d51cd5
1 file changed