blob: 245305bfade0fffc5bd54986fa20bad71e7101e6 [file] [log] [blame]
Alex Buynytskyyafddc072023-02-09 22:40:53 +00001#!/bin/bash
2
3set -ex
4
Alex Buynytskyybdcef7b2023-02-19 18:40:44 +00005function revert_droidstubs_hack() {
Alex Buynytskyy775ad5f2023-02-21 19:28:48 +00006 if grep -q 'STOPSHIP: RESTORE THIS LOGIC WHEN DECLARING "REL" BUILD' "$top/build/soong/java/droidstubs.go" ; then
Alex Buynytskyybce1a512023-06-16 20:06:38 +00007 patch --strip=1 --no-backup-if-mismatch --directory="$top/build/soong" --input=../../build/make/tools/finalization/build_soong_java_droidstubs.go.revert_hack.diff
Alex Buynytskyybdcef7b2023-02-19 18:40:44 +00008 fi
9}
10
Alex Buynytskyyf7a5e2f2023-04-14 11:50:04 -070011function revert_resources_sdk_int_fix() {
12 if grep -q 'public static final int RESOURCES_SDK_INT = SDK_INT;' "$top/frameworks/base/core/java/android/os/Build.java" ; then
Alex Buynytskyybce1a512023-06-16 20:06:38 +000013 patch --strip=1 --no-backup-if-mismatch --directory="$top/frameworks/base" --input=../../build/make/tools/finalization/frameworks_base.revert_resource_sdk_int.diff
Alex Buynytskyyf7a5e2f2023-04-14 11:50:04 -070014 fi
15}
16
Alex Buynytskyybdcef7b2023-02-19 18:40:44 +000017function apply_prerelease_sdk_hack() {
Alex Buynytskyy775ad5f2023-02-21 19:28:48 +000018 if ! grep -q 'STOPSHIP: hack for the pre-release SDK' "$top/frameworks/base/core/java/android/content/pm/parsing/FrameworkParsingPackageUtils.java" ; then
Alex Buynytskyybce1a512023-06-16 20:06:38 +000019 patch --strip=1 --no-backup-if-mismatch --directory="$top/frameworks/base" --input=../../build/make/tools/finalization/frameworks_base.apply_hack.diff
Alex Buynytskyybdcef7b2023-02-19 18:40:44 +000020 fi
21}
22
Alex Buynytskyyafddc072023-02-09 22:40:53 +000023function finalize_sdk_rel() {
24 local top="$(dirname "$0")"/../../../..
25 source $top/build/make/tools/finalization/environment.sh
26
Alex Buynytskyybdcef7b2023-02-19 18:40:44 +000027 # revert droidstubs hack now we are switching to REL
28 revert_droidstubs_hack
29
30 # let the apps built with pre-release SDK parse
31 apply_prerelease_sdk_hack
32
Alex Buynytskyyf7a5e2f2023-04-14 11:50:04 -070033 # in REL mode, resources would correctly set the resources_sdk_int, no fix required
34 revert_resources_sdk_int_fix
35
Alex Buynytskyyafddc072023-02-09 22:40:53 +000036 # cts
Alex Buynytskyy0fa58fa2023-02-13 20:22:10 +000037 echo "$FINAL_PLATFORM_VERSION" > "$top/cts/tests/tests/os/assets/platform_versions.txt"
Alex Buynytskyybdcef7b2023-02-19 18:40:44 +000038 if [ "$FINAL_PLATFORM_CODENAME" != "$CURRENT_PLATFORM_CODENAME" ]; then
39 echo "$CURRENT_PLATFORM_CODENAME" >> "./cts/tests/tests/os/assets/platform_versions.txt"
40 fi
Alex Buynytskyy0fa58fa2023-02-13 20:22:10 +000041 git -C "$top/cts" mv hostsidetests/theme/assets/${FINAL_PLATFORM_CODENAME} hostsidetests/theme/assets/${FINAL_PLATFORM_SDK_VERSION}
Alex Buynytskyyafddc072023-02-09 22:40:53 +000042
43 # system/sepolicy
Inseob Kim4b11cd12023-10-11 13:56:31 +000044 system/sepolicy/tools/finalize-sdk-rel.sh "$top" "$FINAL_PLATFORM_SDK_VERSION"
Alex Buynytskyyafddc072023-02-09 22:40:53 +000045
Alex Buynytskyyafddc072023-02-09 22:40:53 +000046 # prebuilts/abi-dumps/platform
Hsin-Yi Chenebce0d92023-04-06 15:04:03 +080047 mkdir -p "$top/prebuilts/abi-dumps/platform/$FINAL_PLATFORM_SDK_VERSION"
48 cp -r "$top/prebuilts/abi-dumps/platform/current/64/" "$top/prebuilts/abi-dumps/platform/$FINAL_PLATFORM_SDK_VERSION/"
Alex Buynytskyyf7a5e2f2023-04-14 11:50:04 -070049
Alex Buynytskyy3fa5db02023-11-09 01:18:03 +000050 # TODO(b/309880485)
51 # uncomment and update
52 # prebuilts/abi-dumps/ndk
53 #mkdir -p "$top/prebuilts/abi-dumps/ndk/$FINAL_PLATFORM_SDK_VERSION"
54 #cp -r "$top/prebuilts/abi-dumps/ndk/current/64/" "$top/prebuilts/abi-dumps/ndk/$FINAL_PLATFORM_SDK_VERSION/"
55 #if [ "$FINAL_STATE" != "sdk" ] || [ "$FINAL_PLATFORM_CODENAME" == "$CURRENT_PLATFORM_CODENAME" ] ; then
Alex Buynytskyyf7a5e2f2023-04-14 11:50:04 -070056 # prebuilts/abi-dumps/vndk
Alex Buynytskyy3fa5db02023-11-09 01:18:03 +000057 #mv "$top/prebuilts/abi-dumps/vndk/$CURRENT_PLATFORM_CODENAME" "$top/prebuilts/abi-dumps/vndk/$FINAL_PLATFORM_SDK_VERSION"
58 #fi;
Alex Buynytskyyafddc072023-02-09 22:40:53 +000059}
60
61finalize_sdk_rel
62