xref: /aosp_15_r20/prebuilts/runtime/mainline/README.md (revision 924841fff420cd6b931e1027ee46b85e0a18fe17)
1*924841ffSAndroid Build Coastguard WorkerPrebuilts of APIs from platform and other Mainline modules that the ART Module
2*924841ffSAndroid Build Coastguard Workerneeds.
3*924841ffSAndroid Build Coastguard Worker
4*924841ffSAndroid Build Coastguard WorkerThese prebuilts should reflect the APIs in Android 12 (version 31), which is the
5*924841ffSAndroid Build Coastguard Workerearliest release that may take an update of the ART Module. Hence updating the
6*924841ffSAndroid Build Coastguard Workerprebuilts to newer versions needs to be done with care. Prebuilts that are part
7*924841ffSAndroid Build Coastguard Workerof the NDK are generally safe since they are annotated to provide a version 31
8*924841ffSAndroid Build Coastguard Workercompatible ABI.
9*924841ffSAndroid Build Coastguard Worker
10*924841ffSAndroid Build Coastguard WorkerTo update:
11*924841ffSAndroid Build Coastguard Worker
12*924841ffSAndroid Build Coastguard Worker1. Submit the changes that need to go into the prebuilts.
13*924841ffSAndroid Build Coastguard Worker
14*924841ffSAndroid Build Coastguard Worker2. Wait for new builds on branches `aosp-main` and/or `aosp-main-throttled`,
15*924841ffSAndroid Build Coastguard Worker   depending on which prebuilts are required. See `update.py` for details about
16*924841ffSAndroid Build Coastguard Worker   which branches and targets are used for what.
17*924841ffSAndroid Build Coastguard Worker
18*924841ffSAndroid Build Coastguard Worker   In general `mainline_modules_sdks-trunk_staging-userdebug` is the slowest
19*924841ffSAndroid Build Coastguard Worker   build to complete, so look for that to be on the safe side.
20*924841ffSAndroid Build Coastguard Worker
21*924841ffSAndroid Build Coastguard Worker3. Edit the list returned by `install_entries` in `update.py` in this directory
22*924841ffSAndroid Build Coastguard Worker   to only cover the updates you need (this change shouldn't be submitted).
23*924841ffSAndroid Build Coastguard Worker
24*924841ffSAndroid Build Coastguard Worker4. Run:
25*924841ffSAndroid Build Coastguard Worker
26*924841ffSAndroid Build Coastguard Worker   ```
27*924841ffSAndroid Build Coastguard Worker   prebuilts/runtime/mainline/update.py \
28*924841ffSAndroid Build Coastguard Worker     --aosp-main-build <build id> --aosp-main-throttled-build <build id>
29*924841ffSAndroid Build Coastguard Worker   ```
30*924841ffSAndroid Build Coastguard Worker
31*924841ffSAndroid Build Coastguard Worker   where the two `<build id>` are the builds from step #2.
32*924841ffSAndroid Build Coastguard Worker
33*924841ffSAndroid Build Coastguard Worker   The script will download, extract and put the right prebuilts in the right
34*924841ffSAndroid Build Coastguard Worker   places in `prebuilts/runtime`, `prebuilts/module_sdk/conscrypt`, and/or
35*924841ffSAndroid Build Coastguard Worker   `prebuilts/module_sdk/StatsD`. However, some prebuilts may not have
36*924841ffSAndroid Build Coastguard Worker   corresponding CI builds so they may not be complete - see `update.py` for
37*924841ffSAndroid Build Coastguard Worker   details.
38*924841ffSAndroid Build Coastguard Worker
39*924841ffSAndroid Build Coastguard Worker5. Make sure that riscv64 still works.
40*924841ffSAndroid Build Coastguard Worker
41*924841ffSAndroid Build Coastguard Worker   That architecture is currently not included in the SDK builds in CI (cf.
42*924841ffSAndroid Build Coastguard Worker   b/286551985). Either revert riscv64-related changes, or update them as well
43*924841ffSAndroid Build Coastguard Worker   following the process in README_riscv64.md.
44*924841ffSAndroid Build Coastguard Worker
45*924841ffSAndroid Build Coastguard Worker6. Try to further minimize the updates in the created CLs and ensure they are
46*924841ffSAndroid Build Coastguard Worker   safe. This usually means reverting some prebuilts back to their old contents,
47*924841ffSAndroid Build Coastguard Worker   and reverting specific hunks in the `Android.bp` files. Also, please improve
48*924841ffSAndroid Build Coastguard Worker   the autogenerated CL descriptions to make them more accurate and describe the
49*924841ffSAndroid Build Coastguard Worker   reason for the update. Please avoid doing any other changes - in particular
50*924841ffSAndroid Build Coastguard Worker   there must be no local change in any prebuilt file (not counting
51*924841ffSAndroid Build Coastguard Worker   `Android.bp`'s). [email protected] is happy to help with reviews.
52*924841ffSAndroid Build Coastguard Worker
53*924841ffSAndroid Build Coastguard WorkerNote that the script takes a `--local-dist` argument that you can use to test
54*924841ffSAndroid Build Coastguard Workerwith prebuilts from a local build in another tree. However, CLs created that way
55*924841ffSAndroid Build Coastguard Workershould not be submitted.
56