aboutsummaryrefslogtreecommitdiff
path: root/tools/buildsteps/ios
diff options
context:
space:
mode:
authorMemphiz <memphis@machzwo.de>2015-02-14 14:54:26 +0100
committerMemphiz <memphis@machzwo.de>2015-02-17 21:35:52 +0100
commit1f08bf3fd3e9d173cd73f8e7bdfce7a94f45b823 (patch)
tree121cb19b156d8201fcb98822dbe7f1ba0202de34 /tools/buildsteps/ios
parentb4136fb2097a940f97bff8e20a12b988136881d9 (diff)
[jenkins] - refactor jenkins buildsteps for allowing seperate binary addons building
Diffstat (limited to 'tools/buildsteps/ios')
-rwxr-xr-xtools/buildsteps/ios/configure-depends2
-rwxr-xr-xtools/buildsteps/ios/make-binary-addons24
-rwxr-xr-xtools/buildsteps/ios/make-depends4
-rwxr-xr-xtools/buildsteps/ios/make-native-depends9
-rwxr-xr-xtools/buildsteps/ios/prepare-depends5
-rwxr-xr-xtools/buildsteps/ios/prepare-xbmc3
6 files changed, 42 insertions, 5 deletions
diff --git a/tools/buildsteps/ios/configure-depends b/tools/buildsteps/ios/configure-depends
index 998f80a354..d09f0cb269 100755
--- a/tools/buildsteps/ios/configure-depends
+++ b/tools/buildsteps/ios/configure-depends
@@ -2,7 +2,7 @@ WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
XBMC_PLATFORM_DIR=ios
. $WORKSPACE/tools/buildsteps/defaultenv
-if [ "$(rebuildDepends)" == "1" ]
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
then
cd $WORKSPACE/tools/depends;./configure \
--with-tarballs=/Users/Shared/xbmc-depends/tarballs \
diff --git a/tools/buildsteps/ios/make-binary-addons b/tools/buildsteps/ios/make-binary-addons
new file mode 100755
index 0000000000..b811b6d311
--- /dev/null
+++ b/tools/buildsteps/ios/make-binary-addons
@@ -0,0 +1,24 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=ios
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+. $WORKSPACE/tools/buildsteps/$XBMC_PLATFORM_DIR/make-native-depends
+
+for addon in $BINARY_ADDONS
+do
+ ALL_BINARY_ADDONS_BUILT="1"
+ #only build binary addons if something in the addons metadata changed
+ if [ "$(pathChanged $WORKSPACE/project/cmake)" == "1" ]
+ then
+ echo "building $addon"
+ git clean -xffd $WORKSPACE/$BINARY_ADDONS_ROOT/$addon
+ cd $WORKSPACE/$BINARY_ADDONS_ROOT/$addon;make -j $BUILDTHREADS || ALL_BINARY_ADDONS_BUILT="0"
+ fi
+done
+if [ "$ALL_BINARY_ADDONS_BUILT" == "1" ]
+then
+ tagSuccessFulBuild $WORKSPACE/project/cmake
+else
+ #make jenkins fail
+ exit 1
+fi
diff --git a/tools/buildsteps/ios/make-depends b/tools/buildsteps/ios/make-depends
index ce3bdf6bc3..eb36ee2a16 100755
--- a/tools/buildsteps/ios/make-depends
+++ b/tools/buildsteps/ios/make-depends
@@ -2,8 +2,8 @@ WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
XBMC_PLATFORM_DIR=ios
. $WORKSPACE/tools/buildsteps/defaultenv
-if [ "$(rebuildDepends)" == "1" ]
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
then
- cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS && tagSuccessFulDependsBuild
+ cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS && tagSuccessFulBuild $WORKSPACE/tools/depends
fi
diff --git a/tools/buildsteps/ios/make-native-depends b/tools/buildsteps/ios/make-native-depends
new file mode 100755
index 0000000000..36ebea8bb3
--- /dev/null
+++ b/tools/buildsteps/ios/make-native-depends
@@ -0,0 +1,9 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=ios
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
+then
+ git clean -xffd $WORKSPACE/tools/depends/native
+ cd $WORKSPACE/tools/depends/native;make -j $BUILDTHREADS && tagSuccessFulBuild $WORKSPACE/tools/depends
+fi \ No newline at end of file
diff --git a/tools/buildsteps/ios/prepare-depends b/tools/buildsteps/ios/prepare-depends
index ff83e1213d..01aa9ed766 100755
--- a/tools/buildsteps/ios/prepare-depends
+++ b/tools/buildsteps/ios/prepare-depends
@@ -4,9 +4,10 @@ XBMC_PLATFORM_DIR=ios
#clean without depends for skipping depends build if possible
#also skip binary addons (pvr, audioencoder) as long as they are deployed in tree
-cd $WORKSPACE;git clean -xfd -e "project/cmake/.last_success_revision" -e "tools/depends" -e "addons/pvr.*" -e "addons/audioencoder.*"
+cd $WORKSPACE;git clean -xfd -e "project/cmake/.last_success_revision" -e "tools/depends" ${DEPLOYED_BINARY_ADDONS}
-if [ "$(rebuildDepends)" == "1" ]
+# if depends path has changed - cleanout everything and do a full rebuild
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
then
#clean up the rest too
cd $WORKSPACE;git clean -xffd
diff --git a/tools/buildsteps/ios/prepare-xbmc b/tools/buildsteps/ios/prepare-xbmc
index 1b93c2bdb7..9497ceab6b 100755
--- a/tools/buildsteps/ios/prepare-xbmc
+++ b/tools/buildsteps/ios/prepare-xbmc
@@ -9,3 +9,6 @@ then
rm -r $WORKSPACE/addons/skin.re-touched
fi
git submodule update --init $WORKSPACE/addons/skin.re-touched
+
+#build binary addons before building xbmc...
+. $WORKSPACE/tools/buildsteps/$XBMC_PLATFORM_DIR/make-binary-addons