mirror of
https://github.com/odin-lang/Odin.git
synced 2025-12-29 09:24:33 +00:00
179 lines
6.0 KiB
YAML
179 lines
6.0 KiB
YAML
name: CI
|
|
on: [push, pull_request, workflow_dispatch]
|
|
|
|
jobs:
|
|
build_linux:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
- name: Download LLVM, botan
|
|
run: sudo apt-get install llvm-11 clang-11 libbotan-2-dev botan
|
|
- name: build odin
|
|
run: ./build_odin.sh release
|
|
- name: Odin version
|
|
run: ./odin version
|
|
timeout-minutes: 1
|
|
- name: Odin report
|
|
run: ./odin report
|
|
timeout-minutes: 1
|
|
- name: Odin check
|
|
run: ./odin check examples/demo -vet
|
|
timeout-minutes: 10
|
|
- name: Odin run
|
|
run: ./odin run examples/demo
|
|
timeout-minutes: 10
|
|
- name: Odin run -debug
|
|
run: ./odin run examples/demo -debug
|
|
timeout-minutes: 10
|
|
- name: Odin check examples/all
|
|
run: ./odin check examples/all -strict-style
|
|
timeout-minutes: 10
|
|
- name: Core library tests
|
|
run: |
|
|
cd tests/core
|
|
make
|
|
timeout-minutes: 10
|
|
- name: Vendor library tests
|
|
run: |
|
|
cd tests/vendor
|
|
make
|
|
timeout-minutes: 10
|
|
- name: Odin issues tests
|
|
run: |
|
|
cd tests/issues
|
|
./run.sh
|
|
timeout-minutes: 10
|
|
- name: Odin check examples/all for Linux i386
|
|
run: ./odin check examples/all -vet -strict-style -target:linux_i386
|
|
timeout-minutes: 10
|
|
- name: Odin check examples/all for FreeBSD amd64
|
|
run: ./odin check examples/all -vet -strict-style -target:freebsd_amd64
|
|
timeout-minutes: 10
|
|
- name: Odin check examples/all for OpenBSD amd64
|
|
run: ./odin check examples/all -vet -strict-style -target:openbsd_amd64
|
|
timeout-minutes: 10
|
|
build_macOS:
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
- name: Download LLVM, botan and setup PATH
|
|
run: |
|
|
brew install llvm@11 botan
|
|
echo "/usr/local/opt/llvm@11/bin" >> $GITHUB_PATH
|
|
TMP_PATH=$(xcrun --show-sdk-path)/user/include
|
|
echo "CPATH=$TMP_PATH" >> $GITHUB_ENV
|
|
- name: build odin
|
|
run: ./build_odin.sh release
|
|
- name: Odin version
|
|
run: ./odin version
|
|
timeout-minutes: 1
|
|
- name: Odin report
|
|
run: ./odin report
|
|
timeout-minutes: 1
|
|
- name: Odin check
|
|
run: ./odin check examples/demo -vet
|
|
timeout-minutes: 10
|
|
- name: Odin run
|
|
run: ./odin run examples/demo
|
|
timeout-minutes: 10
|
|
- name: Odin run -debug
|
|
run: ./odin run examples/demo -debug
|
|
timeout-minutes: 10
|
|
- name: Odin check examples/all
|
|
run: ./odin check examples/all -strict-style
|
|
timeout-minutes: 10
|
|
- name: Core library tests
|
|
run: |
|
|
cd tests/core
|
|
make
|
|
timeout-minutes: 10
|
|
- name: Vendor library tests
|
|
run: |
|
|
cd tests/vendor
|
|
make
|
|
timeout-minutes: 10
|
|
- name: Odin issues tests
|
|
run: |
|
|
cd tests/issues
|
|
./run.sh
|
|
timeout-minutes: 10
|
|
- name: Odin check examples/all for Darwin arm64
|
|
run: ./odin check examples/all -vet -strict-style -target:darwin_arm64
|
|
timeout-minutes: 10
|
|
- name: Odin check examples/all for Linux arm64
|
|
run: ./odin check examples/all -vet -strict-style -target:linux_arm64
|
|
timeout-minutes: 10
|
|
build_windows:
|
|
runs-on: windows-2019
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
- name: build Odin
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
./build.bat 1
|
|
- name: Odin version
|
|
run: ./odin version
|
|
timeout-minutes: 1
|
|
- name: Odin report
|
|
run: ./odin report
|
|
timeout-minutes: 1
|
|
- 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 -vet
|
|
timeout-minutes: 10
|
|
- 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
|
|
timeout-minutes: 10
|
|
- name: Odin run -debug
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
odin run examples/demo -debug
|
|
timeout-minutes: 10
|
|
- name: Odin check examples/all
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
odin check examples/all -strict-style
|
|
timeout-minutes: 10
|
|
- name: Core library tests
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
cd tests\core
|
|
call build.bat
|
|
timeout-minutes: 10
|
|
- name: Vendor library tests
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
cd tests\vendor
|
|
call build.bat
|
|
timeout-minutes: 10
|
|
- name: core:math/big tests
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
cd tests\core\math\big
|
|
call build.bat
|
|
timeout-minutes: 10
|
|
- name: Odin issues tests
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
cd tests\issues
|
|
call run.bat
|
|
timeout-minutes: 10
|
|
- name: Odin check examples/all for Windows 32bits
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
odin check examples/all -strict-style -target:windows_i386
|
|
timeout-minutes: 10
|