56 lines
1.4 KiB
YAML
56 lines
1.4 KiB
YAML
name: CI
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
jobs:
|
|
clang-format:
|
|
name: Check clang-format
|
|
runs-on: ubuntu-latest
|
|
container: archlinux:latest
|
|
steps:
|
|
- name: Install dependencies
|
|
run: |
|
|
pacman -Syu --noconfirm git clang diffutils
|
|
git config --global --add safe.directory $GITHUB_WORKSPACE
|
|
- uses: actions/checkout@v4
|
|
- uses: fcitx/github-actions@clang-format
|
|
check:
|
|
name: Build and test
|
|
needs: clang-format
|
|
runs-on: ubuntu-latest
|
|
container: archlinux:latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
compiler: [gcc, clang]
|
|
include:
|
|
- compiler: gcc
|
|
cxx_compiler: g++
|
|
- compiler: clang
|
|
cxx_compiler: clang++
|
|
env:
|
|
CC: ${{ matrix.compiler }}
|
|
CXX: ${{ matrix.cxx_compiler }}
|
|
steps:
|
|
- name: Install dependencies
|
|
run: |
|
|
pacman -Syu --noconfirm base-devel clang cmake ninja extra-cmake-modules xcb-util xcb-util-keysyms
|
|
- name: Init CodeQL
|
|
uses: github/codeql-action/init@v3
|
|
with:
|
|
languages: c
|
|
- uses: actions/checkout@v4
|
|
- name: Build and Install
|
|
uses: fcitx/github-actions@cmake
|
|
with:
|
|
path: .
|
|
- name: Test
|
|
run: |
|
|
ctest --test-dir build
|
|
- name: CodeQL Analysis
|
|
uses: github/codeql-action/analyze@v2
|