Files
chromium_depot_tools/ninja
Samuel Attard 7c62ed63ac properly detect msys_nt as windows in the ninja script
Some versions of bash for windows report their uname -s as "MSYS_NT-10.0-{VERSION}",
this updates the wrapper script to handle them.

Change-Id: I5916324fc93d86d71f97ae3ad8497a5bb11a350c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1941341
Auto-Submit: Samuel Attard <samuel.r.attard@gmail.com>
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
2019-11-28 23:26:39 +00:00

45 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
# Copyright (c) 2012 Google Inc. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
OS="$(uname -s)"
THIS_DIR="$(dirname "${0}")"
function print_help() {
cat <<-EOF
No prebuilt ninja binary was found for this system.
Try building your own binary by doing:
cd ~
git clone https://github.com/ninja-build/ninja.git -b v1.8.2
cd ninja && ./configure.py --bootstrap
Then add ~/ninja/ to your PATH.
EOF
}
case "$OS" in
Linux)
MACHINE=$(uname -m)
case "$MACHINE" in
i?86|x86_64)
LONG_BIT=$(getconf LONG_BIT)
# We know we are on x86 but we need to use getconf to determine
# bittage of the userspace install (e.g. when running 32-bit userspace
# on x86_64 kernel)
exec "${THIS_DIR}/ninja-linux${LONG_BIT}" "$@";;
*)
echo Unknown architecture \($MACHINE\) -- unable to run ninja.
print_help
exit 1;;
esac
;;
Darwin) exec "${THIS_DIR}/ninja-mac" "$@";;
CYGWIN*) exec cmd.exe /c $(cygpath -t windows $0).exe "$@";;
MINGW*) cmd.exe //c $0.exe "$@";;
MSYS_NT*) cmd.exe //c $0.exe "$@";;
*) echo "Unsupported OS ${OS}"
print_help
exit 1;;
esac