forked from let-def/ocaml
-
Notifications
You must be signed in to change notification settings - Fork 0
106 lines (101 loc) · 3.25 KB
/
build.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
name: Build
on: [push, pull_request]
jobs:
build:
name: 'linux'
runs-on: 'ubuntu-latest'
steps:
- name: Checkout
uses: actions/checkout@v2
- name: configure tree
run: |
MAKE_ARG=-j XARCH=x64 bash -xe tools/ci/actions/runner.sh configure
- name: Build
run: |
MAKE_ARG=-j bash -xe tools/ci/actions/runner.sh build
- name: Prepare Artifact
run: |
tar --zstd -cf /tmp/sources.tar.zstd .
- uses: actions/upload-artifact@v2
with:
name: compiler
path: /tmp/sources.tar.zstd
retention-days: 1
build-misc:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- name: linux-O0
os: ubuntu-latest
config_arg: CFLAGS='-O0'
- name: linux-debug
os: ubuntu-latest
env: OCAMLRUNPARAM=v=0,V=1 USE_RUNTIME=d
- name: macos
os: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: OS Dependencies
if: runner.os == 'MacOS'
run: brew install parallel
- name: configure tree
run: |
CONFIG_ARG=${{ matrix.config_arg }} MAKE_ARG=-j XARCH=x64 bash -xe tools/ci/actions/runner.sh configure
- name: Build
run: |
MAKE_ARG=-j bash -xe tools/ci/actions/runner.sh build
- name: Run the testsuite
if: ${{ matrix.name != 'linux-O0' }}
run: |
bash -c 'SHOW_TIMINGS=1 tools/ci/actions/runner.sh test'
- name: Run the testsuite (linux-O0, parallel)
if: ${{ matrix.name == 'linux-O0' }}
env:
OCAMLRUNPARAM: v=0,V=1
USE_RUNTIME: d
run: |
bash -xe tools/ci/actions/runner.sh test_multicore 1 "parallel" "lib-threads" "lib-systhreads"
testsuite:
needs: build
# https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idneeds strategy:
runs-on: ubuntu-latest
strategy:
matrix:
id:
- debug-s4096
- taskset
- normal
- super
steps:
- uses: actions/download-artifact@v2
with:
name: compiler
- name: Unpack Artifact
run: |
tar --zstd -xf sources.tar.zstd
- name: Run the testsuite
if: ${{ matrix.id == 'normal' }}
run: |
bash -xe tools/ci/actions/runner.sh test
- name: Run the testsuite (Super Charged)
if: ${{ matrix.id == 'super' }}
run: |
bash -xe tools/ci/actions/runner.sh test_multicore 3 "parallel" \
"callback" "gc-roots" "lib-threads" "lib-systhreads" \
"weak-ephe-final"
- name: Run the testsuite (s=4096, debug runtime)
env:
OCAMLRUNPARAM: s=4096,v=0
USE_RUNTIME: d
if: ${{ matrix.id == 'debug-s4096' }}
run: |
bash -xe tools/ci/actions/runner.sh test_multicore 1 "parallel" \
"lib-threads" "lib-systhreads" "weak-ephe-final"
- name: Run the testsuite (taskset -c 0)
if: ${{ matrix.id == 'taskset' }}
run: |
bash -xe tools/ci/actions/runner.sh test_multicore 1 "parallel" \
"lib-threads" "lib-systhreads" "weak-ephe-final"