@@ -3,30 +3,38 @@ name: CI
33on : [push, pull_request]
44
55jobs :
6- Ubuntu :
7- runs-on : ubuntu-latest
6+ test :
7+ strategy :
8+ matrix :
9+ operating-system : [ubuntu-latest]
10+ ocaml-version : [4.10.0, 4.11.0]
11+ runs-on : ${{ matrix.operating-system }}
812 steps :
9- - name : Install packages
10- run : sudo apt-get install ocaml-nox libgmp-dev
11- - name : Checkout
12- uses : actions/checkout@v2
13- - name : configure tree
14- run : ./configure
15- - name : Build
16- run : make
17- - name : Run the testsuite
18- run : make -C tests test
19-
20- MacOS :
21- runs-on : macos-latest
22- steps :
23- - name : Install packages
24- run : brew install ocaml ocaml-findlib gmp
25- - name : Checkout
26- uses : actions/checkout@v2
27- - name : configure tree
28- run : ./configure
29- - name : Build
30- run : make
31- - name : Run the testsuite
32- run : make -C tests test
13+ - uses : actions/checkout@v2
14+ - uses : actions-ml/setup-ocaml@master
15+ with :
16+ ocaml-version : ${{ matrix.ocaml-version }}
17+ - name : Pin solo5
18+ run : opam pin -n -y git+https://github.com/mato/solo5#new-toolchain
19+ - name : Pin ocaml-freestanding
20+ run : opam pin -n -y git+https://github.com/TheLortex/ocaml-freestanding#mirage-4-staging
21+ - name : Pin ocaml-gmp
22+ run : opam pin -n -y git+https://github.com/mirage/ocaml-gmp.git#master
23+ - name : Dune, global GMP
24+ run : opam depext -iyt conf-gmp dune
25+ - name : Compiling example project (host)
26+ run : opam exec -- dune build @install
27+ - name : Running tests (host)
28+ run : opam exec -- dune runtest
29+ - name : External dependencies for bindings
30+ run : opam depext -iyt ocaml-freestanding
31+ - name : Dune and opam-monorepo
32+ run : opam install -t -y dune opam-monorepo
33+ - name : Run opam-monorepo
34+ run : |
35+ opam monorepo lock
36+ opam monorepo pull
37+ - name : Compiling example project (freestanding)
38+ run : opam exec -- dune build @install --workspace dune-workspace.freestanding
39+ - name : Running tests (freestanding)
40+ run : opam exec -- dune runtest --workspace dune-workspace.freestanding
0 commit comments