aboutsummaryrefslogtreecommitdiff
path: root/java/systemserver_classpath_fragment.go
Commit message (Collapse)AuthorAgeFilesLines
* Update variable name in error messages.Ulya Trafimovich2021-10-041-1/+1
| | | | | | | | | Variable PRODUCT_UPDATABLE_SYSTEM_SERVER_JARS was renamed to PRODUCT_APEX_SYSTEM_SERVER_JARS in https://r.android.com/1779472. Bug: 191127295 Test: m nothing Change-Id: I0c8ae839cab443c824760b40d30b4374982010f9
* Generate prebuilt_systemserverclasspath_fragment.Jiakai Zhang2021-09-301-1/+73
| | | | | | | | | | Bug: 194150908 Test: m nothing Test: manual - 1. Patch aosp/1835087. 2. m out/soong/.intermediates/art/build/sdk/art-module-sdk/common_os/snapshot/Android.bp 3. See prebuilt_systemserverclasspath_fragment modules and systemserverclasspath_fragments in an sdk_snapshot module. Change-Id: I7876b077b0b4ed190f01dbfa9533de04ea32d524
* Add exported_systemserverclasspath_fragments to prebuilt_apex rule.Jiakai Zhang2021-09-301-0/+10
| | | | | | | | | | This is for exporting the contents of systemserverclasspath_fragment for dexpreopting. Bug: 194150908 Test: manual - 1. Patch aosp/1818020 and aosp/1834534 2. m SOONG_CONFIG_art_module_source_build=false com.android.art Change-Id: I7d2d2e02869d8a523f7c0efbbff81706672a95c5
* Add prebuilt_systemserverclasspath_fragment rule.Jiakai Zhang2021-09-301-0/+32
| | | | | | | | | | | | This is the prebuilt side of systemserverclasspath_fragment, currently for used for dexpreopting. The change to automactially generate prebuilt_systemserverclasspath_fragment rules will be in a separate CL. Bug: 194150908 Test: m nothing Change-Id: Ibf5322f80f78ac3ca037489f4a279456fe38a23f
* Prevent systemserverclasspath_fragment from depending on prebuiltsPaul Duffin2021-09-161-0/+6
| | | | | | | | | | | | | | | | | | | | When TARGET_BUILD_APPS is set then TARGET_BUILD_USE_PREBUILT_SDKS=true which causes all java_sdk_library_import modules to be treated as prefer:true. That breaks the build when the systemserverclasspath_fragment's content property references a source java_sdk_library module that has a corresponding java_sdk_library_import prebuilt module. This fixes the issue by marking the dependency from the systemserverclasspath_fragment to the source module as one that must not be replaced with a reference to the prebuilt module. Test: - update art prebuilts to include service-art m TARGET_BUILD_APPS=Calendar apps_only - fails before, works afterwards Bug: 199116972 Change-Id: Ia2d8ce7bb7e644336a42c901f7fb8ea50fd67909
* Make sure that classpath fragment contents appear in make vars.satayev2021-08-161-1/+10
| | | | | | | | | | | The source of truth for what jars are in BOOTCLASSPATH and SYSTEMSERVERCLASSPATH is make; adding a classpath fragment in soong with a new jar in the contents without having it declared in make is wrong (excluding test apexes). Bug: 191369843 Test: m nothing Change-Id: Ifd313776ee7ad206031244534ed3870126e4f835
* Rename UpdatableSystemServerJars to ApexSystemServerJars.satayev2021-07-281-1/+1
| | | | | | | | This is consistent with naming for boot jars, e.g. ApexBootJars. Bug: 191127295 Test: presubmit Change-Id: I6e8828d55ac86b7f5260ed7f8d4eca1c0b3dced8
* Rename UpdatableBootJars to ApexBootJars.satayev2021-07-221-5/+1
| | | | | | | | | | | Note that ART apex boot jars and core-icu4j are exceptions here as they are not part of ApexBootJars. ART apex boot jars are defined in their own variable, while core-icu4j is treated as a regular non-updatable boot jar. Bug: 191127295 Test: atest CtsClasspathsTestCases Change-Id: I3cea3d82ef521655a1a5ffa8cae2258ab9d08bfc
* Use both module name and stem name to filter updatable boot jarsPaul Duffin2021-06-291-11/+2
| | | | | | | | | | | | | | | | Sometimes the stem property is set to change both the installed file name and the name use to filter the configured module list, e.g. when adding a test library to replace the standard library, e.g. test_foo instead of foo. Sometimes it is used just to change the installed file name. This change uses both to filter the updatable boot jars and not just the stem. Bug: 180105615 Test: m nothing Change-Id: I6c459fc3597b1e4f062bc9a4e52843305b538c5f
* Append platform classpath proto configs with missing apex jars.satayev2021-06-221-6/+8
| | | | | | | | | | Any apex classpath fragment that doesn't generate its own classpaths proto, must still propagate it's boot jars for the platform classpath fragment to include for complete CLASSPATH variables on device. Bug: 191127295 Test: atest CtsClasspathsTestCases derive_classpath_test Change-Id: I93687f69006741fcd66eb6e04891a4b4bbcc3b47
* Merge "AIDEGen: Collect dependencies info from APEX module."Treehugger Robot2021-06-211-0/+12
|\
| * AIDEGen: Collect dependencies info from APEX module.bralee2021-06-151-0/+12
| | | | | | | | | | | | | | | | | | Add apex dependencies. Bug: 188004865 Test: 1. aidegen frameworks/base/apex/appsearch frameworks/base/apex/appsearch/testing frameworks/base/services/tests/servicestests frameworks/base/core/tests/coretests cts/tests/appsearch external/icing vendor/google_testing/integration/tests/scenarios 2. The dependency graph shows it is workable to provide the result to let IDE's [Project structure] to include the service-appsearch as source directory. Change-Id: Ifd1548f0a86c1c73f8279e8ecea67756aeb1281e
* | Rename ClasspathFragmentToConfiguredJarList methods to configuredJars.satayev2021-06-161-4/+4
|/ | | | | | | | They are internal implementation details of individual fragments. Bug: 191127295 Test: m Change-Id: Ib350135f5f6720741492f362f7b3203e5107772e
* Merge changes I0116f5f4,I950c9b54,I967f5c42Colin Cross2021-05-271-0/+7
|\ | | | | | | | | | | | | * changes: Treat java libraries in classpath fragments as directly in apex Make CopyDirectlyInAnyApex match the documentation Remove unused cc.copyDirectlyInAnyApexDependencyTag
| * Treat java libraries in classpath fragments as directly in apexColin Cross2021-05-261-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Coverage is applied to java libraries that are directly in an apex. Mark java libraries that are in an apex through a bootclasspath_fragment or a systemserverclasspath_fragment as directly in the apex by implementing CopyDirectlyInAnyApexTag on the dependency tags used for their contents. Bug: 183759446 Test: TestApexJavaCoverage Change-Id: I0116f5f415083b5194000988cb257454ef115200
* | Use stem when filtering boot jars.satayev2021-05-261-1/+12
|/ | | | | | | | | | | | | | For testing purposes, a boot jar may be provided by a test java_library that has a different content name, but sets "stem" property to match the original java_library. Given that Stem() returns either the property value or module name, it is safe to replace all content names by their stems. Bug: 180105615 Test: atest CtsClasspathsTestCases sdkextensions_e2e_tests Merged-In: Ic519ffa0c5b616abddf15b41c934421dfac2e78a Change-Id: Ic519ffa0c5b616abddf15b41c934421dfac2e78a
* Populate individual systemserverclasspath_fragments' proto configs.satayev2021-05-241-9/+7
| | | | | | Bug: 180105615 Test: m && launch_cvd; atest CtsClasspathsTestCases Change-Id: Ic0ae897e9baca75dcc022d84656496563645e74e
* Populate individual classpath_fragments' classpaths.proto configs.satayev2021-05-201-15/+11
| | | | | | | | | | | | To avoid duplicates on *CLASSPATH environ variables at runtime, remove split entries from platform-*classpath, i.e. all updatable jars that have their own classpath fragments should not appear in the platform-*classpath's classpaths.proto config. Bug: 180105615 Test: m && launch_cvd; atest CtsClasspathsTestCases Change-Id: Id2759ab8e106cc183e695bf3509a6ab60ab0ef2a Merged-In: Id2759ab8e106cc183e695bf3509a6ab60ab0ef2a
* Add systemserverclasspath_fragments property to apex.satayev2021-05-171-5/+11
| | | | | | | | | - All contents of the fragment are added as java_lib dependencies. - Generated classpaths.proto is added into etc as required. Bug: 180105615 Test: m nothing Change-Id: I8e8e8b019c4ca2909182f205a47deffa946de6da
* Add "contents" property to systemserverclasspath_fragment.satayev2021-05-171-0/+34
| | | | | | | | | Similar to bcp_fragment's contents, this property lists all java library contributions made by this fragment. Bug: 180105615 Test: m nothing Change-Id: Ifb1f54d5db290fffaa31933d15207014bb72d2fb
* Add no-op systemserverclasspath_fragment module.satayev2021-05-171-7/+29
| | | | | | | | | | | | | | | | | This would allow to start introducing these modules for apexes that contribute to SYSTEMSERVERCLASSPATH. In follow up, it will be evolved: - platform_systemserverclasspath would have "fragments" property to list all individual systemserverclasspath_fragments; - systemserverclasspath_fragment would have "contents" property to list contibuting java libs; - systemserverclasspath_fragment would generate non-empty classpaths.proto config within individual apexes. Bug: 180105615 Test: m nothing Change-Id: Ibaaa3fae5f1eab9a41ceecc1214a53be6bbc8ba6
* Declare ConfiguredJarList in specific fragment implementations.satayev2021-05-071-2/+19
| | | | | | | | | | | | | Each specific classpath_fragment module knows what jars must be part of the corresponding classpaths.proto config. Note that bootclasspath_fragment does not implement classpath_fragment yet, thus all boot jars and all system server jars go into corresponding platform classpaths. Bug: 180105615 Test: m && launch_cvd; atest CtsClasspathsTestCases Change-Id: I6a8c7b0a5d17d62e790a441b8e2c5c1a816e7f30
* Split SYSTEMSERVERCLASSPATH entries from platform_bootclasspath.satayev2021-05-071-0/+50
Boot jars are different to system server jars at build level, due to added complexity of dexpreopt. As a logical separation add a new classpath fragment type and split existing classpaths.proto generation into relevant pieces. Bug: 180105615 Test: m && launch_cvd; atest CtsClasspathsTestCases Change-Id: I88bec09fc920166ffd0092faef980754ddeb6593