Skip to content
This repository
Browse code

[jenkins] - welcome jenkins support for osx/ios/atv2/android to mainl…

…ine :o) - add buildsteps for usage with jenkins
  • Loading branch information...
commit 6db72f913d66f3d5fd21129fc0c60958e72a4733 1 parent 16c7ddf
Memphiz authored March 24, 2013

Showing 37 changed files with 448 additions and 0 deletions. Show diff stats Hide diff stats

  1. 15  tools/buildsteps/README
  2. 15  tools/buildsteps/android/configure-depends
  3. 5  tools/buildsteps/android/configure-xbmc
  4. 9  tools/buildsteps/android/make-depends
  5. 5  tools/buildsteps/android/make-xbmc
  6. 10  tools/buildsteps/android/package
  7. 13  tools/buildsteps/android/prepare-depends
  8. 5  tools/buildsteps/android/prepare-xbmc
  9. 13  tools/buildsteps/atv2/configure-depends
  10. 5  tools/buildsteps/atv2/configure-xbmc
  11. 9  tools/buildsteps/atv2/make-depends
  12. 8  tools/buildsteps/atv2/make-xbmc
  13. 13  tools/buildsteps/atv2/package
  14. 14  tools/buildsteps/atv2/prepare-depends
  15. 6  tools/buildsteps/atv2/prepare-xbmc
  16. 112  tools/buildsteps/defaultenv
  17. 12  tools/buildsteps/ios/configure-depends
  18. 5  tools/buildsteps/ios/configure-xbmc
  19. 9  tools/buildsteps/ios/make-depends
  20. 9  tools/buildsteps/ios/make-xbmc
  21. 13  tools/buildsteps/ios/package
  22. 13  tools/buildsteps/ios/prepare-depends
  23. 6  tools/buildsteps/ios/prepare-xbmc
  24. 12  tools/buildsteps/osx32/configure-depends
  25. 5  tools/buildsteps/osx32/configure-xbmc
  26. 9  tools/buildsteps/osx32/make-depends
  27. 8  tools/buildsteps/osx32/make-xbmc
  28. 10  tools/buildsteps/osx32/package
  29. 13  tools/buildsteps/osx32/prepare-depends
  30. 5  tools/buildsteps/osx32/prepare-xbmc
  31. 12  tools/buildsteps/osx64/configure-depends
  32. 5  tools/buildsteps/osx64/configure-xbmc
  33. 9  tools/buildsteps/osx64/make-depends
  34. 8  tools/buildsteps/osx64/make-xbmc
  35. 10  tools/buildsteps/osx64/package
  36. 13  tools/buildsteps/osx64/prepare-depends
  37. 5  tools/buildsteps/osx64/prepare-xbmc
15  tools/buildsteps/README
... ...
@@ -0,0 +1,15 @@
  1
+This folder holds all the platform dependend build scripts which are called from the jenkins buildserver.
  2
+
  3
+The following ENV variables are available on all scripts:
  4
+
  5
+$WORKSPACE - the folder where jenkins checked out the source - XBMC_HOME so to say
  6
+$Configuration - its either Debug, Release or Default and should be taken into account if possible (Defaults select platform default from <platformdir>/startbuild)
  7
+$SDK_VERSION - the requested SDK_VERSION to be used for building. If "Default" is passed it uses the platform default from <platformdir>/startbuild
  8
+$BUILDTHREADS - number of threads which can be used when building (e.x. use it for make -j$BUILDTHREADS)
  9
+$XBMC_DEPENDS_ROOT - root for installing the xbmc build depends and toolchain helpers. If "Default" is passed it uses the platform default from <platformdir>/startbuild
  10
+
  11
+Additional ENV variables might be specified by the buildnodes. For android buildslaves these are:
  12
+
  13
+TOOLCHAIN - the used toolchain dir
  14
+NDK_PATH  - the path to the android native ndk
  15
+SDK_PATH  - the path to the android sdk
15  tools/buildsteps/android/configure-depends
... ...
@@ -0,0 +1,15 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=android
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;./configure \
  8
+    --with-tarballs=/opt/xbmc-tarballs \
  9
+    --host=arm-linux-androideabi \
  10
+    --with-sdk-path=$SDK_PATH \
  11
+    --with-ndk=$NDK_PATH \
  12
+    --with-sdk=android-$SDK_VERSION \
  13
+    --with-toolchain=$TOOLCHAIN \
  14
+    --prefix=$XBMC_DEPENDS_ROOT
  15
