sudo: required language: C++ os: - linux - osx services: - docker compiler: - gcc - clang before_install: - if ! [ "$DEPLOY_KEY_ENC" == "" ]; then echo $DEPLOY_KEY_ENC | base64 --decode | openssl aes-256-cbc -K $encrypted_83a41ac424a6_key -iv $encrypted_83a41ac424a6_iv -out ~/.ssh/id_rsa -d ; chmod 600 ~/.ssh/id_rsa ; fi - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then docker build -f Dockerfile -t strawberry-build . || travis_terminate 1; docker run --name build -itd strawberry-build /bin/bash || travis_terminate 1; docker exec build git clone https://github.com/jonaski/strawberry; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then git fetch --unshallow || travis_terminate 1; git pull || travis_terminate 1; brew update || travis_terminate 1; brew unlink python || travis_terminate 1; brew install glib pkgconfig libffi protobuf protobuf-c qt gettext gnutls fftw || travis_terminate 1; brew install sqlite --with-fts || travis_terminate 1; brew install gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav || travis_terminate 1; brew install chromaprint || travis_terminate 1; brew install libcdio libmtp libimobiledevice libplist || travis_terminate 1; export Qt5_DIR=/usr/local/opt/qt5/lib/cmake || travis_terminate 1; export Qt5LinguistTools_DIR=/usr/local/Cellar/qt/$(ls /usr/local/Cellar/qt | head -n1)/lib/cmake/Qt5LinguistTools || travis_terminate 1; export PATH="/usr/local/opt/gettext/bin:$PATH" || travis_terminate 1; export PKG_CONFIG_PATH=/usr/local/Cellar/libffi/$(ls /usr/local/Cellar/libffi | head -n1)/lib/pkgconfig/:$PKG_CONFIG_PATH || travis_terminate 1; ls /usr/local/lib/gstreamer-1.0; fi before_script: - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then docker exec build cmake -Hstrawberry -Bbuild ; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then mkdir build; cd build; cmake .. -DUSE_BUNDLE=ON ; fi script: - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then docker exec build make -C build -j8 ; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then make -j8 || travis_terminate 1; sudo make install || travis_terminate 1; sudo ../dist/macos/macdeploy.py strawberry.app || travis_terminate 1; ../dist/macos/create-dmg.sh strawberry.app; fi after_success: - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ls -lh strawberry.dmg; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]] && [[ "$TRAVIS_BRANCH" == "master" ]] && [[ "$CC_FOR_BUILD" == "gcc" ]] && [ -f ~/.ssh/id_rsa ]; then rsync -e "ssh -o StrictHostKeyChecking=no" -va strawberry*.dmg travis@echoes.jkvinge.net:/home/travis/builds/macos; fi branches: except: - # Do not build tags that we create when we upload to GitHub Releases - /^(?i:continuous)$/