OLD | NEW |
1 #!/bin/bash | 1 #!/bin/bash |
2 # Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 2 # Copyright (c) 2014, 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 function follow_links() { | 6 function follow_links() { |
7 file="$1" | 7 file="$1" |
8 while [ -h "$file" ]; do | 8 while [ -h "$file" ]; do |
9 # On Mac OS, readlink -f doesn't work. | 9 # On Mac OS, readlink -f doesn't work. |
10 file="$(readlink "$file")" | 10 file="$(readlink "$file")" |
11 done | 11 done |
12 echo "$file" | 12 echo "$file" |
13 } | 13 } |
14 | 14 |
15 # Unlike $0, $BASH_SOURCE points to the absolute path of this file. | 15 # Unlike $0, $BASH_SOURCE points to the absolute path of this file. |
16 PROG_NAME="$(follow_links "$BASH_SOURCE")" | 16 PROG_NAME="$(follow_links "$BASH_SOURCE")" |
17 | 17 |
18 # Handle the case where dart-sdk/bin has been symlinked to. | 18 # Handle the case where dart-sdk/bin has been symlinked to. |
19 BIN_DIR="$(cd "${PROG_NAME%/*}" ; pwd -P)" | 19 BIN_DIR="$(cd "${PROG_NAME%/*}" ; pwd -P)" |
20 | 20 |
| 21 SDK_DIR="$(cd "${BIN_DIR}/.." ; pwd -P)" |
| 22 |
21 unset SNAPSHOT | 23 unset SNAPSHOT |
22 | 24 |
23 SNAPSHOT="$BIN_DIR/snapshots/utils_wrapper.dart.snapshot" | 25 SNAPSHOT="$BIN_DIR/snapshots/utils_wrapper.dart.snapshot" |
24 | 26 |
25 if test -f $SNAPSHOT; then | 27 if test -f $SNAPSHOT; then |
26 # TODO(ahe): Remove the following line when we are relatively sure it works. | |
27 echo Using snapshot $SNAPSHOT 1>&2 | |
28 exec "$BIN_DIR"/dart \ | 28 exec "$BIN_DIR"/dart \ |
29 "--package-root=$BIN_DIR/../packages/" $SNAPSHOT docgen "$@" | 29 "--package-root=$BIN_DIR/../packages/" $SNAPSHOT \ |
| 30 docgen "--sdk=$SDK_DIR" "$@" |
30 else | 31 else |
31 exec "$BIN_DIR"/dart \ | 32 exec "$BIN_DIR"/dart \ |
32 "--package-root=$BIN_DIR/../packages/" \ | 33 "--package-root=$BIN_DIR/../packages/" \ |
33 "$BIN_DIR/../pkg/docgen/bin/docgen.dart" "$@" | 34 "$BIN_DIR/../../pkg/docgen/bin/docgen.dart" "--sdk=$SDK_DIR" "$@" |
34 fi | 35 fi |
OLD | NEW |