mirror of
https://github.com/Ed94/Odin.git
synced 2026-06-14 18:02:22 -07:00
e1654e9dd3
Homebrew decided to update the formula for Botan to support version 3.0 of the package only. Until we update the bindings and the Windows library to match, we can't test on Mac.
181 lines
6.1 KiB
YAML
181 lines
6.1 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 internals tests
|
|
run: |
|
|
cd tests/internal
|
|
make
|
|
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 and setup PATH
|
|
run: |
|
|
brew install llvm@11
|
|
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: Odin internals tests
|
|
run: |
|
|
cd tests/internal
|
|
make
|
|
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: Odin internals tests
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
cd tests\internal
|
|
call build.bat
|
|
timeout-minutes: 10
|
|
- name: Odin documentation tests
|
|
shell: cmd
|
|
run: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
|
cd tests\documentation
|
|
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 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
|