platform_build_soong/java
Ulya Trafimovich fc0f6e34ce Fix the way manifest fixer detects optional <uses-library> entries.
Previously manifest_fixer used a naive way to distiniguish optional libs
from required ones: it checked if a library is on the list of optional
compatibility libraries. This works for compatibility libs, but not for
other libs.

Now we properly track optionality through all stages of the build,
starting with the addition of the library as a dependency (here's where
the `uses_libs`/`optional_uses_libs` distinction kicks in), store it in
dependency tag and propagate to class loader context, and from there to
the manifest_fixer.

The tests have been updated accordingly.

Bug: 196377222
Test: lunch bertha_x86_64-userdebug && m droid dist cts mts
Change-Id: I3631ce59ebe47116ce7a9b3d33a86f636846ef0f
2021-08-13 16:10:42 +01:00
..
config Revert "Time out and dump stacks from R8 processes after 30 minutes" 2021-08-05 17:04:06 -07:00
core-libraries Move modules containing ART, conscrypt and i18n from libcore 2021-07-12 10:10:42 +01:00
aapt2.go Improve comments in java/aapt2.go 2020-11-30 14:16:02 -08:00
aar.go SdkSpec is fully using ApiLevel 2021-04-08 11:27:24 +09:00
Android.bp Add initial bp2build support for converting android_app_certificate modules. 2021-07-28 06:51:07 -04:00
android_manifest.go Fix the way manifest fixer detects optional <uses-library> entries. 2021-08-13 16:10:42 +01:00
android_resources.go Add preparer for overlay pre-singleton registration 2021-03-22 22:09:53 +00:00
androidmk.go Fix the way manifest fixer detects optional <uses-library> entries. 2021-08-13 16:10:42 +01:00
androidmk_test.go add the LOCAL_DISABLE_TEST_CONFIG variable 2021-05-27 17:53:46 -07:00
app.go Fix the way manifest fixer detects optional <uses-library> entries. 2021-08-13 16:10:42 +01:00
app_builder.go Move android package on top of remotexec 2021-03-18 16:17:34 -07:00
app_import.go Tag android_app_import's apk as android:"path" 2021-06-29 02:07:24 +09:00
app_import_test.go DO NOT MERGE - Merge ab/7272582 2021-06-17 21:41:17 +00:00
app_set.go Break up app.go. 2020-12-21 12:31:51 -08:00
app_set_test.go Remove uses of buildDir from java/app_set_test.go 2021-03-24 00:01:15 +00:00
app_test.go Fix the way manifest fixer detects optional <uses-library> entries. 2021-08-13 16:10:42 +01:00
base.go Fix the way manifest fixer detects optional <uses-library> entries. 2021-08-13 16:10:42 +01:00
boot_jars.go Disable boot jars package check if no boot jars have been configured 2021-06-22 14:55:30 +01:00
bootclasspath.go Add HiddenAPIScope to replace use of SdkKind 2021-06-24 21:56:27 +01:00
bootclasspath_fragment.go Export signature patterns to sdk snapshot 2021-08-06 14:11:14 +01:00
bootclasspath_fragment_test.go Support using java_sdk_library components in stub_libs 2021-06-30 19:36:52 +01:00
builder.go Add a build flag to always enable errorprone per-target 2021-06-14 15:31:32 -07:00
classpath_element.go Add ClasspathElement support 2021-06-18 11:46:52 +01:00
classpath_fragment.go Rename UpdatableBootJars to ApexBootJars. 2021-07-22 17:35:42 +01:00
device_host_converter.go Clear remains of java.Dependency interface. 2021-03-05 14:57:51 +00:00
device_host_converter_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
dex.go Reland: Pass jars with resources to R8 2021-08-05 23:16:38 -07:00
dexpreopt.go dexpreopt.config should be created even though unbundled image is built 2021-07-15 09:57:49 +09:00
dexpreopt_bootjars.go Merge "Rename UpdatableBootJars to ApexBootJars." 2021-07-26 17:59:36 +00:00
dexpreopt_bootjars_test.go Build boot images in bootclasspath_fragment/platform_bootclasspath 2021-05-12 21:51:27 +01:00
dexpreopt_config.go Merge "Rename UpdatableBootJars to ApexBootJars." 2021-07-26 17:59:36 +00:00
dexpreopt_test.go Replace android.BuildOs with Config.BuildOS 2021-07-20 12:46:48 -07:00
droiddoc.go Stop filtering html files from droidstubs input 2021-06-07 16:02:53 +01:00
droiddoc_test.go Remove extraneous calls to TestingBuildParams.RelativeToTop() 2021-03-30 20:03:22 +01:00
droidstubs.go Use system stubs for framework-doc-system-stubs. 2021-06-29 22:25:57 +01:00
droidstubs_test.go Use system stubs for framework-doc-system-stubs. 2021-06-29 22:25:57 +01:00
gen.go Take Module implementations out of java/java.go. 2021-03-19 15:46:38 -07:00
genrule.go
hiddenapi.go Rename UpdatableBootJars to ApexBootJars. 2021-07-22 17:35:42 +01:00
hiddenapi_modular.go Separate creation of signature patterns from overlap checking 2021-08-06 13:40:34 +01:00
hiddenapi_monolithic.go Separate creation of signature patterns from overlap checking 2021-08-06 13:40:34 +01:00
hiddenapi_singleton.go Drop "prebuilt_" prefixes from names registered in ApexInfo.InApexXxx. 2021-05-26 17:05:17 +01:00
hiddenapi_singleton_test.go Add a test for hidden API encoding of java_sdk_library 2021-05-17 18:38:06 +01:00
jacoco.go Added quotes to protect wildcard 2021-06-30 14:29:49 -04:00
jacoco_test.go Added quotes to protect wildcard 2021-06-30 14:29:49 -04:00
java.go Fix the way manifest fixer detects optional <uses-library> entries. 2021-08-13 16:10:42 +01:00
java_resources.go
java_test.go Replace android.BuildOs with Config.BuildOS 2021-07-20 12:46:48 -07:00
jdeps.go Convert java.Dependency to JavaInfo provider 2021-02-09 15:36:25 -08:00
jdeps_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
kotlin.go Silence kotlinc JDK9 warnings 2021-03-31 13:17:42 -07:00
kotlin_test.go Replace android.BuildOs with Config.BuildOS 2021-07-20 12:46:48 -07:00
legacy_core_platform_api_usage.go Merge "Add test suite to legacy core platform allowlist." am: 7d1f1cf27c am: ae3f51b415 2021-03-16 23:35:50 +00:00
lint.go make system server modules use filtered lint database 2021-07-05 16:57:34 +00:00
lint_defaults.txt Disable lint checks which do not apply in the platform 2021-07-24 14:48:19 +00:00
lint_test.go make system server modules use filtered lint database 2021-07-05 16:57:34 +00:00
OWNERS Update dex_preopt related OWNERS 2021-06-17 17:05:39 +01:00
platform_bootclasspath.go Separate creation of signature patterns from overlap checking 2021-08-06 13:40:34 +01:00
platform_bootclasspath_test.go Make CheckHiddenAPIRuleInputs more reusable 2021-06-20 19:09:09 +01:00
platform_compat_config.go Extract IsModuleInVersionedSdk 2021-04-28 00:39:52 +01:00
platform_compat_config_test.go Add platform_compat_config to sdk 2021-03-22 19:13:40 +00:00
plugin.go Register java_plugin in PrepareForTestWithJavaBuildComponents 2021-03-24 00:01:15 +00:00
plugin_test.go Replace android.BuildOs with Config.BuildOS 2021-07-20 12:46:48 -07:00
prebuilt_apis.go Remove special case code for obsolete files 2021-04-13 19:09:48 +01:00
proto.go Improve java.go readability. 2021-03-15 13:58:44 -07:00
robolectric.go Replace android.BuildOs with Config.BuildOS 2021-07-20 12:46:48 -07:00
rro.go Port module_partition logic for RRO from Make to Soong 2021-06-08 17:53:31 +00:00
rro_test.go Port module_partition logic for RRO from Make to Soong 2021-06-08 17:53:31 +00:00
sdk.go "module_current" and "system_server_current" should contain ART's @SystemApi(MODULE_LIBRARIES) 2021-06-29 22:05:58 +01:00
sdk_library.go Update documentation for genrule and sdk_library 2021-07-30 00:25:20 +00:00
sdk_library_external.go Remove global state from sysprop libraries 2021-02-26 16:28:12 -08:00
sdk_library_test.go Fix the way manifest fixer detects optional <uses-library> entries. 2021-08-13 16:10:42 +01:00
sdk_test.go Replace android.BuildOs with Config.BuildOS 2021-07-20 12:46:48 -07:00
support_libraries.go
system_modules.go Make all SdkMemberTypes support transitive member deps 2021-05-06 23:13:06 +01:00
system_modules_test.go Remove varargs from RunTest(t *testing.T) 2021-03-31 16:03:59 +01:00
systemserver_classpath_fragment.go Rename UpdatableSystemServerJars to ApexSystemServerJars. 2021-07-28 14:04:49 +01:00
systemserver_classpath_fragment_test.go Rename generate proto config file to match classpath type. 2021-05-24 12:52:01 +01:00
testing.go Rename UpdatableBootJars to ApexBootJars. 2021-07-22 17:35:42 +01:00
tradefed.go