Commit Graph

45 Commits

Author SHA1 Message Date
satayev
893fc27f7a Merge "Remove hiddenapi-mappings and hiddenapi-list-docs." am: d5ed17def6 am: fcd3de32fe
Change-Id: I337ff9ff4b1a1de7eb49748e1f248b7bede3ac31
2020-03-31 12:54:49 +00:00
Artur Satayev
0a97d5eaf2 Remove hiddenapi-mappings and hiddenapi-list-docs.
We still need to keep access to removed APIs to keep them on greylist. Instead of having a separate run to generate those, we would instead depend on the actual droidstubs.

Kudos to Makoto for producing build traces:

"m droid"
Before: https://screenshot.googleplex.com/oEcd4x76YAz
After: https://screenshot.googleplex.com/CxZCNJMDyK5

"m sync"
Before: https://screenshot.googleplex.com/7cjE96qcNAL
After: https://screenshot.googleplex.com/po6BhCoP9L3

Bug: 143864733
Test: diff out/soong/hiddenapi/hiddenapi-flags.csv
Change-Id: If9dcac94eb077c6265c5acf5b3ce6d262db64f90
2020-03-30 17:25:17 +01:00
Paul Duffin
a1248cae0e Merge "Reference libcore, conscrypt and icu sources directly" am: 77481306a7 am: 0843760b84
Change-Id: Id81fcef1856a0cb3b3df5572cc9623a31d718734
2020-03-27 12:58:01 +00:00
Treehugger Robot
3d2bab1379 Merge "Use art-notices-for-framework-stubs-jar instead of filegroup" am: 23d37487df am: 67b9d32a7d
Change-Id: Ia0088c440e9ccfe8f2fcded53aebe08c7a8c1beb
2020-03-26 19:12:41 +00:00
Paul Duffin
5c89e70a1f Reference libcore, conscrypt and icu sources directly
Avoids an extra aggregation step in the creation of the API sources.

Test: m nothing
Bug: 142935992
Change-Id: Ia15c3ceb9fc59e7945687536c60ce265ec95781e
2020-03-26 15:41:25 +00:00
Paul Duffin
a281e926fc Use art-notices-for-framework-stubs-jar instead of filegroup
Bug: 142935992
Test: m droid
      manually check android_stubs_current contains the notices
Change-Id: I55a231ff8325d3ba67bf7ccdee720d450a8ebae4
2020-03-26 11:56:12 +00:00
Anton Hansson
7a046a99b7 Merge "Convert disting of api txt from mk to bp" into rvc-dev am: 9cc8c2e6f2
Change-Id: I468b59ab9157fae56889ff74df5770d2249a3489
2020-03-26 08:55:55 +00:00
Anton Hansson
9cc8c2e6f2 Merge "Convert disting of api txt from mk to bp" into rvc-dev 2020-03-26 08:41:20 +00:00
Anton Hansson
33d6fda1e0 Merge "Add module_lib and system-server artifacts to sdk dist" 2020-03-25 15:56:51 +00:00
Aurimas Liutikas
6bb95ad751 Reconfigure stub libraries to do less work.
- Stop generating api version XML file
- Stop reading api version XML file

Testing with:
touch frameworks/base/core/java/android/view/View.java && time make -j framework

Before patch:
Run #1: 118.7 seconds
Run #2: 118.8 seconds
Run #3: 117.7 seconds
Average: 118.4 seconds

After patch:
Run #1: 107.8 seconds
Run #2: 106.5 seconds
Run #3: 108.3 seconds
Average: 107.5 seconds

Savings of 10.7 seconds (~9.2%)

Test: make framework
Bug: 151160048
Change-Id: Ie3a7e078844d1d1cac7976142e2069704d4c1545
Merged-in: Ie3a7e078844d1d1cac7976142e2069704d4c1545
2020-03-23 18:52:53 +00:00
Anton Hansson
d9a3fee23d Convert disting of api txt from mk to bp
droidstubs dist now dists the api file, so convert these manual
mk rules into bp dist instead.

