diff --git a/.travis.yml b/.travis.yml index 83722930..039e194a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -129,7 +129,7 @@ jobs: - INSTALL_DIR="sfizz-${TRAVIS_BRANCH}-${TRAVIS_OS_NAME}-${TRAVIS_CPU_ARCH}" install: .travis/install_osx.sh script: .travis/script_osx.sh - after_success: .travis/prepare_tarball.sh + after_success: .travis/prepare_osx.sh - name: "MOD devices arm" stage: "Build" diff --git a/.travis/install_osx.sh b/.travis/install_osx.sh index c04bc695..63e882a8 100755 --- a/.travis/install_osx.sh +++ b/.travis/install_osx.sh @@ -6,3 +6,4 @@ sudo ln -s /usr/local /opt/local brew update brew upgrade cmake brew install jack +brew install dylibbundler diff --git a/.travis/prepare_osx.sh b/.travis/prepare_osx.sh new file mode 100755 index 00000000..955d40e3 --- /dev/null +++ b/.travis/prepare_osx.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +set -ex + +test -z "$CONTAINER" + +if ! [ -z "$CONTAINER" ]; then + . .travis/docker_container.sh +else + . .travis/no_container.sh +fi + +cd build +buildenv make DESTDIR=${PWD}/${INSTALL_DIR} install + +# Bundle LV2 dependencies +cd "${INSTALL_DIR}"/Library/Audio/Plug-Ins/LV2 +dylibbundler -od -b -x sfizz.lv2/sfizz.so -d sfizz.lv2/libs/ -p @loader_path/libs/ +cd "${TRAVIS_BUILD_DIR}/build" + +# Bundle VST3 dependencies +cd "${INSTALL_DIR}"/Library/Audio/Plug-Ins/VST3 +dylibbundler -od -b -x sfizz.vst3/Contents/MacOS/sfizz -d sfizz.vst3/Contents/libs/ -p @loader_path/../libs/ +cd "${TRAVIS_BUILD_DIR}/build" + +# +tar -zcvf "${INSTALL_DIR}.tar.gz" ${INSTALL_DIR} + +# Only release a tarball if there is a tag +if [[ ${TRAVIS_TAG} != "" ]]; then + mv "${INSTALL_DIR}.tar.gz" ${TRAVIS_BUILD_DIR} +fi + +cd "${TRAVIS_BUILD_DIR}" diff --git a/.travis/prepare_tarball.sh b/.travis/prepare_tarball.sh index 001e235f..6e111406 100755 --- a/.travis/prepare_tarball.sh +++ b/.travis/prepare_tarball.sh @@ -8,13 +8,13 @@ else . .travis/no_container.sh fi -# Do not prepare a tarball without a tag -if [[ ${TRAVIS_TAG} == "" ]]; then - exit 0 -fi - cd build buildenv make DESTDIR=${PWD}/${INSTALL_DIR} install tar -zcvf "${INSTALL_DIR}.tar.gz" ${INSTALL_DIR} -mv "${INSTALL_DIR}.tar.gz" ${TRAVIS_BUILD_DIR} + +# Only release a tarball if there is a tag +if [[ ${TRAVIS_TAG} != "" ]]; then + mv "${INSTALL_DIR}.tar.gz" ${TRAVIS_BUILD_DIR} +fi + cd .. diff --git a/.travis/script_osx.sh b/.travis/script_osx.sh index 557259a6..98bb0ca9 100755 --- a/.travis/script_osx.sh +++ b/.travis/script_osx.sh @@ -6,6 +6,8 @@ cmake -DCMAKE_BUILD_TYPE=Release \ -DSFIZZ_VST=ON \ -DSFIZZ_TESTS=OFF \ -DCMAKE_CXX_STANDARD=17 \ + -DLV2PLUGIN_INSTALL_DIR=/Library/Audio/Plug-Ins/LV2 \ + -DVSTPLUGIN_INSTALL_DIR=/Library/Audio/Plug-Ins/VST3 \ .. make -j$(sysctl -n hw.ncpu) # Xcode not currently supported, see https://gitlab.kitware.com/cmake/cmake/issues/18088