OLD | NEW |
1 #!/bin/bash | 1 #!/bin/bash |
2 # Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 2 # Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
3 # for details. All rights reserved. Use of this source code is governed by a | 3 # for details. All rights reserved. Use of this source code is governed by a |
4 # BSD-style license that can be found in the LICENSE file. | 4 # BSD-style license that can be found in the LICENSE file. |
5 | 5 |
6 # This file is used to execute the analyzer by running the jar file. | 6 # This file is used to execute the analyzer by running the jar file. |
7 # It is a simple wrapper enabling us to have simpler command lines in | 7 # It is a simple wrapper enabling us to have simpler command lines in |
8 # the testing infrastructure. | 8 # the testing infrastructure. |
9 set -e | 9 set -e |
10 | 10 |
11 function follow_links() { | |
12 while [ -h "$1" ]; do | |
13 # On Mac OS, readlink -f doesn't work. | |
14 1="$(readlink "$1")" | |
15 done | |
16 echo "$1" | |
17 } | |
18 | |
19 FOUND_BATCH=0 | 11 FOUND_BATCH=0 |
20 for ARG in "$@" | 12 for ARG in "$@" |
21 do | 13 do |
22 case $ARG in | 14 case $ARG in |
23 -batch|--batch) | 15 -batch|--batch) |
24 FOUND_BATCH=1 | 16 FOUND_BATCH=1 |
25 ;; | 17 ;; |
26 *) | 18 *) |
27 ;; | 19 ;; |
28 esac | 20 esac |
29 done | 21 done |
30 | 22 |
| 23 function follow_links() { |
| 24 file="$1" |
| 25 while [ -h "$file" ]; do |
| 26 # On Mac OS, readlink -f doesn't work. |
| 27 file="$(readlink "$file")" |
| 28 done |
| 29 echo "$file" |
| 30 } |
| 31 |
31 # Unlike $0, $BASH_SOURCE points to the absolute path of this file. | 32 # Unlike $0, $BASH_SOURCE points to the absolute path of this file. |
32 PROG_NAME="$(follow_links "$BASH_SOURCE")" | 33 PROG_NAME="$(follow_links "$BASH_SOURCE")" |
33 | 34 |
34 # Handle the case where the binary dir has been symlinked to. | 35 # Handle the case where dart-sdk/bin has been symlinked to. |
35 CUR_DIR="$(follow_links "$(cd "${PROG_NAME%/*}" ; pwd -P)")" | 36 CUR_DIR="$(cd "${PROG_NAME%/*}" ; pwd -P)" |
36 | 37 |
37 SDK_DIR="$(cd "${CUR_DIR}/.." ; pwd -P)" | 38 SDK_DIR="$(cd "${CUR_DIR}/.." ; pwd -P)" |
38 | 39 |
39 if [ -z "$DART_CONFIGURATION" ]; | 40 if [ -z "$DART_CONFIGURATION" ]; |
40 then | 41 then |
41 DART_CONFIGURATION="ReleaseIA32" | 42 DART_CONFIGURATION="ReleaseIA32" |
42 fi | 43 fi |
43 | 44 |
44 if [ `uname` == 'Darwin' ]; | 45 if [ `uname` == 'Darwin' ]; |
45 then | 46 then |
(...skipping 12 matching lines...) Expand all Loading... |
58 else | 59 else |
59 # On other architectures | 60 # On other architectures |
60 # -batch invocations will do better with a server vm | 61 # -batch invocations will do better with a server vm |
61 # invocations for analyzing a single file do better with a client vm | 62 # invocations for analyzing a single file do better with a client vm |
62 if [ $FOUND_BATCH -eq 0 ] ; then | 63 if [ $FOUND_BATCH -eq 0 ] ; then |
63 EXTRA_JVMARGS+=" -client " | 64 EXTRA_JVMARGS+=" -client " |
64 fi | 65 fi |
65 fi | 66 fi |
66 | 67 |
67 exec java $EXTRA_JVMARGS -jar $JAR_FILE --dart-sdk "$SDK_DIR" "$@" | 68 exec java $EXTRA_JVMARGS -jar $JAR_FILE --dart-sdk "$SDK_DIR" "$@" |
OLD | NEW |