aboutsummaryrefslogtreecommitdiff
path: root/tools/buildsteps
diff options
context:
space:
mode:
authorMemphiz <memphis@machzwo.de>2013-11-14 20:18:42 +0100
committerMemphiz <memphis@machzwo.de>2013-11-14 23:47:04 +0100
commitaaba8763f053826ff29a7840c2447391fd9dc137 (patch)
tree6c5feee4d7e97eb31634ffa3f1fda94cd5722dd6 /tools/buildsteps
parent4a1f0e0bb56d6cc62458034eb5305512fd6040a7 (diff)
[jenkins] - add buildsteps for raspberry pi
Diffstat (limited to 'tools/buildsteps')
-rw-r--r--tools/buildsteps/defaultenv7
-rw-r--r--tools/buildsteps/rbpi/config-xbmc-makefile25
-rwxr-xr-xtools/buildsteps/rbpi/configure-depends31
-rwxr-xr-xtools/buildsteps/rbpi/configure-xbmc6
-rwxr-xr-xtools/buildsteps/rbpi/make-depends9
-rwxr-xr-xtools/buildsteps/rbpi/make-xbmc5
-rwxr-xr-xtools/buildsteps/rbpi/package5
-rwxr-xr-xtools/buildsteps/rbpi/prepare-depends20
-rwxr-xr-xtools/buildsteps/rbpi/prepare-xbmc5
9 files changed, 113 insertions, 0 deletions
diff --git a/tools/buildsteps/defaultenv b/tools/buildsteps/defaultenv
index f8548c6cfe..567d66cfce 100644
--- a/tools/buildsteps/defaultenv
+++ b/tools/buildsteps/defaultenv
@@ -42,6 +42,13 @@ case $XBMC_PLATFORM_DIR in
linux*)
DEFAULT_XBMC_DEPENDS_ROOT=$WORKSPACE/tools/depends/xbmc-depends
DEFAULT_CONFIGURATION="Debug"
+ ;;
+
+ rbpi)
+ JENKINS_RBPI_DEVENV=/home/jenkins/rbpi-dev
+ DEFAULT_XBMC_DEPENDS_ROOT=$WORKSPACE/tools/depends/xbmc-depends
+ DEFAULT_CONFIGURATION="Debug"
+ ;;
esac
if [ "$SDK_VERSION" == "Default" ]
diff --git a/tools/buildsteps/rbpi/config-xbmc-makefile b/tools/buildsteps/rbpi/config-xbmc-makefile
new file mode 100644
index 0000000000..761a3b4127
--- /dev/null
+++ b/tools/buildsteps/rbpi/config-xbmc-makefile
@@ -0,0 +1,25 @@
+-include ../../../tools/depends/Makefile.include
+
+SOURCE=../../../
+
+export CXXFLAGS+=-O3
+export CFLAGS+=-O3
+
+# configuration settings
+CONFIGURE = cp -f $(CONFIG_SUB) $(CONFIG_GUESS) build-aux/ ;\
+ ./configure --prefix=$(PREFIX) \
+ --with-platform=raspberry-pi --disable-optimizations --enable-debug \
+ --disable-gl --enable-gles --enable-airplay \
+ --enable-airtunes --enable-libcec --enable-player=omxplayer \
+ --disable-sdl --disable-x11 --disable-xrandr --disable-openmax \
+ --disable-optical-drive --disable-dvdcss --disable-joystick \
+ --disable-crystalhd --disable-vtbdecoder --disable-vaapi \
+ --disable-vdpau --disable-projectm --disable-rsxs --disable-fishbmc \
+ --disable-alsa
+
+all: $(SOURCE)/libxbmc.so
+
+
+$(SOURCE)/libxbmc.so:
+ cd $(SOURCE); ./bootstrap
+ cd $(SOURCE); $(CONFIGURE)
diff --git a/tools/buildsteps/rbpi/configure-depends b/tools/buildsteps/rbpi/configure-depends
new file mode 100755
index 0000000000..b1c586587c
--- /dev/null
+++ b/tools/buildsteps/rbpi/configure-depends
@@ -0,0 +1,31 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=rbpi
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
+then
+ cd $WORKSPACE/tools/depends;
+
+ PATH="$PATH:$JENKINS_RBPI_DEVENV/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin" \
+ CFLAGS="-pipe -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard \
+ -mfpu=vfp -mabi=aapcs-linux -Wno-psabi -Wa,-mno-warn-deprecated \
+ -Wno-deprecated-declarations -isystem$JENKINS_RBPI_DEVENV/firmware/opt/vc/include \
+ -isystem$JENKINS_RBPI_DEVENV/firmware/opt/vc/include/interface/vcos/pthreads \
+ -isystem$JENKINS_RBPI_DEVENV/firmware/opt/vc/include/interface/vmcs_host/linux" \
+ CXXFLAGS="-pipe -mcpu=arm1176jzf-s -mtune=arm1176jzf-s \
+ -mfloat-abi=hard -mfpu=vfp -mabi=aapcs-linux -Wno-psabi \
+ -Wa,-mno-warn-deprecated -Wno-deprecated-declarations \
+ -isystem$JENKINS_RBPI_DEVENV/firmware/opt/vc/include \
+ -isystem$JENKINS_RBPI_DEVENV/firmware/opt/vc/include/interface/vcos/pthreads \
+ -isystem$JENKINS_RBPI_DEVENV/firmware/opt/vc/include/interface/vmcs_host/linux" \
+ LDFLAGS="-L$JENKINS_RBPI_DEVENV/firmware/opt/vc/lib -lEGL -lGLESv2 -lbcm_host -lvcos \
+ -lvchiq_arm" \
+ ./configure --host=arm-linux-gnueabihf --prefix=$XBMC_DEPENDS_ROOT --with-tarballs=$TARBALLS \
+ --with-toolchain=$JENKINS_RBPI_DEVENV/tools/arm-bcm2708/arm-bcm2708hardfp-linux-gnueabi/arm-bcm2708hardfp-linux-gnueabi/sysroot \
+ --build=i686-linux \
+ CFLAGS="-pipe -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard \
+ -mfpu=vfp -mabi=aapcs-linux -Wno-psabi -Wa,-mno-warn-deprecated \
+ -Wno-deprecated-declarations -isystem$JENKINS_RBPI_DEVENV/firmware/opt/vc/include \
+ -isystem$JENKINS_RBPI_DEVENV/firmware/opt/vc/include/interface/vcos/pthreads \
+ -isystem$JENKINS_RBPI_DEVENVfirmware/opt/vc/include/interface/vmcs_host/linux"
+fi
diff --git a/tools/buildsteps/rbpi/configure-xbmc b/tools/buildsteps/rbpi/configure-xbmc
new file mode 100755
index 0000000000..a0699e674b
--- /dev/null
+++ b/tools/buildsteps/rbpi/configure-xbmc
@@ -0,0 +1,6 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=rbpi
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+cd $WORKSPACE
+make -C tools/buildsteps/rbpi -f config-xbmc-makefile
diff --git a/tools/buildsteps/rbpi/make-depends b/tools/buildsteps/rbpi/make-depends
new file mode 100755
index 0000000000..07c26dadb7
--- /dev/null
+++ b/tools/buildsteps/rbpi/make-depends
@@ -0,0 +1,9 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=rbpi
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
+then
+ cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS || make && tagSuccessFulBuild .
+fi
+
diff --git a/tools/buildsteps/rbpi/make-xbmc b/tools/buildsteps/rbpi/make-xbmc
new file mode 100755
index 0000000000..5ce9c6a4bd
--- /dev/null
+++ b/tools/buildsteps/rbpi/make-xbmc
@@ -0,0 +1,5 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=rbpi
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+cd $WORKSPACE;make -j$BUILDTHREADS || make
diff --git a/tools/buildsteps/rbpi/package b/tools/buildsteps/rbpi/package
new file mode 100755
index 0000000000..f3c41a5c96
--- /dev/null
+++ b/tools/buildsteps/rbpi/package
@@ -0,0 +1,5 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=rbpi
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+#nothing for rbpi atm
diff --git a/tools/buildsteps/rbpi/prepare-depends b/tools/buildsteps/rbpi/prepare-depends
new file mode 100755
index 0000000000..10ebd93341
--- /dev/null
+++ b/tools/buildsteps/rbpi/prepare-depends
@@ -0,0 +1,20 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=rbpi
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+#clean without depends for skipping depends build if possible
+cd $WORKSPACE;git clean -xfd -e "tools/depends"
+
+if [ -d $JENKINS_RBPI_DEVENV/firmware ]
+then
+ cd $JENKINS_RBPI_DEVENV/firmware;git pull origin master
+else
+ cd $JENKINS_RBPI_DEVENV;git clone git://github.com/raspberrypi/firmware.git --depth=1 -b master
+fi
+
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
+then
+ #clean up the rest too
+ cd $WORKSPACE;git clean -xfd
+ cd $WORKSPACE/tools/depends/;./bootstrap
+fi
diff --git a/tools/buildsteps/rbpi/prepare-xbmc b/tools/buildsteps/rbpi/prepare-xbmc
new file mode 100755
index 0000000000..36e91b4367
--- /dev/null
+++ b/tools/buildsteps/rbpi/prepare-xbmc
@@ -0,0 +1,5 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=rbpi
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+cd $WORKSPACE;./bootstrap;autoreconf -vif