diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/windows/after_success.sh | 15 | ||||
-rw-r--r-- | scripts/windows/before_install.sh | 79 | ||||
-rw-r--r-- | scripts/windows/travisbuild.sh | 12 |
3 files changed, 106 insertions, 0 deletions
diff --git a/scripts/windows/after_success.sh b/scripts/windows/after_success.sh new file mode 100644 index 000000000..9fd38c475 --- /dev/null +++ b/scripts/windows/after_success.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ ! -z $TRAVIS_BRANCH ] && [ "$TRAVIS_BRANCH" != "master" ] ; then + export UPLOADTOOL_SUFFIX=$TRAVIS_BRANCH +fi + +cd ${TRAVIS_BUILD_DIR}/../win32/subsurface + +echo "Submitting the folloing Windows installer for continuous build release:" +find . -name subsurface\*.exe + +# get and run the upload script +wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh +bash ./upload.sh subsurface*.exe + diff --git a/scripts/windows/before_install.sh b/scripts/windows/before_install.sh new file mode 100644 index 000000000..1d95206a0 --- /dev/null +++ b/scripts/windows/before_install.sh @@ -0,0 +1,79 @@ +#!/bin/bash + +set -x + +# 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 + +# grab our own custom MXE environment +cd ${TRAVIS_BUILD_DIR}/.. +echo "Downloading prebuilt MXE environment from Subsurface-divelog.org" +wget -q http://subsurface-divelog.org/downloads/mxe-994ad473.tar.xz +mkdir -p mxe +cd mxe +tar xJf ../mxe-994ad473.tar.xz + +# hack around path dependency - needs to be fixed +sudo mkdir -p /data/winqt551/ +sudo ln -s ${TRAVIS_BUILD_DIR}/../mxe /data/winqt551/mxe-current +ls -l /data/winqt551/mxe-current/usr + +# libdivecomputer uses the wrong include path for libusb +# the pkgconfig file for libusb already gives the include path as +# ../include/libusb-1.0 yet libdivecomputer wants to use +# include <libusb-1.0/libusb.h> +cd usr/i686-w64-mingw32.shared/include/libusb-1.0 +ln -s . libusb-1.0 +cd ${TRAVIS_BUILD_DIR}/.. + +# now set up our other dependencies + +CURRENT_LIBZIP="1.2.0" +CURRENT_HIDAPI="hidapi-0.7.0" +CURRENT_LIBUSB="v1.0.21" +CURRENT_LIBGIT2="v0.26.0" + + +#this will soon be a git submodule +echo "Get libdivecomputer" +cd ${TRAVIS_BUILD_DIR}/.. +git clone -b Subsurface-branch https://github.com/Subsurface-divelog/libdc.git libdivecomputer +cd libdivecomputer +if [ ! -f ./configure ] ; then + autoreconf --install . + autoreconf --install . # not a typo - somehow/sometimes libdivecomputer needs to run this twice. Don't ask. +fi + +echo "Get libusb" +cd ${TRAVIS_BUILD_DIR}/.. +git clone https://github.com/libusb/libusb +cd libusb +if ! git checkout $CURRENT_LIBUSB ; then + echo "Can't find the right tag in libusb - giving up" + exit 1 +fi + +echo "Get libgit2" +cd ${TRAVIS_BUILD_DIR}/.. +git clone https://github.com/libgit2/libgit2.git +cd libgit2 +if ! git checkout $CURRENT_LIBGIT2 ; then + echo "Can't find the right tag in libgit2 - giving up" + exit 1 +fi + +echo "Get googlemaps" +cd ${TRAVIS_BUILD_DIR}/.. +git clone https://github.com/Subsurface-divelog/googlemaps.git + +echo "Get Grantlee" +cd ${TRAVIS_BUILD_DIR}/.. +git clone https://github.com/steveire/grantlee.git +cd grantlee +if ! git checkout v5.0.0 ; then + echo "can't check out v5.0.0 of grantlee -- giving up" + exit 1 +fi diff --git a/scripts/windows/travisbuild.sh b/scripts/windows/travisbuild.sh new file mode 100644 index 000000000..e8455ea87 --- /dev/null +++ b/scripts/windows/travisbuild.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +# this gets executed by Travis when building an installer for Windows +# it gets started from inside the subsurface directory +# with all the other projects downloaded and installed in parralel to +# subsurface; in order to be compatible with the assumed layout, we +# need to create the secondary build directory +cd ${TRAVIS_BUILD_DIR}/.. +mkdir win32 +ls -l +cd win32 +bash -ex ${TRAVIS_BUILD_DIR}/packaging/windows/mxe-based-build.sh installer |