libs #592
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: libs | |
# Tests building external libs we care about. We want this to run frequently | |
# so that upstream changes are handled. | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
schedule: | |
# Every day at 00:00 UTC. | |
# | |
# https://crontab.guru | |
- cron: '0 0 * * 0-6' | |
workflow_dispatch: | |
jobs: | |
# FIXME: This currently fails on CI for a strange reason: | |
# | |
# Failed to build zlib-0.7.1.0 (which is required by test:unit-tests from cabal-install-3.13.0.0, test:mem-use-tests from cabal-install-3.13.0.0 and others). See the build log above for details. | |
# | |
# error: In file included from dist/build/Codec/Compression/Zlib/Stream_hsc_utils.c:6: | |
# /usr/include/stdio.h:205:27: error: ‘L_tmpnam’ undeclared here (not in a function) | |
# 205 | extern char *tmpnam (char[L_tmpnam]) __THROW __wur; | |
# | ^~~~~~~~ | |
# /usr/include/stdio.h:210:33: error: ‘L_tmpnam’ undeclared here (not in a function); did you mean ‘tmpnam’? | |
# 210 | extern char *tmpnam_r (char __s[L_tmpnam]) __THROW __wur; | |
# | ^~~~~~~~ | |
# | tmpnam | |
# Failed to remove file dist/build/Codec/Compression/Zlib/Stream_hsc_utils.o; error= dist/build/Codec/Compression/Zlib/Stream_hsc_utils.o: removeLink: does not exist (No such file or directory) | |
# | |
# But this currently works locally i.e. I can load a 9.10.1 shell and build | |
# the lastest cabal. Not sure what that's about. | |
cabal: | |
runs-on: ubuntu-latest | |
# This allows the cabal job to fail without failing the entire workflow | |
continue-on-error: true | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup nix | |
uses: cachix/install-nix-action@v25 | |
with: | |
github_access_token: ${{ secrets.GITHUB_TOKEN }} | |
nix_path: nixpkgs=channel:nixos-unstable | |
- name: Clone cabal | |
uses: actions/checkout@v4 | |
with: | |
repository: haskell/cabal | |
ref: master | |
path: ./cabal-build | |
- name: Build | |
run: | | |
nix-shell . -A default --argstr ghc-vers ghc9101 --run ' | |
cd ./cabal-build \ | |
&& cabal update \ | |
&& cabal build cabal-install' | |
liquidhaskell: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup nix | |
uses: cachix/install-nix-action@v25 | |
with: | |
github_access_token: ${{ secrets.GITHUB_TOKEN }} | |
nix_path: nixpkgs=channel:nixos-unstable | |
- name: Clone liquidhaskell | |
uses: actions/checkout@v4 | |
with: | |
repository: ucsd-progsys/liquidhaskell | |
ref: develop | |
path: ./liquidhaskell-build | |
submodules: recursive | |
- name: hls = true | |
run: nix-shell . -A liquidhaskell --arg hls true --dry-run | |
- name: Build | |
run: | | |
nix-shell . -A liquidhaskell --run ' | |
cd ./liquidhaskell-build \ | |
&& cabal update \ | |
&& cabal build' | |
- name: Test | |
run: | | |
nix-shell . -A liquidhaskell --run ' | |
cd ./liquidhaskell-build \ | |
&& cabal update \ | |
&& ./scripts/test/test_plugin.sh' |