[go: nahoru, domu]

blob: a35614b0ced9736660024455ddd723876add826e [file] [log] [blame]
Aurimas Liutikase98778c2020-03-16 16:29:07 -07001#!/bin/bash
2set -e
3
Jeff Gaston868c5022020-06-16 17:32:18 -04004echo "Starting $0 at $(date)"
5
Jeff Gastond9211592020-06-12 14:02:56 -04006WORKING_DIR="$(pwd)"
7SCRIPT_DIR="$(cd $(dirname $0) && pwd)"
8cd "$(dirname $0)/../../.."
Aurimas Liutikase98778c2020-03-16 16:29:07 -07009echo "Script running from $(pwd)"
10
11# resolve DIST_DIR
12if [ -z "$DIST_DIR" ]; then
Jeff Gastond9211592020-06-12 14:02:56 -040013 DIST_DIR="$WORKING_DIR/out/dist"
Aurimas Liutikase98778c2020-03-16 16:29:07 -070014fi
15mkdir -p "$DIST_DIR"
16
Jeff Gastond9211592020-06-12 14:02:56 -040017export OUT_DIR=$(pwd)/out
Aurimas Liutikas0a3c8f92020-03-17 09:38:25 -070018export DIST_DIR="$DIST_DIR"
Aurimas Liutikase98778c2020-03-16 16:29:07 -070019
Jeff Gastond9211592020-06-12 14:02:56 -040020if [ "$STUDIO_DIR" == "" ]; then
21 STUDIO_DIR="$WORKING_DIR"
22else
23 STUDIO_DIR="$(cd $STUDIO_DIR && pwd)"
24fi
Aurimas Liutikas0a3c8f92020-03-17 09:38:25 -070025
Jeff Gastond9211592020-06-12 14:02:56 -040026TOOLS_DIR=$STUDIO_DIR/tools
27gw=$TOOLS_DIR/gradlew
28
Jeff Gaston1a0d0c02020-11-23 11:40:51 -050029function buildStudio() {
30 STUDIO_BUILD_LOG="$OUT_DIR/studio.log"
31 if JAVA_HOME="$STUDIO_DIR/prebuilts/studio/jdk/jdk11/linux" $gw -p $TOOLS_DIR publishLocal --stacktrace > "$STUDIO_BUILD_LOG" 2>&1; then
32 echo built studio successfully
33 else
34 cat "$STUDIO_BUILD_LOG" >&2
35 echo failed to build studio
36 return 1
37 fi
38}
39buildStudio
Jeff Gastond9211592020-06-12 14:02:56 -040040
41export GRADLE_PLUGIN_VERSION=`grep -oP "(?<=buildVersion = ).*" $TOOLS_DIR/buildSrc/base/version.properties`
42export GRADLE_PLUGIN_REPO="$STUDIO_DIR/out/repo:$STUDIO_DIR/prebuilts/tools/common/m2/repository"
Jeff Gaston45832582020-06-15 11:47:20 -040043export JAVA_HOME="$(pwd)/prebuilts/jdk/jdk11/linux-x86/"
Jeff Gastond9211592020-06-12 14:02:56 -040044export JAVA_TOOLS_JAR="$JAVA_HOME/lib/tools.jar"
Aurimas Liutikasce5fb5d2020-03-30 18:06:01 +000045export LINT_PRINT_STACKTRACE=true
Aurimas Liutikas0a3c8f92020-03-17 09:38:25 -070046
Jeff Gastonbdf99562020-08-05 14:16:34 -040047function buildAndroidx() {
Jeff Gaston41b90222020-08-18 11:09:55 -040048 LOG_PROCESSOR="$SCRIPT_DIR/../development/build_log_processor.sh"
49 properties="-Pandroidx.summarizeStderr --no-daemon -Pandroidx.allWarningsAsErrors"
50 "$LOG_PROCESSOR" $gw $properties -p frameworks/support listTaskOutputs && \
Aurimas Liutikasc3df2c02021-02-17 17:09:33 +000051 "$LOG_PROCESSOR" $gw $properties -p frameworks/support bOS -x lintDebug -x lint -x validateLint -x verifyDependencyVersions --stacktrace -PverifyUpToDate
Jeff Gastonbdf99562020-08-05 14:16:34 -040052}
Jeff Gaston868c5022020-06-16 17:32:18 -040053
Jeff Gastonbdf99562020-08-05 14:16:34 -040054function exportTransformsDir() {
55 echo exporting transforms directory
56 destDir="$DIST_DIR/transforms-2/files-2.1"
57 mkdir -p "$destDir"
Jeff Gaston66d686a2020-11-23 16:36:18 -050058 zip -r "$DIST_DIR/transforms.zip" "$OUT_DIR/.gradle/caches/transforms-2/files-2.1"
Jeff Gastonbdf99562020-08-05 14:16:34 -040059}
60
61if buildAndroidx; then
62 echo build succeeded
63else
64 # b/162260809 export transforms directory to help identify cause of corrupt/missing files
65 exportTransformsDir
66 exit 1
67fi
Jeff Gaston868c5022020-06-16 17:32:18 -040068echo "Completing $0 at $(date)"