aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/ci.yml
blob: 7c43b01e199c115328a43059bdeb1fdbf60660b5 (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
name: CI
on: [push, pull_request]

jobs:
  build_unix:
    runs-on: ${{ matrix.os }}
    strategy:
        matrix:
          os: [ubuntu-latest, macOS-latest]
          
    steps:
      - uses: actions/checkout@v1
      - name: (macOS) Download LLVM and setup PATH
        if: startsWith(matrix.os, 'macOS')
        run: |
          brew install llvm
          echo ::add-path::/usr/local/opt/llvm/bin
          echo ::set-env name=CPATH::`xcrun --show-sdk-path`/usr/include
      - name: (Linux) Download LLVM
        if: startsWith(matrix.os, 'ubuntu')
        run: |
          sudo apt-get install llvm
      - name: build odin
        run: make release
      - name: Odin run
        run: ./odin run examples/demo/demo.odin
      - name: Odin check
        run: ./odin check examples/demo/demo.odin -vet
  build_windows:
    runs-on: windows-latest
    steps:
      - uses: actions/checkout@v1
      - name: Install cURL
        run: choco install curl
      - name: Download and unpack LLVM bins
        shell: cmd
        run: |
          cd bin
          curl -sL https://github.com/odin-lang/Odin/releases/download/llvm-windows/llvm-binaries.zip --output llvm-binaries.zip
          7z x llvm-binaries.zip > nul
      - name: build Odin
        shell: cmd
        run: |
          call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
          ./build_ci.bat
      - name: Odin run
        shell: cmd
        run: |
          call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
          odin run examples/demo/demo.odin
      - name: Odin check
        shell: cmd
        run: |
          call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
          odin check examples/demo/demo.odin -vet