OLD | NEW |
1 #!/bin/bash | 1 #!/bin/bash |
2 # Copyright (c) 2012, 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 # Setting CUR_DIR this way is ugly, but is needed to handle the case where | 6 function follow_links() { |
7 # sdk/bin has been symlinked to. On MacOS, readlink doesn't work with this case. | 7 file="$1" |
8 CUR_DIR="$(cd "${0%/*}" ; pwd -P)" | 8 while [ -h "$file" ]; do |
| 9 # On Mac OS, readlink -f doesn't work. |
| 10 file="$(readlink "$file")" |
| 11 done |
| 12 echo "$file" |
| 13 } |
| 14 |
| 15 # Unlike $0, $BASH_SOURCE points to the absolute path of this file. |
| 16 PROG_NAME="$(follow_links "$BASH_SOURCE")" |
| 17 |
| 18 # Handle the case where dart-sdk/bin has been symlinked to. |
| 19 CUR_DIR="$(cd "${PROG_NAME%/*}" ; pwd -P)" |
9 | 20 |
10 if [ -z "$DART_CONFIGURATION" ]; | 21 if [ -z "$DART_CONFIGURATION" ]; |
11 then | 22 then |
12 DART_CONFIGURATION="ReleaseIA32" | 23 DART_CONFIGURATION="ReleaseIA32" |
13 fi | 24 fi |
14 | 25 |
15 if [[ `uname` == 'Darwin' ]]; | 26 if [[ `uname` == 'Darwin' ]]; |
16 then | 27 then |
17 BIN_DIR="$CUR_DIR"/../../xcodebuild/$DART_CONFIGURATION | 28 BIN_DIR="$CUR_DIR"/../../xcodebuild/$DART_CONFIGURATION |
18 else | 29 else |
19 BIN_DIR="$CUR_DIR"/../../out/$DART_CONFIGURATION | 30 BIN_DIR="$CUR_DIR"/../../out/$DART_CONFIGURATION |
20 fi | 31 fi |
21 | 32 |
22 exec "$BIN_DIR"/dart "$@" | 33 exec "$BIN_DIR"/dart "$@" |
OLD | NEW |