#!/usr/bin/env bash # This should be run inside a folder that contains MM:S, otherwise, it will checkout things into "mms-dependencies". trap "exit" INT ismac=0 iswin=0 archive_ext=tar.gz decomp="tar zxf" if [ `uname` = "Darwin" ]; then ismac=1 elif [ `uname` != "Linux" ] && [ -n "${COMSPEC:+1}" ]; then iswin=1 archive_ext=zip decomp=unzip fi if [ ! -d "metamod-source" ]; then echo "Could not find a Metamod:Source repository; make sure you aren't running this script inside it." exit 1 fi checkout () { if [ ! -d "$name" ]; then git clone $repo -b $branch $name if [ -n "$origin" ]; then cd $name git remote rm origin git remote add origin $origin cd .. fi else cd $name git checkout $branch git pull origin $branch cd .. fi } sdks=( csgo hl2dm nucleardawn l4d2 dods l4d css tf2 insurgency sdk2013 dota ) if [ $ismac -eq 0 ]; then # Add these SDKs for Windows or Linux sdks+=( orangebox blade episode1 bms ) # Add more SDKs for Windows only if [ $iswin -eq 1 ]; then sdks+=( darkm swarm bgt eye contagion ) fi fi # Check out a local copy as a proxy. if [ ! -d "hl2sdk-proxy-repo" ]; then git clone --mirror https://github.com/alliedmodders/hl2sdk hl2sdk-proxy-repo else cd hl2sdk-proxy-repo git fetch cd .. fi for sdk in "${sdks[@]}" do repo=hl2sdk-proxy-repo origin="https://github.com/alliedmodders/hl2sdk" name=hl2sdk-$sdk branch=$sdk checkout done `python -c "import ambuild2"` if [ $? -eq 1 ]; then repo="https://github.com/alliedmodders/ambuild" origin= branch=master name=ambuild checkout cd ambuild if [ $iswin -eq 1 ]; then python setup.py install else python setup.py build echo "About to install AMBuild - press Ctrl+C to abort, otherwise enter your password for sudo." sudo python setup.py install fi fi