Bug: 149293194
Test: m dist sdk && find out/dist/apistubs -name /android\.txt
Change-Id: I96052b427dc01a6d24b040ad0006129d4d1e48fb
2020-03-23 18:33:21 +00:00
Anton Hansson
9a01e55cb6 Add module_lib and system-server artifacts to sdk dist
Makes these artifacts available for the update_prebuilts script.

Bug: 149293194
Test: m win_sdk dist && find out/dist -type f
Change-Id: Ia1064e50e987433e5e308527c6770ba2d3e8bde3
Merged-In: Ia1064e50e987433e5e308527c6770ba2d3e8bde3
(cherry picked from commit 7b0414beb7)
2020-03-20 15:22:20 +00:00
Anton Hansson
f085f1de87 Merge "Add module_lib and system-server artifacts to sdk dist" into rvc-dev am: 043255c8bf
Change-Id: Icc248d1d5b3afc97aa058bcb3fbf597f4285265c
2020-03-20 13:00:55 +00:00
Anton Hansson
043255c8bf Merge "Add module_lib and system-server artifacts to sdk dist" into rvc-dev 2020-03-20 12:44:49 +00:00
Anton Hansson
e53bec0567 Remove SDK dep from module_lib_api
This had the consequence of making two large metalava invocations
run in sequence rather than parallell.

For now, add back the dependency on framework-all instead. Building
framework-all should be a lot faster than the sdk stubs.

Also move the module stubs dep from framework_defaults to
framework-minus-apex. framework-all does not need this dep.

Bug: 151092414
Test: m
Test: NINJA_ARGS="-t path out/soong/.intermediates/frameworks/base/module-lib-api-stubs-docs/android_common/module-lib-api-stubs-docs-stubs.srcjar \
                          out/soong/.intermediates/frameworks/base/system-api-stubs-docs/android_common/system-api-stubs-docs-stubs.srcjar" m
Change-Id: Ifdf8823d374254e594330b43ae3a39a76c7b90c5
Merged-In: Ifdf8823d374254e594330b43ae3a39a76c7b90c5
(cherry picked from commit 92d79fddd4)
2020-03-20 11:30:59 +00:00
Anton Hansson
a758a7f1dd Merge "Remove SDK dep from module_lib_api" into rvc-dev am: d3bf9fdefd
Change-Id: I92c7079d321806398e992250efb79c071dcdd335
2020-03-20 11:24:15 +00:00
Anton Hansson
92d79fddd4 Remove SDK dep from module_lib_api
This had the consequence of making two large metalava invocations
run in sequence rather than parallell.

For now, add back the dependency on framework-all instead. Building
framework-all should be a lot faster than the sdk stubs.

Also move the module stubs dep from framework_defaults to
framework-minus-apex. framework-all does not need this dep.

Bug: 151092414
Test: m
Test: NINJA_ARGS="-t path out/soong/.intermediates/frameworks/base/module-lib-api-stubs-docs/android_common/module-lib-api-stubs-docs-stubs.srcjar \
                          out/soong/.intermediates/frameworks/base/system-api-stubs-docs/android_common/system-api-stubs-docs-stubs.srcjar" m
Change-Id: Ifdf8823d374254e594330b43ae3a39a76c7b90c5
2020-03-20 09:24:15 +00:00
Anton Hansson
7b0414beb7 Add module_lib and system-server artifacts to sdk dist
Makes these artifacts available for the update_prebuilts script.

Bug: 149293194
Test: m win_sdk dist && find out/dist -type f
Change-Id: Ia1064e50e987433e5e308527c6770ba2d3e8bde3
2020-03-19 19:21:49 +00:00
Anton Hansson
b7a4febf02 Merge "Take module APIs out of the module_current stubs" 2020-03-17 08:52:08 +00:00
Automerger Merge Worker
b5d9f9f4ed Merge "Stop building unused dex.txt files" am: 8a8b52a6be am: 95de721b49
Change-Id: I23a0cd0a8c44b83475055f6aa7723d3773bfe709
2020-03-16 17:01:08 +00:00
Anton Hansson
537564eb3d Take module APIs out of the module_current stubs
This allows modules components to depend on internals of other
module components, by specifying the non-stub version of that
library.

