2015-02-16 19:19:30 -08:00
# vim: set ts=3 sw=3 noet ft=sh : bash
2014-11-05 16:25:06 -08:00
2014-11-05 19:40:39 -08:00
####usage:
2015-10-13 18:18:23 -05:00
# ./libretro-buildbot-recipe.sh configfile
2014-11-05 16:25:06 -08:00
# if you want to force all enabled cores to rebuild prepend FORCE=YES
# you may need to specify your make command by prepending it to the commandline, for instance MAKE=mingw32-make
#
2014-12-06 13:46:21 -05:00
# eg: FORCE=YES MAKE=mingw32-make ./libretro-fetch-and-build.sh buildbot
2014-11-05 16:25:06 -08:00
2015-10-13 18:18:23 -05:00
# setup the environment with the variables from the recipe config
2015-01-28 22:22:06 -05:00
echo " BUILDBOT JOB: Setting up Environment for $1 "
2015-03-06 19:11:33 -05:00
echo
2014-11-08 12:28:26 -08:00
2015-07-25 21:25:59 -04:00
LOGDATE = ` date +%Y-%m-%d`
2014-11-08 12:28:26 -08:00
ORIGPATH = $PATH
2014-12-17 18:59:08 -05:00
WORK = $PWD
2014-11-08 12:28:26 -08:00
2015-10-13 18:18:23 -05:00
echo OLD PATH: $PATH
2014-11-08 12:28:26 -08:00
while read line; do
2015-03-10 12:25:22 -07:00
KEY = ` echo $line | cut -f 1 -d " " `
VALUE = ` echo $line | cut -f 2 -d " " `
2015-02-16 19:19:30 -08:00
2015-03-09 05:28:13 -07:00
if [ " ${ KEY } " = "PATH" ] ; then
2015-02-16 19:19:30 -08:00
export PATH = ${ VALUE } :${ ORIGPATH }
2015-10-13 18:18:23 -05:00
echo NEW PATH: $PATH
2015-02-16 19:19:30 -08:00
else
export ${ KEY } = ${ VALUE }
echo $KEY : $VALUE
fi
2015-03-09 05:23:17 -07:00
done < $1 .conf
2014-12-06 13:46:21 -05:00
echo
echo
2014-11-08 12:28:26 -08:00
2015-10-23 00:55:25 -05:00
read_link( )
{
TARGET_FILE = " $1 "
cd $( dirname " $TARGET_FILE " )
TARGET_FILE = $( basename " $TARGET_FILE " )
while [ -L " $TARGET_FILE " ] ; do
TARGET_FILE = $( readlink " $TARGET_FILE " )
cd $( dirname " $TARGET_FILE " )
TARGET_FILE = $( basename " $TARGET_FILE " )
done
PHYS_DIR = $( pwd -P)
RESULT = " $PHYS_DIR / $TARGET_FILE "
echo $RESULT
}
2015-10-21 17:51:31 -05:00
if [ " ${ CORE_JOB } " = = "YES" ] ; then
echo = = = BUILDBOT VARS: $LOGDATE BOTNAME: $BOT FORCE: $FORCE JOBS: $JOBS = = =
# set format_compiler_target
[ [ " ${ ARM_NEON } " ] ] && echo 'ARM NEON opts enabled...' && export FORMAT_COMPILER_TARGET = " ${ FORMAT_COMPILER_TARGET } -neon "
[ [ " ${ CORTEX_A8 } " ] ] && echo 'Cortex A8 opts enabled...' && export FORMAT_COMPILER_TARGET = " ${ FORMAT_COMPILER_TARGET } -cortexa8 "
[ [ " ${ CORTEX_A9 } " ] ] && echo 'Cortex A9 opts enabled...' && export FORMAT_COMPILER_TARGET = " ${ FORMAT_COMPILER_TARGET } -cortexa9 "
[ [ " ${ ARM_HARDFLOAT } " ] ] && echo 'ARM hardfloat ABI enabled...' && export FORMAT_COMPILER_TARGET = " ${ FORMAT_COMPILER_TARGET } -hardfloat "
[ [ " ${ ARM_SOFTFLOAT } " ] ] && echo 'ARM softfloat ABI enabled...' && export FORMAT_COMPILER_TARGET = " ${ FORMAT_COMPILER_TARGET } -softfloat "
[ [ " ${ IOS } " ] ] && echo 'iOS detected...'
2015-10-23 00:55:25 -05:00
2015-10-21 17:51:31 -05:00
2015-10-21 17:59:19 -05:00
# set a few extra variables with libretro-config.sh
. $WORK /libretro-config.sh
2015-10-21 17:51:31 -05:00
# create the folder that will hold compiled cores
2015-10-23 01:36:13 -05:00
SCRIPT = $( read_link " $0 " )
echo " SCRIPT: $SCRIPT "
BASE_DIR = $( dirname " $SCRIPT " )
if [ -z " $RARCH_DIST_DIR " ] ; then
RARCH_DIR = " $BASE_DIR /dist "
RARCH_DIST_DIR = " $RARCH_DIR / $DIST_DIR "
fi
2015-10-21 17:51:31 -05:00
mkdir -v -p " $RARCH_DIST_DIR "
# create the folder for each androi abi
if [ " ${ PLATFORM } " = "android" ] ; then
IFS = ' ' read -ra ABIS <<< " $TARGET_ABIS "
for a in " ${ ABIS [@] } " ; do
echo $a
if [ -d $RARCH_DIST_DIR /${ a } ] ; then
echo " Directory $RARCH_DIST_DIR / ${ a } already exists, skipping creation... "
else
mkdir $RARCH_DIST_DIR /${ a }
fi
done
fi
# define the compilers
if [ " $HOST_CC " ] ; then
CC = " ${ HOST_CC } -gcc "
CXX = " ${ HOST_CC } -g++ "
CXX11 = " ${ HOST_CC } -g++ "
STRIP = " ${ HOST_CC } -strip "
fi
if [ -z " $MAKE " ] ; then
if uname -s | grep -i MINGW32 > /dev/null 2>& 1; then
MAKE = mingw32-make
else
if type gmake > /dev/null 2>& 1; then
MAKE = gmake
else
MAKE = make
fi
fi
fi
if [ -z " $CC " ] ; then
if [ $FORMAT_COMPILER_TARGET = "osx" ] ; then
CC = cc
elif uname -s | grep -i MINGW32 > /dev/null 2>& 1; then
CC = mingw32-gcc
else
CC = gcc
fi
fi
if [ -z " $CXX " ] ; then
if [ $FORMAT_COMPILER_TARGET = "osx" ] ; then
CXX = c++
CXX11 = "clang++ -std=c++11 -stdlib=libc++"
elif uname -s | grep -i MINGW32 > /dev/null 2>& 1; then
CXX = mingw32-g++
CXX11 = mingw32-g++
else
CXX = g++
CXX11 = g++
fi
fi
if [ " ${ CC } " ] && [ " ${ CXX } " ] ; then
COMPILER = " CC= ${ CC } CXX= ${ CXX } "
else
COMPILER = ""
fi
echo = = = BUILDBOT VARS: CC: $CC CXX:: $CXX STRIP: $STRIP COMPILER: $COMPILER = = =
export CC = $CC
export CXX = $CXX
RESET_FORMAT_COMPILER_TARGET = $FORMAT_COMPILER_TARGET
RESET_FORMAT_COMPILER_TARGET_ALT = $FORMAT_COMPILER_TARGET_ALT
check_opengl( ) {
if [ " ${ BUILD_LIBRETRO_GL } " ] ; then
if [ " ${ ENABLE_GLES } " ] ; then
echo '=== OpenGL ES enabled ==='
export FORMAT_COMPILER_TARGET = " ${ FORMAT_COMPILER_TARGET } -gles "
export FORMAT_COMPILER_TARGET_ALT = " ${ FORMAT_COMPILER_TARGET } "
else
echo '=== OpenGL enabled ==='
export FORMAT_COMPILER_TARGET = " ${ FORMAT_COMPILER_TARGET } -opengl "
export FORMAT_COMPILER_TARGET_ALT = " ${ FORMAT_COMPILER_TARGET } "
fi
else
echo '=== OpenGL disabled in build ==='
fi
}
reset_compiler_targets( ) {
export FORMAT_COMPILER_TARGET = $RESET_FORMAT_COMPILER_TARGET
export FORMAT_COMPILER_TARGET_ALT = $RESET_FORMAT_COMPILER_TARGET_ALT
}
2015-10-23 01:36:13 -05:00
else
SCRIPT = $( read_link " $0 " )
echo " SCRIPT: $SCRIPT "
BASE_DIR = $( dirname " $SCRIPT " )
if [ -z " $RARCH_DIST_DIR " ] ; then
RARCH_DIR = " $BASE_DIR /dist "
RARCH_DIST_DIR = " $RARCH_DIR / $PLATFORM "
fi
2015-10-21 17:51:31 -05:00
fi
2015-10-23 01:39:23 -05:00
echo DISTDIR: $RARCH_DIST_DIR
2015-10-13 18:18:23 -05:00
# set jobs to 2 if not specified
2015-08-29 04:24:40 +01:00
if [ -z " $JOBS " ] ; then
2015-10-13 18:18:23 -05:00
JOBS = 2
2015-08-29 04:24:40 +01:00
fi
2015-09-11 00:14:34 +01:00
2015-10-13 18:18:23 -05:00
# set force to NO if not specified
# this is useful if running manually
2015-09-10 06:39:29 +01:00
if [ -z " $FORCE " ] ; then
2015-09-13 17:52:57 +01:00
FORCE = NO
2015-09-10 06:39:29 +01:00
fi
2015-09-11 00:14:34 +01:00
2015-10-13 18:18:23 -05:00
# set force_retroarch_build to NO if not specified
# this is useful if running manually
2015-09-13 18:02:40 +01:00
if [ -z " $FORCE_RETROARCH_BUILD " ] ; then
FORCE_RETROARCH_BUILD = NO
2015-09-11 00:14:34 +01:00
fi
2015-10-13 18:18:23 -05:00
# keep track if cores have been built to force building RetroArch
# for statically linked platforms
2015-09-13 18:02:40 +01:00
CORES_BUILT = NO
2015-09-11 00:14:34 +01:00
2015-10-13 18:18:23 -05:00
# original values of some variables that might change for a particular job
2015-09-10 19:17:36 +01:00
OLDFORCE = $FORCE
2015-08-29 04:24:40 +01:00
OLDJ = $JOBS
2014-11-05 19:40:39 -08:00
cd " ${ BASE_DIR } "
2015-10-13 18:18:23 -05:00
# build commands
# logs to alcarobot
2015-02-01 14:48:09 -05:00
buildbot_log( ) {
2015-10-18 14:30:45 -05:00
echo = = = BUILDBOT MSG: $MESSAGE = = =
MESSAGE = ` echo -e $1 `
2015-03-05 19:50:45 -05:00
2015-10-13 18:52:34 -05:00
HASH = ` echo -n " $MESSAGE " | openssl sha1 -hmac $SIG | cut -f 2 -d " " `
2015-08-16 07:10:25 +01:00
curl --max-time 30 --data " message= $MESSAGE &sign= $HASH " $LOGURL
2015-02-01 14:48:09 -05:00
}
2015-10-13 18:18:23 -05:00
# generic makefile job
# it includes a few workarounds for a few problematic cores, I plan to move these to a different command later
2014-11-05 16:25:06 -08:00
build_libretro_generic_makefile( ) {
2015-02-16 19:19:30 -08:00
NAME = $1
DIR = $2
SUBDIR = $3
MAKEFILE = $4
PLATFORM = $5
ARGS = $6
2015-08-02 22:36:17 -05:00
JOBS = $JOBS
2015-10-16 20:33:06 -05:00
buildbot_log " $1 build starting [ $jobid ] "
2015-02-16 19:19:30 -08:00
2015-10-18 14:30:45 -05:00
BUILDBOT_DBG1 = " NAME: $NAME DIR: $DIR SUBDIR: $SUBDIR MAKEFILE: $MAKEFILE PLATFORM: $PLATFORM ARGS: $ARGS CC: $CC CXX: $CXX "
2015-10-13 16:30:56 -05:00
2015-02-16 19:19:30 -08:00
cd $DIR
cd $SUBDIR
2015-03-07 15:03:49 -05:00
OLDJ = $JOBS
2015-10-16 00:34:24 -05:00
2015-09-13 17:52:57 +01:00
echo BUILDBOT THREADS: $JOBS
2015-08-29 04:24:40 +01:00
2015-10-06 06:29:39 +01:00
if [ " ${ NAME } " = = "mame078" ] ; then
2015-02-16 19:19:30 -08:00
JOBS = 1
fi
2015-10-06 06:29:39 +01:00
if [ " ${ NAME } " = = "mame2010" ] ; then
JOBS = 1
fi
2015-02-16 19:19:30 -08:00
2015-03-09 05:23:17 -07:00
if [ -z " ${ NOCLEAN } " ] ; then
echo "cleaning up..."
2015-10-06 06:29:39 +01:00
echo " cleanup command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } -j ${ JOBS } clean "
${ MAKE } -f ${ MAKEFILE } platform = ${ PLATFORM } -j${ JOBS } clean
2015-03-09 05:23:17 -07:00
if [ $? -eq 0 ] ; then
2015-02-16 19:19:30 -08:00
echo BUILDBOT JOB: $jobid $1 cleanup success!
else
2015-10-16 00:09:13 -05:00
echo BUILDBOT JOB: $jobid $1 cleanup failed!
2015-02-16 19:19:30 -08:00
fi
fi
echo "compiling..."
2015-10-13 16:30:56 -05:00
2015-10-18 14:30:45 -05:00
if [ " ${ NAME } " = = "mame2010" ] ; then
echo " build command: ${ MAKE } -f ${ MAKEFILE } " VRENDER = soft" " NATIVE = 1" buildtools -j ${ JOBS } "
BUILDBOT_DBG3 = "build command: PLATFORM=" " platform=" " ${ MAKE } -f ${ MAKEFILE } " VRENDER = soft" " NATIVE = 1" buildtools -j ${ JOBS } "
PLATFORM = "" platform = "" ${ MAKE } -f ${ MAKEFILE } "VRENDER=soft" "NATIVE=1" buildtools -j${ JOBS } | tee $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
JOBS = $OLDJ
fi
2015-10-16 00:24:41 -05:00
if [ -z " ${ ARGS } " ] ; then
2015-10-18 14:30:45 -05:00
BUILDBOT_DBG2 = " build command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } -j ${ JOBS } "
echo " build command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } -j ${ JOBS } "
2015-10-16 00:33:52 -05:00
${ MAKE } -f ${ MAKEFILE } platform = ${ PLATFORM } -j${ JOBS } 2>& 1 | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
2015-02-16 19:19:30 -08:00
else
2015-10-18 14:30:45 -05:00
BUILDBOT_DBG2 = " build command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } -j ${ JOBS } ${ ARGS } "
echo " build command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } -j ${ JOBS } ${ ARGS } "
2015-10-16 00:28:56 -05:00
${ MAKE } -f ${ MAKEFILE } platform = ${ PLATFORM } -j${ JOBS } ${ ARGS } 2>& 1 | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
2015-02-16 19:19:30 -08:00
fi
2015-10-16 00:24:41 -05:00
2015-10-16 00:20:40 -05:00
if [ " ${ MAKEPORTABLE } " = = "YES" ] ; then
2015-10-18 14:30:45 -05:00
echo " $1 running retrolink [ $jobid ] "
$WORK /retrolink.sh ${ NAME } _libretro${ FORMAT } ${ LIBSUFFIX } .${ FORMAT_EXT }
fi
2015-10-16 00:20:40 -05:00
2015-10-18 14:30:45 -05:00
echo = = = BUILDBOT VARS: $BUILDBOT_DBG1 = = = | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
echo = = = BUILDBOT VARS: $BUILDBOT_DBG3 = = = | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
echo = = = BUILDBOT VARS: $BUILDBOT_DBG2 = = = | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
2015-10-16 00:24:41 -05:00
2015-10-18 14:30:45 -05:00
cp -v ${ NAME } _libretro${ FORMAT } ${ LIBSUFFIX } .${ FORMAT_EXT } $RARCH_DIST_DIR /${ DIST } /${ NAME } _libretro${ FORMAT } ${ LIBSUFFIX } .${ FORMAT_EXT }
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " $1 build succeeded [ $jobid ] "
2015-08-04 16:08:15 -05:00
if [ " ${ PLATFORM } " = = "windows" -o " ${ PLATFORM } " = = "unix" ] ; then
2015-10-06 00:32:57 -05:00
strip -s ${ NAME } _libretro${ FORMAT } ${ LIBSUFFIX } .${ FORMAT_EXT }
2015-07-21 00:31:15 -05:00
fi
2015-02-16 19:19:30 -08:00
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-07-03 10:40:27 -04:00
MESSAGE = " $1 build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-02-16 19:19:30 -08:00
fi
2015-10-13 16:34:31 -05:00
echo BUILDBOT JOB: $MESSAGE
2015-10-13 17:47:28 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-02-16 19:19:30 -08:00
JOBS = $OLDJ
2015-10-18 14:22:02 -05:00
2015-10-16 20:21:16 -05:00
if [ -z " ${ NOCLEAN } " ] ; then
echo "cleaning up..."
echo " cleanup command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } -j ${ JOBS } clean "
${ MAKE } -f ${ MAKEFILE } platform = ${ PLATFORM } -j${ JOBS } clean
if [ $? -eq 0 ] ; then
echo BUILDBOT JOB: $jobid $1 cleanup success!
else
echo BUILDBOT JOB: $jobid $1 cleanup failed!
fi
fi
2014-11-05 16:25:06 -08:00
}
2015-10-13 18:18:23 -05:00
# command fo leiradel's cross makefiles
2015-06-17 19:49:20 -04:00
build_libretro_leiradel_makefile( ) {
NAME = $1
DIR = $2
SUBDIR = $3
MAKEFILE = $4
PLATFORM = $5
ARGS = $6
2015-10-16 20:35:52 -05:00
buildbot_log " $1 build starting [ $jobid ] "
2015-06-17 19:49:20 -04:00
2015-09-13 17:52:57 +01:00
ARG1 = ` echo ${ ARGS } | cut -f 1 -d " " `
mkdir -p $RARCH_DIST_DIR /${ DIST } /${ ARG1 }
2015-08-13 23:11:51 +01:00
2015-06-17 19:49:20 -04:00
cd $DIR
cd $SUBDIR
OLDJ = $JOBS
if [ -z " ${ NOCLEAN } " ] ; then
echo "cleaning up..."
2015-08-16 20:48:14 +01:00
echo " cleanup command: ${ MAKE } -f ${ MAKEFILE } . ${ PLATFORM } _ ${ ARGS } platform= ${ PLATFORM } _ ${ ARGS } -j ${ JOBS } clean "
${ MAKE } -f ${ MAKEFILE } .${ PLATFORM } _${ ARGS } platform = ${ PLATFORM } _${ ARGS } -j${ JOBS } clean
2015-06-17 19:49:20 -04:00
if [ $? -eq 0 ] ; then
echo BUILDBOT JOB: $jobid $1 cleanup success!
else
2015-10-16 00:09:13 -05:00
echo BUILDBOT JOB: $jobid $1 cleanup failed!
2015-06-17 19:49:20 -04:00
fi
fi
echo "compiling..."
2015-08-16 20:48:14 +01:00
echo " build command: ${ MAKE } -f ${ MAKEFILE } . ${ PLATFORM } _ ${ ARGS } platform= ${ PLATFORM } _ ${ ARGS } -j ${ JOBS } "
2015-10-16 00:09:13 -05:00
${ MAKE } -f ${ MAKEFILE } .${ PLATFORM } _${ ARGS } platform = ${ PLATFORM } _${ ARGS } -j${ JOBS } | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
2015-06-17 19:49:20 -04:00
2015-10-18 14:30:45 -05:00
cp -v ${ NAME } _libretro.${ PLATFORM } _${ ARG1 } .${ FORMAT_EXT } $RARCH_DIST_DIR /${ DIST } /${ ARG1 } /${ NAME } _libretro${ LIBSUFFIX } .${ FORMAT_EXT }
2015-07-21 00:31:15 -05:00
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " $1 build succeeded [ $jobid ] "
2015-07-21 00:31:15 -05:00
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log | tail -n 100`
2015-10-18 14:30:45 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-09-13 17:52:57 +01:00
MESSAGE = " $1 build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-02-16 19:19:30 -08:00
fi
echo BUILDBOT JOB: $MESSAGE
2015-10-13 17:47:28 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-10-16 00:20:40 -05:00
JOBS = $OLDJ
2014-12-23 18:11:56 -05:00
}
2015-10-13 18:18:23 -05:00
# command for jni makefiles
2014-12-23 18:11:56 -05:00
build_libretro_generic_jni( ) {
2015-02-16 19:19:30 -08:00
echo PARAMETERS: DIR $2 , SUBDIR: $3
NAME = $1
DIR = $2
SUBDIR = $3
MAKEFILE = $4
PLATFORM = $5
ARGS = $6
2015-10-16 20:35:52 -05:00
buildbot_log " $1 build starting [ $jobid ] "
2015-02-16 19:19:30 -08:00
cd ${ DIR } /${ SUBDIR }
for a in " ${ ABIS [@] } " ; do
2015-03-09 05:23:17 -07:00
if [ -z " ${ NOCLEAN } " ] ; then
2015-02-16 19:19:30 -08:00
echo "cleaning up..."
echo " cleanup command: ${ NDK } -j ${ JOBS } ${ ARGS } APP_ABI= ${ a } clean "
${ NDK } -j${ JOBS } ${ ARGS } APP_ABI = ${ a } clean
2015-10-06 00:32:57 -05:00
if [ $? -eq 0 ] ; then
2015-02-16 19:19:30 -08:00
echo BUILDBOT JOB: $jobid $a $1 cleanup success!
else
2015-10-16 00:09:13 -05:00
echo BUILDBOT JOB: $jobid $a $1 cleanup failed!
2015-02-16 19:19:30 -08:00
fi
fi
2015-03-10 12:25:22 -07:00
echo " compiling for ${ a } ... "
2015-03-09 05:23:17 -07:00
if [ -z " ${ ARGS } " ] ; then
2015-02-16 19:19:30 -08:00
echo " build command: ${ NDK } -j ${ JOBS } APP_ABI= ${ a } "
2015-10-16 00:40:30 -05:00
${ NDK } -j${ JOBS } APP_ABI = ${ a } 2>& 1 | tee $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } _${ a } .log
2015-02-16 19:19:30 -08:00
else
echo " build command: ${ NDK } -j ${ JOBS } APP_ABI= ${ a } ${ ARGS } "
2015-10-16 00:40:30 -05:00
${ NDK } -j${ JOBS } APP_ABI = ${ a } ${ ARGS } 2>& 1 | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } _${ a } .log
2015-02-16 19:19:30 -08:00
fi
2015-10-16 00:40:30 -05:00
2015-10-18 14:30:45 -05:00
cp -v ../libs/${ a } /libretro.${ FORMAT_EXT } $RARCH_DIST_DIR /${ a } /${ 1 } _libretro${ FORMAT } ${ LIBSUFFIX } .${ FORMAT_EXT }
2015-03-09 05:23:17 -07:00
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " $1 - $a build succeeded [ $jobid ] "
2015-02-16 19:19:30 -08:00
echo BUILDBOT JOB: $MESSAGE
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-02-16 19:19:30 -08:00
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } _${ a } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-10-13 18:52:34 -05:00
MESSAGE = " $1 - $a build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-02-16 19:19:30 -08:00
echo BUILDBOT JOB: $MESSAGE
2015-10-13 17:47:28 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-02-16 19:19:30 -08:00
fi
2015-10-18 14:22:02 -05:00
2015-10-17 17:36:05 -05:00
if [ -z " ${ NOCLEAN } " ] ; then
echo "cleaning up..."
echo " cleanup command: ${ NDK } -j ${ JOBS } ${ ARGS } APP_ABI= ${ a } clean "
${ NDK } -j${ JOBS } ${ ARGS } APP_ABI = ${ a } clean
if [ $? -eq 0 ] ; then
echo BUILDBOT JOB: $jobid $a $1 cleanup success!
else
echo BUILDBOT JOB: $jobid $a $1 cleanup failed!
fi
fi
2015-02-16 19:19:30 -08:00
done
2014-12-17 22:39:09 -05:00
}
2015-10-13 18:18:23 -05:00
# command for bsnes jni makefiles
2014-12-25 19:49:47 -05:00
build_libretro_bsnes_jni( ) {
2015-02-16 19:19:30 -08:00
echo PARAMETERS: DIR $2 , SUBDIR: $3
NAME = $1
DIR = $2
SUBDIR = $3
MAKEFILE = $4
PLATFORM = $5
PROFILE = $6
2015-10-16 20:35:52 -05:00
buildbot_log " $1 build starting [ $jobid ] "
2015-02-16 19:19:30 -08:00
CORENAME = bsnes
cd ${ DIR } /${ SUBDIR }
for a in " ${ ABIS [@] } " ; do
2015-03-09 05:23:17 -07:00
if [ -z " ${ NOCLEAN } " ] ; then
echo "cleaning up..."
echo " cleanup command: ${ NDK } -j ${ JOBS } APP_ABI= ${ a } clean "
2015-02-16 19:19:30 -08:00
${ NDK } -j${ JOBS } APP_ABI = ${ a } clean
2015-03-09 05:23:17 -07:00
if [ $? -eq 0 ] ; then
echo BUILDBOT JOB: $jobid $1 cleanup success!
else
2015-10-16 00:09:13 -05:00
echo BUILDBOT JOB: $jobid $1 cleanup failed!
2015-03-09 05:23:17 -07:00
fi
2015-02-16 19:19:30 -08:00
fi
2015-03-09 05:23:17 -07:00
echo " compiling for ${ a } ... "
if [ -z " ${ ARGS } " ] ; then
2015-02-16 19:19:30 -08:00
echo " build command: ${ NDK } -j ${ JOBS } APP_ABI= ${ a } "
${ NDK } -j${ JOBS } APP_ABI = ${ a }
else
echo " build command: ${ NDK } -j ${ JOBS } APP_ABI= ${ a } "
${ NDK } -j${ JOBS } APP_ABI = ${ a }
fi
2015-10-16 00:40:30 -05:00
2015-10-18 14:30:45 -05:00
cp -v ../libs/${ a } /libretro_${ CORENAME } _${ PROFILE } .${ FORMAT_EXT } $RARCH_DIST_DIR /${ a } /${ NAME } _${ PROFILE } _libretro${ FORMAT } ${ LIBSUFFIX } .${ FORMAT_EXT }
2015-03-09 05:23:17 -07:00
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " $1 build succeeded [ $jobid ] "
2015-02-16 19:19:30 -08:00
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-10-13 18:52:34 -05:00
MESSAGE = " $1 build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-02-16 19:19:30 -08:00
fi
echo BUILDBOT JOB: $MESSAGE
2015-10-13 17:47:28 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-02-16 19:19:30 -08:00
done
2014-12-25 19:49:47 -05:00
}
2015-10-13 18:18:23 -05:00
# command for gl cores, not sure if this is still needed but it uses an alternate format_compiler_target
2014-11-05 22:21:26 -08:00
build_libretro_generic_gl_makefile( ) {
2015-02-16 19:19:30 -08:00
NAME = $1
DIR = $2
SUBDIR = $3
MAKEFILE = $4
PLATFORM = $5
ARGS = $6
2015-10-16 20:35:52 -05:00
buildbot_log " $1 build starting [ $jobid ] "
2015-02-16 19:19:30 -08:00
check_opengl
cd $DIR
cd $SUBDIR
2015-03-09 05:23:17 -07:00
if [ -z " ${ NOCLEAN } " ] ; then
echo "cleaning up..."
2015-02-16 19:19:30 -08:00
echo " cleanup command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } -j ${ JOBS } clean "
2015-03-09 05:23:17 -07:00
${ MAKE } -f ${ MAKEFILE } platform = ${ PLATFORM } -j${ JOBS } clean
2015-10-06 00:32:57 -05:00
if [ $? -eq 0 ] ; then
2015-02-16 19:19:30 -08:00
echo BUILDBOT JOB: $jobid $1 cleanup success!
else
2015-10-16 00:09:13 -05:00
echo BUILDBOT JOB: $jobid $1 cleanup failed!
2015-02-16 19:19:30 -08:00
fi
fi
echo "compiling..."
2015-03-09 05:23:17 -07:00
if [ -z " ${ ARGS } " ] ; then
2015-02-16 19:19:30 -08:00
echo " build command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } -j ${ JOBS } "
2015-10-16 00:40:30 -05:00
${ MAKE } -f ${ MAKEFILE } platform = ${ PLATFORM } -j${ JOBS } 2>& 1 | tee $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
2015-02-16 19:19:30 -08:00
else
echo " build command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } ${ COMPILER } -j ${ JOBS } ${ ARGS } "
2015-10-16 00:40:30 -05:00
${ MAKE } -f ${ MAKEFILE } platform = ${ PLATFORM } -j${ JOBS } ${ ARGS } 2>& 1 | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
2015-02-16 19:19:30 -08:00
fi
2015-10-18 14:30:45 -05:00
cp -v ${ NAME } _libretro${ FORMAT } ${ LIBSUFFIX } .${ FORMAT_EXT } $RARCH_DIST_DIR /${ NAME } _libretro${ FORMAT } ${ LIBSUFFIX } .${ FORMAT_EXT }
2015-10-06 00:32:57 -05:00
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " $1 build succeeded [ $jobid ] "
2015-02-16 19:19:30 -08:00
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-07-21 00:31:15 -05:00
MESSAGE = " $1 build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-02-16 19:19:30 -08:00
fi
echo BUILDBOT JOB: $MESSAGE
2015-10-13 17:47:28 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-02-16 19:19:30 -08:00
reset_compiler_targets
2014-11-08 12:02:21 -08:00
}
2015-10-13 18:18:23 -05:00
# command for bsnes
2014-11-08 12:02:21 -08:00
build_libretro_bsnes( ) {
2015-02-16 19:19:30 -08:00
NAME = $1
DIR = $2
PROFILE = $3
MAKEFILE = $4
PLATFORM = $5
BSNESCOMPILER = $6
2015-10-16 20:35:52 -05:00
buildbot_log " $1 build starting [ $jobid ] "
2015-02-16 19:19:30 -08:00
cd $DIR
2015-03-09 05:23:17 -07:00
if [ -z " ${ NOCLEAN } " ] ; then
echo "cleaning up..."
2015-02-16 19:19:30 -08:00
rm -f obj/*.{ o," ${ FORMAT_EXT } " }
2015-10-06 00:32:57 -05:00
rm -f out/*.{ o," ${ FORMAT_EXT } " }
2015-02-16 19:19:30 -08:00
2015-03-09 05:28:13 -07:00
if [ " ${ PROFILE } " = "cpp98" -o " ${ PROFILE } " = "bnes" ] ; then
2015-03-09 05:23:17 -07:00
${ MAKE } clean
fi
2015-02-16 19:19:30 -08:00
2015-03-09 05:23:17 -07:00
if [ $? -eq 0 ] ; then
2015-02-16 19:19:30 -08:00
echo BUILDBOT JOB: $jobid $1 cleanup success!
else
2015-10-16 00:09:13 -05:00
echo BUILDBOT JOB: $jobid $1 cleanup failed!
2015-02-16 19:19:30 -08:00
fi
fi
echo "compiling..."
2015-03-09 05:28:13 -07:00
if [ " ${ PROFILE } " = "cpp98" ] ; then
2015-10-16 00:40:30 -05:00
${ MAKE } platform = " ${ PLATFORM } " ${ COMPILER } " -j ${ JOBS } " 2>& 1 | tee $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
2015-03-09 05:28:13 -07:00
elif [ " ${ PROFILE } " = "bnes" ] ; then
2015-02-16 19:19:30 -08:00
echo " build command: ${ MAKE } -f Makefile ${ COMPILER } " -j${ JOBS } " compiler= ${ BSNESCOMPILER } " platform = ${ FORMAT_COMPILER_TARGET }
2015-10-16 00:40:30 -05:00
${ MAKE } -f Makefile ${ COMPILER } " -j ${ JOBS } " compiler = " ${ BSNESCOMPILER } " platform = ${ FORMAT_COMPILER_TARGET } 2>& 1 | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
2015-02-16 19:19:30 -08:00
else
echo " build command: ${ MAKE } -f ${ MAKEFILE } platform= ${ PLATFORM } compiler= ${ BSNESCOMPILER } ui='target-libretro' profile= ${ PROFILE } -j ${ JOBS } "
2015-10-16 00:40:30 -05:00
${ MAKE } -f ${ MAKEFILE } platform = ${ PLATFORM } compiler = ${ BSNESCOMPILER } ui = 'target-libretro' profile = ${ PROFILE } -j${ JOBS } 2>& 1 | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log
2015-02-16 19:19:30 -08:00
fi
2015-10-18 14:30:45 -05:00
if [ " ${ PROFILE } " = "cpp98" ] ; then
cp -fv " out/ ${ NAME } _libretro ${ FORMAT } ${ LIBSUFFIX } . ${ FORMAT_EXT } " " ${ RARCH_DIST_DIR } / ${ NAME } _libretro ${ FORMAT } ${ LIBSUFFIX } . ${ FORMAT_EXT } "
elif [ " ${ PROFILE } " = "bnes" ] ; then
cp -fv " ${ NAME } _libretro ${ FORMAT } ${ LIBSUFFIX } . ${ FORMAT_EXT } " " ${ RARCH_DIST_DIR } / ${ NAME } _libretro ${ FORMAT } ${ LIBSUFFIX } . ${ FORMAT_EXT } "
else
cp -fv " out/ ${ NAME } _ ${ PROFILE } _libretro ${ FORMAT } . ${ FORMAT_EXT } " $RARCH_DIST_DIR /${ NAME } _${ PROFILE } _libretro${ FORMAT } ${ LIBSUFFIX } .${ FORMAT_EXT }
fi
2015-03-09 05:23:17 -07:00
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " $1 build succeeded [ $jobid ] "
2015-02-16 19:19:30 -08:00
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _${ NAME } _${ PLATFORM } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-09-13 17:52:57 +01:00
MESSAGE = " $1 build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-02-16 19:19:30 -08:00
fi
echo BUILDBOT JOB: $MESSAGE
2015-10-13 17:47:28 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2014-11-05 22:21:26 -08:00
}
2014-11-05 16:25:06 -08:00
2015-10-13 18:18:23 -05:00
# main part of the script
2015-01-17 12:52:59 -05:00
export jobid = $1
2015-01-17 00:56:23 -05:00
2015-10-13 18:18:23 -05:00
# fetch a project and mark it for building if there have been any changes
2014-11-05 21:34:54 -08:00
echo
echo
2014-11-05 16:25:06 -08:00
while read line; do
2015-03-10 12:25:22 -07:00
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
COMMAND = ` echo $line | cut -f 6 -d " " `
MAKEFILE = ` echo $line | cut -f 7 -d " " `
SUBDIR = ` echo $line | cut -f 8 -d " " `
2015-02-16 19:19:30 -08:00
2015-03-09 05:28:13 -07:00
if [ " ${ ENABLED } " = "YES" ] ; then
2015-02-16 19:19:30 -08:00
echo " BUILDBOT JOB: $jobid Processing $NAME "
echo
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
echo COMMAND: $COMMAND
echo MAKEFILE: $MAKEFILE
echo DIR: $DIR
echo SUBDIR: $SUBDIR
ARGS = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 9 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 10 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 11 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 12 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 13 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 14 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
2015-09-13 17:52:57 +01:00
TEMP = ""
TEMP = ` echo $line | cut -f 15 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 16 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 17 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 18 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 19 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 20 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 21 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 22 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 23 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 24 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 25 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 26 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 27 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 28 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 29 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
2015-02-16 19:19:30 -08:00
2015-03-09 05:23:17 -07:00
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
2015-02-16 19:19:30 -08:00
echo ARGS: $ARGS
echo
echo
2015-10-18 14:30:45 -05:00
# repo is a regular repository
2015-03-09 05:28:13 -07:00
if [ " ${ TYPE } " = "PROJECT" ] ; then
2015-03-09 05:23:17 -07:00
if [ -d " ${ DIR } /.git " ] ; then
2015-02-16 19:19:30 -08:00
cd $DIR
echo "pulling from repo... "
2015-09-15 05:11:34 +01:00
OUT = ` git pull`
2015-09-15 04:53:02 +01:00
2015-03-09 05:23:17 -07:00
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
2015-02-16 19:19:30 -08:00
BUILD = "NO"
else
BUILD = "YES"
fi
2015-03-17 23:46:52 -04:00
OLDFORCE = $FORCE
2015-07-21 00:31:15 -05:00
OLDBUILD = $BUILD
2015-03-17 23:46:52 -04:00
2015-09-13 17:52:57 +01:00
echo $OUT $FORCE $BUILD
2015-10-18 14:30:45 -05:00
# workarounds for a few cores that might be built from the same source tree (it will be already up-to-date so it would be skipped otherwise)
2015-03-09 05:28:13 -07:00
if [ " ${ PREVCORE } " = "bsnes" -a " ${ PREVBUILD } " = "YES" -a " ${ COMMAND } " = "BSNES" ] ; then
2015-02-16 19:19:30 -08:00
FORCE = "YES"
2015-03-29 14:34:25 -05:00
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
if [ " ${ PREVCORE } " = "gw" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "gw" ] ; then
2015-06-17 19:49:20 -04:00
FORCE = "YES"
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
if [ " ${ PREVCORE } " = "fuse" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "fuse" ] ; then
2015-06-17 19:56:58 -04:00
FORCE = "YES"
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
if [ " ${ PREVCORE } " = "81" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "81" ] ; then
2015-08-05 06:08:56 +01:00
FORCE = "YES"
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
if [ " ${ PREVCORE } " = "snes9x-next" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "snes9x-next" ] ; then
2015-08-05 06:08:56 +01:00
FORCE = "YES"
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
if [ " ${ PREVCORE } " = "vba_next" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "vba_next" ] ; then
2015-08-05 06:08:56 +01:00
FORCE = "YES"
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
if [ " ${ PREVCORE } " = "emux_nes" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "emux_nes" ] ; then
2015-08-13 23:19:20 +01:00
FORCE = "YES"
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
if [ " ${ PREVCORE } " = "emux_sms" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "emux_sms" ] ; then
2015-08-05 06:08:56 +01:00
FORCE = "YES"
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
if [ " ${ PREVCORE } " = "mgba" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "mgba" ] ; then
2015-08-05 06:08:56 +01:00
FORCE = "YES"
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
if [ " ${ PREVCORE } " = "snes9x_next" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "snes9x_next" ] ; then
2015-08-17 02:25:22 +01:00
FORCE = "YES"
BUILD = "YES"
fi
2015-06-17 19:49:20 -04:00
2015-03-29 14:44:31 -05:00
if [ " ${ PREVCORE } " = "bsnes_mercury" -a " ${ PREVBUILD } " = "YES" -a " ${ COMMAND } " = "BSNES" ] ; then
2015-03-29 14:34:25 -05:00
FORCE = "YES"
2015-02-16 19:19:30 -08:00
BUILD = "YES"
fi
2015-08-02 23:34:38 -05:00
if [ " ${ PREVCORE } " = "mame2014" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "mess2014" ] ; then
2015-02-16 19:19:30 -08:00
FORCE = "YES"
BUILD = "YES"
fi
2015-08-02 23:34:38 -05:00
if [ " ${ PREVCORE } " = "mess2014" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "ume2014" ] ; then
2015-02-16 19:19:30 -08:00
FORCE = "YES"
BUILD = "YES"
fi
2015-03-17 23:46:52 -04:00
if [ [ " ${ PREVCORE } " = = *fb* ] ] && [ [ " ${ PREVBUILD } " = "YES" ] ] && [ [ " ${ NAME } " = = *fb* ] ] ; then
2015-03-17 23:27:33 -04:00
FORCE = "YES"
BUILD = "YES"
fi
2015-10-06 06:29:39 +01:00
if [ " ${ PREVCORE } " = "mame2010" -a " ${ PREVBUILD } " = "YES" -a " ${ NAME } " = "mame2010" ] ; then
FORCE = "YES"
BUILD = "YES"
fi
2015-03-20 20:58:39 -04:00
cd $WORK
2015-02-16 19:19:30 -08:00
else
echo "cloning repo..."
git clone --depth= 1 " $URL " " $DIR "
BUILD = "YES"
fi
2015-10-13 18:18:23 -05:00
2015-10-18 14:30:45 -05:00
# repo is a branch, need to make this more generic, currently only used for psp mednafen_pce
2015-03-09 05:28:13 -07:00
elif [ " ${ TYPE } " = "psp_hw_render" ] ; then
2015-03-09 05:23:17 -07:00
if [ -d " ${ DIR } /.git " ] ; then
2015-02-16 19:19:30 -08:00
cd $DIR
echo "pulling from repo... "
2015-09-15 05:11:34 +01:00
OUT = ` git pull`
2015-09-15 04:53:02 +01:00
2015-03-09 05:23:17 -07:00
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
2015-02-16 19:19:30 -08:00
BUILD = "NO"
else
BUILD = "YES"
fi
2015-03-20 20:58:39 -04:00
cd $WORK
2015-02-16 19:19:30 -08:00
else
echo "cloning repo..."
2015-03-07 16:07:38 -05:00
git clone " $URL " " $DIR "
2015-02-16 19:19:30 -08:00
cd $DIR
git checkout $TYPE
2015-03-20 20:58:39 -04:00
cd $WORK
2015-02-16 19:19:30 -08:00
BUILD = "YES"
fi
2015-10-18 14:30:45 -05:00
# repo has submodules
2015-03-09 05:23:17 -07:00
elif [ " ${ TYPE } " = = "SUBMODULE" ] ; then
if [ -d " ${ DIR } /.git " ] ; then
2015-02-16 19:19:30 -08:00
cd $DIR
echo "pulling from repo... "
2015-09-15 05:11:34 +01:00
OUT = ` git pull`
2015-09-15 04:53:02 +01:00
2015-03-09 05:23:17 -07:00
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
2015-02-16 19:19:30 -08:00
BUILD = "NO"
else
BUILD = "YES"
fi
OUT = ` git submodule foreach git pull origin master`
2015-03-20 20:58:39 -04:00
cd $WORK
2015-02-16 19:19:30 -08:00
else
echo "cloning repo..."
git clone --depth= 1 " $URL " " $DIR "
cd $DIR
git submodule update --init
BUILD = "YES"
fi
2015-03-20 20:58:39 -04:00
cd $WORK
2015-02-16 19:19:30 -08:00
fi
2015-03-09 05:28:13 -07:00
if [ " ${ BUILD } " = "YES" -o " ${ FORCE } " = "YES" ] ; then
2015-09-15 19:38:35 +01:00
touch $TMPDIR /built-cores
2015-09-13 18:02:40 +01:00
CORES_BUILT = YES
2015-02-16 19:19:30 -08:00
echo building core...
2015-03-09 05:28:13 -07:00
if [ " ${ COMMAND } " = "GENERIC" ] ; then
2015-02-16 19:19:30 -08:00
build_libretro_generic_makefile $NAME $DIR $SUBDIR $MAKEFILE ${ FORMAT_COMPILER_TARGET } " ${ ARGS } "
2015-06-17 19:49:20 -04:00
elif [ " ${ COMMAND } " = "LEIRADEL" ] ; then
2015-08-13 22:11:32 +01:00
build_libretro_leiradel_makefile $NAME $DIR $SUBDIR $MAKEFILE ${ PLATFORM } " ${ ARGS } "
2015-03-09 05:28:13 -07:00
elif [ " ${ COMMAND } " = "GENERIC_GL" ] ; then
2015-02-16 19:19:30 -08:00
build_libretro_generic_gl_makefile $NAME $DIR $SUBDIR $MAKEFILE ${ FORMAT_COMPILER_TARGET } " ${ ARGS } "
2015-03-09 05:28:13 -07:00
elif [ " ${ COMMAND } " = "GENERIC_ALT" ] ; then
2015-02-16 19:19:30 -08:00
build_libretro_generic_makefile $NAME $DIR $SUBDIR $MAKEFILE ${ FORMAT_COMPILER_TARGET_ALT } " ${ ARGS } "
2015-03-09 05:28:13 -07:00
elif [ " ${ COMMAND } " = "GENERIC_JNI" ] ; then
2015-02-16 19:19:30 -08:00
build_libretro_generic_jni $NAME $DIR $SUBDIR $MAKEFILE ${ FORMAT_COMPILER_TARGET_ALT } " ${ ARGS } "
2015-03-09 05:28:13 -07:00
elif [ " ${ COMMAND } " = "BSNES_JNI" ] ; then
2015-02-16 19:19:30 -08:00
build_libretro_bsnes_jni $NAME $DIR $SUBDIR $MAKEFILE ${ FORMAT_COMPILER_TARGET_ALT } " ${ ARGS } "
2015-03-09 05:28:13 -07:00
elif [ " ${ COMMAND } " = "GENERIC_THEOS" ] ; then
2015-02-16 19:19:30 -08:00
build_libretro_generic_theos $NAME $DIR $SUBDIR $MAKEFILE ${ FORMAT_COMPILER_TARGET_ALT } " ${ ARGS } "
2015-03-09 05:28:13 -07:00
elif [ " ${ COMMAND } " = "BSNES" ] ; then
2015-02-16 19:19:30 -08:00
build_libretro_bsnes $NAME $DIR " ${ ARGS } " $MAKEFILE ${ FORMAT_COMPILER_TARGET } ${ CXX11 }
2015-03-09 05:23:17 -07:00
fi
else
echo BUILDBOT JOB: $jobid $NAME already up-to-date...
2015-02-16 19:19:30 -08:00
fi
echo
fi
cd " ${ BASE_DIR } "
PREVCORE = $NAME
PREVBUILD = $BUILD
2015-03-17 23:46:52 -04:00
BUILD = $OLDBUILD
2015-07-21 00:31:15 -05:00
FORCE = $OLDFORCE
2015-03-17 23:46:52 -04:00
2015-03-09 05:23:17 -07:00
done < $1
2014-11-05 16:25:06 -08:00
2015-10-13 18:18:23 -05:00
# retroarch area of the script, a lot of code duplication could be removed but it's quite easy
# to copy this for any other case and customize for the particular platform
2015-10-19 14:52:29 -05:00
echo " BUILDBOT JOB: $jobid Building Retroarch " for $PLATFORM
2015-03-20 20:58:39 -04:00
echo
2014-12-17 18:59:08 -05:00
cd $WORK
BUILD = ""
2014-12-07 03:08:27 -05:00
2015-10-21 17:18:38 -05:00
if [ " ${ PLATFORM } " = = "osx" ] && [ " ${ RA } " = = "YES" ] ; then
2015-02-16 19:19:30 -08:00
while read line; do
2015-03-10 12:25:22 -07:00
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
PARENTDIR = ` echo $line | cut -f 6 -d " " `
2015-02-16 19:19:30 -08:00
2015-10-21 17:18:38 -05:00
if [ " ${ ENABLED } " = = "YES" ] ; then
2015-02-16 19:19:30 -08:00
echo " BUILDBOT JOB: $jobid Processing $NAME "
2015-07-03 10:40:27 -04:00
echo
2015-02-16 19:19:30 -08:00
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
ARGS = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 9 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 10 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 11 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 12 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 13 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 14 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-16 19:19:30 -08:00
ARGS = " ${ ARGS } ${ TEMP } "
fi
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
echo ARGS: $ARGS
2015-03-09 05:23:17 -07:00
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ; then
2015-02-16 19:19:30 -08:00
cd $PARENTDIR
cd $DIR
echo "pulling from repo... "
2015-10-21 17:18:38 -05:00
2015-09-15 05:11:34 +01:00
OUT = ` git pull`
2015-09-15 04:53:02 +01:00
2015-02-16 19:19:30 -08:00
echo $OUT
2015-10-21 17:18:38 -05:00
if [ " ${ TYPE } " = = "PROJECT" ] ; then
2015-02-16 19:19:30 -08:00
RADIR = $DIR
2015-03-09 05:23:17 -07:00
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
2015-02-16 19:19:30 -08:00
BUILD = "NO"
else
BUILD = "YES"
fi
fi
2015-10-21 17:18:38 -05:00
echo $OUT $BUILD $FORCE $FORCE_RETROARCH_BUILD
2015-02-16 19:19:30 -08:00
2015-10-21 17:18:38 -05:00
cd $WORK
2015-02-16 19:19:30 -08:00
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
2015-10-21 17:18:38 -05:00
if [ " ${ TYPE } " = = "PROJECT" ] ; then
2015-02-16 19:19:30 -08:00
BUILD = "YES"
RADIR = $DIR
2015-10-21 17:18:38 -05:00
2015-02-16 19:19:30 -08:00
fi
cd $WORK
fi
fi
echo
echo
2015-10-21 17:18:38 -05:00
done < $1 .ra
2015-03-10 12:25:22 -07:00
2015-10-21 17:18:38 -05:00
if [ " ${ BUILD } " = = "YES" -o " ${ FORCE } " = = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" -o " ${ CORES_BUILT } " = = "YES" ] ; then
2015-09-15 19:38:35 +01:00
touch $TMPDIR /built-frontend
2015-03-09 05:23:17 -07:00
cd $RADIR
2015-10-21 17:18:38 -05:00
echo " BUILDBOT JOB: $jobid Building "
2015-03-21 17:34:02 -04:00
echo
2015-03-09 05:23:17 -07:00
2015-10-21 17:18:38 -05:00
cd pkg/apple
xcodebuild -project RetroArch.xcodeproj -target RetroArch -configuration Release & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
2015-07-03 10:40:27 -04:00
2015-10-21 17:18:38 -05:00
if [ $? -eq 0 ] ; then
MESSAGE = " retroarch build succeeded [ $jobid ] "
echo $MESSAGE
else
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
HASTE = ` echo $HASTE | cut -d"\"" -f4`
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
echo $MESSAGE
fi
2015-03-21 17:34:02 -04:00
2015-10-21 17:18:38 -05:00
buildbot_log " $MESSAGE "
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-03-09 05:23:17 -07:00
2015-10-21 17:18:38 -05:00
cd pkg/apple
xcodebuild -project RetroArch.xcodeproj -target "RetroArch Cg" -configuration Release & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_CG_${ PLATFORM } .log
2015-10-21 11:02:46 -05:00
2015-03-09 05:23:17 -07:00
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " retroarch build succeeded [ $jobid ] "
2015-03-09 05:23:17 -07:00
echo $MESSAGE
2015-02-24 14:00:38 -05:00
else
2015-10-21 17:18:38 -05:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_CG_${ PLATFORM } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-10-13 18:52:34 -05:00
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-03-09 05:23:17 -07:00
echo $MESSAGE
2015-02-24 14:00:38 -05:00
fi
2015-10-21 17:18:38 -05:00
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-10-21 17:18:38 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
cd $WORK /$RADIR
echo "Packaging"
echo = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
2015-02-16 19:19:30 -08:00
fi
2014-12-17 13:32:42 -05:00
fi
2015-10-21 17:18:38 -05:00
if [ " ${ PLATFORM } " = = "ios" ] && [ " ${ RA } " = = "YES" ] ; then
2015-02-16 19:19:30 -08:00
while read line; do
2015-03-10 12:25:22 -07:00
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
PARENTDIR = ` echo $line | cut -f 6 -d " " `
2015-02-16 19:19:30 -08:00
2015-10-21 17:18:38 -05:00
if [ " ${ ENABLED } " = = "YES" ] ; then
2015-02-16 19:19:30 -08:00
echo " BUILDBOT JOB: $jobid Processing $NAME "
2015-09-13 17:37:15 +01:00
echo
2015-02-16 19:19:30 -08:00
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
2015-10-21 17:18:38 -05:00
ARGS = ""
TEMP = ` echo $line | cut -f 9 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 10 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 11 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 12 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 13 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
2015-07-21 00:31:15 -05:00
fi
2015-10-21 17:18:38 -05:00
TEMP = ""
TEMP = ` echo $line | cut -f 14 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
echo ARGS: $ARGS
2015-02-16 19:19:30 -08:00
2015-07-21 00:31:15 -05:00
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ; then
cd $PARENTDIR
cd $DIR
echo "pulling from repo... "
2015-10-21 17:18:38 -05:00
2015-09-15 05:11:34 +01:00
OUT = ` git pull`
2015-09-15 04:53:02 +01:00
2015-07-21 00:31:15 -05:00
echo $OUT
2015-10-21 17:18:38 -05:00
if [ " ${ TYPE } " = = "PROJECT" ] ; then
2015-07-21 00:31:15 -05:00
RADIR = $DIR
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
BUILD = "NO"
else
BUILD = "YES"
fi
fi
2015-10-21 17:18:38 -05:00
echo $OUT $BUILD $FORCE $FORCE_RETROARCH_BUILD
2015-07-21 00:31:15 -05:00
cd $WORK
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
2015-02-16 19:19:30 -08:00
2015-10-21 17:18:38 -05:00
if [ " ${ TYPE } " = = "PROJECT" ] ; then
2015-02-16 19:19:30 -08:00
BUILD = "YES"
2015-07-21 00:31:15 -05:00
RADIR = $DIR
2015-10-21 17:18:38 -05:00
2015-02-16 19:19:30 -08:00
fi
2015-07-21 00:31:15 -05:00
cd $WORK
2015-02-16 19:19:30 -08:00
fi
fi
2015-10-21 17:18:38 -05:00
echo
echo
done < $1 .ra
if [ " ${ BUILD } " = = "YES" -o " ${ FORCE } " = = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" -o " ${ CORES_BUILT } " = = "YES" ] ; then
2015-09-15 19:38:35 +01:00
touch $TMPDIR /built-frontend
2015-02-16 19:19:30 -08:00
cd $RADIR
echo " BUILDBOT JOB: $jobid Building "
2015-09-13 17:37:15 +01:00
echo
2015-02-16 19:19:30 -08:00
2015-10-21 17:33:36 -05:00
2015-10-21 17:18:38 -05:00
cd pkg/apple
2015-10-21 17:22:04 -05:00
xcodebuild clean build CODE_SIGN_IDENTITY = "" CODE_SIGNING_REQUIRED = NO -project RetroArch_iOS.xcodeproj -configuration Release & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
2015-06-17 00:28:53 -04:00
2015-03-09 05:23:17 -07:00
if [ $? -eq 0 ] ; then
2015-10-21 17:18:38 -05:00
MESSAGE = " retroarch build succeeded [ $jobid ] "
echo $MESSAGE
2015-02-16 19:19:30 -08:00
else
2015-10-21 17:18:38 -05:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
HASTE = ` echo $HASTE | cut -d"\"" -f4`
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
echo $MESSAGE
2015-02-16 19:19:30 -08:00
fi
2015-06-17 00:28:53 -04:00
2015-10-21 17:18:38 -05:00
buildbot_log " $MESSAGE "
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
cd $WORK /$RADIR
2015-04-06 23:57:26 -05:00
2015-03-24 22:15:09 -04:00
2015-10-21 17:18:38 -05:00
echo "Packaging"
echo = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
2015-03-24 22:15:09 -04:00
2015-10-21 17:18:38 -05:00
fi
fi
2015-03-24 22:15:09 -04:00
2015-04-16 11:40:42 -05:00
2015-10-28 18:42:23 -05:00
if [ " ${ PLATFORM } " = = "ios9" ] && [ " ${ RA } " = = "YES" ] ; then
while read line; do
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
PARENTDIR = ` echo $line | cut -f 6 -d " " `
if [ " ${ ENABLED } " = = "YES" ] ; then
echo " BUILDBOT JOB: $jobid Processing $NAME "
echo
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
ARGS = ""
TEMP = ` echo $line | cut -f 9 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 10 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 11 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 12 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 13 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 14 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
echo ARGS: $ARGS
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ; then
cd $PARENTDIR
cd $DIR
echo "pulling from repo... "
OUT = ` git pull`
echo $OUT
if [ " ${ TYPE } " = = "PROJECT" ] ; then
RADIR = $DIR
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
BUILD = "NO"
else
BUILD = "YES"
fi
fi
echo $OUT $BUILD $FORCE $FORCE_RETROARCH_BUILD
cd $WORK
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
if [ " ${ TYPE } " = = "PROJECT" ] ; then
BUILD = "YES"
RADIR = $DIR
fi
cd $WORK
fi
fi
echo
echo
done < $1 .ra
if [ " ${ BUILD } " = = "YES" -o " ${ FORCE } " = = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" -o " ${ CORES_BUILT } " = = "YES" ] ; then
touch $TMPDIR /built-frontend
cd $RADIR
echo " BUILDBOT JOB: $jobid Building "
echo
cd pkg/apple
xcodebuild clean build CODE_SIGN_IDENTITY = "" CODE_SIGNING_REQUIRED = NO -project RetroArch_iOS.xcodeproj -configuration Release -target "RetroArch iOS9" & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
if [ $? -eq 0 ] ; then
MESSAGE = " retroarch build succeeded [ $jobid ] "
echo $MESSAGE
else
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
HASTE = ` echo $HASTE | cut -d"\"" -f4`
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
echo $MESSAGE
fi
buildbot_log " $MESSAGE "
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
cd $WORK /$RADIR
echo "Packaging"
echo = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
fi
fi
2015-10-21 17:18:38 -05:00
if [ " ${ PLATFORM } " = "android" ] && [ " ${ RA } " = "YES" ] ; then
2015-10-28 18:42:23 -05:00
2015-02-25 20:32:07 -05:00
while read line; do
2015-03-10 12:25:22 -07:00
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
PARENTDIR = ` echo $line | cut -f 6 -d " " `
2015-02-25 20:32:07 -05:00
2015-03-09 05:28:13 -07:00
if [ " ${ ENABLED } " = "YES" ] ; then
2015-02-25 20:32:07 -05:00
echo " BUILDBOT JOB: $jobid Processing $NAME "
2015-06-17 00:28:53 -04:00
echo
2015-02-25 20:32:07 -05:00
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
ARGS = ""
2015-03-10 12:25:22 -07:00
TEMP = ` echo $line | cut -f 9 -d " " `
2015-03-09 05:23:17 -07:00
if [ -n ${ TEMP } ] ; then
2015-02-25 20:32:07 -05:00
ARGS = " ${ TEMP } "
2015-03-10 12:25:22 -07:00
fi
TEMP = ""
TEMP = ` echo $line | cut -f 10 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 11 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 12 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 13 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 14 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
2015-02-25 20:32:07 -05:00
2015-03-10 12:25:22 -07:00
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
2015-02-25 20:32:07 -05:00
2015-03-10 12:25:22 -07:00
echo ARGS: $ARGS
2015-02-25 20:32:07 -05:00
2015-03-10 12:25:22 -07:00
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ; then
2015-10-21 17:18:38 -05:00
cd $PARENTDIR
2015-03-10 12:25:22 -07:00
cd $DIR
echo "pulling from repo... "
2015-10-22 17:25:25 -05:00
git reset --hard
2015-09-15 05:11:34 +01:00
OUT = ` git pull`
2015-09-15 04:53:02 +01:00
2015-03-10 12:25:22 -07:00
echo $OUT
if [ " ${ TYPE } " = "PROJECT" ] ; then
RADIR = $DIR
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
BUILD = "NO"
2015-06-17 00:28:53 -04:00
else
2015-03-10 12:25:22 -07:00
BUILD = "YES"
fi
fi
cd $WORK
2015-10-21 17:18:38 -05:00
2015-03-10 12:25:22 -07:00
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
if [ " ${ TYPE } " = "PROJECT" ] ; then
2015-02-25 20:32:07 -05:00
BUILD = "YES"
2015-03-10 12:25:22 -07:00
RADIR = $DIR
2015-02-25 20:32:07 -05:00
fi
2015-03-10 12:25:22 -07:00
cd $WORK
2015-02-25 20:32:07 -05:00
fi
fi
2015-03-10 12:25:22 -07:00
echo
echo
2015-03-09 05:23:17 -07:00
done < $1 .ra
2015-02-25 20:32:07 -05:00
2015-10-21 17:18:38 -05:00
if [ " ${ BUILD } " = "YES" -o " ${ FORCE } " = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" ] ; then
2015-09-15 19:38:35 +01:00
touch $TMPDIR /built-frontend
2015-10-21 17:18:38 -05:00
echo " BUILDBOT JOB: $jobid Compiling Shaders "
echo
echo RADIR $RADIR
2015-02-25 20:32:07 -05:00
cd $RADIR
2015-10-21 17:18:38 -05:00
$MAKE -f Makefile.griffin shaders-convert-glsl PYTHON3 = $PYTHON
echo " BUILDBOT JOB: $jobid Processing Assets "
echo
rm -rf pkg/android/phoenix/assets/assets
rm -rf pkg/android/phoenix/assets/cores
rm -rf pkg/android/phoenix/assets/info
rm -rf pkg/android/phoenix/assets/overlays
rm -rf pkg/android/phoenix/assets/shaders/shaders_glsl/
rm -rf pkg/android/phoenix/assets/database
rm -rf pkg/android/phoenix/assets/autoconfig
rm -rf pkg/android/phoenix/assets/cheats
rm -rf pkg/android/phoenix/assets/playlists
rm -rf pkg/android/phoenix/assets/dowloads
rm -rf pkg/android/phoenix/assets/remaps
rm -rf pkg/android/phoenix/assets/system
mkdir -p pkg/android/phoenix/assets
mkdir -p pkg/android/phoenix/assets/
mkdir -p pkg/android/phoenix/assets/assets
mkdir -p pkg/android/phoenix/assets/cores
mkdir -p pkg/android/phoenix/assets/info
mkdir -p pkg/android/phoenix/assets/overlays
mkdir -p pkg/android/phoenix/assets/shaders/shaders_glsl/
mkdir -p pkg/android/phoenix/assets/database
mkdir -p pkg/android/phoenix/assets/autoconfig
mkdir -p pkg/android/phoenix/assets/cheats
mkdir -p pkg/android/phoenix/assets/playlists
mkdir -p pkg/android/phoenix/assets/dowloads
mkdir -p pkg/android/phoenix/assets/remaps
mkdir -p pkg/android/phoenix/assets/saves/
mkdir -p pkg/android/phoenix/assets/states/
mkdir -p pkg/android/phoenix/assets/system/
2015-10-28 03:37:32 +01:00
cp -rf media/assets/glui pkg/android/phoenix/assets/assets/
cp -rf media/assets/xmb pkg/android/phoenix/assets/assets/
cp -rf media/assets/zarch pkg/android/phoenix/assets/assets/
2015-10-21 17:18:38 -05:00
cp -rf media/autoconfig/* pkg/android/phoenix/assets/autoconfig/
cp -rf media/overlays/* pkg/android/phoenix/assets/overlays/
cp -rf media/shaders_glsl $TMPDIR /
touch pkg/android/phoenix/assets/cheats/.empty-folder
touch pkg/android/phoenix/assets/saves/.empty-folder
touch pkg/android/phoenix/assets/states/.empty-folder
touch pkg/android/phoenix/assets/system/.empty-folder
cp -rf $RARCH_DIR /info/* pkg/android/phoenix/assets/info/
2015-02-25 20:32:07 -05:00
echo " BUILDBOT JOB: $jobid Building "
2015-09-13 17:37:15 +01:00
echo
2015-10-21 17:18:38 -05:00
cd pkg/android/phoenix
rm bin/*.apk
2015-02-25 20:32:07 -05:00
2015-10-21 17:18:38 -05:00
$NDK clean & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
$NDK -j${ JOBS } & >> $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
2015-10-22 17:25:25 -05:00
python ./version_increment.py
2015-10-21 17:18:38 -05:00
ant clean & >> $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
android update project --path . --target android-22 & >> $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
android update project --path libs/googleplay --target android-21 & >> $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
android update project --path libs/appcompat --target android-21 & >> $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
ant debug & >> $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
2015-02-25 20:32:07 -05:00
2015-09-13 18:02:40 +01:00
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " retroarch build succeeded [ $jobid ] "
2015-09-13 18:02:40 +01:00
echo $MESSAGE
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-10-13 18:52:34 -05:00
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-09-13 18:02:40 +01:00
echo $MESSAGE
fi
2015-10-21 17:18:38 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-02-25 20:32:07 -05:00
fi
fi
2015-10-23 02:22:01 -05:00
if [ " ${ PLATFORM } " = "MINGW64" ] || [ " ${ PLATFORM } " = "MINGW32" ] || [ " ${ PLATFORM } " = "windows" ] && [ " ${ RA } " = "YES" ] ; then
2015-03-07 16:08:46 -05:00
while read line; do
2015-03-10 12:25:22 -07:00
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
PARENTDIR = ` echo $line | cut -f 6 -d " " `
2015-10-21 17:18:38 -05:00
if [ " ${ ENABLED } " = "YES" ] ; then
2015-03-07 16:08:46 -05:00
echo " BUILDBOT JOB: $jobid Processing $NAME "
2015-07-19 14:59:14 -04:00
echo
2015-03-07 16:08:46 -05:00
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
2015-10-21 17:18:38 -05:00
if [ " ${ NAME } " = "retroarch" ] ; then
ARGS = ""
TEMP = ` echo $line | cut -f 7 -d " " `
if [ -n ${ TEMP } ] ;
then
ARGS = " ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 8 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 9 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
echo ARGS: $ARGS
2015-03-10 12:25:22 -07:00
fi
2015-03-07 16:08:46 -05:00
2015-03-10 12:25:22 -07:00
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ; then
cd $PARENTDIR
cd $DIR
echo "pulling from repo... "
2015-09-15 05:11:34 +01:00
OUT = ` git pull`
2015-09-15 04:53:02 +01:00
2015-03-10 12:25:22 -07:00
echo $OUT
2015-10-21 17:18:38 -05:00
if [ " ${ TYPE } " = "PROJECT" ] ; then
2015-03-10 12:25:22 -07:00
RADIR = $DIR
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
BUILD = "NO"
2015-10-06 00:32:57 -05:00
else
2015-03-10 12:25:22 -07:00
BUILD = "YES"
fi
2015-03-07 16:08:46 -05:00
fi
2015-03-10 12:25:22 -07:00
cd $WORK
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
2015-03-10 23:10:11 -04:00
2015-10-21 17:18:38 -05:00
if [ " ${ TYPE } " = "PROJECT" ] ; then
2015-03-10 12:25:22 -07:00
BUILD = "YES"
RADIR = $DIR
fi
cd $WORK
2015-03-07 16:08:46 -05:00
fi
fi
2015-10-21 17:18:38 -05:00
echo
echo
done < $1 .ra
if [ " ${ BUILD } " = "YES" -o " ${ FORCE } " = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" ] ; then
2015-09-15 19:38:35 +01:00
touch $TMPDIR /built-frontend
2015-03-07 16:08:46 -05:00
cd $RADIR
echo " BUILDBOT JOB: $jobid Building "
2015-03-07 16:51:20 -05:00
echo
2015-03-07 16:08:46 -05:00
2015-10-21 17:18:38 -05:00
echo "compiling audio filters"
cd audio/audio_filters
echo " audio filter build command: ${ MAKE } "
$MAKE
if [ $? -eq 0 ] ; then
echo BUILDBOT JOB: $jobid audio filter build success!
else
echo BUILDBOT JOB: $jobid audio filter build failed!
2015-03-07 16:08:46 -05:00
fi
2015-10-21 17:18:38 -05:00
cd ..
cd ..
2015-01-27 18:34:52 -05:00
2015-10-21 17:18:38 -05:00
echo "compiling video filters"
cd gfx/video_filters
echo " audio filter build command: ${ MAKE } "
$MAKE
if [ $? -eq 0 ] ; then
echo BUILDBOT JOB: $jobid video filter build success!
else
echo BUILDBOT JOB: $jobid video filter build failed!
fi
2015-03-10 21:38:12 -05:00
2015-10-21 17:18:38 -05:00
cd ..
cd ..
2015-03-10 21:38:12 -05:00
2015-10-21 17:18:38 -05:00
echo "configuring..."
echo " configure command: $CONFIGURE $ARGS "
${ CONFIGURE } ${ ARGS }
2015-03-10 21:38:12 -05:00
2015-10-21 17:18:38 -05:00
echo "cleaning up..."
echo " cleanup command: $MAKE clean "
$MAKE clean
2015-03-10 21:38:12 -05:00
2015-10-21 17:18:38 -05:00
if [ $? -eq 0 ] ; then
echo BUILDBOT JOB: $jobid retroarch cleanup success!
else
echo BUILDBOT JOB: $jobid retroarch cleanup failed!
2015-03-10 21:38:12 -05:00
fi
2015-09-15 04:53:02 +01:00
2015-10-21 17:18:38 -05:00
if [ $? -eq 0 ] ; then
echo BUILDBOT JOB: $jobid retroarch configure success!
2015-03-10 21:38:12 -05:00
else
2015-10-21 17:18:38 -05:00
echo BUILDBOT JOB: $jobid retroarch configure failed!
2015-03-10 21:38:12 -05:00
fi
2015-10-21 17:18:38 -05:00
echo "building..."
echo " build command: $MAKE -j ${ JOBS } "
$MAKE -j${ JOBS } | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
strip -s retroarch.exe
2015-06-17 00:28:53 -04:00
2015-10-21 17:18:38 -05:00
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " retroarch build succeeded [ $jobid ] "
2015-09-13 17:52:57 +01:00
echo $MESSAGE
2015-10-21 17:18:38 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
buildbot_log " $MESSAGE "
echo "Packaging"
echo = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
cp retroarch.cfg retroarch.default.cfg
rm -rf windows
mkdir -p windows
mkdir -p windows/overlays
mkdir -p windows/shaders/shaders_cg
mkdir -p windows/autoconfig
mkdir -p windows/filters
mkdir -p windows/filters/video
mkdir -p windows/filters/audio
mkdir -p windows/assets
mkdir -p windows/cheats
mkdir -p windows/database
mkdir -p windows/database/cursors
mkdir -p windows/database/rdb
mkdir -p windows/playlists
mkdir -p windows/content
mkdir -p windows/downloads
mkdir -p windows/info
mkdir -p windows/cores
mkdir -p windows/config/remap
mkdir -p windows/system
mkdir -p windows/saves
mkdir -p windows/states
cat << EOF > windows/retroarch.cfg
dpi_override_value = "160"
menu_driver = "xmb"
assets_directory = ":\assets"
audio_filter_dir = ":\filters\audio"
cheat_database_path = ":\cheats"
config_save_on_exit = "true"
content_database_path = ":\database\rdb"
cursor_directory = ":\database\cursors"
input_joypad_driver = "winxinput"
input_osk_overlay_enable = "false"
input_remapping_directory = ":\config\remap"
joypad_autoconfig_dir = ":\autoconfig"
libretro_directory = ":\cores"
libretro_directory = ":\cores"
load_dummy_on_core_shutdown = "false"
menu_collapse_subgroups_enable = "true"
osk_overlay_directory = ":\overlays"
overlay_directory = ":\overlays"
playlist_directory = ":\playlists"
rgui_config_directory = ":\config"
screenshot_directory = ":\screenshots"
video_driver = "gl"
video_filter_dir = ":\filters\video"
video_shader_dir = ":\shaders"
core_assets_directory = ":\downloads"
libretro_info_path = ":\info"
EOF
cp -v retroarch.default.cfg windows/
cp -v *.exe tools/*.exe windows/
cp -rf media/overlays/* windows/overlays
cp -rf media/autoconfig/* windows/autoconfig
cp -rf media/assets/* windows/assets
cp -rf $RARCH_DIR /info/* windows/info
cp -rf audio/audio_filters/*.dll windows/filters/audio
cp -rf audio/audio_filters/*.dsp windows/filters/audio
cp -rf gfx/video_filters/*.dll windows/filters/video
cp -rf gfx/video_filters/*.filt windows/filters/video
2015-10-28 18:42:23 -05:00
2015-10-28 17:25:24 -05:00
$MAKE clean
V = 1 $MAKE -j${ JOBS } DEBUG = 1 | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_DEBUG_${ PLATFORM } .log
cp -v retroarch.exe windows/retroarch_debug.exe
2015-09-13 17:52:57 +01:00
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-10-13 18:52:34 -05:00
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-09-13 17:52:57 +01:00
echo $MESSAGE
2015-10-21 17:18:38 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
buildbot_log " $MESSAGE "
2015-03-10 21:38:12 -05:00
fi
fi
fi
2015-10-21 17:18:38 -05:00
if [ " ${ PLATFORM } " = "psp1" ] && [ " ${ RA } " = "YES" ] ; then
2015-09-07 20:39:28 +01:00
while read line; do
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
PARENTDIR = ` echo $line | cut -f 6 -d " " `
2015-10-21 17:18:38 -05:00
if [ " ${ ENABLED } " = "YES" ] ; then
2015-09-07 20:39:28 +01:00
echo " BUILDBOT JOB: $jobid Processing $NAME "
echo
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
ARGS = ""
TEMP = ` echo $line | cut -f 9 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 10 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 11 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 12 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 13 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 14 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
echo ARGS: $ARGS
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ; then
2015-10-21 17:18:38 -05:00
cd $PARENTDIR
2015-09-07 20:39:28 +01:00
cd $DIR
echo "pulling from repo... "
2015-09-15 05:11:34 +01:00
OUT = ` git pull`
2015-09-15 04:53:02 +01:00
2015-09-07 20:39:28 +01:00
echo $OUT
2015-10-21 17:18:38 -05:00
if [ " ${ TYPE } " = "PROJECT" ] ; then
2015-09-07 20:39:28 +01:00
RADIR = $DIR
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
BUILD = "NO"
2015-09-11 00:14:34 +01:00
else
2015-09-07 20:39:28 +01:00
BUILD = "YES"
fi
fi
cd $WORK
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
2015-10-21 17:18:38 -05:00
if [ " ${ TYPE } " = "PROJECT" ] ; then
2015-09-07 20:39:28 +01:00
BUILD = "YES"
RADIR = $DIR
fi
cd $WORK
fi
fi
echo
echo
2015-10-21 17:18:38 -05:00
done < $1 .ra
2015-09-07 20:39:28 +01:00
2015-09-13 18:02:40 +01:00
if [ " ${ BUILD } " = = "YES" -o " ${ FORCE } " = = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" -o " ${ CORES_BUILT } " = = "YES" ] ; then
2015-10-21 17:18:38 -05:00
touch $TMPDIR /built-frontend
2015-09-07 20:39:28 +01:00
cd $RADIR
echo " BUILDBOT JOB: $jobid Building "
echo
2015-09-13 17:54:11 +01:00
cd dist-scripts
rm *.a
cp -v $RARCH_DIST_DIR /*.a .
2015-10-21 17:18:38 -05:00
#ls -1 *.a | awk -F "." ' { print "cp " $0 " " $1 "_psp1." $2 }' |sh
2015-09-07 20:39:28 +01:00
2015-10-21 17:18:38 -05:00
./dist-cores.sh psp1 & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
2015-09-13 17:54:11 +01:00
if [ $? -eq 0 ] ; then
2015-10-16 00:09:13 -05:00
MESSAGE = " retroarch build succeeded [ $jobid ] "
2015-09-13 17:54:11 +01:00
echo $MESSAGE
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-10-13 18:52:34 -05:00
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-09-13 17:54:11 +01:00
echo $MESSAGE
2015-09-07 20:39:28 +01:00
fi
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-10-13 17:47:28 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-09-07 20:39:28 +01:00
echo "Packaging"
echo = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
2015-10-21 17:18:38 -05:00
cd $WORK /$RADIR
2015-09-07 20:39:28 +01:00
cp retroarch.cfg retroarch.default.cfg
2015-10-21 17:18:38 -05:00
mkdir -p pkg/psp1/
mkdir -p pkg/psp1/cheats
cp -p $RARCH_DIST_DIR /../info/*.info pkg/psp1/cores/
2015-09-07 20:39:28 +01:00
fi
fi
2015-10-21 17:18:38 -05:00
if [ " ${ PLATFORM } " = = "wii" ] && [ " ${ RA } " = = "YES" ] ; then
2015-09-15 00:25:58 +01:00
while read line; do
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
PARENTDIR = ` echo $line | cut -f 6 -d " " `
if [ " ${ ENABLED } " = = "YES" ] ; then
echo " BUILDBOT JOB: $jobid Processing $NAME "
echo
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
ARGS = ""
TEMP = ` echo $line | cut -f 9 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 10 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 11 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 12 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 13 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 14 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
echo ARGS: $ARGS
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ; then
cd $PARENTDIR
cd $DIR
echo "pulling from repo... "
2015-09-15 05:11:34 +01:00
OUT = ` git pull`
2015-09-15 04:53:02 +01:00
2015-09-15 00:25:58 +01:00
echo $OUT
if [ " ${ TYPE } " = = "PROJECT" ] ; then
RADIR = $DIR
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
BUILD = "NO"
else
BUILD = "YES"
fi
fi
cd $WORK
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
if [ " ${ TYPE } " = = "PROJECT" ] ; then
BUILD = "YES"
RADIR = $DIR
fi
cd $WORK
fi
fi
echo
echo
done < $1 .ra
2015-10-21 17:18:38 -05:00
if [ " ${ BUILD } " = = "YES" -o " ${ FORCE } " = = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" -o " ${ CORES_BUILT } " = = "YES" ] ; then
touch $TMPDIR /built-frontend
cd $RADIR
echo " BUILDBOT JOB: $jobid Building "
echo
if [ " ${ BUILD } " = = "YES" -o " ${ FORCE } " = = "YES" ] ; then
cd dist-scripts
rm *.a
cp -v $RARCH_DIST_DIR /*.a .
#ls -1 *.a | awk -F "." ' { print "cp " $0 " " $1 "_wii." $2 }' |sh
sh ./dist-cores.sh wii & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
if [ $? -eq 0 ] ; then
MESSAGE = " retroarch build succeeded [ $jobid ] "
echo $MESSAGE
else
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
HASTE = ` echo $HASTE | cut -d"\"" -f4`
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
echo $MESSAGE
fi
buildbot_log " $MESSAGE "
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
cd $WORK /$RADIR
fi
echo "Packaging"
echo = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
cp retroarch.cfg retroarch.default.cfg
mkdir -p pkg/wii
mkdir -p pkg/wii/overlays
mkdir -p pkg/wii/cheats
mkdir -p pkg/wii/remaps
cp -rf media/overlays/wii/* pkg/wii/overlays
fi
fi
if [ " ${ PLATFORM } " = = "ngc" ] && [ " ${ RA } " = = "YES" ] ; then
while read line; do
NAME = ` echo $line | cut --fields= 1 --delimiter= " " `
DIR = ` echo $line | cut --fields= 2 --delimiter= " " `
URL = ` echo $line | cut --fields= 3 --delimiter= " " `
TYPE = ` echo $line | cut --fields= 4 --delimiter= " " `
ENABLED = ` echo $line | cut --fields= 5 --delimiter= " " `
PARENTDIR = ` echo $line | cut --fields= 6 --delimiter= " " `
if [ " ${ ENABLED } " = = "YES" ] ;
then
echo " BUILDBOT JOB: $jobid Processing $NAME "
echo
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
ARGS = ""
TEMP = ` echo $line | cut --fields= 9 --delimiter= " " `
if [ -n ${ TEMP } ] ;
then
ARGS = " ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut --fields= 10 --delimiter= " " `
if [ -n ${ TEMP } ] ;
then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut --fields= 11 --delimiter= " " `
if [ -n ${ TEMP } ] ;
then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut --fields= 12 --delimiter= " " `
if [ -n ${ TEMP } ] ;
then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut --fields= 13 --delimiter= " " `
if [ -n ${ TEMP } ] ;
then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut --fields= 14 --delimiter= " " `
if [ -n ${ TEMP } ] ;
then
ARGS = " ${ ARGS } ${ TEMP } "
fi
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
echo ARGS: $ARGS
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ;
then
cd $PARENTDIR
cd $DIR
echo "pulling from repo... "
OUT = ` git pull`
echo $OUT
if [ " ${ TYPE } " = = "PROJECT" ] ;
then
RADIR = $DIR
if [ [ $OUT = = *"Already up-to-date" * ] ]
then
BUILD = "NO"
else
BUILD = "YES"
fi
fi
cd $WORK
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
if [ " ${ TYPE } " = = "PROJECT" ] ;
then
BUILD = "YES"
RADIR = $DIR
fi
cd $WORK
fi
fi
echo
echo
done < $1 .ra
2015-09-15 00:25:58 +01:00
if [ " ${ BUILD } " = = "YES" -o " ${ FORCE } " = = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" -o " ${ CORES_BUILT } " = = "YES" ] ; then
2015-09-15 19:38:35 +01:00
touch $TMPDIR /built-frontend
2015-09-15 00:25:58 +01:00
cd $RADIR
echo " BUILDBOT JOB: $jobid Building "
echo
cd dist-scripts
rm *.a
cp -v $RARCH_DIST_DIR /*.a .
2015-10-21 17:18:38 -05:00
#ls -1 *.a | awk -F "." ' { print "cp " $0 " " $1 "_ngc." $2 }' |sh
sh ./dist-cores.sh ngc & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
if [ $? -eq 0 ] ;
then
2015-10-16 00:09:13 -05:00
MESSAGE = " retroarch build succeeded [ $jobid ] "
2015-09-15 00:25:58 +01:00
echo $MESSAGE
else
2015-09-15 19:38:35 +01:00
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
2015-10-13 19:02:37 -05:00
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
2015-10-18 14:30:45 -05:00
HASTE = ` echo $HASTE | cut -d"\"" -f4`
2015-10-13 18:52:34 -05:00
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
2015-09-15 00:25:58 +01:00
echo $MESSAGE
fi
2015-09-25 04:01:01 +01:00
buildbot_log " $MESSAGE "
2015-10-13 17:47:28 -05:00
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
2015-10-21 17:18:38 -05:00
cd ..
2015-09-15 00:25:58 +01:00
echo "Packaging"
echo = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
cp retroarch.cfg retroarch.default.cfg
2015-10-21 17:18:38 -05:00
mkdir -p pkg/ngc/
mkdir -p pkg/ngc/cheats
mkdir -p pkg/ngc/remaps
mkdir -p pkg/ngc/overlays
cp -rf media/overlays/wii/* pkg/ngc/overlays
2015-09-15 00:25:58 +01:00
fi
2015-10-21 17:18:38 -05:00
2015-09-15 00:25:58 +01:00
fi
2015-10-21 17:18:38 -05:00
if [ " ${ PLATFORM } " = = "ctr" ] && [ " ${ RA } " = = "YES" ] ; then
2015-10-19 14:47:52 -05:00
while read line; do
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
PARENTDIR = ` echo $line | cut -f 6 -d " " `
if [ " ${ ENABLED } " = = "YES" ] ; then
echo " BUILDBOT JOB: $jobid Processing $NAME "
echo
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
ARGS = ""
TEMP = ` echo $line | cut -f 9 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 10 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 11 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 12 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 13 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 14 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
echo ARGS: $ARGS
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ; then
cd $PARENTDIR
cd $DIR
echo "pulling from repo... "
OUT = ` git pull`
echo $OUT
if [ " ${ TYPE } " = = "PROJECT" ] ; then
RADIR = $DIR
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
BUILD = "NO"
else
BUILD = "YES"
fi
fi
echo $OUT $BUILD $FORCE $FORCE_RETROARCH_BUILD
cd $WORK
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
if [ " ${ TYPE } " = = "PROJECT" ] ; then
BUILD = "YES"
RADIR = $DIR
fi
cd $WORK
fi
fi
echo
echo
done < $1 .ra
if [ " ${ BUILD } " = = "YES" -o " ${ FORCE } " = = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" -o " ${ CORES_BUILT } " = = "YES" ] ; then
cd $RADIR
echo " BUILDBOT JOB: $jobid Building "
echo
2015-10-21 17:18:38 -05:00
cd dist-scripts
rm *.a
cp -v $RARCH_DIST_DIR /*.a .
2015-10-19 14:47:52 -05:00
2015-10-21 17:18:38 -05:00
#ls -1 *.a | awk -F "." ' { print "cp " $0 " " $1 "_ctr." $2 }' |sh
JOBS = 1 sh ./dist-cores.sh ctr & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
2015-10-19 14:47:52 -05:00
if [ $? -eq 0 ] ; then
MESSAGE = " retroarch build succeeded [ $jobid ] "
echo $MESSAGE
2015-10-23 00:29:10 -05:00
touch $TMPDIR /built-frontend
2015-10-19 14:47:52 -05:00
else
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
HASTE = ` echo $HASTE | cut -d"\"" -f4`
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
echo $MESSAGE
fi
buildbot_log " $MESSAGE "
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
cd $WORK /$RADIR
echo "Packaging"
echo = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
2015-10-21 17:18:38 -05:00
cp retroarch.cfg retroarch.default.cfg
2015-10-19 14:47:52 -05:00
2015-10-21 17:18:38 -05:00
mkdir -p pkg/3ds
mkdir -p pkg/3ds/remaps
mkdir -p pkg/3ds/cheats
cp -rf media/overlays/* pkg/3ds/overlays/
2015-10-19 14:47:52 -05:00
fi
fi
2015-10-21 17:18:38 -05:00
if [ " ${ PLATFORM } " = = "vita" ] && [ " ${ RA } " = = "YES" ] ; then
2015-10-21 16:57:27 -05:00
while read line; do
NAME = ` echo $line | cut -f 1 -d " " `
DIR = ` echo $line | cut -f 2 -d " " `
URL = ` echo $line | cut -f 3 -d " " `
TYPE = ` echo $line | cut -f 4 -d " " `
ENABLED = ` echo $line | cut -f 5 -d " " `
PARENTDIR = ` echo $line | cut -f 6 -d " " `
if [ " ${ ENABLED } " = = "YES" ] ; then
echo " BUILDBOT JOB: $jobid Processing $NAME "
echo
echo NAME: $NAME
echo DIR: $DIR
echo PARENT: $PARENTDIR
echo URL: $URL
echo REPO TYPE: $TYPE
echo ENABLED: $ENABLED
ARGS = ""
TEMP = ` echo $line | cut -f 9 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 10 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 11 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 12 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 13 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
TEMP = ""
TEMP = ` echo $line | cut -f 14 -d " " `
if [ -n ${ TEMP } ] ; then
ARGS = " ${ ARGS } ${ TEMP } "
fi
ARGS = " ${ ARGS % " ${ ARGS ##*[![ : space : ]] } " } "
echo ARGS: $ARGS
if [ -d " ${ PARENTDIR } / ${ DIR } /.git " ] ; then
cd $PARENTDIR
cd $DIR
echo "pulling from repo... "
OUT = ` git pull`
echo $OUT
if [ " ${ TYPE } " = = "PROJECT" ] ; then
RADIR = $DIR
if [ [ $OUT = = *"Already up-to-date" * ] ] ; then
BUILD = "NO"
else
BUILD = "YES"
fi
fi
echo $OUT $BUILD $FORCE $FORCE_RETROARCH_BUILD
cd $WORK
else
echo "cloning repo..."
cd $PARENTDIR
git clone " $URL " " $DIR " --depth= 1
cd $DIR
if [ " ${ TYPE } " = = "PROJECT" ] ; then
BUILD = "YES"
RADIR = $DIR
fi
cd $WORK
fi
fi
echo
echo
done < $1 .ra
if [ " ${ BUILD } " = = "YES" -o " ${ FORCE } " = = "YES" -o " ${ FORCE_RETROARCH_BUILD } " = = "YES" -o " ${ CORES_BUILT } " = = "YES" ] ; then
touch $TMPDIR /built-frontend
cd $RADIR
echo " BUILDBOT JOB: $jobid Building "
echo
2015-10-21 17:18:38 -05:00
cd dist-scripts
rm *.a
cp -v $RARCH_DIST_DIR /*.a .
2015-10-21 16:57:27 -05:00
2015-10-21 17:18:38 -05:00
#ls -1 *.a | awk -F "." ' { print "cp " $0 " " $1 "_vita." $2 }' |sh
JOBS = 1 sh ./dist-cores.sh vita & > $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log
2015-10-21 16:57:27 -05:00
if [ $? -eq 0 ] ; then
MESSAGE = " retroarch build succeeded [ $jobid ] "
echo $MESSAGE
else
ERROR = ` cat $TMPDIR /log/${ BOT } /${ LOGDATE } /${ LOGDATE } _RetroArch_${ PLATFORM } .log | tail -n 100`
HASTE = ` curl -XPOST http://hastebin.com/documents -d" $ERROR " `
HASTE = ` echo $HASTE | cut -d"\"" -f4`
MESSAGE = " retroarch build failed [ $jobid ] LOG: http://hastebin.com/ $HASTE "
echo $MESSAGE
fi
buildbot_log " $MESSAGE "
echo BUILDBOT JOB: $MESSAGE | tee -a $TMPDIR /log/${ BOT } /${ LOGDATE } .log
cd $WORK /$RADIR
echo "Packaging"
echo = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
2015-10-21 17:18:38 -05:00
cp retroarch.cfg retroarch.default.cfg
2015-10-21 16:57:27 -05:00
2015-10-21 17:18:38 -05:00
mkdir -p pkg/vita
mkdir -p pkg/vita/remaps
mkdir -p pkg/vita/cheats
cp -rf media/overlays/* pkg/vita/overlays/
2015-10-21 16:57:27 -05:00
fi
fi
2015-09-07 20:39:28 +01:00
2014-11-08 12:28:26 -08:00
PATH = $ORIGPATH