Travis: install from Homebrew instead of using a cache

Clearly something has changed here. When I first tried to use Homebrew on
Travis the update would take often so long that the build would time out. Now
it is nice and fast. So instead of wasting time with the cache let's just use
Homebrew directly.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2018-07-09 14:11:31 -07:00
parent 054f66bb1e
commit e928c829d3

View file

@ -16,38 +16,19 @@ git pull --tags
git describe git describe
# for our build we need an updated Homebrew with a few more components # for our build we need an updated Homebrew with a few more components
# installed. Since the Travis cache doesn't seem to work, we put it on # installed.
# our own server #
if curl --output /dev/null --silent --head --fail \ # in the past that was brutally slow, but now this is quite fast, so we
http://subsurface-divelog.org/downloads/TravisMacBuildCache.tar.xz # no longer bother with trying to cache the binaries - the raw download
then # takes longer than updating / installing from Homebrew
echo "Download Homebrew with all our packages and overwrite /usr/local" brew update
curl --output ${TRAVIS_BUILD_DIR}/TravisMacBuildCache.tar.xz \ echo "Updated Homebrew, now get our dependencies brewed"
https://storage.googleapis.com/travis-cache/TravisMacBuildCache.tar.xz brew install xz hidapi libusb libxml2 libxslt libzip openssl pkg-config libgit2 libssh2
# curl --output ${TRAVIS_BUILD_DIR}/TravisMacBuildCache.tar.xz \
# http://subsurface-divelog.org/downloads/TravisMacBuildCache.tar.xz
sudo tar xJfC ${TRAVIS_BUILD_DIR}/TravisMacBuildCache.tar.xz /tmp
sudo mv /usr/local /usr/local2
sudo mv /tmp/usr/local /usr/local
else
echo "Cannot find TravisMacBuildCache: recreate it by first updating Homebrew"
brew update
echo "Updated Homebrew, now get our dependencies brewed"
brew install xz hidapi libusb libxml2 libxslt libzip openssl pkg-config libgit2
tar cf - /usr/local | xz -v -z -0 --threads=0 > ${TRAVIS_BUILD_DIR}/TravisMacBuildCache.tar.xz
echo "Sending new cache to transfer.sh - move it into place, please"
ls -lh ${TRAVIS_BUILD_DIR}/TravisMacBuildCache.tar.xz
curl --upload-file ${TRAVIS_BUILD_DIR}/TravisMacBuildCache.tar.xz https://transfer.sh/TravisMacBuildCache.tar.xz
fi
# HACK - needs to be part of cache
brew install libssh2
# libdivecomputer uses the wrong include path for libusb and hidapi # libdivecomputer uses the wrong include path for libusb and hidapi
# the pkgconfig file for libusb/hidapi already gives the include path as # the pkgconfig file for libusb/hidapi already gives the include path as
# ../include/libusb-1.0 (../include/hidapi) yet libdivecomputer wants to use # ../include/libusb-1.0 (../include/hidapi) yet libdivecomputer wants to use
# include <libusb-1.0/libusb.h> and include <hidapi/hidapi.h> # include <libusb-1.0/libusb.h> and include <hidapi/hidapi.h>
sudo ln -s /usr/local/include/libusb-1.0 /usr/local/include/libusb-1.0/libusb-1.0 sudo ln -s /usr/local/include/libusb-1.0 /usr/local/include/libusb-1.0/libusb-1.0
sudo ln -s /usr/local/include/hidapi /usr/local/include/libusb-1.0/hidapi sudo ln -s /usr/local/include/hidapi /usr/local/include/libusb-1.0/hidapi