platform_build_soong/java
Ulya Trafimovich 8130c482ab Move part of logic from construct_context.py to Soong.
construct_context.py is a script that runs at Ninja stage and constructs
class loader context arguments for dex2oat. Previously it accepted lists
of library paths and concatenated them into one class loader context
string. The script also handled the dependency of "android.hidl.manager"
on "android.hidl.base" that is not tracked by the build system and must
be handled in a special way.

Now that class loader context representation is going to change from
flat lists to trees, passing paths to individual libraries as script
arguments is no longer possible, because a list of paths cannot
represent a class loader context tree. Passing the trees in a serialized
form is also inconvenient, because the script would have to parse them,
which would complicate it a lot.

Therefore this patch ports all the concatenation and "android.hidl.base"
handling to Soong. It is not possible to port the remaining script to
Soong because Soong has no information about the targetSdkVersiion of
the dexpreopted apps (it is in the manifest and sometimes in an APK, and
has to be extracted at Ninja time).

Test: construct_context_test.py
Test: new subtests in TestUsesLibs
Test: lunch aosp_cf_x86_phone-userdebug && m
Bug: 132357300
Change-Id: Icdb03cf00d1e27e4cff3844b89bfaec4de502dd7
2020-10-27 17:05:30 +00:00
..
config Merge Android R (rvc-dev-plus-aosp-without-vendor@6692709) 2020-08-29 01:17:45 -07:00
Android.bp Add hidden_api for java_import 2020-09-10 07:56:03 -07:00
OWNERS Add ART folks to owner of dexpreopt related file. 2019-04-30 15:33:49 +01:00
aapt2.go Add rules to handle asset resources. 2020-01-16 12:19:49 -08:00
aar.go Export proguard_flags_files from android_librarys 2020-10-22 21:07:35 +00:00
android_manifest.go Consistently use default install path for compatibility <uses-library>. 2020-09-11 11:31:22 +01:00
android_resources.go Apply PRODUCT_ENFORCE_RRO_TARGETS to dependencies. 2020-10-12 10:34:36 -07:00
androidmk.go Merge "Remove jdiff support from droiddoc" 2020-10-13 07:08:13 +00:00
androidmk_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
app.go Add separate dependency tags for compat libs based on SDK version. 2020-10-27 17:05:30 +00:00
app_builder.go Merge "Merge Android R" 2020-09-10 17:22:09 +00:00
app_test.go Move part of logic from construct_context.py to Soong. 2020-10-27 17:05:30 +00:00
builder.go Check UseRBE is set before replacing any template with the RE version. 2020-09-03 01:29:49 -04:00
device_host_converter.go Collect paths to transitive SDK Java library dependencies. 2020-08-19 13:51:21 +01:00
device_host_converter_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
dex.go Fix proguard_usage.zip with USE_RBE=true RBE_R8=true 2020-09-17 18:56:43 +00:00
dexpreopt.go Remove global state from apex modules 2020-10-06 13:39:57 -07:00
dexpreopt_bootjars.go Rename ART release APEX to com.android.art. 2020-10-21 15:41:02 +01:00
dexpreopt_bootjars_test.go Move the intermediate directory for ART boot images. 2020-10-19 20:42:46 +01:00
dexpreopt_config.go Move the intermediate directory for ART boot images. 2020-10-19 20:42:46 +01:00
dexpreopt_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
droiddoc.go Make highmem classification of metalava optional 2020-10-26 11:38:40 +00:00
gen.go Shard aidl compiles into srcjars 2019-10-04 14:00:36 -07:00
genrule.go Dedup java genrule module type registration 2019-12-19 19:19:40 +00:00
hiddenapi.go Rename class2greylist 2020-08-13 17:33:14 +01:00
hiddenapi_singleton.go Tag removed APIs as such in hiddenapi_flags.csv. 2020-10-21 15:52:15 +01:00
hiddenapi_singleton_test.go Switch BootJars/UpdatableBootJars to ConfiguredJarList 2020-10-27 10:36:29 +00:00
jacoco.go Use a default exclude filter for JaCoCo in Soong. 2020-07-08 19:29:10 +00:00
jacoco_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
java.go Add separate dependency tags for compat libs based on SDK version. 2020-10-27 17:05:30 +00:00
java_resources.go Track sources for srcjars across modules 2019-05-06 14:22:26 -07:00
java_test.go Make highmem classification of metalava optional 2020-10-26 11:38:40 +00:00
jdeps.go Add soong cc and java deps to general-tests dist 2020-07-07 22:41:31 +00:00
jdeps_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
kotlin.go Support kotlin multiplatform sources 2020-07-06 17:58:09 -07:00
kotlin_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
legacy_core_platform_api_usage.go Merge Android R (rvc-dev-plus-aosp-without-vendor@6692709) 2020-08-29 01:17:45 -07:00
lint.go Remove global state from apex modules 2020-10-06 13:39:57 -07:00
lint_defaults.txt Add support for running Android lint on java and android modules. 2020-06-18 11:01:47 -07:00
platform_compat_config.go Add support for compat config in APEX. 2020-02-05 13:33:50 +00:00
plugin.go Consolidate adding common java properties 2020-06-18 11:01:47 -07:00
plugin_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
prebuilt_apis.go Add imports_compile_dex to prebuilt_apis 2020-09-02 09:27:35 -07:00
proto.go Default to compiling lite protos 2019-10-26 20:35:13 +00:00
robolectric.go Make robolectric runtimes a host module 2020-09-15 11:26:12 -07:00
sdk.go Add support for using sdk_version: "module_<ver>" 2020-09-30 16:20:17 +01:00
sdk_library.go Make test api extend system in sdk_library.go 2020-10-13 08:25:00 +01:00
sdk_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
support_libraries.go Allow other module types in androidx 2019-07-22 13:18:48 -07:00
sysprop.go Create public stub for platform's sysprop_library 2019-12-19 09:35:23 +09:00
system_modules.go Remove old SdkMemberType API for creating snapshot modules 2020-04-22 12:51:45 +01:00
testing.go Unify handling of compat and normal libs in class loader contexts. 2020-10-27 17:05:30 +00:00
tradefed.go Add tradefed_java_library_host 2019-10-18 15:14:15 -07:00