summaryrefslogtreecommitdiffstats
path: root/scripts/ios
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2018-04-23 21:59:28 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2018-04-24 15:45:44 -0700
commitc1459117671196a14565fbc903ef4b39cc298f6d (patch)
tree7708f377c9022ff75360cfc73fee195f3d541643 /scripts/ios
parent2cba24fa1aa9663bffc666a918a11b29f85ef2aa (diff)
downloadsubsurface-c1459117671196a14565fbc903ef4b39cc298f6d.tar.gz
Travis: add iOS build
Disable most warnings for iOS test build as otherwise the Travis log file will exceed 4MB and the build will fail. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'scripts/ios')
-rw-r--r--scripts/ios/after_success.sh3
-rw-r--r--scripts/ios/before_install.sh43
-rw-r--r--scripts/ios/travisbuild.sh25
3 files changed, 71 insertions, 0 deletions
diff --git a/scripts/ios/after_success.sh b/scripts/ios/after_success.sh
new file mode 100644
index 000000000..834bfb2f8
--- /dev/null
+++ b/scripts/ios/after_success.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+echo "Nothing to be done after build"
diff --git a/scripts/ios/before_install.sh b/scripts/ios/before_install.sh
new file mode 100644
index 000000000..51348796d
--- /dev/null
+++ b/scripts/ios/before_install.sh
@@ -0,0 +1,43 @@
+#!/bin/bash
+
+set -x
+set -e
+
+# try to get rid of the insane debug crap
+unalias -a
+unset -f rvm_debug
+unset -f cd
+unset -f pushd
+unset -f popd
+
+# Travis only pulls shallow repos. But that messes with git describe.
+# Sorry Travis, fetching the whole thing and the tags as well...
+git fetch --unshallow
+git pull --tags
+git describe
+
+git submodule init
+git submodule update --recursive
+
+pushd libdivecomputer
+autoreconf --install
+autoreconf --install
+popd
+
+# prep things so we can build for iOS
+# we have a custom built Qt some gives us just what we need
+
+pushd ${TRAVIS_BUILD_DIR}/..
+
+echo "Get custom Qt build and unpack it"
+curl --output ./Qt5.10.1-iOS.tar.xz \
+ https://storage.googleapis.com/travis-cache/Qt5.10.1-iOS.tar.xz
+tar xJf Qt5.10.1-iOS.tar.xz
+
+# our scripts assume that there are two convenience links - arguably this
+# should be fixed in the scripts, but...
+ln -s Qt5.10.1 Qt
+cd subsurface/packaging/ios
+ln -s ${TRAVIS_BUILD_DIR}/../Qt Qt
+
+popd
diff --git a/scripts/ios/travisbuild.sh b/scripts/ios/travisbuild.sh
new file mode 100644
index 000000000..960c36b18
--- /dev/null
+++ b/scripts/ios/travisbuild.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+set -x
+set -e
+
+# this gets executed by Travis when building for iOS
+# it gets started from inside the subsurface directory
+
+GITVERSION=$(git describe --abbrev=12 | sed -e 's/-g.*$// ; s/^v//')
+VERSION=$(echo $GITVERSION | sed -e 's/-/./')
+
+echo "preparing dependencies for Subsurface-mobile ${VERSION} for iOS"
+
+cd packaging/ios
+bash -x build.sh
+
+echo "now it's time to build Subsurface-mobile ${VERSION} for iOS"
+
+cd build-Subsurface-mobile-*for_iOS-Release
+
+sed -i.bak 's/-Wall/-Wno-everything/' Makefile
+
+make -j4
+
+# we don't even attempt to create an ipa on Travis