Implement Error causes #282
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ci | |
on: | |
pull_request: | |
paths: | |
- '**' | |
- '!.gitignore' | |
- '!LICENSE' | |
- '!TODO' | |
- '!doc/**' | |
- '!examples/**' | |
- '.github/workflows/ci.yml' | |
push: | |
branches: | |
- master | |
jobs: | |
linux: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
buildType: [Debug, Release] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: build | |
run: | | |
make BUILD_TYPE=${{matrix.buildType}} | |
- name: stats | |
run: | | |
make stats | |
- name: test | |
run: | | |
make test | |
- name: test 262 | |
if: ${{ matrix.buildType == 'Release' }} | |
run: | | |
time make test262 | |
linux-32bits: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: jirutka/setup-alpine@v1 | |
with: | |
arch: x86 | |
packages: "build-base make cmake" | |
- name: build | |
shell: alpine.sh {0} | |
run: | | |
make | |
- name: stats | |
shell: alpine.sh {0} | |
run: | | |
make stats | |
- name: test | |
shell: alpine.sh {0} | |
run: | | |
make test | |
linux-examples: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: build | |
run: | | |
make BUILD_EXAMPLES=ON | |
- name: test | |
run: | | |
ldd build/hello | |
ldd build/hello_module | |
ldd build/test_fib | |
./build/hello | |
./build/hello_module | |
./build/test_fib | |
cp build/fib.so examples/ | |
cp build/point.so examples/ | |
cp build/bjson.so tests/ | |
./build/qjs examples/test_fib.js | |
./build/qjs examples/test_point.js | |
./build/qjs tests/test_bjson.js | |
linux-shared: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: build | |
run: | | |
make BUILD_SHARED_LIBS=ON | |
ldd build/qjs | |
- name: stats | |
run: | | |
make stats | |
linux-asan: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: build | |
run: | | |
make CONFIG_ASAN=ON | |
- name: test | |
env: | |
ASAN_OPTIONS: halt_on_error=1 | |
run: | | |
make test | |
- name: test 262 | |
env: | |
ASAN_OPTIONS: halt_on_error=1 | |
run: | | |
time make test262 | |
linux-msan: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: build | |
env: | |
CC: clang | |
run: | | |
make CONFIG_MSAN=ON | |
- name: test | |
env: | |
MSAN_OPTIONS: halt_on_error=1 | |
run: | | |
make test | |
linux-ubsan: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: build | |
run: | | |
make CONFIG_UBSAN=ON | |
- name: test | |
env: | |
UBSAN_OPTIONS: halt_on_error=1 | |
run: | | |
make test | |
- name: test 262 | |
env: | |
UBSAN_OPTIONS: halt_on_error=1 | |
run: | | |
time make test262 | |
macos: | |
runs-on: macos-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
buildType: [Debug, Release] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: build | |
run: | | |
make BUILD_TYPE=${{matrix.buildType}} | |
- name: stats | |
run: | | |
make stats | |
- name: test | |
run: | | |
make test | |
macos-examples: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: build | |
run: | | |
make BUILD_EXAMPLES=ON | |
- name: test | |
run: | | |
otool -L build/hello | |
otool -L build/hello_module | |
otool -L build/test_fib | |
./build/hello | |
./build/hello_module | |
./build/test_fib | |
cp build/fib.so examples/ | |
cp build/point.so examples/ | |
cp build/bjson.so tests/ | |
./build/qjs examples/test_fib.js | |
./build/qjs examples/test_point.js | |
./build/qjs tests/test_bjson.js | |
macos-shared: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: build | |
run: | | |
make BUILD_SHARED_LIBS=ON | |
otool -L build/qjs | |
- name: stats | |
run: | | |
make stats | |
macos-asan: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: build | |
run: | | |
make CONFIG_ASAN=ON | |
- name: test | |
env: | |
ASAN_OPTIONS: halt_on_error=1 | |
run: | | |
make test | |
macos-ubsan: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: build | |
run: | | |
make CONFIG_UBSAN=ON | |
- name: test | |
env: | |
UBSAN_OPTIONS: halt_on_error=1 | |
run: | | |
make test | |
windows-mingw: | |
runs-on: windows-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
buildType: [Debug, Release] | |
sys: | |
- mingw64 | |
- ucrt64 | |
defaults: | |
run: | |
shell: msys2 {0} | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup MSYS2 | |
uses: msys2/setup-msys2@v2 | |
with: | |
msystem: ${{matrix.sys}} | |
install: >- | |
git | |
make | |
pacboy: >- | |
cmake:p | |
ninja:p | |
toolchain:p | |
- name: build | |
run: | | |
make BUILD_TYPE=${{matrix.buildType}} | |
- name: stats | |
run: | | |
make stats | |
- name: test | |
run: | | |
make test | |
windows-mingw-shared: | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: msys2 {0} | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup MSYS2 | |
uses: msys2/setup-msys2@v2 | |
with: | |
install: >- | |
git | |
make | |
pacboy: >- | |
cmake:p | |
ninja:p | |
toolchain:p | |
- name: build | |
run: | | |
make BUILD_SHARED_LIBS=ON | |
ldd build/qjs | |
- name: stats | |
run: | | |
make stats |