diff options
Diffstat (limited to 'tools/buildsteps/linux64')
-rwxr-xr-x | tools/buildsteps/linux64/configure-depends | 2 | ||||
-rwxr-xr-x | tools/buildsteps/linux64/make-binary-addons | 28 | ||||
-rwxr-xr-x | tools/buildsteps/linux64/make-depends | 4 | ||||
-rwxr-xr-x | tools/buildsteps/linux64/make-native-depends | 9 | ||||
-rwxr-xr-x | tools/buildsteps/linux64/prepare-depends | 6 | ||||
-rwxr-xr-x | tools/buildsteps/linux64/prepare-xbmc | 3 |
6 files changed, 46 insertions, 6 deletions
diff --git a/tools/buildsteps/linux64/configure-depends b/tools/buildsteps/linux64/configure-depends index 80e990b427..44edac1431 100755 --- a/tools/buildsteps/linux64/configure-depends +++ b/tools/buildsteps/linux64/configure-depends @@ -2,7 +2,7 @@ WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )} XBMC_PLATFORM_DIR=linux64 . $WORKSPACE/tools/buildsteps/defaultenv -if [ "$(rebuildDepends)" == "1" ] +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 diff --git a/tools/buildsteps/linux64/make-binary-addons b/tools/buildsteps/linux64/make-binary-addons new file mode 100755 index 0000000000..0f57b9ad15 --- /dev/null +++ b/tools/buildsteps/linux64/make-binary-addons @@ -0,0 +1,28 @@ +WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )} +XBMC_PLATFORM_DIR=linux64 +. $WORKSPACE/tools/buildsteps/defaultenv + +. $WORKSPACE/tools/buildsteps/$XBMC_PLATFORM_DIR/make-native-depends + +#clear the build failed file +rm -f $WORKSPACE/project/cmake/$FAILED_BUILD_FILENAME + +ALL_BINARY_ADDONS_BUILT="1" +#only build binary addons if something in the addons metadata changed +if [ "$(pathChanged $WORKSPACE/project/cmake)" == "1" ] +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 || ALL_BINARY_ADDONS_BUILT="0" + done +fi + +if [ "$ALL_BINARY_ADDONS_BUILT" == "1" ] +then + tagSuccessFulBuild $WORKSPACE/project/cmake +else + #mark the build failure in the filesystem but leave jenkins running + tagFailedBuild $WORKSPACE/project/cmake +fi diff --git a/tools/buildsteps/linux64/make-depends b/tools/buildsteps/linux64/make-depends index ef58af723f..1730a618c7 100755 --- a/tools/buildsteps/linux64/make-depends +++ b/tools/buildsteps/linux64/make-depends @@ -2,8 +2,8 @@ WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )} XBMC_PLATFORM_DIR=linux64 . $WORKSPACE/tools/buildsteps/defaultenv -if [ "$(rebuildDepends)" == "1" ] +if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ] then - cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS || make && tagSuccessFulDependsBuild + cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS || make && tagSuccessFulBuild $WORKSPACE/tools/depends fi diff --git a/tools/buildsteps/linux64/make-native-depends b/tools/buildsteps/linux64/make-native-depends new file mode 100755 index 0000000000..c05850f7f3 --- /dev/null +++ b/tools/buildsteps/linux64/make-native-depends @@ -0,0 +1,9 @@ +WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )} +XBMC_PLATFORM_DIR=linux64 +. $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/linux64/prepare-depends b/tools/buildsteps/linux64/prepare-depends index 31fde7a0f5..ae0a027a06 100755 --- a/tools/buildsteps/linux64/prepare-depends +++ b/tools/buildsteps/linux64/prepare-depends @@ -3,9 +3,11 @@ XBMC_PLATFORM_DIR=linux64 . $WORKSPACE/tools/buildsteps/defaultenv #clean without depends for skipping depends build if possible -cd $WORKSPACE;git clean -xfd -e "project/cmake/.last_success_revision" -e "tools/depends" +#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" ${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/linux64/prepare-xbmc b/tools/buildsteps/linux64/prepare-xbmc index f71fcf6fef..6d6db0fcb2 100755 --- a/tools/buildsteps/linux64/prepare-xbmc +++ b/tools/buildsteps/linux64/prepare-xbmc @@ -2,4 +2,5 @@ WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )} XBMC_PLATFORM_DIR=linux64 . $WORKSPACE/tools/buildsteps/defaultenv -#nothing on linux +#build binary addons before building xbmc... +. $WORKSPACE/tools/buildsteps/$XBMC_PLATFORM_DIR/make-binary-addons |