Bug: 151092414
Test: m
Change-Id: Ia39b2686de7619ccb1ec154588c11a8b1b322647
Merged-In: Ia39b2686de7619ccb1ec154588c11a8b1b322647
2020-03-16 16:06:16 +00:00
Aurimas Liutikas
d8fdf73da9 Stop building unused dex.txt files
Testing with:
touch frameworks/base/core/java/android/view/View.java && time make -j framework

Before patch:
Run #1: 107.8 seconds
Run #2: 106.5 seconds
Run #3: 108.3 seconds
Average: 107.5 seconds

After patch:
Run #1: 105.5 seconds
Run #2: 105.6 seconds
Run #3: 105.0 seconds
Average: 105.4 seconds

Savings of 2.2 seconds (~2%)

Test: make framework
Bug: 151160048

Change-Id: Ic58875a315c9d1dc09b029d3de405a5f5648c46e
2020-03-16 15:45:48 +00:00
Automerger Merge Worker
5b816a3d6b Merge "Take module APIs out of the module_current stubs" into rvc-dev am: 93f9bb0485
Change-Id: Iba1bbec3db531faa39646e76f774643cd2de632a
2020-03-16 12:52:42 +00:00
Automerger Merge Worker
06f550e21e Merge "Reconfigure stub libraries to do less work." am: 7488b79ea0 am: 78e96933f3
Change-Id: I02c41d6346a405badbafaed78b551ab75fa4c117
2020-03-13 02:44:21 +00:00
Aurimas Liutikas
94bac9cceb Reconfigure stub libraries to do less work.
- Stop generating api version XML file
- Stop reading api version XML file

Testing with:
touch frameworks/base/core/java/android/view/View.java && time make -j framework

Before patch:
Run #1: 118.7 seconds
Run #2: 118.8 seconds
Run #3: 117.7 seconds
Average: 118.4 seconds

After patch:
Run #1: 107.8 seconds
Run #2: 106.5 seconds
Run #3: 108.3 seconds
Average: 107.5 seconds

Savings of 10.7 seconds (~9.2%)

Test: make framework
Bug: 151160048
Change-Id: Ie3a7e078844d1d1cac7976142e2069704d4c1545
2020-03-12 17:06:12 -07:00
Anton Hansson
822cdb3031 Take module APIs out of the module_current stubs
This allows modules components to depend on internals of other
module components, by specifying the non-stub version of that
library.

Bug: 151092414
Test: m
Change-Id: Ia39b2686de7619ccb1ec154588c11a8b1b322647
2020-03-11 15:01:20 +00:00
evitayan
5daf75d5b8 Do not expose module IPsec(IKE) API from frameworks
Module IPsec(IKE) will not be in bootclasspath or expose API
from frameworks/base anymore. Instead it will be built as a
java_sdk_library and expose APIs under its own directory.

This commit:
- Removes API from frameworks/base
- Adds ike to FrameworksNetTests manifest so that VpnTest is
  able to load it.

Bug: 145995723
Test: build, flash, boot
Test: atest FramewokrsIkeTests (passed)
Test: m mts && mts-tradefed run mts-ipsec (passed)
Test: manually tested that FrameworksNetTests can use ike.jar
Change-Id: I37ba02eb3003ea28e66f50ca0b612597ef48f6d5
Merged-In: I37ba02eb3003ea28e66f50ca0b612597ef48f6d5
2020-02-20 05:51:35 +00:00
evitayan
daeb328e32 Do not expose module IPsec(IKE) API from frameworks
Module IPsec(IKE) will not be in bootclasspath or expose API
from frameworks/base anymore. Instead it will be built as a
java_sdk_library and expose APIs under its own directory.

This commit:
- Removes API from frameworks/base
- Adds ike to FrameworksNetTests manifest so that VpnTest is
  able to load it.

Bug: 145995723
Test: build, flash, boot
Test: atest FramewokrsIkeTests (passed)
Test: m mts && mts-tradefed run mts-ipsec (passed)
Test: manually tested that FrameworksNetTests can use ike.jar
Change-Id: I37ba02eb3003ea28e66f50ca0b612597ef48f6d5
2020-02-19 12:55:25 -08:00
Anton Hansson
626afea1bd Enable compat checking & lint for module_lib api
These were previously turned off as there were no previous
releases to compare it to. Check in empty files as comparison.

