You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
depot_tools/python_runner.sh

56 lines
1.9 KiB
Bash

# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
## This file is designed to be sourced from a bash script whose name takes the
## form 'command-name'. This script will then instead invoke
## '[depot_tools]/command_name.py' correctly under mingw as well
## as posix-ey systems, passing along all other command line flags.
## Example:
## echo ". python_runner.sh" > git-foo-command
## ./git-foo-command #=> runs `python git_foo_command.py`
## Constants
PYTHONDONTWRITEBYTECODE=1
## "Input parameters".
# If set before the script is sourced, then we'll use the pre-set values.
#
# SCRIPT defaults to the basename of $0, with dashes replaced with underscores
# "$0" can have several different formats depending on how the script was called
# and the environment being used, including having different formats even in the
# same environment (e.g. in msys, 'git cl' causes $0 to have a Windows-style
# path, but calling 'git-cl' results in a POSIX-style path), so don't assume a
# particular format.
# First try to split it using Windows format ...
DEPOT_TOOLS="${0%\\*}"
if [[ "$DEPOT_TOOLS" = "$0" ]]; then
# If that didn't work, try POSIX format ...
DEPOT_TOOLS="${0%/*}"
if [[ "$DEPOT_TOOLS" = "$0" ]]; then
# Sometimes commands will run with no path (e.g. a git command run from
# within the depot_tools dir itself). In that case, treat it as if run like:
# "./command"
DEPOT_TOOLS="."
BASENAME="$0"
else
BASENAME="${0##*/}"
fi
else
BASENAME="${0##*\\}"
fi
SCRIPT="${SCRIPT-${BASENAME//-/_}.py}"
if [[ $PYTHON_DIRECT = 1 ]]; then
python.exe "$DEPOT_TOOLS\\$SCRIPT" "$@"
else
Revert "Reland "depot_tools: Move six to depot_tools' .vpython"" This reverts commit d52b306f84eaf9e5e8be0f22536a3f589b010ae6. Reason for revert: Broke ANGLE CQ with "ImportError: No module named six" Example: https://ci.chromium.org/p/angle/builders/try/mac-dbg/6758 Original change's description: > Reland "depot_tools: Move six to depot_tools' .vpython" > > This is a reland of 3a98df0bdd49d64cb15a5dd0fbc6b43223856e7d > > Original change's description: > > depot_tools: Move six to depot_tools' .vpython > > > > Bug: 984182 > > Change-Id: I34a242c8607624beb0f06a27c563e413dec99790 > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1717492 > > Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org> > > Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org> > > Reviewed-by: Robbie Iannucci <iannucci@chromium.org> > > Reviewed-by: Michael Moss <mmoss@chromium.org> > > Bug: 984182 > Change-Id: Ibf7034201e65a18f833cf1e7432f81a903a99aae > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1732880 > Reviewed-by: Robbie Iannucci <iannucci@chromium.org> > Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org> TBR=iannucci@chromium.org,mmoss@chromium.org,tandrii@chromium.org,ehmaldonado@chromium.org Change-Id: Id4488249b607441df9f00aa51f4a1f2bc4ad5cfd No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 984182 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1739582 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
6 years ago
if [[ -e "$DEPOT_TOOLS/python.bat" && $OSTYPE = msys ]]; then
cmd.exe //c "$DEPOT_TOOLS\\python.bat" "$DEPOT_TOOLS\\$SCRIPT" "$@"
else
Revert "Reland "depot_tools: Move six to depot_tools' .vpython"" This reverts commit d52b306f84eaf9e5e8be0f22536a3f589b010ae6. Reason for revert: Broke ANGLE CQ with "ImportError: No module named six" Example: https://ci.chromium.org/p/angle/builders/try/mac-dbg/6758 Original change's description: > Reland "depot_tools: Move six to depot_tools' .vpython" > > This is a reland of 3a98df0bdd49d64cb15a5dd0fbc6b43223856e7d > > Original change's description: > > depot_tools: Move six to depot_tools' .vpython > > > > Bug: 984182 > > Change-Id: I34a242c8607624beb0f06a27c563e413dec99790 > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1717492 > > Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org> > > Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org> > > Reviewed-by: Robbie Iannucci <iannucci@chromium.org> > > Reviewed-by: Michael Moss <mmoss@chromium.org> > > Bug: 984182 > Change-Id: Ibf7034201e65a18f833cf1e7432f81a903a99aae > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1732880 > Reviewed-by: Robbie Iannucci <iannucci@chromium.org> > Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org> TBR=iannucci@chromium.org,mmoss@chromium.org,tandrii@chromium.org,ehmaldonado@chromium.org Change-Id: Id4488249b607441df9f00aa51f4a1f2bc4ad5cfd No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 984182 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1739582 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
6 years ago
exec "$DEPOT_TOOLS/$SCRIPT" "$@"
fi
fi