Skip to content

GHA: Switch to clang-format for format check #542

GHA: Switch to clang-format for format check

GHA: Switch to clang-format for format check #542

Workflow file for this run

# The name of our workflow
name: Build
on: [push, pull_request]
jobs:
checkformat:
name: "Check code style with clang-format"
runs-on: ubuntu-24.04
steps:
- name: Install pre-commit
run: pip3 install pre-commit
- name: Checkout OpenVPN-GUI
uses: actions/checkout@v3
- name: Run pre-commit
uses: pre-commit run -a
msvc:
strategy:
matrix:
arch: [x86, x64, arm64]
conf:
- name: ""
value: "release"
ovpn3:
- preset: ""
name: ""
upload_name: ""
- preset: -ovpn3
name: "- ovpn3"
upload_name: "_ovpn3"
include:
- conf:
name: " ASAN"
value: "asan"
arch: x64
name: 'msvc - ${{matrix.arch}} ${{ matrix.ovpn3.name }}${{ matrix.conf.name }}'
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: lukka/get-cmake@latest
- name: Restore artifacts, or setup vcpkg (do not install any package)
uses: lukka/run-vcpkg@v11
with:
vcpkgDirectory: '${{ runner.workspace }}/b/vcpkg'
vcpkgGitCommitId: "1ba9a2591f15af5900f2ce2b3e2bf31771e3ac48"
- name: Run CMake consuming CMakePreset.json and vcpkg.json by mean of vcpkg.
uses: lukka/run-cmake@v10
with:
configurePreset: '${{ matrix.arch }}${{ matrix.ovpn3.preset }}'
buildPreset: '${{ matrix.arch }}-${{ matrix.conf.value }}${{ matrix.ovpn3.preset }}'
- uses: actions/upload-artifact@v3
with:
name: openvpn-gui_${{ matrix.arch }}_${{ matrix.conf.value }}${{ matrix.ovpn3.upload_name }}
path: |
out/build/${{ matrix.arch }}${{ matrix.ovpn3.preset }}/${{ matrix.conf.value }}/*.dll
out/build/${{ matrix.arch }}${{ matrix.ovpn3.preset }}/${{ matrix.conf.value }}/*.exe
mingw:
strategy:
fail-fast: false
matrix:
target: [mingw64, mingw]
include:
- target: mingw64
chost: x86_64-w64-mingw32
- target: mingw
chost: i686-w64-mingw32
name: "gcc-mingw - ${{matrix.target}}"
runs-on: ubuntu-20.04
env:
MAKEFLAGS: -j3
steps:
- name: Install dependencies
run: sudo apt update && sudo apt install -y mingw-w64 libtool automake autoconf
- name: Checkout
uses: actions/checkout@v3
with:
path: openvpn-gui
- name: autoconf
run: autoreconf -fvi
working-directory: openvpn-gui
- name: Cache dependencies
id: cache
uses: actions/cache@v3
with:
path: '~/mingw/'
key: mingw-${{ matrix.target }}
- name: configure
run: PKG_CONFIG_PATH=${HOME}/mingw/opt/${LIB}/pkgconfig ./configure --host=${{ matrix.chost }}
working-directory: openvpn-gui
- name: make
run: make
working-directory: openvpn-gui