aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilipp Kerling <pkerling@casix.org>2017-08-19 11:04:54 +0200
committerPhilipp Kerling <pkerling@casix.org>2017-08-19 11:04:54 +0200
commit30252bf71fb1c0058598f92c8b8ce3e2368c3295 (patch)
tree981ad4de389f5adbc64a1a7086b9beb84ea3a1dc
parente6b0c83ddc28282d858796bc474b0d4ea1c8c52c (diff)
[buildsteps] Add linux64-wayland
-rwxr-xr-xtools/buildsteps/linux64-wayland/configure-depends9
-rwxr-xr-xtools/buildsteps/linux64-wayland/configure-xbmc5
-rwxr-xr-xtools/buildsteps/linux64-wayland/make-binary-addons28
-rwxr-xr-xtools/buildsteps/linux64-wayland/make-depends9
-rwxr-xr-xtools/buildsteps/linux64-wayland/make-native-depends9
-rwxr-xr-xtools/buildsteps/linux64-wayland/make-xbmc5
-rwxr-xr-xtools/buildsteps/linux64-wayland/package5
-rwxr-xr-xtools/buildsteps/linux64-wayland/prepare-depends15
-rwxr-xr-xtools/buildsteps/linux64-wayland/prepare-xbmc9
-rwxr-xr-xtools/buildsteps/linux64-wayland/run-tests14
10 files changed, 108 insertions, 0 deletions
diff --git a/tools/buildsteps/linux64-wayland/configure-depends b/tools/buildsteps/linux64-wayland/configure-depends
new file mode 100755
index 0000000000..d0c3f5f7dd
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/configure-depends
@@ -0,0 +1,9 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
+then
+ cd $WORKSPACE/tools/depends;./configure \
+ --with-toolchain=/usr --prefix=$XBMC_DEPENDS_ROOT --host=x86_64-linux-gnu --with-tarballs=$TARBALLS --enable-wayland $DEBUG_SWITCH
+fi
diff --git a/tools/buildsteps/linux64-wayland/configure-xbmc b/tools/buildsteps/linux64-wayland/configure-xbmc
new file mode 100755
index 0000000000..52479a2209
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/configure-xbmc
@@ -0,0 +1,5 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+make -C $WORKSPACE/tools/depends/target/cmakebuildsys
diff --git a/tools/buildsteps/linux64-wayland/make-binary-addons b/tools/buildsteps/linux64-wayland/make-binary-addons
new file mode 100755
index 0000000000..0886919146
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/make-binary-addons
@@ -0,0 +1,28 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+. $WORKSPACE/tools/buildsteps/$XBMC_PLATFORM_DIR/make-native-depends
+
+#clear the build failed file
+rm -f $WORKSPACE/cmake/$FAILED_BUILD_FILENAME
+
+ALL_BINARY_ADDONS_BUILT="1"
+#only build binary addons when requested by env/jenkins
+if [ "$BUILD_BINARY_ADDONS" == "true" ]
+then
+ for addon in $BINARY_ADDONS
+ do
+ echo "building $addon"
+ git clean -xffd $WORKSPACE/$BINARY_ADDONS_ROOT/$addon
+ cd $WORKSPACE/$BINARY_ADDONS_ROOT/$addon;make -j $BUILDTHREADS V=99 VERBOSE=1 || ALL_BINARY_ADDONS_BUILT="0"
+ done
+fi
+
+if [ "$ALL_BINARY_ADDONS_BUILT" == "1" ]
+then
+ tagSuccessFulBuild $WORKSPACE/cmake
+else
+ #mark the build failure in the filesystem but leave jenkins running
+ tagFailedBuild $WORKSPACE/cmake
+fi
diff --git a/tools/buildsteps/linux64-wayland/make-depends b/tools/buildsteps/linux64-wayland/make-depends
new file mode 100755
index 0000000000..5953efd23f
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/make-depends
@@ -0,0 +1,9 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
+then
+ cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS || make && tagSuccessFulBuild $WORKSPACE/tools/depends
+fi
+
diff --git a/tools/buildsteps/linux64-wayland/make-native-depends b/tools/buildsteps/linux64-wayland/make-native-depends
new file mode 100755
index 0000000000..77295b96a1
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/make-native-depends
@@ -0,0 +1,9 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ] && [ "$BINARY_ADDONS_CLEAN_NATIVETOOLS" != "0" ]
+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/linux64-wayland/make-xbmc b/tools/buildsteps/linux64-wayland/make-xbmc
new file mode 100755
index 0000000000..1a5d7e087f
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/make-xbmc
@@ -0,0 +1,5 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+cd $WORKSPACE/build;make -j$BUILDTHREADS || make
diff --git a/tools/buildsteps/linux64-wayland/package b/tools/buildsteps/linux64-wayland/package
new file mode 100755
index 0000000000..0f0abf8f9c
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/package
@@ -0,0 +1,5 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+#nothing for linux atm
diff --git a/tools/buildsteps/linux64-wayland/prepare-depends b/tools/buildsteps/linux64-wayland/prepare-depends
new file mode 100755
index 0000000000..d72507053c
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/prepare-depends
@@ -0,0 +1,15 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+#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 "cmake/.last_success_revision" -e "tools/depends" ${DEPLOYED_BINARY_ADDONS}
+
+# 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
+ cd $WORKSPACE/tools/depends/;./bootstrap
+fi
diff --git a/tools/buildsteps/linux64-wayland/prepare-xbmc b/tools/buildsteps/linux64-wayland/prepare-xbmc
new file mode 100755
index 0000000000..6d1dccb127
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/prepare-xbmc
@@ -0,0 +1,9 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+#build binary addons before building xbmc...
+#make sure that binary_addons don't clean the native tools
+#here (e.x. on release builds where pathChanged always returns 1
+BINARY_ADDONS_CLEAN_NATIVETOOLS="0"
+. $WORKSPACE/tools/buildsteps/$XBMC_PLATFORM_DIR/make-binary-addons
diff --git a/tools/buildsteps/linux64-wayland/run-tests b/tools/buildsteps/linux64-wayland/run-tests
new file mode 100755
index 0000000000..42fa9137b7
--- /dev/null
+++ b/tools/buildsteps/linux64-wayland/run-tests
@@ -0,0 +1,14 @@
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
+XBMC_PLATFORM_DIR=linux64-wayland
+. $WORKSPACE/tools/buildsteps/defaultenv
+
+cd $WORKSPACE/build;make -j$BUILDTHREADS kodi-test
+if [ "$Configuration" != "Coverage" ]; then
+ cd $WORKSPACE;build/kodi-test --gtest_output=xml:gtestresults.xml
+else
+ cd $WORKSPACE/build;GTEST_OUTPUT="xml:$WORKSPACE/gtestresults.xml" make coverage
+fi
+
+awk '{ if ($1 == "<testcase" && match($0, "notrun")) print substr($0,0,length($0)-2) "><skipped/></testcase>"; else print $0;}' gtestresults.xml > gtestresults-skipped.xml
+rm gtestresults.xml
+mv gtestresults-skipped.xml gtestresults.xml