+fi
5  tools/buildsteps/android/configure-xbmc
... ...
@@ -0,0 +1,5 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=android
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+make -C $WORKSPACE/tools/depends/target/xbmc
9  tools/buildsteps/android/make-depends
... ...
@@ -0,0 +1,9 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=android
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS && tagSuccessFulBuild .
  8
+fi
  9
+
5  tools/buildsteps/android/make-xbmc
... ...
@@ -0,0 +1,5 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=android
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+cd $WORKSPACE;make -j$BUILDTHREADS
10  tools/buildsteps/android/package
... ...
@@ -0,0 +1,10 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=android
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+cd $WORKSPACE;make apk
  6
+
  7
+#rename for upload
  8
+#e.x. xbmc-20130314-8c2fb31-Frodo-armeabi-v7a.apk
  9
+UPLOAD_FILENAME="xbmc-$(getBuildRevDateStr)-armeabi-v7a.apk"
  10
+mv xbmcapp-armeabi-*.apk $UPLOAD_FILENAME
13  tools/buildsteps/android/prepare-depends
... ...
@@ -0,0 +1,13 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=android
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#clean without depends for skipping depends build if possible
  6
+cd $WORKSPACE;git clean -xfd -e "tools/depends"
  7
+
  8
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  9
+then
  10
+  #clean up the rest too
  11
+  cd $WORKSPACE;git clean -xfd
  12
+  cd $WORKSPACE/tools/depends/;./bootstrap
  13
+fi
5  tools/buildsteps/android/prepare-xbmc
... ...
@@ -0,0 +1,5 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=android
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#nothing on android
13  tools/buildsteps/atv2/configure-depends
... ...
@@ -0,0 +1,13 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=atv2
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;./configure \
  8
+    --with-tarballs=/Users/Shared/xbmc-depends/tarballs \
  9
+    --host=arm-apple-darwin \
  10
+    --with-sdk=$SDK_VERSION \
  11
+    --prefix=$XBMC_DEPENDS_ROOT
  12
+fi
  13
+
5  tools/buildsteps/atv2/configure-xbmc
... ...
@@ -0,0 +1,5 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=atv2
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+make -C $WORKSPACE/tools/depends/target/xbmc
9  tools/buildsteps/atv2/make-depends
... ...
@@ -0,0 +1,9 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=atv2
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS && tagSuccessFulBuild .
  8
+fi
  9
+
8  tools/buildsteps/atv2/make-xbmc
... ...
@@ -0,0 +1,8 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=atv2
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+cd $WORKSPACE;make -j$BUILDTHREADS xcode_depends
  6
+cd $WORKSPACE;xcodebuild -project XBMC-ATV2.xcodeproj -target XBMC -configuration $Configuration build \
  7
+  ONLY_ACTIVE_ARCH=YES ARCHS=armv7 VALID_ARCHS=armv7 IPHONEOS_DEPLOYMENT_TARGET=4.1 \
  8
+  SDKROOT=iphoneos$SDK_VERSION XBMC_DEPENDS_ROOT=$XBMC_DEPENDS_ROOT
13  tools/buildsteps/atv2/package
... ...
@@ -0,0 +1,13 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=atv2
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#ensure that dpkg tools are used from our toolchain
  6
+export PATH=$XBMC_DEPENDS_ROOT/buildtools-native/bin/:$PATH
  7
+
  8
+cd $WORKSPACE/tools/darwin/packaging/xbmc-atv2/;./mkdeb-xbmc-atv2.sh $Configuration
  9
+
  10
+#rename for upload
  11
+#e.x. xbmc-20130314-8c2fb31-Frodo-atv2.deb
  12
+UPLOAD_FILENAME="xbmc-$(getBuildRevDateStr)-atv2.deb"
  13
+mv *.deb $UPLOAD_FILENAME
14  tools/buildsteps/atv2/prepare-depends
... ...
@@ -0,0 +1,14 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=atv2
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#clean without depends for skipping depends build if possible
  6
+cd $WORKSPACE;git clean -xfd -e "tools/depends"
  7
+
  8
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  9
+then
  10
+  #clean up the rest too
  11
+  cd $WORKSPACE;git clean -xfd
  12
+  cd $WORKSPACE/tools/depends/;./bootstrap
  13
+fi
  14
+
6  tools/buildsteps/atv2/prepare-xbmc
... ...
@@ -0,0 +1,6 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=atv2
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#nothing on ios
  6
+
112  tools/buildsteps/defaultenv
... ...
@@ -0,0 +1,112 @@
  1
