mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 04:47:03 +00:00
25f3f6733d
r43821 only does it for the scripts used to run pub from within the source repo. Also add support to the Windows shell script for passing VM flags to pub similar to what dart2js and the bash pub scripts allow. BUG=https://code.google.com/p/dart/issues/detail?id=22461 R=ahe@google.com, nweiz@google.com Review URL: https://codereview.chromium.org//943993005 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43925 260f80e4-7a28-3924-810f-c04153c831b5
38 lines
1 KiB
Bash
Executable file
38 lines
1 KiB
Bash
Executable file
#!/bin/bash
|
|
# Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
|
|
# 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.
|
|
|
|
# Run pub.dart on the Dart VM. This script assumes the Dart SDK's directory
|
|
# structure.
|
|
|
|
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.
|
|
BIN_DIR="$(cd "${PROG_NAME%/*}" ; pwd -P)"
|
|
|
|
SNAPSHOT="$BIN_DIR/snapshots/pub.dart.snapshot"
|
|
|
|
unset VM_OPTIONS
|
|
declare -a VM_OPTIONS
|
|
|
|
# Allow extra VM options to be passed in through an environment variable.
|
|
if [[ $DART_VM_OPTIONS ]]; then
|
|
read -a OPTIONS <<< "$DART_VM_OPTIONS"
|
|
VM_OPTIONS+=("${OPTIONS[@]}")
|
|
fi
|
|
|
|
# Run the pub snapshot.
|
|
DART="$BIN_DIR/dart"
|
|
exec "$DART" "${VM_OPTIONS[@]}" "$SNAPSHOT" "$@"
|