@@ -326,6 +326,34 @@ jobs:
326326 # - name: Build Dune
327327 # run: _boot/dune build dune.install
328328
329+ oxcaml :
330+ name : Building Dune with OxCaml
331+ needs : nix-build
332+ runs-on : ubuntu-latest
333+ steps :
334+ - uses : actions/checkout@v5
335+
336+ - name : Install OCaml
337+ uses : ocaml/setup-ocaml@v3
338+ with :
339+ ocaml-compiler : ocaml-variants.5.2.0+ox
340+ opam-repositories : |
341+ oxcaml: "git+https://github.com/oxcaml/opam-repository.git"
342+ default: "git+https://github.com/ocaml/opam-repository.git"
343+ opam-pin : false
344+
345+ - name : Pin deps
346+ run : opam pin add -n . --with-version=3.20.2+ox
347+
348+ - name : Install deps
349+ run : opam install csexp pp re spawn uutf ./dune.opam
350+
351+ - name : Build dune
352+ run : opam exec -- make bootstrap
353+
354+ - name : Run OxCaml tests
355+ run : opam exec -- ./dune.exe test ./test/blackbox-tests/test-cases/oxcaml
356+
329357 create-local-opam-switch :
330358 name : Create local opam switch
331359 needs : nix-build
@@ -370,25 +398,6 @@ jobs:
370398 gc-max-store-size-linux : 5G
371399 - run : nix develop .#microbench -c make dune build bench/micro
372400
373- oxcaml-test :
374- name : OxCaml
375- needs : nix-build
376- runs-on : ubuntu-latest
377- steps :
378- - uses : actions/checkout@v5
379- - uses : nixbuild/nix-quick-install-action@v34
380- with :
381- nix_conf : ${{ env.EXTRA_NIX_CONFIG }}
382- - uses : nix-community/cache-nix-action@v6
383- with :
384- primary-key : |
385- nix-${{ runner.os }}-${{ github.job }}-${{ hashFiles('**/*.nix', '**/flake.lock') }}
386- restore-prefixes-first-match : nix-${{ runner.os }}-${{ github.job }}-
387- gc-max-store-size-linux : 2G
388- - run : |
389- nix develop .#ox-minimal -c ocaml --version
390- nix develop .#ox-minimal -c make test-ox
391-
392401 utop-dev-tool-test :
393402 name : Test that the utop dev tool can be built and run
394403 runs-on : ubuntu-latest
0 commit comments