| author | Scott Ehlert <ds@alliedmods.net> |
| Fri Mar 14 05:21:12 2014 -0500 (2014-03-14) | |
| changeset 4284 | ffbdeec249d9 |
| parent 4283 | 7b53fb6f4e72 |
| child 4325 | c12f9b9042f9 |
| permissions | -rwxr-xr-x |
| ds@4227 | 1 |
#!/usr/bin/env bash |
| dvander@4104 | 2 |
# This should be run inside a folder that contains sourcemod, otherwise, it will checkout things into "sm-dependencies". |
| dvander@4104 | 3 |
|
| ds@4227 | 4 |
trap "exit" INT |
| ds@4227 | 5 |
|
| ds@4227 | 6 |
ismac=0 |
| ds@4228 | 7 |
iswin=0 |
| ds@4228 | 8 |
|
| ds@4228 | 9 |
archive_ext=tar.gz |
| ds@4228 | 10 |
decomp="tar zxvf" |
| ds@4228 | 11 |
|
| ds@4227 | 12 |
if [ `uname` = "Darwin" ]; then |
| ds@4227 | 13 |
ismac=1 |
| ds@4228 | 14 |
elif [ `uname` != "Linux" ] && [ -n "${COMSPEC:+1}" ]; then |
| ds@4228 | 15 |
iswin=1 |
| ds@4228 | 16 |
archive_ext=zip |
| ds@4228 | 17 |
decomp=unzip |
| ds@4227 | 18 |
fi |
| ds@4227 | 19 |
|
| dvander@4104 | 20 |
if [ ! -d "sourcemod-central" ]; then |
| dvander@4104 | 21 |
if [ ! -d "sourcemod-1.5" ]; then |
| dvander@4253 | 22 |
echo "Could not find a SourceMod repository; make sure you aren't running this script inside it." |
| dvander@4253 | 23 |
exit 1 |
| dvander@4104 | 24 |
fi |
| dvander@4104 | 25 |
fi |
| dvander@4104 | 26 |
|
| ds@4227 | 27 |
if [ $ismac -eq 1 ]; then |
| ds@4227 | 28 |
mysqlver=mysql-5.5.28-osx10.5-x86 |
| ds@4228 | 29 |
mysqlurl=http://cdn.mysql.com/archives/mysql-5.5/$mysqlver.$archive_ext |
| ds@4228 | 30 |
elif [ $iswin -eq 1 ]; then |
| ds@4228 | 31 |
mysqlver=mysql-noinstall-5.0.24a-win32 |
| ds@4228 | 32 |
mysqlurl=http://cdn.mysql.com/archives/mysql-5.0/$mysqlver.$archive_ext |
| ds@4228 | 33 |
# The folder in the zip archive does not contain the substring "-noinstall", so strip it |
| ds@4228 | 34 |
mysqlver=${mysqlver/-noinstall} |
| ds@4227 | 35 |
else |
| ds@4227 | 36 |
mysqlver=mysql-5.6.15-linux-glibc2.5-i686 |
| ds@4228 | 37 |
mysqlurl=http://cdn.mysql.com/archives/mysql-5.6/$mysqlver.$archive_ext |
| ds@4227 | 38 |
fi |
| ds@4227 | 39 |
|
| dvander@4104 | 40 |
if [ ! -d "mysql-5.0" ]; then |
| ds@4227 | 41 |
if [ `command -v wget` ]; then |
| ds@4228 | 42 |
wget $mysqlurl -O mysql.$archive_ext |
| ds@4227 | 43 |
elif [ `command -v curl` ]; then |
| ds@4228 | 44 |
curl -o mysql.$archive_ext $mysqlurl |
| ds@4227 | 45 |
else |
| ds@4227 | 46 |
echo "Failed to locate wget or curl. Install one of these programs to download MySQL." |
| ds@4227 | 47 |
exit 1 |
| ds@4227 | 48 |
fi |
| ds@4228 | 49 |
$decomp mysql.$archive_ext |
| ds@4227 | 50 |
mv $mysqlver mysql-5.0 |
| ds@4228 | 51 |
rm mysql.$archive_ext |
| dvander@4104 | 52 |
fi |
| dvander@4104 | 53 |
|
| dvander@4104 | 54 |
checkout () |
| dvander@4104 | 55 |
{ |
| dvander@4104 | 56 |
if [ ! -d "$name" ]; then |
| skamonkey@4283 | 57 |
hg clone https://hg.alliedmods.net/$path/$name |
| dvander@4104 | 58 |
else |
| dvander@4104 | 59 |
cd $name |
| dvander@4104 | 60 |
hg pull -u |
| dvander@4104 | 61 |
cd .. |
| dvander@4104 | 62 |
fi |
| dvander@4104 | 63 |
} |
| dvander@4104 | 64 |
|
| dvander@4104 | 65 |
name=mmsource-1.10 |
| dvander@4104 | 66 |
path=releases |
| dvander@4104 | 67 |
checkout |
| dvander@4104 | 68 |
|
| ds@4284 | 69 |
sdks=( csgo hl2dm nd l4d2 dods l4d css tf2 insurgency 2013 dota ) |
| ds@4227 | 70 |
|
| ds@4227 | 71 |
if [ $ismac -eq 0 ]; then |
| ds@4228 | 72 |
# Checkout original HL2 SDK on Windows or Linux |
| ds@4227 | 73 |
name=hl2sdk |
| ds@4227 | 74 |
path=hl2sdks |
| ds@4227 | 75 |
checkout |
| ds@4228 | 76 |
|
| ds@4228 | 77 |
# Add these SDKs for Windows or Linux |
| ds@4228 | 78 |
sdks+=( ob blade ) |
| ds@4228 | 79 |
|
| ds@4228 | 80 |
# Add more SDKs for Windows only |
| ds@4228 | 81 |
if [ $iswin -eq 1 ]; then |
| ds@4284 | 82 |
sdks+=( darkm swarm bgt eye ) |
| ds@4228 | 83 |
fi |
| ds@4227 | 84 |
fi |
| dvander@4104 | 85 |
|
| dvander@4104 | 86 |
for sdk in "${sdks[@]}" |
| dvander@4104 | 87 |
do |
| dvander@4104 | 88 |
name=hl2sdk-$sdk |
| dvander@4104 | 89 |
path=hl2sdks |
| dvander@4104 | 90 |
checkout |
| dvander@4104 | 91 |
done |
| dvander@4104 | 92 |
|
| dvander@4253 | 93 |
`python -c "import ambuild2"` |
| dvander@4253 | 94 |
if [ $? -eq 1 ]; then |
| dvander@4253 | 95 |
name=ambuild |
| dvander@4253 | 96 |
path=ambuild |
| dvander@4253 | 97 |
checkout |
| dvander@4253 | 98 |
|
| dvander@4253 | 99 |
cd ambuild |
| dvander@4253 | 100 |
if [ $iswin -eq 1 ]; then |
| dvander@4253 | 101 |
python setup.py install |
| dvander@4253 | 102 |
else |
| dvander@4253 | 103 |
python setup.py build |
| dvander@4253 | 104 |
echo "About to install AMBuild - press Ctrl+C to abort, otherwise enter your password for sudo." |
| dvander@4253 | 105 |
sudo python setup.py install |
| dvander@4253 | 106 |
fi |
| dvander@4253 | 107 |
fi |