|
@@ -0,0 +1,54 @@
|
|
|
+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
|
|
|
+ run: |
|
|
|
+ cd bin
|
|
|
+ curl -sL https://github.com/odin-lang/Odin/releases/download/llvm-windows/llvm-binaries.zip --output llvm-binaries.zip
|
|
|
+ ls
|
|
|
+ 7z x llvm-binaries.zip > nul
|
|
|
+ - name: build Odin
|
|
|
+ run: |
|
|
|
+ call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
|
+ ./build_ci.bat
|
|
|
+ - name: Odin run
|
|
|
+ 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
|
|
|
+ run: |
|
|
|
+ call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
|
+ odin check examples/demo/demo.odin -vet
|
|
|
+
|
|
|
+
|