Merge pull request #50 from dinosaure/update-mirage-crypto #426
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: Cosmopolitan production | |
on: [push, pull_request] | |
jobs: | |
test: | |
strategy: | |
matrix: | |
operating-system: [ubuntu-latest] | |
ocaml-version: ["4.14.0"] | |
runs-on: ${{ matrix.operating-system }} | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: ocaml/setup-ocaml@v2 | |
with: | |
ocaml-compiler: ${{ matrix.ocaml-version }} | |
# See jart/cosmopolitan#3 | |
- name: Fix binfmt and Cosmopolitan | |
run: sudo sh -c "echo ':APE:M::MZqFpD::/bin/sh:' >/proc/sys/fs/binfmt_misc/register" | |
- name: Pin & Install workflows | |
run: | | |
opam pin add git+https://github.com/dinosaure/esperanto.git | |
opam install ocamlfind opam-monorepo | |
opam repo add upstream git+https://github.com/ocaml/opam-repository.git | |
opam repo add dune-universe git+https://github.com/dune-universe/opam-overlays.git | |
opam repo add mirage-universe git+https://github.com/dune-universe/mirage-opam-overlays.git | |
- name: Compilation | |
run: | | |
env OPAMVAR_monorepo='opam-monorepo' opam monorepo lock --require-cross-compile --build-only --ocaml-version ${{ matrix.ocaml-version }} com | |
env OPAMVAR_monorepo='opam-monorepo' opam monorepo pull | |
opam exec -- dune build -x esperanto -p bob bin/bob.exe | |
objcopy -S -O binary _build/default.esperanto/bin/bob.exe bob.com | |
strip bob.com | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: bob.com | |
path: bob.com |