The new tethering APIs fail lint -- I have filed a release
blocking bug to get these cleaned up.

Bug: 149430003
Bug: 147559833
Test: m module-lib-api-api-lint
Test: m module-lib-api-check-last-released-api (with+without incompatibilities)
Change-Id: I2b171dc836ca121502fb345d8dd512a05c566a49
Merged-In: I2b171dc836ca121502fb345d8dd512a05c566a49
(cherry picked from commit 79e35c3beb)
2020-02-19 14:58:44 +00:00
Anton Hansson
79e35c3beb Enable compat checking & lint for module_lib api
These were previously turned off as there were no previous
releases to compare it to. Check in empty files as comparison.

The new tethering APIs fail lint -- I have filed a release
blocking bug to get these cleaned up.

Bug: 149430003
Bug: 147559833
Test: m module-lib-api-api-lint
Test: m module-lib-api-check-last-released-api (with+without incompatibilities)
Change-Id: I2b171dc836ca121502fb345d8dd512a05c566a49
2020-02-12 23:55:41 +00:00
Anton Hansson
42afd61fe2 Dedup stub jar build rules
Move shared attrs into defaults.

Bug: 146757305
Test: m
Change-Id: I90292cafaac1dcc64d642db072ce4880fcdb87cb
Merged-In: I90292cafaac1dcc64d642db072ce4880fcdb87cb
2020-02-10 14:56:52 +00:00
Anton Hansson
708d1211df Tweak module_libs stub build rules
- Don't depend on framework-all (we depend on srcs)
- Set sdk_version to core_current

Bug: 146757305
Test: m
Change-Id: I9f14d35ba657045e99190b7a651781a5b87d490d
Merged-In: I9f14d35ba657045e99190b7a651781a5b87d490d
2020-02-10 14:52:59 +00:00
Anton Hansson
08b48bb91f Dedup stub jar build rules
Move shared attrs into defaults.

Bug: 146757305
Test: m
Change-Id: I90292cafaac1dcc64d642db072ce4880fcdb87cb
2020-02-08 20:43:19 +00:00
Anton Hansson
2e2008b7a1 Tweak module_libs stub build rules
- Don't depend on framework-all (we depend on srcs)
- Set sdk_version to core_current

Bug: 146757305
Test: m
Change-Id: I9f14d35ba657045e99190b7a651781a5b87d490d
2020-02-08 20:39:59 +00:00
Automerger Merge Worker
0935fa18aa Merge "Remove build rules for module-app API" am: e534a33ca3 am: b37648b759 am: 5ffbe6f31c
Change-Id: I499aac005559a80b3254c0d7e7a8b32d5ccc6382
2020-02-04 16:00:03 +00:00
Anton Hansson
81969c27df Remove build rules for module-app API
It's been abandoned for now. Also remove the process attribute
requirement as it's no longer in use.

Bug: 148177503
Test: m
Change-Id: I2b1444105c670f1ef5bc214aa7b0a7ac06d84a37
2020-02-03 21:05:42 +00:00
Anton Hansson
c3668114d4 Add module-defined APIs to module-(app|lib)
These APIs should really leave in individual .txt files,
but had them here for the moment to make sure there is *some*
tracking of the surface.

Bug: 147768409
Test: m module-app-api-check-current-api
Test: m module-lib-api-check-current-api
Test: patch I97ef83f7f9b4c1376f373713036f5256318f1050 && the above `m`
Change-Id: Ia0a48b9f6e45fccbe67b369b61660d88b5000a44
Merged-In: Ia0a48b9f6e45fccbe67b369b61660d88b5000a44
(cherry picked from commit 970c053315)
2020-02-03 20:51:13 +00:00
Anton Hansson
9c4bbe95b1 Rename module lib stubs to 'android'
android.jar is the historical name of the framework stubs, so stick
with that.

Test: m
Change-Id: I1ef40b0e426c51d697f1efdabdc87096555e26e8
Merged-In: I1ef40b0e426c51d697f1efdabdc87096555e26e8
(cherry picked from commit 81b3e1e1680847f44782eb053dfbd7d7022cef58)
2020-01-30 14:04:15 +00:00
Anton Hansson
1b9cf09e36 Rename module lib stubs to 'android'
android.jar is the historical name of the framework stubs, so stick
with that.

