JKQtPlotter/appveyor.yml
2022-04-18 14:08:01 +02:00

181 lines
6.2 KiB
YAML

version: 0.{build}-{branch}
# don't build tags
skip_tags: true
# exclude gh-pages branch
branches:
except:
- gh-pages
shallow_clone: true
# build options
build:
parallel: true
verbosity: detailed
#configurations to build
configuration:
- Release
# - debug
# define build matrix
environment:
global:
JOMDIR: C:\Qt\Tools\QtCreator\bin
VSVER: 0
CMAKE_BUILDFLAGS:
USE_CMAKE: true
matrix:
- QTABI: msvc2019_64
COMPILER: MSVC
QTVER: 5.15
CMAKE_GENERATOR: "Visual Studio 16 2019"
CMAKE_BUILDFLAGS: /verbosity:minimal /maxcpucount
# - QTABI: mingw81_64
# COMPILER: MinGW
# MINGWDIR: C:\Qt\Tools\mingw810_64
# QTVER: 5.15
# CMAKE_GENERATOR: "MinGW Makefiles"
#
- QTABI: gcc_64
COMPILER: GCC
QTVER: 5.15
CMAKE_GENERATOR: "Unix Makefiles"
image:
# AppVeyor builds are ordered by the image list:
- Visual Studio 2019
- Ubuntu2004
matrix:
exclude:
# Exclude invalid options
- image: Visual Studio 2019
QTABI: gcc_64
- image: Visual Studio 2019
QTABI: mingw53_32
- image: Visual Studio 2019
QTABI: msvc2015
- image: Ubuntu2004
QTABI: mingw81_64
- image: Ubuntu2004
QTABI: msvc2019_64
- image: Ubuntu2004
QTABI: msvc2015_64
- image: Ubuntu2004
QTABI: msvc2015
- image: Ubuntu2004
QTABI: mingw53_32
for:
# Windows (MinGW 8.1 & MSVC2019)
-
matrix:
only:
- image: Visual Studio 2019
init:
- cmd: echo == INIT SYSTEM ENVIRONMENT ======================================================================
- cmd: echo NUMBER_OF_PROCESSORS=%NUMBER_OF_PROCESSORS%
- cmd: echo PROCESSOR_IDENTIFIER=%PROCESSOR_IDENTIFIER%
- cmd: echo APPVEYOR_BUILD_WORKER_IMAGE=%APPVEYOR_BUILD_WORKER_IMAGE%
- cmd: echo QTABI=%QTABI%
- cmd: echo CMAKE_GENERATOR=%CMAKE_GENERATOR%
- cmd: echo CMAKE_BUILDFLAGS=%CMAKE_BUILDFLAGS%
install:
# Init compiler environment
- cmd: echo == INIT COMPILER ENVIRONMENT ====================================================================
- cmd: set QTDIR=C:\Qt\%QTVER%\%QTABI%\bin
- cmd: set PATH=%QTDIR%;%JOMDIR%;%PATH%
- cmd: if %COMPILER%==MinGW set "PATH=%MINGWDIR%\bin;%PATH%"
- cmd: if %QTABI%==msvc2019 call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat"
- cmd: if %QTABI%==msvc2019_64 call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
# Rename sh.exe as sh.exe in PATH interferes with MinGW
- cmd: if %COMPILER%==MinGW rename "C:\Program Files\Git\usr\bin\sh.exe" "sh2.exe"
- cmd: echo QTDIR=%QTDIR%
- cmd: echo JOMDIR=%JOMDIR%
- cmd: echo PATH=%PATH%
# Install OpenCV
- cmd: echo == INSTALL OPENCV ===============================================================================
- cmd: choco install OpenCV
- cmd: set OPENCV_DIR=C:\tools\opencv\build
- cmd: echo OPENCV_DIR=%OPENCV_DIR%
# Install CImg
- cmd: echo == INSTALL CIMG =================================================================================
- cmd: mkdir C:\tools\cimg
- cmd: git clone --depth=1 https://github.com/dtschump/CImg.git C:\tools\cimg
- cmd: set CIMG_DIR=C:\tools\cimg
- cmd: echo CIMG_DIR=%CIMG_DIR%
- cmd: set CIMG_INCLUDE_DIR=C:\tools\cimg
- cmd: echo CIMG_INCLUDE_DIR=%CIMG_INCLUDE_DIR%
build_script:
- cmd: echo == BUILD JKQtPlotter ============================================================================
- cmd: mkdir build
- cmd: cd build
- cmd: if %USE_CMAKE%==true cmake --version
- cmd: if %USE_CMAKE%==true cmake -G "%CMAKE_GENERATOR%" "-DCMAKE_PREFIX_PATH=%QTDIR%;%CIMG_INCLUDE_DIR%" ..
- cmd: if %USE_CMAKE%==true cmake --build . --config "%CONFIGURATION%" -- %CMAKE_BUILDFLAGS%
- cmd: if %USE_CMAKE%==false qmake.exe -v
- cmd: if %USE_CMAKE%==false qmake.exe CONFIG+=%CONFIGURATION% ..\JKQtPlotterBuildAllExamples.pro
- cmd: if %USE_CMAKE%==false call %MAKETOOL%
- cmd: cd ..
# Linux (Ubuntu2004)
-
matrix:
only:
- image: Ubuntu2004
init:
- sh: echo == INIT SYSTEM ENVIRONMENT ======================================================================
- sh: echo _NPROCESSORS_ONLN=$(getconf _NPROCESSORS_ONLN)
- sh: echo APPVEYOR_BUILD_WORKER_IMAGE=$APPVEYOR_BUILD_WORKER_IMAGE
- sh: echo QTABI=$QTABI
- sh: echo CMAKE_GENERATOR=$CMAKE_GENERATOR
install:
# Init compiler environment
- sh: echo == INIT COMPILER ENVIRONMENT ====================================================================
- sh: export QTDIR=$HOME/Qt/$QTVER/$QTABI/
- sh: export Qt5_DIR=$QTDIR/lib/cmake
- sh: sudo apt update -qq
- sh: sudo apt install -y build-essential git graphviz doxygen mesa-common-dev libglu1-mesa-dev qt5-qmake cmake
- sh: echo QTDIR=$QTDIR
- sh: echo Qt5_DIR=$Qt5_DIR
- sh: ls /home/appveyor
- sh: ls /home/appveyor/Qt
- sh: ls /home/appveyor/Qt/5.15
- sh: ls /home/appveyor/Qt/5.15/gcc_64
- sh: echo PATH=$PATH
- sh: sudo apt-get update -y
# Install OpenCV
- sh: echo == INSTALL OPENCV ===============================================================================
- sh: sudo apt install -y libopencv-dev
# Install CImg
#- sh: echo == INSTALL CImg =================================================================================
#- sh: sudo apt install -y cimg-dev
build_script:
- sh: echo == BUILD JKQtPlotter ============================================================================
- sh: mkdir build
- sh: cd build
- sh: echo --- Run CMake Configure -----------------------------------------------------------------------------
- sh: doxygen --version
- sh: cmake --version
- sh: cmake -G "$CMAKE_GENERATOR" "-DCMAKE_PREFIX_PATH=$QTDIR" ..
- sh: echo --- Build using CMake -------------------------------------------------------------------------------
- sh: cmake --build . --config "$CONFIGURATION" -- $CMAKE_BUILDFLAGS