Merge branch 'develop' of https://github.com/sfztools/sfizz into develop

This commit is contained in:
Paul Ferrand 2019-12-23 00:18:53 +01:00
commit a5d1434943
11 changed files with 81 additions and 58 deletions

View file

@ -13,6 +13,6 @@ indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true
[*.{ttl,ttl.in,yml}]
[*.{ttl,ttl.in,sh,yml}]
indent_size = 2
indent_style = space

1
.gitignore vendored
View file

@ -30,3 +30,4 @@ node_modules/
.sass-cache
*.lock
*.sublime-*
*.code-*

View file

@ -1,48 +1,65 @@
language: cpp
env:
global:
- INSTALL_DIR="sfizz-$(git describe --tags)-${TRAVIS_OS_NAME}-${TRAVIS_CPU_ARCH}"
matrix:
jobs:
include:
- os: linux
- os: linux
arch: amd64
dist: bionic
env: MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"
addons:
apt:
sources:
- sourceline: 'ppa:ubuntu-toolchain-r/test'
packages:
- gcc-8
- g++-8
- doxygen
env:
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"
- os: linux
arch: arm64
dist: bionic
env: MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"
addons:
apt:
sources:
- sourceline: 'ppa:ubuntu-toolchain-r/test'
packages:
- gcc-8
- g++-8
# - os: osx
# osx_image: xcode10.1
before_install:
- sh ${TRAVIS_BUILD_DIR}/.travis/before_install.sh
- bash ${TRAVIS_BUILD_DIR}/.travis/before_install.sh
install:
- sh ${TRAVIS_BUILD_DIR}/.travis/install.sh
- bash ${TRAVIS_BUILD_DIR}/.travis/install.sh
script:
- sh ${TRAVIS_BUILD_DIR}/.travis/script.sh
- bash ${TRAVIS_BUILD_DIR}/.travis/script.sh
after_failure:
- sh ${TRAVIS_BUILD_DIR}/.travis/discord_webhook.sh failure
- bash ${TRAVIS_BUILD_DIR}/.travis/discord_webhook.sh failure
after_success:
- sh ${TRAVIS_BUILD_DIR}/.travis/discord_webhook.sh success
- sh ${TRAVIS_BUILD_DIR}/.travis/update_dox.sh
- sh ${TRAVIS_BUILD_DIR}/.travis/deploy.sh
- bash ${TRAVIS_BUILD_DIR}/.travis/discord_webhook.sh success
- bash ${TRAVIS_BUILD_DIR}/.travis/update_dox.sh
- bash ${TRAVIS_BUILD_DIR}/.travis/after_success.sh
deploy:
provider: releases
provider: releases
skip_cleanup: true
api_key:
secure: cc6IkdalZRb+lOWzPkubCUvTcP9lBwiNBBPkXWVmeX7YXkdQlsoVQ11bZThd1Go+5Lt+jGFtEqEjJ0L7GxpdatEeBMEK5HXl0QtHAybl9J4Ax7hKba8FSX5RqPFOuKixCob6eCqJRchT26qRsQE/WYMY8DmproEFGMBHk0K4HXDWEq0HP8dbWVx3KudvellCYszUrVQYb2s49sDiF8OwSog5TiqdBqO5PRcqyt2ySmHgqwBYq7XV0pb+DxcKJcc7/gCBpBN7nyEhl8gmKELypLF81l8xUDBUjRy1jjf0r33ISHpX1MWeWIN9YzSNL0aLPQvwynAQ7OeckFAIMABah2UuYcxdd4ioXduPTbprVYpSwIyyxkeafK2jxgxwoKWi9GJZ3yAUHNS/V7Gh5DsFb7C6QDqr5gOxOMtjHwjmHnxmD44SsugjSosVzirvQR+JbrSsPsmZThQjCvwG+7hO3JatX4BXA7bp9WtgsoMrCH61gCp2GogQVLvYpgRpVErKK8PMTkt71OouewTDqD5iwc3N/2pNWP3cXxpPegerjl4R2sY0sZ57WRfW8ts7akPyqJZa2uKpzpM0eXy35fZl6WoJSlIv3akCnzdtLtaWAptzfXhgRSlF/33+gZ3jRcSP7ca2YpUviuZ+KYk+uGfMh092CMRMjPv1Et5h7zYGD+o=
file: "$DEPLOYFILE"
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
repo: ${TRAVIS_REPO_SLUG}
tags: true
notifications:
@ -56,4 +73,4 @@ notifications:
- "%{commit_subject}"
- "Commit URL : https://github.com/%{repository_slug}/commit/%{commit}"
- "Change View : %{compare_url}"
- "Build Details : %{build_url}"
- "Build Details : %{build_url}"

13
.travis/after_success.sh Executable file
View file

@ -0,0 +1,13 @@
#!/bin/bash
set -ex
if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
cd build
make install
tar -zcvf "${INSTALL_DIR}.tar.gz" ${INSTALL_DIR}
mv "${INSTALL_DIR}.tar.gz" ${TRAVIS_BUILD_DIR}
cd ..
elif [[ ${TRAVIS_OS_NAME} == "osx" ]]; then
echo "TODO: xcodebuild make install or dmg image?"
fi

View file

