Index: python_git_runner.sh |
diff --git a/python_git_runner.sh b/python_git_runner.sh |
new file mode 100755 |
index 0000000000000000000000000000000000000000..786c50be9681a717caa9bfcca5660b9e570f3306 |
--- /dev/null |
+++ b/python_git_runner.sh |
@@ -0,0 +1,38 @@ |
+#!/bin/bash |
+# Copyright (c) 2014 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 'git-sub-command'. This script will then instead invoke |
+## '[depot_tools]/gitscripts/git_sub_command.py' correctly under mingw as well |
+## as posix-ey systems, passing along all other command line flags. |
+ |
+## Example: |
+## echo ". python_git_runner.sh" > git-foo-command |
+## ./git-foo-command #=> runs `python gitscripts/git_foo_command.py` |
+ |
+## Constants |
+PYTHONDONTWRITEBYTECODE=1 |
+SUBDIR=gitscripts |
+BASE="$(basename "$0")" |
+ |
+## "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 |
+SCRIPT="${SCRIPT-${BASE//-/_}.py}" |
+ |
+OUTPUT="$(uname | grep 'MINGW')" |
+MINGW=$? |
+ |
+if [ $MINGW = 0 ]; then |
+ base_dir="${0%\\*}" |
+else |
+ base_dir=$(dirname "$0") |
+fi |
+ |
+if [ -e "$base_dir/python.bat" -a $MINGW = 0 ]; then |
+ cmd.exe //c "$base_dir\\python.bat" "$base_dir\\$SUBDIR\\$SCRIPT" "$@" |
+else |
+ exec "$base_dir/$SUBDIR/$SCRIPT" "$@" |
+fi |