| OLD | NEW | 
 | (Empty) | 
|   1 #!/bin/bash |  | 
|   2  |  | 
|   3 # Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file |  | 
|   4 # for details. All rights reserved. Use of this source code is governed by a |  | 
|   5 # BSD-style license that can be found in the LICENSE.md file. |  | 
|   6  |  | 
|   7 # Build steps |  | 
|   8 #  - Run servicec. |  | 
|   9 #  - Build dartino library generators for target platforms (here ia32 and arm). |  | 
|  10 #  - In the servicec java output directory build libdartino using ndk-build. |  | 
|  11 #  - Copy/link output files servicec to the jni and java directories. |  | 
|  12 #  - Generate a snapshot of your Dart program and add it to you resources dir. |  | 
|  13  |  | 
|  14 PROJ=github |  | 
|  15 ANDROID_PROJ=GithubMock |  | 
|  16 DART_FILE=bin/github_mock_service.dart |  | 
|  17  |  | 
|  18 set -ue |  | 
|  19  |  | 
|  20 DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) |  | 
|  21  |  | 
|  22 DARTINO_DIR="$(cd "$DIR/../../.." && pwd)" |  | 
|  23  |  | 
|  24 # TODO(zerny): Support other modes than Release in tools/android_build/jni/Andro
    id.mk |  | 
|  25 TARGET_MODE=Release |  | 
|  26 TARGET_DIR="$(cd "$DIR/.." && pwd)" |  | 
|  27 TARGET_GEN_DIR="$TARGET_DIR/generated" |  | 
|  28 TARGET_PKG_FILE="$TARGET_DIR/.packages" |  | 
|  29  |  | 
|  30 SERVICE_GEN_DIR="$TARGET_GEN_DIR/service" |  | 
|  31  |  | 
|  32 JAVA_DIR=$DIR/$ANDROID_PROJ/app/src/main/java/dartino |  | 
|  33 JNI_LIBS_DIR=$DIR/$ANDROID_PROJ/app/src/main/jniLibs |  | 
|  34  |  | 
|  35 MOCK_SERVER_SNAPSHOT="$TARGET_DIR/github_mock_service.snapshot" |  | 
|  36  |  | 
|  37 set -x |  | 
|  38  |  | 
|  39 # Compile dart service file. |  | 
|  40 if [[ $# -eq 0 ]] || [[ "$1" == "service" ]]; then |  | 
|  41     rm -rf "$SERVICE_GEN_DIR" |  | 
|  42     $DIR/../compile_mock_service.sh service |  | 
|  43  |  | 
|  44     # TODO(zerny): Change the servicec output directory structure to allow easy |  | 
|  45     # referencing from Android Studio. |  | 
|  46     mkdir -p $JAVA_DIR |  | 
|  47     cp -R $SERVICE_GEN_DIR/java/dartino/*.java $JAVA_DIR/ |  | 
|  48 fi |  | 
|  49  |  | 
|  50 # Build the native interpreter src for arm and x86. |  | 
|  51 if [[ $# -eq 0 ]] || [[ "$1" == "dartino" ]]; then |  | 
|  52     cd $DARTINO_DIR |  | 
|  53     ninja |  | 
|  54     ninja -C out/${TARGET_MODE}XARMAndroid dartino_vm_library_generator |  | 
|  55     ninja -C out/${TARGET_MODE}IA32Android dartino_vm_library_generator |  | 
|  56     mkdir -p out/${TARGET_MODE}XARMAndroid/obj/src/vm/dartino_vm.gen |  | 
|  57     mkdir -p out/${TARGET_MODE}IA32Android/obj/src/vm/dartino_vm.gen |  | 
|  58     out/${TARGET_MODE}XARMAndroid/dartino_vm_library_generator > \ |  | 
|  59         out/${TARGET_MODE}XARMAndroid/obj/src/vm/dartino_vm.gen/generated.S |  | 
|  60     out/${TARGET_MODE}IA32Android/dartino_vm_library_generator > \ |  | 
|  61         out/${TARGET_MODE}IA32Android/obj/src/vm/dartino_vm.gen/generated.S |  | 
|  62  |  | 
|  63     cd $SERVICE_GEN_DIR/java |  | 
|  64     CPUCOUNT=1 |  | 
|  65     if [[ $(uname) = 'Darwin' ]]; then |  | 
|  66         CPUCOUNT=$(sysctl -n hw.logicalcpu_max) |  | 
|  67     else |  | 
|  68         CPUCOUNT=$(lscpu -p | grep -vc '^#') |  | 
|  69     fi |  | 
|  70     NDK_MODULE_PATH=. ndk-build -j$CPUCOUNT |  | 
|  71  |  | 
|  72     mkdir -p $JNI_LIBS_DIR |  | 
|  73     cp -R libs/* $JNI_LIBS_DIR/ |  | 
|  74 fi |  | 
|  75  |  | 
|  76 # TODO(zerny): should this always recompile the mock data and snapshot? |  | 
|  77 if [[ $# -eq 0 ]] && [[ ! -f "$MOCK_SERVER_SNAPSHOT" ]]; then |  | 
|  78     $DIR/../compile_mock_service.sh |  | 
|  79 fi |  | 
|  80  |  | 
|  81 if [[ $# -eq 0 ]] || [[ "$1" == "snapshot" ]]; then |  | 
|  82     SNAPSHOT="$DIR/$ANDROID_PROJ/app/src/main/res/raw/snapshot" |  | 
|  83     mkdir -p `dirname "$SNAPSHOT"` |  | 
|  84     cp "$MOCK_SERVER_SNAPSHOT" "$SNAPSHOT" |  | 
|  85 fi |  | 
|  86  |  | 
|  87 set +x |  | 
|  88  |  | 
|  89 if [[ $# -eq 1 ]]; then |  | 
|  90     echo |  | 
|  91     echo "Only ran task $1." |  | 
|  92     echo "Possible tasks: service, dartino, and snapshot" |  | 
|  93     echo "If Dartino or any IMMI files changed re-run compile.sh without argumen
    ts." |  | 
|  94 fi |  | 
| OLD | NEW |