aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/ci.yaml
blob: 1ced2c2ebcc4e0a28f309c8217dcae82987004a9 (plain)
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
69
70
71
72
73
74
75
76
77
78
name: CI

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  build-linux:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - run: gcc -v
    - run: make

  build-linux-meson:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: actions/setup-python@v5
      with:
        python-version: '3.10'
        cache: 'pip'
    - run: pip install meson ninja
    - run: gcc -v
    - run: meson setup builddir/
      env:
        CC: gcc
    - run: meson compile -C builddir/

  build-msvc-meson:
    runs-on: windows-latest
    steps:
    - uses: actions/checkout@v4
    - uses: actions/setup-python@v5
      with:
        python-version: '3.10'
        cache: 'pip'
    - run: pip install meson ninja
    - uses: TheMrMilchmann/setup-msvc-dev@v3
      with:
        arch: x64
    - run: meson setup builddir
    - run: meson compile -C builddir

  build-wasm:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - run: clang -v
    - run: make CC="clang --target=wasm32"
    - uses: actions/upload-artifact@v4
      with:
        name: liblc3.wasm
        path: bin/liblc3.wasm

  test-linux:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: actions/setup-python@v5
      with:
        python-version: '3.10'
        cache: 'pip'
    - run: pip install scipy numpy
    - run: gcc -v
    - run: make test

  install-python-linux:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: actions/setup-python@v5
      with:
        python-version: '3.10'
        cache: 'pip'
    - run: pip install .