sourcemod/tools/checkout-deps.sh
David Anderson e69e9eddc7 Change float comparison operators to return false for NaN (bug 6107, r=ds).
--HG--
extra : rebase_source : a11c56fb23d6617545def3591ec6100dd143eb3e
2014-04-22 19:40:45 -07:00

109 lines
2.4 KiB
Bash
Executable File

#!/usr/bin/env bash
# This should be run inside a folder that contains sourcemod, otherwise, it will checkout things into "sm-dependencies".
trap "exit" INT
ismac=0
iswin=0
archive_ext=tar.gz
decomp="tar zxvf"
if [ `uname` = "Darwin" ]; then
ismac=1
elif [ `uname` != "Linux" ] && [ -n "${COMSPEC:+1}" ]; then
iswin=1
archive_ext=zip
decomp=unzip
fi
if [ ! -d "sourcemod-central" ]; then
if [ ! -d "sourcemod-1.5" ]; then
echo "Could not find a SourceMod repository; make sure you aren't running this script inside it."
exit 1
fi
fi
if [ $ismac -eq 1 ]; then
mysqlver=mysql-5.5.28-osx10.5-x86
mysqlurl=http://cdn.mysql.com/archives/mysql-5.5/$mysqlver.$archive_ext
elif [ $iswin -eq 1 ]; then
mysqlver=mysql-noinstall-5.0.24a-win32
mysqlurl=http://cdn.mysql.com/archives/mysql-5.0/$mysqlver.$archive_ext
# The folder in the zip archive does not contain the substring "-noinstall", so strip it
mysqlver=${mysqlver/-noinstall}
else
mysqlver=mysql-5.6.15-linux-glibc2.5-i686
mysqlurl=http://cdn.mysql.com/archives/mysql-5.6/$mysqlver.$archive_ext
fi
if [ ! -d "mysql-5.0" ]; then
if [ `command -v wget` ]; then
wget $mysqlurl -O mysql.$archive_ext
elif [ `command -v curl` ]; then
curl -o mysql.$archive_ext $mysqlurl
else
echo "Failed to locate wget or curl. Install one of these programs to download MySQL."
exit 1
fi
$decomp mysql.$archive_ext
mv $mysqlver mysql-5.0
rm mysql.$archive_ext
fi
checkout ()
{
if [ ! -d "$name" ]; then
hg clone https://hg.alliedmods.net/$path/$name
else
cd $name
sed -i 's/http:/https:/g' .hg/hgrc
hg pull -u
cd ..
fi
}
name=mmsource-1.10
path=releases
checkout
sdks=( csgo hl2dm nd l4d2 dods l4d css tf2 insurgency 2013 dota )
if [ $ismac -eq 0 ]; then
# Checkout original HL2 SDK on Windows or Linux
name=hl2sdk
path=hl2sdks
checkout
# Add these SDKs for Windows or Linux
sdks+=( ob blade )
# Add more SDKs for Windows only
if [ $iswin -eq 1 ]; then
sdks+=( darkm swarm bgt eye contagion )
fi
fi
for sdk in "${sdks[@]}"
do
name=hl2sdk-$sdk
path=hl2sdks
checkout
done
`python -c "import ambuild2"`
if [ $? -eq 1 ]; then
name=
path=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