Disable symlink optimizations in the Testing ART APEX.

Because the Testing ART APEX (`com.android.art.testing`) is
non-updatable, some of its native shared libraries (implicitly added
as dependencies) -- shared with the platform (currently,
`libbacktrace`, `libbase`, `libc++`, `libcrypto`, `liblz4`, `liblzma`,
`libmeminfo`, `libprocinfo`, `libunwindstack`, and `libziparchive`) --
are eligible to the symlink optimization (b/144533348).

As we want this APEX to be self-contained (for testing purposes), we
want to package these dependencies in this APEX (instead of symbolic
links to their counterparts on the `system` partition, which may not
even exist, as in the case of `libbacktrace`). Marking this APEX as
"future updatable" disables all symlink optimizations for it.

Note that the symlink optimization can currently create broken
symlinks), in the case where a dependency is no longer installed in
the `system` partition (b/233357459) -- this was recently the case of
`libbacktrace`.

Also add a check to script `build/apex/art_apex_test.py` to prevent
any regression.

Test: art/build/apex/runtests.sh
Test: atest ArtGtestsTargetChroot
Bug: 232790938
Change-Id: Ic2ebb133f597b7f3d4d0486d8ead5d9746dae776
2 files changed