File: build.yml

package info (click to toggle)
cvise 2.12.0-3
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 3,772 kB
  • sloc: cpp: 26,284; python: 4,807; ansic: 1,215; lex: 441; makefile: 42
file content (68 lines) | stat: -rw-r--r-- 1,765 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
name: Build openSUSE

on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  CI:
    runs-on: ubuntu-latest

    strategy:
      matrix:
        llvm: [15, 16, 17, 18, 19]
        build-type: [DEBUG]
        include:
          - llvm: 19
            build-type: ASAN
          - llvm: 19
            build-type: UBSAN
          - llmv: 19
            build-type: RelWithDebInfo
            extra-flags: -flto=auto
          - llmv: 19
            build-type: RelWithDebInfo
            env: CC=clang CXX=clang++
      fail-fast: false

    container:
      image: opensuse/tumbleweed

    steps:
    - run: zypper -n install
        binutils clang${{ matrix.llvm }}-devel cmake flex gcc-c++ llvm${{ matrix.llvm }}-devel
        python3-Pebble python3-pytest unifdef python3-psutil curl git python3-chardet findutils
        sudo wget python3-pip
    - run: zypper -n install sqlite-devel python3
    - run: pip install --break-system-packages pytest-cov
    - uses: rui314/setup-mold@v1
    - run: ld --version
    - run: nproc
    - uses: actions/checkout@v4
    - name: build
      run: |
            mkdir objdir
            cd objdir
            ${{ matrix.env }} cmake .. -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DCMAKE_CXX_FLAGS=${{ matrix.extra-flags }}
            make -j`nproc` VERBOSE=1
    - name: test
      run: pytest
      working-directory: objdir

  ruff:
    runs-on: ubuntu-latest
    container:
      image: opensuse/tumbleweed

    steps:
    - run: zypper -n install python3-pip
    - uses: actions/checkout@v4
    - run: pip install --break-system-packages ruff
    - run: ruff check
    - run: ruff format --diff