@@ -18,20 +18,26 @@ jobs:
1818 os : ubuntu-latest
1919 container : rockylinux:8
2020 ocaml_version : 5.2.1
21- opam_arch : i686
22- opam_cache_key : rocky8-5.2.1
21+ opam_arch : x86_64
22+ opam_cache_key : rocky8-5.2.1-x86_64
2323 - name : Linux-aarch64
2424 os : ubuntu-24.04-arm
2525 container : rockylinux:8
2626 ocaml_version : 5.2.1
2727 opam_arch : arm64
2828 opam_cache_key : rocky8-5.2.1-arm
2929 # MacOS disabled for now due to code signing and notarisation requirements
30- # - name: mac-arm64 */
31- # os: macos-latest */
32- # container: "" */
33- # ocaml_version: 5.2.1 */
34- # opam_cache_key: macos-latest-5.2.1 */
30+ # - name: mac-arm64
31+ # os: macos-latest
32+ # container: ""
33+ # ocaml_version: 5.2.1
34+ # opam_cache_key: macos-latest-5.2.1-arm
35+ - name : Windows-x86_64
36+ os : windows-latest
37+ container : " "
38+ ocaml_version : 5.2.1
39+ opam_arch : x86_64
40+ opam_cache_key : windows-5.2.1-x86_64
3541
3642 runs-on : ${{ matrix.os }}
3743 container : ${{ matrix.container }}
4147 OPAMROOTISOK : 1
4248
4349 steps :
44- # This must be before checkout otherwise Github will use a zip of the
45- # code instead of git clone.
50+
4651 - name : System dependencies (Linux)
4752 if : startsWith(matrix.os, 'ubuntu')
4853 run : |
@@ -65,14 +70,24 @@ jobs:
6570 rsync \
6671 which \
6772 cargo
68- curl -L -o /usr/local/bin/opam https://github.com/ocaml/opam/releases/download/2.1.5/opam-2.1.5-${{ matrix.opam_arch }}-linux
69- chmod +x /usr/local/bin/opam
7073
7174 - name : System dependencies (Mac)
7275 if : startsWith(matrix.os, 'macos')
7376 run : |
74- brew install --force --overwrite gpatch gmp z3 pkgconf opam git rust
77+ brew install --force --overwrite gpatch gmp z3 pkgconf git rust
78+
79+ - name : System dependencies (windows)
80+ if : startsWith(matrix.os, 'windows')
81+ run : |
82+ vcpkg install gmp z3
7583
84+ - name : Set-up OCaml
85+ uses : ocaml/setup-ocaml@v3
86+ with :
87+ ocaml-compiler : 5
88+
89+ # This must be after git has been installed otherwise Github will use a zip
90+ # of the code instead of git clone.
7691 - uses : actions/checkout@v4
7792
7893 # Retreive git history (but not files) so that `git describe` works. This is
@@ -112,6 +127,10 @@ jobs:
112127 path : ~/.opam
113128 key : ${{ steps.cache-opam-restore.outputs.cache-primary-key }}
114129
130+ - name : Set env only on Windows
131+ if : runner.os == 'Windows'
132+ run : echo "LEMLIB=c:\Users\???\Local\opam\default\share\lem\library" >> $GITHUB_ENV
133+
115134 - name : Install Sail
116135 run : |
117136 eval $(opam env)
0 commit comments