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.
44 lines
1.2 KiB
Bash
44 lines
1.2 KiB
Bash
#!/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/martine/ninja.git -b v1.7.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 "$@";;
|
|
*) echo "Unsupported OS ${OS}"
|
|
print_help
|
|
exit 1;;
|
|
esac
|