language: cpp os: linux dist: bionic cache: directories: - vst/download/ jobs: include: - name: "clang-tidy checks" stage: "Tests" addons: apt: packages: - clang-tidy - wget - unzip - libsndfile-dev install: .travis/download_vst_sdk.sh script: scripts/run_clang_tidy.sh - name: "Linux amd64 tests" arch: amd64 addons: apt: packages: - libjack-jackd2-dev - libsndfile1-dev install: .travis/download_cmake.sh script: .travis/script_test.sh - name: "Linux arm64 tests" arch: arm64 addons: apt: packages: - libjack-jackd2-dev - libsndfile1-dev install: .travis/download_cmake.sh script: .travis/script_test.sh - name: "macOS" stage: "Build" os: osx osx_image: xcode11.3 addons: homebrew: packages: - cmake - libsndfile - jack - dylibbundler env: - INSTALL_DIR="sfizz-${TRAVIS_BRANCH}-${TRAVIS_OS_NAME}-${TRAVIS_CPU_ARCH}" script: .travis/script_osx.sh after_success: .travis/prepare_osx.sh - name: "MOD devices arm" env: - CONTAINER=jpcima/mod-plugin-builder - CROSS_COMPILE=moddevices-arm - INSTALL_DIR="sfizz-${TRAVIS_BRANCH}-moddevices" before_install: .travis/before_install_moddevices.sh install: .travis/install_moddevices.sh script: .travis/script_moddevices.sh after_success: .travis/prepare_tarball.sh - name: "Windows mingw32" env: - CROSS_COMPILE=mingw32 - CONTAINER=archlinux - INSTALL_DIR="sfizz-${TRAVIS_BRANCH}-mingw32" before_install: .travis/before_install_mingw.sh install: .travis/install_mingw.sh script: .travis/script_mingw.sh after_success: .travis/prepare_tarball.sh - name: "Windows mingw64" env: - CROSS_COMPILE=mingw64 - CONTAINER=archlinux - INSTALL_DIR="sfizz-${TRAVIS_BRANCH}-mingw64" before_install: .travis/before_install_mingw.sh install: .travis/install_mingw.sh script: .travis/script_mingw.sh after_success: .travis/prepare_tarball.sh - name: "Linux amd64 library" arch: amd64 env: - INSTALL_DIR="sfizz-${TRAVIS_BRANCH}-${TRAVIS_OS_NAME}-${TRAVIS_CPU_ARCH}" addons: apt: packages: - libjack-jackd2-dev - libsndfile1-dev install: .travis/download_cmake.sh script: .travis/script_library.sh after_success: .travis/prepare_tarball.sh - name: "Linux arm64 library" arch: arm64 env: - INSTALL_DIR="sfizz-${TRAVIS_BRANCH}-${TRAVIS_OS_NAME}-${TRAVIS_CPU_ARCH}" addons: apt: packages: - libjack-jackd2-dev - libsndfile1-dev install: .travis/download_cmake.sh script: .travis/script_library.sh after_success: .travis/prepare_tarball.sh - name: "Linux arm64 static plugins" arch: arm64 env: - INSTALL_DIR="sfizz-plugins-${TRAVIS_BRANCH}-${TRAVIS_OS_NAME}-${TRAVIS_CPU_ARCH}" - ENABLE_VST_PLUGIN=OFF - ENABLE_LV2_UI=OFF addons: apt: packages: - libjack-jackd2-dev - libsndfile1-dev install: - .travis/download_cmake.sh - .travis/download_static_libs.sh script: .travis/script_plugins.sh after_success: .travis/prepare_tarball.sh - name: "Linux amd64 static plugins" env: - INSTALL_DIR="sfizz-plugins-${TRAVIS_BRANCH}-${TRAVIS_OS_NAME}-${TRAVIS_CPU_ARCH}" - ENABLE_VST_PLUGIN=ON - ENABLE_LV2_UI=ON addons: apt: packages: - libjack-jackd2-dev - libsndfile1-dev - libcairo2-dev - libfontconfig1-dev - libx11-xcb-dev - libxcb-util-dev - libxcb-cursor-dev - libxcb-xkb-dev - libxkbcommon-dev - libxkbcommon-x11-dev - libxcb-keysyms1-dev install: - .travis/download_cmake.sh - .travis/download_static_libs.sh script: .travis/script_plugins.sh after_success: .travis/prepare_tarball.sh - stage: "Deploy" name: "Source packaging" if: (tag =~ /^v?[0-9]/) AND (type = push) env: - INSTALL_DIR="sfizz-${TRAVIS_BRANCH}-src" addons: apt: packages: - python-pip install: sudo pip install git-archive-all script: git-archive-all --prefix="sfizz-${TRAVIS_BRANCH}/" -9 "${INSTALL_DIR}.tar.gz" - name: "Discord Webhook" install: skip script: bash ${TRAVIS_BUILD_DIR}/.travis/discord_webhook.sh success # Signal discord on failure after_failure: - bash ${TRAVIS_BUILD_DIR}/.travis/discord_webhook.sh failure deploy: edge: true provider: releases file: "${INSTALL_DIR}.tar.gz" token: secure: jBIMWMPva8OazC8Wnqc2vqATa3exjvGDGvejEu6fgwt/BMDkgJCsJ7gS3ITpYFuO0HoHtLGfTVrFcZIE+agGVRdRGRni5xZRp5Vuf9hvLf8hCTaxkS/HYoliYYPp9FLY6J4yq9mp/R/QyGrwgssQEjhYlI2GL4+lJzt750AcmYibnQo2AMe5SSOp3q8KdLBG1vca1o1BZWBhW/S7l2hA1aJ7y1ytwm0ETIdrTZHxgfz7bqdqQcw/Ytqjm1rgzty6iQKX3B/InaZNB6CqXy6FoGLf771lery8nWJbjTjKYD4QK2NelExldyp1vrdHGvknWguFk+8vlQ16Dt0+R7Byr/LOPRLTCf/T+IehMQGtVA9/gjrkH8LqHy9oVFB+33p11gGu3h6hvg7yB6z3sSck0u4FHjrlpNd5XmmCsKQVQ9vI1cPPkVkbMHIewc7uOu+bD6cmotFj1vJ9UYesvN6n4siyCiPOIhgV9++bjcyiLqX3DWP5UWyZ9/VT8bz5VcxUdJnEYtdNPx4x5pRW4081VUjIf2EmHhQTrjb1iz6FAGwNU/fpefA8x+bBxXP9MkFFgU0tbCDKw2y6o0GOXX82mZr/IB0/DIBg7UllTzCBKTuiJQV1prFPlZLc6V22H5ozAXHgu3E+qNjvHoMsoYjGssX3+AYHwu8isBINo/gGo6Y= on: repo: "sfztools/sfizz" tags: true condition: ${TRAVIS_TAG} =~ ^v?[0-9]