OLD | NEW |
(Empty) | |
| 1 #!/bin/sh |
| 2 |
| 3 # Copyright 2014 Google Inc. |
| 4 # |
| 5 # Use of this source code is governed by a BSD-style license that can be |
| 6 # found in the LICENSE file. |
| 7 |
| 8 usage() { |
| 9 cat >&2 <<EOF |
| 10 barelinux_make - this script builds a version of skia that does not |
| 11 depend on external libraries, perfect for putting in an embedded |
| 12 system running Linux. |
| 13 |
| 14 Assumes that you have already run the download_deps script. |
| 15 |
| 16 Usage: |
| 17 $0 \\ |
| 18 [-o SKIA_OUT_DIR] [-c CC_EXE] [-x CXX_EXE] [GYP_DEFINES...] |
| 19 |
| 20 Example use: |
| 21 $0 \\ |
| 22 -o ~/build/skia/arg64gcc \\ |
| 23 -c ~/local/arm64/bin/aarch64-linux-gnu-gcc \\ |
| 24 -x ~/local/arm64/bin/aarch64-linux-gnu-g++ \\ |
| 25 skia_gpu=0 skia_arch_type=arm skia_arch_width=64 \\ |
| 26 armv7=1 armv8=1 arm_neon=0 arm_thumb=0 |
| 27 EOF |
| 28 return 1 |
| 29 } |
| 30 |
| 31 unset OPTIND |
| 32 while getopts ":c:x:o:h" opt ; do |
| 33 case $opt in |
| 34 c) export CC="$OPTARG" ;; |
| 35 x) export CXX="$OPTARG" ;; |
| 36 o) export SKIA_OUT="$OPTARG";; |
| 37 h) usage || exit;; |
| 38 ?) echo "unknown option '$OPTARG'" >&2; |
| 39 usage || exit;; |
| 40 esac |
| 41 done |
| 42 # Append exra arguments to GYP_DEFINES variable. |
| 43 shift $(( $OPTIND - 1 )) |
| 44 GYP_DEFINES="${GYP_DEFINES} $*" |
| 45 |
| 46 # If you move this script, this must be changed. |
| 47 SKIA_SRC_DIR="$(cd "$(dirname "$0")/../../.."; pwd)" |
| 48 |
| 49 try() { |
| 50 # exit shell script on nonzero return code |
| 51 "$@" |
| 52 local ret=$? |
| 53 if [ $ret != 0 ] ; then |
| 54 echo "'$@' failed and returned ${ret}." >&2 |
| 55 return $ret |
| 56 fi |
| 57 } |
| 58 is_set() { |
| 59 test "$1" && test "$(eval echo \${$1})"; |
| 60 } |
| 61 |
| 62 # Set a reasonable default. |
| 63 is_set SKIA_OUT || export SKIA_OUT="${SKIA_SRC_DIR}/out/barelinux" |
| 64 |
| 65 # Assume ninja is in your path |
| 66 try command -v ninja > /dev/null || exit |
| 67 |
| 68 try test -x "${SKIA_SRC_DIR}/gyp_skia" || exit |
| 69 try mkdir -p "$SKIA_OUT" || exit |
| 70 |
| 71 export GYP_GENERATORS="ninja" |
| 72 export GYP_GENERATOR_FLAGS="" |
| 73 export GYP_DEFINES="${GYP_DEFINES} \ |
| 74 skia_warnings_as_errors=0 \ |
| 75 skia_giflib_static=1 \ |
| 76 skia_libpng_static=1 \ |
| 77 skia_zlib_static=1 \ |
| 78 skia_freetype_static=1 \ |
| 79 skia_no_fontconfig=1 \ |
| 80 skia_poppler_enabled=0 \ |
| 81 skia_skip_gui=1 \ |
| 82 " |
| 83 |
| 84 try "${SKIA_SRC_DIR}/gyp_skia" || exit |
| 85 |
| 86 try test -d "${SKIA_OUT}/Debug" || exit |
| 87 |
| 88 try ninja -C "${SKIA_OUT}/Debug" || exit |
| 89 |
OLD | NEW |