1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-21 23:55:13 -05:00
sdrangel/.appveyor.yml
Kacper Michajłow 70434765d7 Add support for VS2019 and Ninja
- Specify byproducts in external projects
- Use external Boost
- Remove hacky Qt detection
- Fix CRT mismatch in external projects (fixes SoapySDR on Windows)
- Minor fixes
2020-11-04 10:40:17 +01:00

119 lines
5.4 KiB
YAML

---
version: "{build}-{branch}"
clone_depth: 1
platform:
- x64
matrix:
fast_finish: false
environment:
matrix:
- TARGET: vs2019gui
APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2019'
configuration: Release
CMAKE_CUSTOM_OPTIONS: "-DCMAKE_BUILD_TYPE=Release \
-DFORCE_SSE41=ON \
-DDEBUG_OUTPUT=ON \
-DENABLE_MIRISDR=OFF \
-DBUILD_SERVER=OFF \
-DCMAKE_PREFIX_PATH=C:\\Qt\\5.15.1\\msvc2019_64;C:\\Libraries\\boost_1_73_0"
CMAKE_GENERATOR: Ninja
- TARGET: ubuntu2004prod
APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu2004
CC: "gcc-9"
CXX: "g++-9"
CMAKE_CUSTOM_OPTIONS: "-DCMAKE_BUILD_TYPE=Release \
-DFORCE_SSE41=ON \
-DDEBUG_OUTPUT=ON \
-DENABLE_EXTERNAL_LIBRARIES=ON"
for:
- matrix:
only:
- APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2019'
cache:
- C:\ProgramData\chocolatey\bin
- C:\ProgramData\chocolatey\lib
build_script:
- call "%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
# Install GNU patch as applying patches with git fails in BladeRF tree
- choco install patch
- git submodule update --init --recursive
- mkdir build && cd build
- cmake .. -G "%CMAKE_GENERATOR%" %CMAKE_CUSTOM_OPTIONS%
- cmake --build . --config Release --target package
artifacts: # push installer executable
path: build\*.exe
name: installer
deploy:
release: sdrangel-v$(appveyor_build_version)
description: 'SDRangel Windows'
provider: GitHub
auth_token:
secure: kyU5TaXRoily6q/QLRLqal2xCFGWEdnb8AJIu7FknsUQyj1wjRGmqC2My+Wfszod
artifact: installer, portable
draft: false
prerelease: false
tag: $(APPVEYOR_REPO_TAG_NAME) # will not work until tag is pushed
on:
APPVEYOR_REPO_TAG: true # deploy on tag push only
branch: master # release from master branch only
- matrix:
only:
- APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu2004
cache:
- $HOME/external/
install:
- sh: sudo apt-get update
# not sdrplay with soapysdr; libairspyhf-dev is too old (no lna)
- sh: |
sudo apt-get -y install build-essential cmake git \
devscripts fakeroot debhelper libfftw3-dev qtbase5-dev libqt5opengl5-dev \
qttools5-dev qttools5-dev-tools qtmultimedia5-dev libqt5multimedia5-plugins libqt5websockets5-dev \
libqt5quick5 \
qml-module-qtlocation qml-module-qtpositioning qml-module-qtquick-window2 qml-module-qtquick-dialogs \
qml-module-qtquick-controls qml-module-qtquick-layouts \
libqt5serialport5-dev qtdeclarative5-dev qtpositioning5-dev qtlocation5-dev \
libusb-1.0-0-dev libboost-all-dev libasound2-dev libopencv-dev libopencv-imgcodecs-dev \
libxml2-dev bison flex ffmpeg libpostproc-dev libavcodec-dev libavformat-dev \
libopus-dev libcodec2-dev libairspy-dev libhackrf-dev \
libbladerf-dev libsoapysdr-dev libiio-dev libuhd-dev \
python3-mako python3-cheetah python3-numpy \
autoconf automake libtool ninja-build
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES=ON" ]]; then bash cmake/ci/build_cm256cc.sh; fi
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES=ON" ]]; then bash cmake/ci/build_mbelib.sh; fi
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES=ON" ]]; then bash cmake/ci/build_serialdv.sh; fi
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES=ON" ]]; then bash cmake/ci/build_dsdcc.sh; fi
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES=ON" ]]; then bash cmake/ci/build_perseus-sdr.sh; fi
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES=ON" ]]; then bash cmake/ci/build_xtrx-sdr.sh; fi
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES=ON" ]]; then bash cmake/ci/build_airspyhf.sh; fi
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES=ON" ]]; then bash cmake/ci/build_rtlsdr.sh; fi
- sh: if [[ ! "${CMAKE_CUSTOM_OPTIONS}" =~ "ENABLE_EXTERNAL_LIBRARIES=ON" ]]; then bash cmake/ci/build_limesuite.sh; fi
before_build:
- sh: bash -c export
- sh: bash -c pwd
build_script:
- sh: ./cmake/ci/build_sdrangel.sh
test_script:
# debian build path
- sh: ./obj-x86_64-linux-gnu/sdrangelbench
after_build:
- sh: mkdir sdrangel-${APPVEYOR_BUILD_VERSION}
- sh: cp ../*.deb ../*.build ../*.buildinfo ../*.changes sdrangel-${APPVEYOR_BUILD_VERSION}
- sh: tar -czf sdrangel-${APPVEYOR_BUILD_VERSION}.tar.gz sdrangel-${APPVEYOR_BUILD_VERSION}
- sh: appveyor PushArtifact sdrangel-${APPVEYOR_BUILD_VERSION}.tar.gz -DeploymentName archive
deploy:
release: sdrangel-v$(appveyor_build_version)
description: 'SDRangel Ubuntu 20.04'
provider: GitHub
auth_token:
secure: kyU5TaXRoily6q/QLRLqal2xCFGWEdnb8AJIu7FknsUQyj1wjRGmqC2My+Wfszod
artifact: archive
draft: false
prerelease: false
on:
APPVEYOR_REPO_TAG: true # deploy on tag push only
branch: master # release from master branch only