#!/bin/bash # Copyright (c) 2012 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. # Script to install everything needed to build chromium on android, including # items requiring sudo privileges. # See https://www.chromium.org/developers/how-tos/android-build-instructions args="$@" if ! uname -m | egrep -q "i686|x86_64"; then echo "Only x86 architectures are currently supported" >&2 exit fi # Exit if any commands fail. set -e lsb_release=$(lsb_release --codename --short) # Install first the default Linux build deps. "$(dirname "${BASH_SOURCE[0]}")/install-build-deps.sh" \ --no-syms --lib32 --no-arm --no-chromeos-fonts --no-nacl --no-prompt "${args}" # Fix deps sudo apt-get -f install # common sudo apt-get -y install lib32z1 lighttpd python-pexpect xvfb x11-utils # Some binaries in the Android SDK require 32-bit libraries on the host. # See https://developer.android.com/sdk/installing/index.html?pkg=tools sudo apt-get -y install libncurses5:i386 libstdc++6:i386 zlib1g:i386 # Required for apk-patch-size-estimator sudo apt-get -y install bsdiff # Do our own error handling for java. set +e function IsJava8() { # Arg is either "java" or "javac" $1 -version 2>&1 | grep -q '1\.8' } if ! (IsJava8 java && IsJava8 javac); then sudo apt-get -y install openjdk-8-jre openjdk-8-jdk fi # There can be several reasons why java8 is not default despite being installed. # Just show an error and exit. if ! (IsJava8 java && IsJava8 javac); then echo echo "Automatic java installation failed." echo '`java -version` reports:' java -version echo echo '`javac -version` reports:' javac -version echo echo "Please ensure that JDK 8 is installed and resolves first in your PATH." echo -n '`which java` reports: ' which java echo -n '`which javac` reports: ' which javac echo echo "You might also try running:" echo " sudo update-java-alternatives -s java-1.8.0-openjdk-amd64" exit 1 fi echo "install-build-deps-android.sh complete."