OLD | NEW |
1 #!/bin/bash --posix | 1 #!/bin/bash --posix |
2 # Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 2 # Copyright (c) 2012, 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 set -e | 6 set -e |
7 | 7 |
8 SCRIPT_DIR=$(dirname $0) | 8 SCRIPT_DIR=$(dirname $0) |
9 DARTC_HOME=$(dirname $SCRIPT_DIR) | 9 DART_ANALYZER_HOME=$(dirname $SCRIPT_DIR) |
10 DARTC_LIBS=$DARTC_HOME/lib | 10 |
11 DARTC_SDK=$(dirname $DARTC_HOME)/dart-sdk | 11 FOUND_BATCH=0 |
| 12 FOUND_SDK=0 |
| 13 for ARG in "$@" |
| 14 do |
| 15 case $ARG in |
| 16 -batch|--batch) |
| 17 FOUND_BATCH=1 |
| 18 ;; |
| 19 --dart-sdk) |
| 20 FOUND_SDK=1 |
| 21 ;; |
| 22 *) |
| 23 ;; |
| 24 esac |
| 25 done |
| 26 |
| 27 DART_SDK="" |
| 28 if [ $FOUND_SDK = 0 ] ; then |
| 29 if [ -f $DART_ANALYZER_HOME/lib/core/core_runtime.dart ] ; then |
| 30 DART_SDK="--dart-sdk $DART_ANALYZER_HOME" |
| 31 else |
| 32 DART_ANALYZER_HOME=$(dirname $DART_ANALYZER_HOME)/dart-sdk |
| 33 if [ -d $DART_ANALYZER_HOME ] ; then |
| 34 DART_SDK="--dart-sdk $DART_ANALYZER_HOME" |
| 35 else |
| 36 echo "Couldn't find Dart SDK. Specify with --dart-sdk cmdline argument" |
| 37 fi |
| 38 fi |
| 39 fi |
| 40 |
| 41 DART_ANALYZER_LIBS=$DART_ANALYZER_HOME/util/analyzer |
12 | 42 |
13 if [ -x /usr/libexec/java_home ]; then | 43 if [ -x /usr/libexec/java_home ]; then |
14 export JAVA_HOME=$(/usr/libexec/java_home -v '1.6+') | 44 export JAVA_HOME=$(/usr/libexec/java_home -v '1.6+') |
15 fi | 45 fi |
16 | 46 |
17 EXTRA_JVMARGS="-Xss2M " | 47 EXTRA_JVMARGS="-Xss2M " |
18 OS=`uname | tr [A-Z] [a-z]` | 48 OS=`uname | tr [A-Z] [a-z]` |
19 if [ "$OS" == "darwin" ] ; then | 49 if [ "$OS" == "darwin" ] ; then |
20 # Bump up the heap on Mac VMs, some of which default to 128M or less. | 50 # Bump up the heap on Mac VMs, some of which default to 128M or less. |
21 # Users can specify DART_JVMARGS in the environment to override | 51 # Users can specify DART_JVMARGS in the environment to override |
22 # this setting. Force to 32 bit client vm. 64 bit and server VM make for | 52 # this setting. Force to 32 bit client vm. 64 bit and server VM make for |
23 # poor performance. | 53 # poor performance. |
24 EXTRA_JVMARGS+=" -Xmx256M -client -d32 " | 54 EXTRA_JVMARGS+=" -Xmx256M -client -d32 " |
25 else | 55 else |
26 # On other architectures | 56 # On other architectures |
27 # -batch invocations will do better with a server vm | 57 # -batch invocations will do better with a server vm |
28 # invocations for analyzing a single file do better with a client vm | 58 # invocations for analyzing a single file do better with a client vm |
29 FOUND_BATCH=0 | |
30 for ARG in "$@" | |
31 do | |
32 case $ARG in | |
33 -batch|--batch) | |
34 FOUND_BATCH=1 | |
35 ;; | |
36 *) | |
37 ;; | |
38 esac | |
39 done | |
40 if [ $FOUND_BATCH = 0 ] ; then | 59 if [ $FOUND_BATCH = 0 ] ; then |
41 EXTRA_JVMARGS+=" -client " | 60 EXTRA_JVMARGS+=" -client " |
42 fi | 61 fi |
43 fi | 62 fi |
44 | 63 |
45 exec java $EXTRA_JVMARGS $DART_JVMARGS -ea -classpath "@CLASSPATH@" \ | 64 exec java $EXTRA_JVMARGS $DART_JVMARGS -ea -classpath "@CLASSPATH@" \ |
46 com.google.dart.compiler.DartCompiler --dart-sdk ${DARTC_SDK} $@ | 65 com.google.dart.compiler.DartCompiler ${DART_SDK} $@ |
OLD | NEW |