+BUILDTHREADS=${BUILDTHREADS:-1}
  2
+SDK_VERSION=${SDK_VERSION:-"Default"}
  3
+Configuration=${Configuration:-"Default"}
  4
+XBMC_DEPENDS_ROOT=${XBMC_DEPENDS_ROOT:-"Default"}
  5
+PATH_CHANGE_REV_FILENAME=".last_success_revision"
  6
+
  7
+#set platform defaults
  8
+#$XBMC_PLATFORM_DIR matches the platform subdirs!
  9
+case $XBMC_PLATFORM_DIR in
  10
+  atv2)
  11
+    DEFAULT_SDK_VERSION=4.2
  12
+    DEFAULT_XBMC_DEPENDS_ROOT=$WORKSPACE/tools/depends/xbmc-depends
  13
+    DEFAULT_CONFIGURATION="Debug"
  14
+    ;;
  15
+
  16
+  ios)
  17
+    DEFAULT_SDK_VERSION=4.2
  18
+    DEFAULT_XBMC_DEPENDS_ROOT=$WORKSPACE/tools/depends/xbmc-depends
  19
+    DEFAULT_CONFIGURATION="Debug"
  20
+    ;;
  21
+
  22
+  osx32)
  23
+    DEFAULT_SDK_VERSION=10.8
  24
+    DEFAULT_XBMC_DEPENDS_ROOT=$WORKSPACE/tools/depends/xbmc-depends
  25
+    DEFAULT_CONFIGURATION="Debug"
  26
+    ;;
  27
+
  28
+  osx64)
  29
+    DEFAULT_SDK_VERSION=10.8
  30
+    DEFAULT_XBMC_DEPENDS_ROOT=$WORKSPACE/tools/depends/xbmc-depends
  31
+    DEFAULT_CONFIGURATION="Debug"
  32
+    ;;
  33
+  android)
  34
+    DEFAULT_SDK_VERSION=10
  35
+    DEFAULT_XBMC_DEPENDS_ROOT=$WORKSPACE/tools/depends/xbmc-depends
  36
+    DEFAULT_CONFIGURATION="Debug"
  37
+esac
  38
+
  39
+if [ $SDK_VERSION == "Default" ]
  40
+then
  41
+  SDK_VERSION=$DEFAULT_SDK_VERSION
  42
+fi
  43
+
  44
+if [ $XBMC_DEPENDS_ROOT == "Default" ]
  45
+then
  46
+  XBMC_DEPENDS_ROOT=$DEFAULT_XBMC_DEPENDS_ROOT
  47
+fi
  48
+
  49
+if [ $Configuration == "Default" ]
  50
+then
  51
+  Configuration=$DEFAULT_CONFIGURATION
  52
+fi
  53
+
  54
+#clamp release builds to 1 thread only
  55
+if [ $Configuration == "Release" ]
  56
+then
  57
+  BUILDTHREADS=1
  58
+fi
  59
+
  60
+#helper functions
  61
+
  62
+#hash a dir based on the git revision, SDK_PATH, NDK_PATH, SDK_VERSION, TOOLCHAIN and XBMC_DEPENDS_ROOT
  63
+function getBuildHash ()
  64
+{
  65
+  local checkPath
  66
+  checkPath="$1"
  67
+  local hashStr
  68
+  hashStr="$(git rev-list HEAD --max-count=1  -- $checkPath)"
  69
+  hashStr="$hashStr $SDK_PATH $NDK_PATH $SDK_VERSION $TOOLCHAIN $XBMC_DEPENDS_ROOT"
  70
+  echo $hashStr
  71
+}
  72
+
  73
+function pathChanged ()
  74
+{
  75
+  local ret
  76
+  local checkPath
  77
+  ret="0"
  78
+  #no optims in release builds!
  79
+  if [ $Configuration == "Release" ]
  80
+  then
  81
+    echo "1"
  82
+    return
  83
+  fi
  84
+
  85
+  checkPath="$1"
  86
+  if [ -e $checkPath/$PATH_CHANGE_REV_FILENAME ]
  87
+  then
  88
+    if [ "$(cat $checkPath/$PATH_CHANGE_REV_FILENAME)" != "$(getBuildHash $WORKSPACE/tools/depends)" ]
  89
+    then
  90
+      ret="1"
  91
+    fi
  92
+  else
  93
+    ret="1"
  94
+  fi
  95
+  
  96
+  echo $ret
  97
+}
  98
+
  99
