160 lines
5.5 KiB
YAML
160 lines
5.5 KiB
YAML
language: cpp
|
|
jobs:
|
|
include:
|
|
- stage: main test
|
|
os: linux
|
|
dist: xenial
|
|
sudo: required
|
|
compiler: clang
|
|
env:
|
|
- DEPLOY=false
|
|
- CCACHE_CPP2=yes
|
|
- RUN_TESTS=true
|
|
cache:
|
|
- ccache
|
|
directories:
|
|
- "$HOME/.sonar/cache"
|
|
- os: linux
|
|
dist: bionic
|
|
sudo: required
|
|
compiler: clang
|
|
env:
|
|
- DEPLOY=false
|
|
- CCACHE_CPP2=yes
|
|
- RUN_TESTS=true
|
|
cache:
|
|
- ccache
|
|
directories:
|
|
- "$HOME/.sonar/cache"
|
|
- os: osx
|
|
compiler: clang
|
|
env:
|
|
- DEPLOY=true
|
|
- LEGACY=false
|
|
osx_image: xcode11
|
|
- os: osx
|
|
compiler: clang
|
|
env:
|
|
- DEPLOY=true
|
|
- LEGACY=true
|
|
osx_image: xcode8
|
|
- stage: sonarcloud
|
|
os: linux
|
|
dist: xenial
|
|
sudo: required
|
|
compiler: clang
|
|
env:
|
|
- DEPLOY=false
|
|
- CCACHE_CPP2=yes
|
|
- RUN_TESTS=false
|
|
cache:
|
|
- ccache
|
|
directories:
|
|
- "$HOME/.sonar/cache"
|
|
before_install:
|
|
- |
|
|
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
|
sudo apt-get -qq update;
|
|
sudo apt-get install -y qtbase5-dev;
|
|
sudo apt-get install -y libqt5svg5-dev;
|
|
sudo apt-get install -y qt5-default;
|
|
sudo apt-get install -y qttools5-dev-tools;
|
|
sudo apt-get install -y libqt5xmlpatterns5-dev;
|
|
sudo apt-get install -y libqt5core5a;
|
|
sudo apt-get install -y libqt5gui5;
|
|
sudo apt-get install -y libqt5printsupport5;
|
|
sudo apt-get install -y libqt5svg5;
|
|
sudo apt-get install -y libqt5widgets5;
|
|
sudo apt-get install -y libqt5xml5;
|
|
sudo apt-get install -y libqt5xmlpatterns5;
|
|
sudo apt-get install -y xpdf;
|
|
sudo apt-get install -y xvfb;
|
|
wget https://launchpad.net/ubuntu/+archive/primary/+files/ccache_3.3.4-1_amd64.deb;
|
|
sudo dpkg -i ccache_3.3.4-1_amd64.deb;
|
|
else
|
|
brew update > /dev/null;
|
|
if [[ "$LEGACY" = false ]]; then
|
|
brew install qt5;
|
|
else
|
|
unset SSL_CERT_FILE;
|
|
brew install https://gist.githubusercontent.com/dismine/c3ac01de38e12edcf22d9e05791adf82/raw/20544ac8e68ef3523f92e15f432bbaf9a6aa2c22/qt5.rb;
|
|
fi
|
|
chmod -R 755 /usr/local/opt/qt5/*
|
|
fi
|
|
before_script:
|
|
- |
|
|
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
|
uname -a;
|
|
which qmake;
|
|
else
|
|
QTDIR="/usr/local/opt/qt5";
|
|
PATH="$QTDIR/bin:$PATH";
|
|
LDFLAGS=-L$QTDIR/lib;
|
|
CPPFLAGS=-I$QTDIR/include;
|
|
PKG_CONFIG_PATH=/usr/local/opt/qt5/lib/pkgconfig;
|
|
fi
|
|
- mkdir build
|
|
- cd build
|
|
- pwd
|
|
- qmake --version
|
|
- |
|
|
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
|
if [[ "$RUN_TESTS" == "true" ]]; then
|
|
qmake ../Valentina.pro -r -spec linux-clang CONFIG+=noDebugSymbols CONFIG+=checkWarnings;
|
|
else
|
|
qmake ../Valentina.pro -r -spec linux-clang CONFIG+=noDebugSymbols CONFIG+=checkWarnings CONFIG+=noTests;
|
|
fi
|
|
else
|
|
qmake ../Valentina.pro -r CONFIG+=noDebugSymbols CONFIG+=no_ccache CONFIG+=checkWarnings CONFIG+=noTests;
|
|
fi
|
|
script:
|
|
- "$CXX --version"
|
|
- |
|
|
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
|
|
if [[ "$RUN_TESTS" == "true" ]]; then
|
|
make -j$(nproc);
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"$TRAVIS_BUILD_DIR/build/src/libs/vpropertyexplorer/bin:$TRAVIS_BUILD_DIR/build/src/libs/qmuparser/bin";
|
|
xvfb-run -a make --silent check TESTARGS="-silent";
|
|
else
|
|
build-wrapper-linux-x86-64 --out-dir ../bw-outputs make -j$(nproc);
|
|
cd ..;
|
|
sonar-scanner;
|
|
fi
|
|
else
|
|
make -j1;
|
|
fi
|
|
notifications:
|
|
email:
|
|
recipients:
|
|
- dismine@gmail.com
|
|
on_success: change
|
|
on_failure: always
|
|
before_deploy:
|
|
- |
|
|
if [[ "$DEPLOY" == "true" ]]; then
|
|
../scripts/macfixqtdylibrpath.py $TRAVIS_BUILD_DIR/build/src/app/valentina/bin/Valentina.app;
|
|
if [[ "$LEGACY" = false ]]; then
|
|
tar -C $TRAVIS_BUILD_DIR/build/src/app/valentina/bin --exclude "*.DS_Store" -cvzf valentina-osx-${TRAVIS_COMMIT}.tar.gz Valentina.app/;
|
|
else
|
|
tar -C $TRAVIS_BUILD_DIR/build/src/app/valentina/bin --exclude "*.DS_Store" -cvzf valentina-osx-${TRAVIS_COMMIT}-legacy.tar.gz Valentina.app/;
|
|
fi
|
|
fi
|
|
deploy:
|
|
edge:
|
|
branch: v1.8.47
|
|
provider: bintray
|
|
skip_cleanup: true
|
|
file: "../share/bintray.json"
|
|
user: dismine
|
|
key:
|
|
secure: q9rcswyUyOqHAnxL0FLEQ8tdFkE21kNlv/TUpZgk0MbcsWRhBWaKJVv5kz6ABkjeLMB7c7eS7KfYRui0RFBKHI7ZnpzHBZN4f1aGd/rf9m5qaZdKFFBlpz4tXPHvXOVyXRwOReqFj7brAz6NB+oqJN8HFA4Q1y039yZOaHt28JkwYSDqS5lRvbwegYS8kaJupGZcm8NaNeB8tuXuZ/8DIQpZdVKmBUwpgpPAewCEqYP4z9DUpsmMZ5h63g7mJKm9di91cQr65eS24io6m1ZfAx8M6kTaKwyR5nz8a8bnqR48AAnbNoM8Xj1sgJqnT40DZKPCNr7KL3JSNRglKNgHVMFBOj0v9F5YxsDs8twWuqFVbywB+lNSHDyvGVgmS2+EdwKLQT0YBxYfIL1nh34ed7GffZZmBcAJGfxo8ieAMRgyylSyQIHJ0ZBl6X6DzOvLpvFlcva9yhqZfkx3P/Dgarqklnj3DdvzTDW2vxCT4yVLpMySlBXW2I3s7m8xpOjZbM7eZfMZkwjd/e8IYp8jxdQnxlzNe15mzxSXnZjLz3Rwi1qzhJZyZf4OGVxuQuR9oW+c5q55OOY5hImtZELlJyu1K0zKTd85g0D+WwKj4J30J0QWl1pxZlln59Q5cMmpyQ7sc8zN1WPoWAEyavwPrf4028TpEJqaUw/0cQGg9I4=
|
|
dry-run: false
|
|
on:
|
|
all_branches: true
|
|
condition: "$DEPLOY = true"
|
|
addons:
|
|
sonarcloud:
|
|
organization: default
|
|
token:
|
|
secure: nsCLwfaxIW6rJeh2I1gcohjXwIWj82bbkXS2JR8qaWcQxR2RbkjUsQ/1G/i/n94HUmQIGanKdmUiE4vI1l3GPCbPO1P0xiiY95U/bcF8Mp7xIT5SPWprNRhWTem50y2YM1h4xwxxWeAjyyf4A/S49KSH3JhJag4sym/fETAb0o3BiUTSx6i4E8iIz3Qf/sgkmLuiUHOec70+TRsQlvKLjyD5FMpBBf9q7LBioig/JQv04O1kQ8VIaiTbZlQUmZIzkxJ1INbvfJ+etK0h8nqfkPsfVgQCxWPBLhRXcKHDrD6QQDe6aItgGSrBoTZiZJUkWaJYo/IXXIhc5du8fgoahU4qX7TXdQ9iHLG5UmU1hRGnc+U2omWScoeuU3ZPTPhI6HtEFkkUs7OFFfDBAWyO1QlQUgYD9tlHy05mGJ/Umqi6/eJCMok+X1VYGdZp595xH2S/dXBMhq2WFxTnRnQFkCNH38/xP/xtvkCxF6c/P+C3R7it9m/N2X6B9tO64kbjXa1EMx5vxBhGL/LwHz9BYuxBwa+KJiP7QRxGVDaoYAUvZHoWx15Vb0dFHKg8da1UTP7wvEX0hWM32vdc0ELnTeSNebLPpYntP0DurornZ26FwKTXWmAlrnBN2UURSE2sICn7j5oFZ2hS/7+f/U3OJhKFIMxzsUi4HE41RZHz4cU=
|