#!/bin/bash # dummy values -- comment these out after testing #export SVNROOT_URL="https://svn.netsolutions.dnsalias.com/websvn/ps2/pcsx2/pcsx2_0.9.7" #export downstream_export_location="`pwd`" #export upstream_revision="3738" #export SVNTMP="svntmp" #export BRANCH_DIR="branch" #export BRANCH_CONFIGURATION="debug" #export BRANCH_LINE="0.X" #export BRANCH_NAME="latest" #export BRANCH_URL="$SVNROOT_URL/$BRANCH_DIR/$BRANCH_CONFIGURATION/$BRANCH_LINE/$BRANCH_NAME" #export BRANCH_LOCATION="$downstream_export_location/$BRANCH_DIR/$BRANCH_CONFIGURATION/$BRANCH_LINE" # end dummy export BUILD_TMP_SEED=`date +%s` export BUILD_TMP_DIR="/tmp" export PCSX2_BUILD_TMP="$BUILD_TMP_DIR/pcsx2_build_stageing_$BUILD_TMP_SEED" export DotNetFrameworkVersion="3.5" export MSBUILD="/cygdrive/C/Windows/Microsoft.NET/Framework/v$DotNetFrameworkVersion/MSBuild.exe" export VSC_PROJECT_ROOT="$PCSX2_BUILD_TMP" export VSC_PROJECT_FILE="pcsx2_suite_2008.sln" export VSC_PROJECT_PATH="$VSC_PROJECT_ROOT/$VSC_PROJECT_FILE" export VSC_PROJECT_PATH_WIN32=`cyg2winpath $VSC_PROJECT_PATH` # output variables echo "---------------------------------------------------------------------------------------" echo "AUTO BUILD CONFIG:" echo echo -e "\\tMSBUILD PATH: $MSBUILD" echo -e "\\tPCSX2 VCS BUILD PATH: $PCSX2_BUILD_TMP" echo -e "\\tPCSX2 VCS PROJECT FILE: $VSC_PROJECT_FILE" echo echo "---------------------------------------------------------------------------------------" echo echo "PERFORMING AUTOBUILD:" #clean up BUILD_TMP_DIR cd "$BUILD_TMP_DIR" rm -Rf * # Make Build TMP Path mkdir -p "$PCSX2_BUILD_TMP" cd "$PCSX2_BUILD_TMP" echo echo "PERFORMING PREBUILD:" # export latest branch to tmp dir echo -ne "\\tCOPYING: "$BRANCH_LOCATION/$BRANCH_NAME" to $PCSX2_BUILD_TMP ... " #svn export --force "$BRANCH_LOCATION/$BRANCH_NAME" "$PCSX2_BUILD_TMP" 2>/dev/null cp -Rf "$BRANCH_LOCATION/$BRANCH_NAME"/* "$PCSX2_BUILD_TMP" 2>/dev/null && echo "done." || echo "failed." # remove all .pch files find -name *.pch -exec rm -f {} \; echo "PREBUILD COMPLETED..." echo # START VISUAL STUDIO BUILD SUPPORT export BUILD_SUCCESS=0 echo "PERFORMING BUILD:" "$MSBUILD" /nologo /t:Clean,rebuild "$VSC_PROJECT_PATH_WIN32" && BUILD_SUCCESS=0 || BUILD_SUCCESS=1 # END VISUAL STUDIO BUILD SUPPORT #echo "BUILD SUCCESS: $BUILD_SUCCESS" if [ "$BUILD_SUCCESS" == 0 ] ; then echo "BUILD COMPLETED..." echo # START POST BUILD echo "PERFORMING POSTBUILD:" cp -Rfv "$PCSX2_BUILD_TMP/bin"/* "$BRANCH_LOCATION/$BRANCH_NAME/bin/" echo "POSTBUILD COMPLETED..." # END POST BUILD # CLEANUP echo "PERFORMING CLEANUP" cd "$BUILD_TMP_DIR" rm -Rf "$PCSX2_BUILD_TMP" rm -Rf * echo "CLEANUP COMPLETE..." echo echo "AUTOBUILD COMPLETE..." # perform auto tagging "$downstream_export_location/auto_tag_latest_upstream.sh" else # CLEANUP echo "PERFORMING CLEANUP" cd "$BUILD_TMP_DIR" rm -Rf "$PCSX2_BUILD_TMP" rm -Rf * echo "CLEANUP COMPLETE..." echo echo "BUILD FAILED..." echo echo "AUTOBUILD FAILED..." fi