Exempt-From-Owner-Approval: comment-only changes irrelvant to statsd team
Test: m
Change-Id: I1ef40b0e426c51d697f1efdabdc87096555e26e8
2020-01-30 12:12:42 +00:00
Anton Hansson
970c053315 Add module-defined APIs to module-(app|lib)
These APIs should really leave in individual .txt files,
but had them here for the moment to make sure there is *some*
tracking of the surface.

Bug: 147768409
Test: m module-app-api-check-current-api
Test: m module-lib-api-check-current-api
Test: patch I97ef83f7f9b4c1376f373713036f5256318f1050 && the above `m`
Change-Id: Ia0a48b9f6e45fccbe67b369b61660d88b5000a44
2020-01-17 13:42:43 +00:00
Chen Xu
546ce5e45e modularize telephony-framework from framework.jar
Bug: 140908357
Test: Build & Manaul
Change-Id: Idd4cbdb84247b98072b6ebc00a37168fde6fbbaa
2020-01-16 14:32:50 -08:00
Jiyong Park
2e6cdcc524 Add API stubs for module APIs
The following two stub libraries are added:

- android_module_app_stubs_current: @SystemApis that are available for
modules implemented as apps. @SystemApis with client=PRIVILEGED_APPS
and client=MODULE_APPS are included here.

- android_module_lib_stubs_current: @SystemApis that are available for
modules implemented as bootclasspath jars. @SystemApis with
client=PRIVILEGED_APPS, MODULE_APPS, and MODULE_LIBRARIES are all
included here.

For now, the compatibility check against the last release API is not
done, but this is not a problem because this is the first time these
APIs are released.

Exempt-From-Owner-Approval: cherry-pick from internal

Bug: 139391334
Bug: 140202860
Bug: 146727827
Test: m

Merged-In: I0254a5f7751c58029fa7a8d5c342b731a7deb69a
Change-Id: I0254a5f7751c58029fa7a8d5c342b731a7deb69a
(cherry picked from commit e309516406)
2020-01-13 21:42:24 +09:00
Jiyong Park
e309516406 Add API stubs for module APIs
The following two stub libraries are added:

- android_module_app_stubs_current: @SystemApis that are available for
modules implemented as apps. @SystemApis with client=PRIVILEGED_APPS
and client=MODULE_APPS are included here.

- android_module_lib_stubs_current: @SystemApis that are available for
modules implemented as bootclasspath jars. @SystemApis with
client=PRIVILEGED_APPS, MODULE_APPS, and MODULE_LIBRARIES are all
included here.

For now, the compatibility check against the last release API is not
done, but this is not a problem because this is the first time these
APIs are released.

Bug: 139391334
Bug: 140202860
Bug: 146727827
Test: m

Change-Id: I0254a5f7751c58029fa7a8d5c342b731a7deb69a
2020-01-13 10:13:06 +09:00
Jiyong Park
6d9923d827 Remove unused system_modules
With
https://android-review.googlesource.com/c/platform/build/soong/+/1145829,
android_*stubs_current_system_modules are no longer used. Thus removing.

Bug: 142896162
Test: m checkbuild
Change-Id: I203766d92a8ebac862a816e9b6b68b6d47d5312c
2020-01-03 12:08:53 +09:00
Jiyong Park
7fb4b183d8 Separate modules for API docs and API stubs
frameworks/base/Android.bp became too big. Modularize it into multiple
files for better readability and extensibility.

droidstubs and java_library modules for API stub libraries are moved to
StubLibraries.bp.

droidstubs and droiddoc modules for API documents are moved to
ApiDocs.bp

Also, added some documentation to explain the roles of the many modules
and how they are related with each other.

Bug: N/A
Test: m

Exempt-From-Owner-Approval: cherry-pick from internal

Merged-In: I285e8c82078d5bd3ed85b0343db2f6375ce7ffb7
(cherry picked from commit 0d7e86d03c)
Change-Id: I285e8c82078d5bd3ed85b0343db2f6375ce7ffb7
2019-12-22 17:27:49 +09:00