179 lines
4.2 KiB
YAML
179 lines
4.2 KiB
YAML
name: ci
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- '**'
|
|
- '!.gitignore'
|
|
- '!LICENSE'
|
|
- '!TODO'
|
|
- '!doc/**'
|
|
- '!examples/**'
|
|
- '.github/workflows/ci.yml'
|
|
push:
|
|
branches:
|
|
- master
|
|
|
|
jobs:
|
|
linux:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
submodules: true
|
|
- name: build
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y all run-test262
|
|
- name: test
|
|
run: |
|
|
make test test2
|
|
linux-asan:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: test
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y CONFIG_ASAN=y ASAN_OPTIONS="halt_on_error=1" test
|
|
linux-msan:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: test
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y CONFIG_MSAN=y CONFIG_CLANG=y MSAN_OPTIONS="halt_on_error=1" test
|
|
linux-ubsan:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: test
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y CONFIG_UBSAN=y UBSAN_OPTIONS="halt_on_error=1" test
|
|
linux-cmake:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: build
|
|
run: |
|
|
mkdir build
|
|
cd build
|
|
cmake ..
|
|
cd ..
|
|
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
|
|
- name: stats
|
|
run: |
|
|
./build/qjs -qd
|
|
|
|
macos:
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: build
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y
|
|
- name: stats
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y qjs
|
|
./qjs -qd
|
|
- name: test
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y test
|
|
macos-asan:
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: test
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y CONFIG_ASAN=y ASAN_OPTIONS="halt_on_error=1" test
|
|
macos-ubsan:
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: test
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y CONFIG_UBSAN=y UBSAN_OPTIONS="halt_on_error=1" test
|
|
macos-cmake:
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: build
|
|
run: |
|
|
mkdir build
|
|
cd build
|
|
cmake ..
|
|
cd ..
|
|
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
|
|
- name: stats
|
|
run: |
|
|
./build/qjs -qd
|
|
|
|
windows-mingw:
|
|
runs-on: windows-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
sys:
|
|
- mingw64
|
|
- ucrt64
|
|
defaults:
|
|
run:
|
|
shell: msys2 {0}
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
submodules: true
|
|
- name: Setup MSYS2
|
|
uses: msys2/setup-msys2@v2
|
|
with:
|
|
msystem: ${{matrix.sys}}
|
|
install: >-
|
|
git
|
|
make
|
|
pacboy: >-
|
|
toolchain:p
|
|
- name: build
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y CONFIG_MINGW=y
|
|
- name: stats
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y CONFIG_MINGW=y qjs
|
|
./qjs -qd
|
|
- name: test
|
|
run: |
|
|
make -j$(getconf _NPROCESSORS_ONLN) CONFIG_WERROR=y CONFIG_MINGW=y test
|
|
|
|
windows-mingw-cmake:
|
|
runs-on: windows-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
sys:
|
|
- mingw64
|
|
- ucrt64
|
|
defaults:
|
|
run:
|
|
shell: msys2 {0}
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
submodules: true
|
|
- 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: |
|
|
mkdir build
|
|
cd build
|
|
cmake ..
|
|
cd ..
|
|
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
|
|
- name: stats
|
|
run: |
|
|
./build/qjs -qd
|