diff --git a/build-common.sh b/build-common.sh
new file mode 100644
index 0000000..d6d3a32
--- /dev/null
+++ b/build-common.sh
@@ -0,0 +1,113 @@
+# inputs
+# $PROJ - project name (cmake|ninja|swig)
+# $VER - project version
+# $1 - name of this file
+#
+# this file does the following:
+#
+# 1) define the following env vars
+# OS - linux|darwin|windows
+# USER - username
+# CORES - numer of cores (for parallel builds)
+# PATH (with appropriate compilers)
+# CFLAGS/CXXFLAGS/LDFLAGS
+# RD - root directory for source and object files
+# INSTALL - install directory/git repo root
+# SCRIPT_FILE=absolute path to the parent build script
+# SCRIPT_DIR=absolute path to the parent build script's directory
+# COMMON_FILE=absolute path to this file
+
+#
+# 2) create an empty tmp directory at /tmp/$PROJ-$USER
+# 3) checkout the destination git repo to /tmp/prebuilts/$PROJ/$OS-x86/$VER
+# 4) cd $RD
+
+UNAME="$(uname)"
+case "$UNAME" in
+Linux)
+    SCRATCH=/tmp
+    OS='linux'
+    INSTALL_VER=$VER
+    ;;
+Darwin)
+    SCRATCH=/tmp
+    OS='darwin'
+    OSX_MIN=10.6
+    export CFLAGS="$CFLAGS -mmacosx-version-min=$OSX_MIN"
+    export CXXFLAGS="$CXXFLAGS -mmacosx-version-min=$OSX_MIN"
+    export LDFLAGS="$LDFLAGS -mmacosx-version-min=$OSX_MIN"
+    INSTALL_VER=$VER
+    ;;
+*_NT-*)
+    if [[ "$UNAME" == CYGWIN_NT-* ]]; then
+        PATH_PREFIX=/cygdrive
+    else
+        # MINGW32_NT-*
+        PATH_PREFIX=
+    fi
+    SCRATCH=$PATH_PREFIX/d/src/tmp
+    USER=$USERNAME
+    OS='windows'
+    CORES=$NUMBER_OF_PROCESSORS
+    # VS2013 x64 Native Tools Command Prompt
+    case "$MSVS" in
+    2013)
+        export PATH="$PATH_PREFIX/c/Program Files (x86)/Microsoft Visual Studio 12.0/VC/bin/amd64/":"$PATH_PREFIX/c/Program Files (x86)/Microsoft Visual Studio 12.0/Common7/IDE/":"$PATH"
+        export INCLUDE="C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\INCLUDE;C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\ATLMFC\\INCLUDE;C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\shared;C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\um;C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\winrt;"
+        export LIB="C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\LIB\\amd64;C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\ATLMFC\\LIB\\amd64;C:\\Program Files (x86)\\Windows Kits\\8.1\\lib\\winv6.3\\um\\x64;"
+        export LIBPATH="C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\LIB\\amd64;C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\ATLMFC\\LIB\\amd64;C:\\Program Files (x86)\\Windows Kits\\8.1\\References\\CommonConfiguration\\Neutral;C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v8.1\\ExtensionSDKs\\Microsoft.VCLibs\\12.0\\References\\CommonConfiguration\\neutral;"
+        INSTALL_VER=${VER}_${MSVS}
+        ;;
+    *)
+        # g++/make build
+        export CC=x86_64-w64-mingw32-gcc
+        export CXX=x86_64-w64-mingw32-g++
+        export LD=x86_64-w64-mingw32-ld
+        ;;
+    esac
+    ;;
+*)
+    exit 1
+    ;;
+esac
+
+RD=$SCRATCH/$PROJ-$USER
+INSTALL="$RD/install"
+
+cd /tmp # windows can't delete if you're in the dir
+rm -rf $RD
+mkdir -p $INSTALL
+mkdir -p $RD
+cd $RD
+
+# OSX lacks a "realpath" bash command
+realpath() {
+    [[ $1 = /* ]] && echo "$1" || echo "$PWD/${1#./}"
+}
+
+SCRIPT_FILE=$(realpath "$0")
+SCRIPT_DIR="$(dirname "$SCRIPT_FILE")"
+COMMON_FILE="$SCRIPT_DIR/$1"
+
+commit_and_push()
+{
+    # check into a local git clone
+    rm -rf $SCRATCH/prebuilts/$PROJ/
+    mkdir -p $SCRATCH/prebuilts/$PROJ/
+    cd $SCRATCH/prebuilts/$PROJ/
+    git clone https://android.googlesource.com/platform/prebuilts/$PROJ/$OS-x86
+    GIT_REPO="$SCRATCH/prebuilts/$PROJ/$OS-x86"
+    cd $GIT_REPO
+    git rm -r * || true  # ignore error caused by empty directory
+    mv $INSTALL/* $GIT_REPO
+    cp $SCRIPT_FILE $GIT_REPO
+    cp $COMMON_FILE $GIT_REPO
+
+    git add .
+    git commit -m "Adding binaries for $INSTALL_VER"
+
+    # execute this command to upload
+    #git push origin HEAD:refs/for/master
+
+    rm -rf $RD || true  # ignore error
+}
diff --git a/build-ninja.sh b/build-ninja.sh
new file mode 100755
index 0000000..f8aa92c
--- /dev/null
+++ b/build-ninja.sh
@@ -0,0 +1,28 @@
+#!/bin/bash -ex
+# Download & build ninja on the local machine
+# works on Linux, OSX, and Windows (Git Bash)
+# leaves output in /tmp/prebuilts/ninja/$OS-x86/
+
+PROJ=ninja
+VER=1.5.3
+MSVS=2013
+
+source $(dirname "$0")/build-common.sh build-common.sh
+
+# needed for cygwin
+export PATH="$PATH":.
+
+# ninja specific steps
+cd $RD
+git clone https://github.com/martine/ninja.git src
+cd src
+git checkout v$VER
+if [[ "$OS" == "windows" ]] ; then
+	 PLATFORM="--platform=msvc"
+fi
+./configure.py --bootstrap $PLATFORM
+
+# install
+cp $RD/src/ninja $INSTALL
+
+commit_and_push
diff --git a/ninja b/ninja
new file mode 100755
index 0000000..0072d5e
--- /dev/null
+++ b/ninja
Binary files differ
