| Index: sdk/bin/dart
|
| diff --git a/sdk/bin/dart b/sdk/bin/dart
|
| index 22abed8b5e623c3425c39b9798a3754f58c309c8..675963f746cab46906ff24938d59bf6f07a8023a 100755
|
| --- a/sdk/bin/dart
|
| +++ b/sdk/bin/dart
|
| @@ -3,20 +3,31 @@
|
| # for details. All rights reserved. Use of this source code is governed by a
|
| # BSD-style license that can be found in the LICENSE file.
|
|
|
| -# Setting CUR_DIR this way is ugly, but is needed to handle the case where
|
| -# sdk/bin has been symlinked to. On MacOS, readlink doesn't work with this case.
|
| -CUR_DIR="$(cd "${0%/*}" ; pwd -P)"
|
| +function follow_links() {
|
| + file="$1"
|
| + while [ -h "$file" ]; do
|
| + # On Mac OS, readlink -f doesn't work.
|
| + file="$(readlink "$file")"
|
| + done
|
| + echo "$file"
|
| +}
|
| +
|
| +# Unlike $0, $BASH_SOURCE points to the absolute path of this file.
|
| +PROG_NAME="$(follow_links "$BASH_SOURCE")"
|
| +
|
| +# Handle the case where dart-sdk/bin has been symlinked to.
|
| +CUR_DIR="$(cd "${PROG_NAME%/*}" ; pwd -P)"
|
|
|
| if [ -z "$DART_CONFIGURATION" ];
|
| then
|
| DART_CONFIGURATION="ReleaseIA32"
|
| fi
|
|
|
| -if [[ `uname` == 'Darwin' ]];
|
| +if [[ `uname` == 'Darwin' ]];
|
| then
|
| BIN_DIR="$CUR_DIR"/../../xcodebuild/$DART_CONFIGURATION
|
| else
|
| BIN_DIR="$CUR_DIR"/../../out/$DART_CONFIGURATION
|
| -fi
|
| +fi
|
|
|
| exec "$BIN_DIR"/dart "$@"
|
|
|