+function tagSuccessFulBuild ()
  100
+{
  101
+  local checkPath
  102
+  checkPath="$1"
  103
+  echo "$(getBuildHash $checkPath)" > $checkPath/$PATH_CHANGE_REV_FILENAME
  104
+}
  105
+
  106
+function getBuildRevDateStr ()
  107
+{
  108
+  git --no-pager log --abbrev=7 -n 1 --pretty=format:"%h %ci" HEAD | awk '{gsub("-", "");print $2"-"$1}' 2>/dev/null
  109
+  if [ "$?" != "0" ]; then
  110
+    echo "Unknown"
  111
+  fi
  112
+}
12  tools/buildsteps/ios/configure-depends
... ...
@@ -0,0 +1,12 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=ios
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;./configure \
  8
+    --with-tarballs=/Users/Shared/xbmc-depends/tarballs \
  9
+    --host=arm-apple-darwin \
  10
+    --with-sdk=$SDK_VERSION \
  11
+    --prefix=$XBMC_DEPENDS_ROOT
  12
+fi
5  tools/buildsteps/ios/configure-xbmc
... ...
@@ -0,0 +1,5 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=ios
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+make -C $WORKSPACE/tools/depends/target/xbmc
9  tools/buildsteps/ios/make-depends
... ...
@@ -0,0 +1,9 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=ios
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS && tagSuccessFulBuild .
  8
+fi
  9
+
9  tools/buildsteps/ios/make-xbmc
... ...
@@ -0,0 +1,9 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=ios
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+cd $WORKSPACE;make -j$BUILDTHREADS xcode_depends
  6
+cd $WORKSPACE;xcodebuild -project XBMC-IOS.xcodeproj -target XBMC -configuration $Configuration build \
  7
+  ONLY_ACTIVE_ARCH=YES ARCHS=armv7 VALID_ARCHS=armv7 IPHONEOS_DEPLOYMENT_TARGET=4.1 \
  8
+  SDKROOT=iphoneos$SDK_VERSION XBMC_DEPENDS_ROOT=$XBMC_DEPENDS_ROOT
  9
+ 
13  tools/buildsteps/ios/package
... ...
@@ -0,0 +1,13 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=ios
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#ensure that dpkg tools are used from our toolchain
  6
+export PATH=$XBMC_DEPENDS_ROOT/buildtools-native/bin/:$PATH
  7
+
  8
+cd $WORKSPACE/tools/darwin/packaging/xbmc-ios/;./mkdeb-xbmc-ios.sh $Configuration
  9
+
  10
+#rename for upload
  11
+#e.x. xbmc-20130314-8c2fb31-Frodo-ios.deb
  12
+UPLOAD_FILENAME="xbmc-$(getBuildRevDateStr)-ios.deb"
  13
+mv *.deb $UPLOAD_FILENAME
13  tools/buildsteps/ios/prepare-depends
... ...
@@ -0,0 +1,13 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=ios
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#clean without depends for skipping depends build if possible
  6
+cd $WORKSPACE;git clean -xfd -e "tools/depends"
  7
+
  8
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  9
+then
  10
+  #clean up the rest too
  11
+  cd $WORKSPACE;git clean -xfd
  12
+  cd $WORKSPACE/tools/depends/;./bootstrap
  13
+fi
6  tools/buildsteps/ios/prepare-xbmc
... ...
@@ -0,0 +1,6 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=ios
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#nothing on ios
  6
+
12  tools/buildsteps/osx32/configure-depends
... ...
@@ -0,0 +1,12 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx32
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;./configure \
  8
+    --with-tarballs=/Users/Shared/xbmc-depends/tarballs \
  9
+    --host=i386-apple-darwin \
  10
+    --with-sdk=$SDK_VERSION \
  11
+    --prefix=$XBMC_DEPENDS_ROOT
  12
+fi
5  tools/buildsteps/osx32/configure-xbmc
... ...
@@ -0,0 +1,5 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx32
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+make -C $WORKSPACE/tools/depends/target/xbmc
9  tools/buildsteps/osx32/make-depends
... ...
@@ -0,0 +1,9 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx32
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS && tagSuccessFulBuild .
  8
+fi
  9
+
8  tools/buildsteps/osx32/make-xbmc
... ...
@@ -0,0 +1,8 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx32
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+cd $WORKSPACE;make -j$BUILDTHREADS xcode_depends
  6
+
  7
