mirror of https://github.com/EspoTek/Labrador.git
100 lines
3.0 KiB
YAML
100 lines
3.0 KiB
YAML
language: cpp
|
|
|
|
branches:
|
|
only:
|
|
- master
|
|
|
|
matrix:
|
|
include:
|
|
- os: linux
|
|
dist: xenial
|
|
sudo: required
|
|
compiler: gcc
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- g++-7
|
|
- gcc-7
|
|
- libfftw3-dev
|
|
- qt5-default
|
|
- libusb-1.0-0-dev
|
|
env:
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
|
|
- os: osx
|
|
osx_image: xcode11.6
|
|
compiler: clang
|
|
|
|
|
|
before_install:
|
|
- eval "${MATRIX_EVAL}"
|
|
- |
|
|
# OSX
|
|
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
|
brew update
|
|
brew remove --force $(brew list --formula)
|
|
# Linux
|
|
elif [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
|
sudo add-apt-repository ppa:beineri/opt-qt-5.12.9-xenial -y
|
|
sudo apt-get update -qq
|
|
fi
|
|
|
|
install:
|
|
- |
|
|
# OSX
|
|
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
|
brew install fftw
|
|
brew install libomp
|
|
brew install qt5
|
|
brew link qt5 --force
|
|
brew install libusb
|
|
brew install wget
|
|
# Linux
|
|
elif [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
|
sudo apt-get -y install qt512base
|
|
source /opt/qt*/bin/qt*-env.sh
|
|
fi
|
|
|
|
script:
|
|
- |
|
|
# OSX
|
|
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
|
cd Desktop_Interface
|
|
qmake CONFIG+=release PREFIX=/usr DEFINES+=GIT_HASH_SHORT=$(git rev-parse --short HEAD)
|
|
make -j$(sysctl -n hw.ncpu)
|
|
mkdir -p bin/Labrador.app/Contents/MacOS/Resources
|
|
mkdir -p bin/Labrador.app/Contents/Frameworks
|
|
cp -r bin/firmware bin/Labrador.app/Contents/MacOS
|
|
cp -r bin/waveforms bin/Labrador.app/Contents/MacOS
|
|
cp resources/iconfile.icns bin/Labrador.app/Contents/Resources
|
|
cp resources/Info.plist bin/Labrador.app/Contents
|
|
macdeployqt bin/Labrador.app -dmg -libpath=build_mac/libdfuprog/lib/
|
|
#Linux
|
|
elif [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
|
cd Desktop_Interface
|
|
./make_appimage
|
|
fi
|
|
|
|
after_success:
|
|
- |
|
|
# OSX
|
|
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
|
export UPLOADTOOL_SUFFIX="macOS"
|
|
export UPLOADTOOL_BODY="EspoTek Labrador software for macOS 10.13 and later. If you are running an older version of macOS, please use the macOS Legacy build below."
|
|
wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh
|
|
bash upload.sh bin/Labrador.dmg
|
|
# Linux
|
|
elif [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
|
export UPLOADTOOL_SUFFIX="Linux"
|
|
find appdir -executable -type f -exec ldd {} \; | grep " => /usr" | cut -d " " -f 2-3 | sort | uniq
|
|
export UPLOADTOOL_BODY="EspoTek Labrador software for Linux. This should be compatible with all modern 64-bit distros. If you need help building it on an older or 32-bit system, please contact admin@espotek.com"
|
|
wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh
|
|
bash upload.sh EspoTek_Labrador*.AppImage
|
|
fi
|
|
|
|
branches:
|
|
except:
|
|
- # Do not build tags that we create when we upload to GitHub Releases
|
|
- /^(?i:continuous)/
|