mirror of
https://github.com/OpenVPN/openvpn3.git
synced 2024-09-19 19:52:15 +02:00
92 lines
3.3 KiB
YAML
92 lines
3.3 KiB
YAML
name: Build
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
msvc:
|
|
strategy:
|
|
matrix:
|
|
arch: [x86, amd64, amd64_arm64]
|
|
|
|
env:
|
|
VCPKG_ROOT: ${{ github.workspace }}/vcpkg
|
|
BUILD_CONFIGURATION: Release
|
|
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
|
- uses: lukka/get-cmake@070a0507a7abe157ef918deec391da1be197d2d1 # v3.30.3
|
|
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
|
|
with:
|
|
arch: ${{ matrix.arch }}
|
|
|
|
- name: Restore from cache and install vcpkg
|
|
uses: lukka/run-vcpkg@5e0cab206a5ea620130caf672fce3e4a6b5666a1 # v11.5
|
|
with:
|
|
vcpkgGitCommitId: b4624c3a701b11248d88aab08744a37ee7aea1cc
|
|
vcpkgJsonGlob: '**/windows/vcpkg.json'
|
|
|
|
- name: Run CMake with vcpkg.json manifest
|
|
uses: lukka/run-cmake@2ce8982be71b8e9a3c4d5e432135035afd1e76a7 # v10.7
|
|
if: ${{ matrix.arch != 'amd64_arm64' }}
|
|
with:
|
|
configurePreset: win-${{ matrix.arch }}-release
|
|
buildPreset: win-${{ matrix.arch }}-release
|
|
testPreset: win-${{ matrix.arch }}-release
|
|
|
|
- name: Run CMake with vcpkg.json manifest (NO TESTS)
|
|
uses: lukka/run-cmake@2ce8982be71b8e9a3c4d5e432135035afd1e76a7 # v10.7
|
|
if: ${{ matrix.arch == 'amd64_arm64' }}
|
|
with:
|
|
configurePreset: win-${{ matrix.arch }}-release
|
|
buildPreset: win-${{ matrix.arch }}-release
|
|
|
|
- uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
|
|
with:
|
|
name: openvpn3-msvc-${{ matrix.arch }}
|
|
path: |
|
|
${{ github.workspace }}/build/**/*.exe
|
|
${{ github.workspace }}/build/**/*.dll
|
|
!${{ github.workspace }}/build/**/test/ssl/**
|
|
!${{ github.workspace }}/build/**/test/unittests/**
|
|
!${{ github.workspace }}/build/**/CMakeFiles/**
|
|
!${{ github.workspace }}/build/**/vcpkg_installed/**
|
|
mingw:
|
|
strategy:
|
|
matrix:
|
|
arch: [x86, x64]
|
|
|
|
env:
|
|
VCPKG_ROOT: ${{ github.workspace }}/vcpkg
|
|
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
|
- uses: lukka/get-cmake@070a0507a7abe157ef918deec391da1be197d2d1 # v3.30.3
|
|
|
|
- name: Install dependencies
|
|
run: sudo apt update && sudo apt install -y mingw-w64 unzip cmake build-essential
|
|
|
|
- name: Restore from cache and install vcpkg
|
|
uses: lukka/run-vcpkg@5e0cab206a5ea620130caf672fce3e4a6b5666a1 # v11.5
|
|
with:
|
|
vcpkgGitCommitId: b4624c3a701b11248d88aab08744a37ee7aea1cc
|
|
vcpkgJsonGlob: '**/mingw/vcpkg.json'
|
|
|
|
- name: Run CMake with vcpkg.json manifest
|
|
uses: lukka/run-cmake@2ce8982be71b8e9a3c4d5e432135035afd1e76a7 # v10.7
|
|
with:
|
|
configurePreset: mingw-${{ matrix.arch }}-release
|
|
buildPreset: mingw-${{ matrix.arch }}-release
|
|
|
|
- uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
|
|
with:
|
|
name: openvpn3-mingw-${{ matrix.arch }}
|
|
path: |
|
|
${{ github.workspace }}/build/**/*.exe
|
|
${{ github.workspace }}/build/**/*.dll
|
|
!${{ github.workspace }}/build/**/test/ssl/**
|
|
!${{ github.workspace }}/build/**/test/unittests/**
|
|
!${{ github.workspace }}/build/**/CMakeFiles/**
|
|
!${{ github.workspace }}/build/**/vcpkg_installed/**
|