1b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org#!/bin/sh 2b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 3b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org# Copyright 2014 Google Inc. 4b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org# 5b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org# Use of this source code is governed by a BSD-style license that can be 6b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org# found in the LICENSE file. 7b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 8a749e60e74f7f0446fa6acaff4954b50fc31615ccommit-bot@chromium.orgset -e # When any command fails, the shell will immediately exit. 9a749e60e74f7f0446fa6acaff4954b50fc31615ccommit-bot@chromium.org 10b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgusage() { 11b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org cat >&2 <<EOF 126f2d4d4679f5f0e1a1b5c2e940f1b65e34d94649commit-bot@chromium.orgarm64_make - this script builds a AArch64 version of skia that 13b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgdoes not depend on external libraries, perfect for putting in an 14b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgembedded system running Linux. 15b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 16b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgAssumes that you have already run the download_deps script. 17b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 18b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgUsage: 19b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org $0 \\ 20b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org [-o SKIA_OUT_DIR] [-c CC_EXE] [-x CXX_EXE] \\ 21b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org [-t Debug | Release | Coverage | Release_Developer] \\ 22b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 23b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgExample use: 24b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org $0 \\ 25b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org -o ~/build/skia/arg64gcc \\ 26b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org -c ~/local/arm64/bin/aarch64-linux-gnu-gcc \\ 27b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org -x ~/local/arm64/bin/aarch64-linux-gnu-g++ \\ 28b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgEOF 29b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org return 1 30b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org} 31b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 32b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org# BUILD_TYPE should be one of: 33b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org# Coverage, Debug, Release, or Release_Developer 34b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgBUILD_TYPE='Debug' 35b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 36b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgwhile getopts ":c:x:o:t:h" opt ; do 37b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org case $opt in 38b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org c) export CC="$OPTARG" ;; 39b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org x) export CXX="$OPTARG" ;; 40b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org o) export SKIA_OUT="$OPTARG";; 41b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org t) BUILD_TYPE="$OPTARG";; 42b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org h) usage || exit;; 43b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org ?) echo "unknown option '$OPTARG'" >&2; 44b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org usage || exit;; 45b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org esac 46b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgdone 478041f3dacedd37da887262793b663917679bc309commit-bot@chromium.orgOPTIND=1 # Reset this variable for calling barelinux_make with -t command flag. 48b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 49b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.orgexport GYP_DEFINES="${GYP_DEFINES} \ 50b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org skia_gpu=0 \ 516f2d4d4679f5f0e1a1b5c2e940f1b65e34d94649commit-bot@chromium.org skia_arch_type=arm64 \ 52b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org " 53b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 54a749e60e74f7f0446fa6acaff4954b50fc31615ccommit-bot@chromium.org. "$(dirname "$0")/barelinux_make" -t "$BUILD_TYPE" 55b0a6578c7f3185d4b903ec09de118411618a7e2dcommit-bot@chromium.org 56