@ -1,12 +1,19 @@
#!/bin/bash
set -e
set -ex
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
wget https://cmake.org/files/v3.13/cmake-3.13.0-Linux-x86_64.sh
sudo sh cmake-3.13.0-Linux-x86_64.sh --skip-license --prefix=/usr/local
cmake_dir="cmake-3.13.0-${TRAVIS_OS_NAME}-${TRAVIS_CPU_ARCH}"
cmake_arc="${cmake_dir}.tar.gz"
cmake_url="https://github.com/sfztools/cmake/releases/download/${TRAVIS_OS_NAME}/${cmake_arc}"
if [ ${TRAVIS_OS_NAME} = "linux" ]; then
wget -q ${cmake_url}
tar xzf ${cmake_arc}
cd ${TRAVIS_BUILD_DIR}/${cmake_dir}
sudo cp bin/* /usr/local/bin/
sudo cp -r share/* /usr/local/share/
export PATH="/usr/local/bin:$PATH" # FIXME
elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
elif [ ${TRAVIS_OS_NAME} = "osx" ]; then
sudo ln -s /usr/local /opt/local
brew update
brew upgrade cmake

View file

@ -1,19 +0,0 @@
#!/bin/bash
set -e
export VERSION=$(git describe --tags)
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
export DEPLOYFILE=Sfizz-$VERSION-x86_64.AppImage
wget -c -nv "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage"
chmod +x linuxdeploy-x86_64.AppImage
for size in 16 32 48 128 256; do dirname="sfizz/usr/share/icons/hicolor/${size}x${size}/apps"; mkdir -p $dirname; cp ./resources/icons/icon_${size}px.png ./${dirname}/sfizz.png; done
./linuxdeploy-x86_64.AppImage --appdir=sfizz --desktop-file=./resources/linux/sfizz.desktop --executable=./build/clients/sfizz_jack --output=appimage
elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
export DEPLOYFILE=sfizz-$VERSION.dmg
mkdir ./output
cp -r /build/* ./output/
cp ./resources/icons/icon.icns ./output/sfizz.app/Contents/Resources/
hdiutil create /tmp/tmp.dmg -ov -volname "sfizz-$VERSION" -fs HFS+ -srcfolder "./output/"
hdiutil convert /tmp/tmp.dmg -format UDZO -o ./$DEPLOYFILE;
fi

View file

@ -1,6 +1,6 @@
#!/bin/bash
set -e
set -ex
# Travis Webhook
wget https://raw.githubusercontent.com/DiscordHooks/travis-ci-discord-webhook/master/send.sh

View file

@ -1,7 +1,10 @@
#!/bin/bash
set -e
set -ex
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
sudo apt-get install libasound2-dev libjack-jackd2-dev libsndfile1-dev lv2-dev
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 100
gcc -v && g++ -v && cmake --version && /usr/local/bin/cmake --version && $SHELL --version
fi

View file

@ -1,17 +1,14 @@
#!/bin/bash
set -e
set -ex
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 100
gcc -v && g++ -v && cmake --version && /usr/local/bin/cmake --version && $SHELL --version
mkdir build && cd build
if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
mkdir -p build/${INSTALL_DIR} && cd build
# FIXME: lto error in build when enabled
/usr/local/bin/cmake -D CMAKE_BUILD_TYPE=Release -D ENABLE_LTO=OFF ..
/usr/local/bin/cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_LTO=OFF -DCMAKE_INSTALL_PREFIX:PATH=${PWD}/${INSTALL_DIR} ..
make -j$(nproc)
elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
elif [[ ${TRAVIS_OS_NAME} == "osx" ]]; then
mkdir build && cd build
cmake -D SFIZZ_JACK=OFF -G Xcode .. # FIXME: client build
xcodebuild -project sfizz.xcodeproj -alltargets -configuration Debug build

View file

@ -1,6 +1,9 @@
#!/bin/bash
set -e
set -x # No fail, we need to go back to the original branch at the end
# Build documentation only from Linux x86_64 builds
if [[ ${TRAVIS_CPU_ARCH} != "amd64" ]]; then exit 0; fi
doxygen Doxyfile
git fetch --depth=1 https://github.com/${TRAVIS_REPO_SLUG}.git refs/heads/gh-pages:refs/remotes/origin/gh-pages
@ -11,3 +14,4 @@ mv _api api
git add api && git commit -m "Travis build: ${TRAVIS_BUILD_NUMBER}"
git remote add origin-pages https://${GITHUB_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git > /dev/null 2>&1
git push --quiet --set-upstream origin-pages gh-pages
git checkout ${TRAVIS_BRANCH}

View file

@ -1,5 +1,5 @@
project(sfizz)
add_executable(sfizz_jack jack_client.cpp)
target_link_libraries(sfizz_jack sfizz::sfizz jack absl::flags_parse)
sfizz_enable_lto_if_needed(sfizz_jack)
# install(TARGETS sfizz_jack DESTINATION . OPTIONAL)
project (sfizz)
add_executable (sfizz_jack jack_client.cpp)
target_link_libraries (sfizz_jack sfizz::sfizz jack absl::flags_parse)
sfizz_enable_lto_if_needed (sfizz_jack)
install (TARGETS sfizz_jack DESTINATION ${CMAKE_INSTALL_BINDIR} OPTIONAL)