+cd $WORKSPACE;xcodebuild -sdk macosx$SDK_VERSION -project XBMC.xcodeproj -target XBMC.app ONLY_ACTIVE_ARCH=YES \
  8
+   ARCHS=i386 VALID_ARCHS=i386 XBMC_DEPENDS_ROOT=$XBMC_DEPENDS_ROOT -configuration $Configuration build
10  tools/buildsteps/osx32/package
... ...
@@ -0,0 +1,10 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx32
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+cd $WORKSPACE/tools/darwin/packaging/xbmc-osx/;./mkdmg-xbmc-osx.sh $Configuration
  6
+
  7
+#rename for upload
  8
+#e.x. xbmc-20130314-8c2fb31-Frodo-i386.dmg 
  9
+UPLOAD_FILENAME="xbmc-$(getBuildRevDateStr)-i386.dmg"
  10
+mv *.dmg $UPLOAD_FILENAME
13  tools/buildsteps/osx32/prepare-depends
... ...
@@ -0,0 +1,13 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx32
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#clean without depends for skipping depends build if possible
  6
+cd $WORKSPACE;git clean -xfd -e "tools/depends"
  7
+
  8
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  9
+then
  10
+  #clean up the rest too
  11
+  cd $WORKSPACE;git clean -xfd
  12
+  cd $WORKSPACE/tools/depends/;./bootstrap
  13
+fi
5  tools/buildsteps/osx32/prepare-xbmc
... ...
@@ -0,0 +1,5 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx32
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#nothing on osx
12  tools/buildsteps/osx64/configure-depends
... ...
@@ -0,0 +1,12 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx64
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;./configure \
  8
+    --with-tarballs=/Users/Shared/xbmc-depends/tarballs \
  9
+    --host=x86_64-apple-darwin \
  10
+    --with-sdk=$SDK_VERSION \
  11
+    --prefix=$XBMC_DEPENDS_ROOT
  12
+fi
5  tools/buildsteps/osx64/configure-xbmc
... ...
@@ -0,0 +1,5 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx64
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+make -C $WORKSPACE/tools/depends/target/xbmc
9  tools/buildsteps/osx64/make-depends
... ...
@@ -0,0 +1,9 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx64
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  6
+then
  7
+  cd $WORKSPACE/tools/depends;make -j $BUILDTHREADS && tagSuccessFulBuild .
  8
+fi
  9
+
8  tools/buildsteps/osx64/make-xbmc
... ...
@@ -0,0 +1,8 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx64
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+cd $WORKSPACE;make -j$BUILDTHREADS xcode_depends
  6
+
  7
+cd $WORKSPACE;xcodebuild -sdk macosx$SDK_VERSION -project XBMC.xcodeproj -target XBMC.app ONLY_ACTIVE_ARCH=YES \
  8
+   ARCHS=x86_64 VALID_ARCHS=x86_64 XBMC_DEPENDS_ROOT=$XBMC_DEPENDS_ROOT -configuration $Configuration build
10  tools/buildsteps/osx64/package
... ...
@@ -0,0 +1,10 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx64
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+cd $WORKSPACE/tools/darwin/packaging/xbmc-osx/;./mkdmg-xbmc-osx.sh $Configuration
  6
+
  7
+#rename for upload
  8
+#e.x. xbmc-20130314-8c2fb31-Frodo-x86_64.dmg 
  9
+UPLOAD_FILENAME="xbmc-$(getBuildRevDateStr)-x86_64.dmg"
  10
+mv *.dmg $UPLOAD_FILENAME
13  tools/buildsteps/osx64/prepare-depends
... ...
@@ -0,0 +1,13 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx64
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#clean without depends for skipping depends build if possible
  6
+cd $WORKSPACE;git clean -xfd -e "tools/depends"
  7
+
  8
+if [ "$(pathChanged $WORKSPACE/tools/depends)" == "1" ]
  9
+then
  10
+  #clean up the rest too
  11
+  cd $WORKSPACE;git clean -xfd
  12
+  cd $WORKSPACE/tools/depends/;./bootstrap
  13
+fi
5  tools/buildsteps/osx64/prepare-xbmc
... ...
@@ -0,0 +1,5 @@
  1
+WORKSPACE=${WORKSPACE:-$( cd $(dirname $0)/../../.. ; pwd -P )}
  2
+XBMC_PLATFORM_DIR=osx64
  3
+. $WORKSPACE/tools/buildsteps/defaultenv
  4
+
  5
+#nothing on osx

0 notes on commit 6db72f9

Please sign in to comment.
Something went wrong with that request. Please try again.