You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
90 lines
2.7 KiB
90 lines
2.7 KiB
#!/bin/bash |
|
set -euo pipefail |
|
|
|
if [ -z "${AOSP_COMPOSE_SOURCE+x}" ]; then |
|
echo "Specify AOSP_COMPOSE_SOURCE. For example: export AOSP_COMPOSE_SOURCE=~/work/androidx-main" |
|
exit 1 |
|
fi |
|
|
|
if [ -z "$@" ]; then |
|
echo "Specify Skiko version. For example: ./updateSkikoInAosp 0.4.15" |
|
exit 1 |
|
fi |
|
SKIKO_VERSION=$@ |
|
|
|
cd "$(dirname "$0")" |
|
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" |
|
JB_GRADLE=$SCRIPT_DIR/../gradlew |
|
|
|
# --------------------------------- Create branch |
|
|
|
pushd $AOSP_COMPOSE_SOURCE/prebuilts/androidx/external |
|
git fetch |
|
git checkout aosp/androidx-main |
|
git checkout -B skiko$SKIKO_VERSION |
|
popd |
|
|
|
pushd $AOSP_COMPOSE_SOURCE/frameworks/support |
|
git fetch |
|
git checkout aosp/androidx-main |
|
git checkout -B skiko$SKIKO_VERSION |
|
popd |
|
|
|
# --------------------------------- Change frameworks/support |
|
sed -i 's/skiko = ".*"/skiko = "'"$SKIKO_VERSION"'"/' $AOSP_COMPOSE_SOURCE/frameworks/support/gradle/libs.versions.toml |
|
|
|
|
|
# --------------------------------- Change frameworks/prebuilts/androidx/external |
|
|
|
# we have error on the second call of Gradle: |
|
# Cannot invoke "Build_gradle.getAllFilesWithDependencies()" because "this.this$0.this$0" is null |
|
fixWindows() { |
|
rm -rf .gradle |
|
} |
|
|
|
downloadSkiko() { |
|
if [[ "$OSTYPE" == "msys" ]]; then |
|
fixWindows |
|
elif [[ "$OSTYPE" == "win32" ]]; then |
|
fixWindows |
|
fi |
|
|
|
$JB_GRADLE -PallowJetbrainsDev=true -PartifactName=$1 |
|
} |
|
|
|
if [[ "$OSTYPE" == "msys" ]]; then |
|
$JB_GRADLE --stop |
|
elif [[ "$OSTYPE" == "win32" ]]; then |
|
$JB_GRADLE --stop |
|
fi |
|
|
|
rm -rf $AOSP_COMPOSE_SOURCE/prebuilts/androidx/external/org/jetbrains/skiko |
|
|
|
pushd $AOSP_COMPOSE_SOURCE/frameworks/support/development/importMaven |
|
downloadSkiko org.jetbrains.skiko:skiko:$SKIKO_VERSION |
|
downloadSkiko org.jetbrains.skiko:skiko:$SKIKO_VERSION:all |
|
downloadSkiko org.jetbrains.skiko:skiko:$SKIKO_VERSION:kotlin-tooling-metadata |
|
downloadSkiko org.jetbrains.skiko:skiko-jvm:$SKIKO_VERSION |
|
downloadSkiko org.jetbrains.skiko:skiko-jvm-runtime-linux-x64:$SKIKO_VERSION |
|
downloadSkiko org.jetbrains.skiko:skiko-jvm-runtime-linux-arm64:$SKIKO_VERSION |
|
downloadSkiko org.jetbrains.skiko:skiko-jvm-runtime-macos-x64:$SKIKO_VERSION |
|
downloadSkiko org.jetbrains.skiko:skiko-jvm-runtime-macos-arm64:$SKIKO_VERSION |
|
downloadSkiko org.jetbrains.skiko:skiko-jvm-runtime-windows-x64:$SKIKO_VERSION |
|
popd |
|
|
|
|
|
# --------------------------------- Commit |
|
set +euo pipefail |
|
|
|
pushd $AOSP_COMPOSE_SOURCE/frameworks/support |
|
git restore --staged * |
|
git add gradle/libs.versions.toml |
|
git commit -m "Update Skiko to $SKIKO_VERSION" -m "" -m "Test: ./gradlew jvmTest desktopTest -Pandroidx.compose.multiplatformEnabled=true" |
|
popd |
|
|
|
pushd $AOSP_COMPOSE_SOURCE/prebuilts/androidx/external |
|
git restore --staged * |
|
git add org/jetbrains/skiko |
|
git commit -m "Update Skiko to $SKIKO_VERSION" |
|
popd |