mirror of
https://github.com/boostorg/mqtt5.git
synced 2026-01-19 04:22:11 +00:00
Reviewers: ljudevit Reviewed By: ljudevit Subscribers: korina, miljen Differential Revision: https://repo.mireo.local/D36487
183 lines
6.0 KiB
YAML
183 lines
6.0 KiB
YAML
#
|
|
# Copyright (c) 2023-2025 Ivica Siladic, Bruno Iljazovic, Korina Simicevic
|
|
#
|
|
# Distributed under the Boost Software License, Version 1.0.
|
|
# (See accompanying file LICENSE or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
#
|
|
|
|
name: CI-Windows
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
windows-cmake:
|
|
name: "CMake ${{ matrix.toolset }} ${{ matrix.architecture }} std=c++${{ matrix.cxxstd }}"
|
|
defaults:
|
|
run:
|
|
shell: cmd
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- toolset: msvc-14.3
|
|
os: windows-2022
|
|
architecture: Win32
|
|
generator: Visual Studio 17 2022
|
|
cxxstd: 20
|
|
build-type: 'Debug'
|
|
cxxflags: ''
|
|
ldflags: ''
|
|
|
|
- toolset: msvc-14.3
|
|
os: windows-2022
|
|
architecture: x64
|
|
generator: Visual Studio 17 2022
|
|
cxxstd: 20
|
|
build-type: 'Debug'
|
|
cxxflags: ''
|
|
ldflags: ''
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
CXXFLAGS: ${{ matrix.cxxflags }} /D_WIN32_WINNT=0x0A00 /DWIN32_LEAN_AND_MEAN=1 /D_FILE_OFFSET_BITS=64 /DBOOST_ALL_NO_LIB /EHsc /bigobj
|
|
LDFLAGS: ${{ matrix.ldflags }}
|
|
CMAKE_BUILD_PARALLEL_LEVEL: 4
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup OpenSSL
|
|
env:
|
|
OPENSSL_ROOT: "C:\\OpenSSL"
|
|
run: |
|
|
if "${{ matrix.architecture }}" == "x64" (
|
|
choco install --no-progress -y openssl --x64
|
|
)
|
|
if "${{ matrix.architecture }}" == "Win32" (
|
|
set openssl_install_dir="C:\\Program Files (x86)\\OpenSSL-Win32"
|
|
choco install --no-progress -y openssl --forcex86 --version 1.1.1.2100
|
|
)
|
|
if "${{ matrix.architecture }}" == "x64" (
|
|
if exist "C:\Program Files\OpenSSL\" (
|
|
set openssl_install_dir="C:\\Program Files\\OpenSSL"
|
|
) else (
|
|
set openssl_install_dir="C:\\Program Files\\OpenSSL-Win64"
|
|
)
|
|
)
|
|
mklink /D %OPENSSL_ROOT% %openssl_install_dir%
|
|
refreshenv
|
|
set
|
|
|
|
- name: Setup CMake
|
|
run: choco install cmake
|
|
|
|
- name: Setup Boost
|
|
run: python3 tools/ci.py setup-boost --source-dir=%cd%
|
|
|
|
- name: Build a Boost distribution using B2
|
|
run : |
|
|
python3 tools/ci.py build-b2-distro ^
|
|
--toolset ${{ matrix.toolset }}
|
|
|
|
- name: Build a Boost distribution using CMake
|
|
run: |
|
|
python3 tools/ci.py build-cmake-distro ^
|
|
--build-type ${{ matrix.build-type }} ^
|
|
--cxxstd ${{ matrix.cxxstd }} ^
|
|
--toolset ${{ matrix.toolset }} ^
|
|
--generator "${{ matrix.generator }}"
|
|
|
|
- name: Build standalone examples using CMake
|
|
run: |
|
|
python3 tools/ci.py build-cmake-standalone-examples ^
|
|
--build-type ${{ matrix.build-type }} ^
|
|
--cxxstd ${{ matrix.cxxstd }} ^
|
|
--toolset ${{ matrix.toolset }} ^
|
|
--generator "${{ matrix.generator }}"
|
|
|
|
- name: Build standalone tests using CMake
|
|
run: |
|
|
python3 tools/ci.py build-cmake-standalone-tests ^
|
|
--build-type ${{ matrix.build-type }} ^
|
|
--cxxstd ${{ matrix.cxxstd }} ^
|
|
--toolset ${{ matrix.toolset }} ^
|
|
--generator "${{ matrix.generator }}"
|
|
|
|
- name: Run standalone tests
|
|
run: |
|
|
python3 tools/ci.py run-cmake-standalone-tests ^
|
|
--build-type ${{ matrix.build-type }}
|
|
|
|
- name: Run CMake find_package test with B2 distribution
|
|
run: |
|
|
python3 tools/ci.py run-cmake-b2-find-package-tests ^
|
|
--build-type ${{ matrix.build-type }} ^
|
|
--cxxstd ${{ matrix.cxxstd }} ^
|
|
--toolset ${{ matrix.toolset }} ^
|
|
--generator "${{ matrix.generator }}"
|
|
|
|
- name: Run CMake find_package test with CMake distribution
|
|
run: |
|
|
python3 tools/ci.py run-cmake-find-package-tests ^
|
|
--build-type ${{ matrix.build-type }} ^
|
|
--cxxstd ${{ matrix.cxxstd }} ^
|
|
--toolset ${{ matrix.toolset }} ^
|
|
--generator "${{ matrix.generator }}"
|
|
|
|
- name: Run CMake add_subdirectory test with CMake distribution
|
|
run: |
|
|
python3 tools/ci.py run-cmake-add-subdirectory-tests ^
|
|
--build-type ${{ matrix.build-type }} ^
|
|
--cxxstd ${{ matrix.cxxstd }} ^
|
|
--toolset ${{ matrix.toolset }} ^
|
|
--generator "${{ matrix.generator }}"
|
|
|
|
windows-b2:
|
|
name: "B2 ${{ matrix.toolset }} ${{ matrix.architecture }} std=c++${{ matrix.cxxstd }}"
|
|
defaults:
|
|
run:
|
|
shell: cmd
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- toolset: msvc-14.3
|
|
os: windows-2022
|
|
architecture: Win32
|
|
generator: Visual Studio 17 2022
|
|
cxxstd: "17,20"
|
|
build-type: 'release'
|
|
cxxflags: ''
|
|
ldflags: ''
|
|
|
|
- toolset: msvc-14.3
|
|
os: windows-2022
|
|
architecture: x64
|
|
generator: Visual Studio 17 2022
|
|
cxxstd: "17,20"
|
|
build-type: 'release'
|
|
cxxflags: ''
|
|
ldflags: ''
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
CXXFLAGS: ${{ matrix.cxxflags }} /D_WIN32_WINNT=0x0A00 /DWIN32_LEAN_AND_MEAN=1 /D_FILE_OFFSET_BITS=64 /DBOOST_ALL_NO_LIB /EHsc /bigobj
|
|
LDFLAGS: ${{ matrix.ldflags }}
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Boost
|
|
run: python3 tools/ci.py setup-boost --source-dir=%cd%
|
|
|
|
- name: Build and run project tests using B2
|
|
run: |
|
|
python3 tools/ci.py run-b2-tests ^
|
|
--toolset ${{ matrix.toolset }} ^
|
|
--cxxstd ${{ matrix.cxxstd }} ^
|
|
--variant ${{ matrix.build-type }}
|