Add build bot scripts.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@11696 4a71c877-e1ca-e34f-864e-861f7616d084
master
dak180 2010-09-19 16:44:28 +00:00 committed by Git SVN Gateway
parent 0aa5d2cef8
commit b21f92a65d
4 changed files with 82 additions and 0 deletions

13
macosx/BuildBot/00_clean.sh Executable file
View File

@ -0,0 +1,13 @@
#!/bin/bash
# Note:
# This script is meant to be run from the root of the working copy.
#
# This script cleans up warzone but not the libs so builds will go faster.
# Config
cd macosx
xcodebuild -project Warzone.xcodeproj -parallelizeTargets -target "Warzone" -nodependencies Clean
exit ${?}

18
macosx/BuildBot/01_configure.sh Executable file
View File

@ -0,0 +1,18 @@
#!/bin/bash
# Note:
# This script is meant to be run from the root of the working copy.
#
# This just tries to build warzone. It does it twice because there are race conditions that may otherwise be triggered.
# Config
cd macosx
if ! xcodebuild -project Warzone.xcodeproj -parallelizeTargets -target "Warzone" -configuration Release; then
if ! xcodebuild -project Warzone.xcodeproj -parallelizeTargets -target "Warzone" -configuration "Release" -PBXBuildsContinueAfterErrors=NO; then
exit ${?}
fi
fi
exit 0

13
macosx/BuildBot/02_compile.sh Executable file
View File

@ -0,0 +1,13 @@
#!/bin/bash
# Note:
# This script is meant to be run from the root of the working copy.
#
# This script makes the actual .dmg and dSYM bundle. It is very important to keep the dSYM bundle with it's .dmg; it contains irreplaceable debug info (and, no another build even made right after will not work).
# Config
cd macosx
xcodebuild -project Warzone.xcodeproj -parallelizeTargets -target "Make DMGs for Release" -configuration "Release" -PBXBuildsContinueAfterErrors=NO
exit ${?}

38
macosx/BuildBot/03_upload.sh Executable file
View File

@ -0,0 +1,38 @@
#!/bin/bash
# Note:
# This script is meant to be run from the root of the working copy.
#
# This script sets the name of the .dmg and dSYM bundle as it uploads them and does some link magic.
# Config
uurl="buildbot@buildbot.pc-dummy.net"
rpth="public_html/"
lpth="macosx/build/dmgout/out/"
revt="-r`svnversion -n`"
dmg_bn="warzone2100"
dmg_nv="-novideo.dmg"
tar_dS="-dSYM.tar.gz"
# Set bran
if [ -z ${rtag} ]; then
echo "Must supply the branch name being built."
exit 1
fi
bran="-${1}
# Upload the dSYM bundle
if ! scp -lpq 160 ${lpth}${dmg_bn}${tar_dS} ${uurl}:${rpth}${dmg_bn}${bran}${revt}${tar_dS}; then
exit ${?}
fi
# Upload the .dmg
if ! scp -lpq 160 ${lpth}${dmg_bn}${dmg_nv} ${uurl}:${rpth}${dmg_bn}${bran}${revt}.dmg; then
exit ${?}
fi
# Link up the current .dmg and dSYM bundle
ssh ${uurl} -C "cd ${rpth} && ln -fs ${dmg_bn}${bran}${revt}.dmg ${dmg_bn}${bran}-current.dmg && ln -fs ${dmg_bn}${bran}${revt}${tar_dS} ${dmg_bn}${bran}-current${tar_dS}"