mirror of
https://github.com/GaloisInc/cryptol.git
synced 2024-11-22 21:50:54 +03:00
CI: Prefer Use 9.2.8 (not 8.10.7) for building Docker images
There are two motivations for doing so: * `sbv-10.0` and later no longer build against GHC 8.10 (see https://github.com/LeventErkok/sbv/issues/655), but we want to use a new `sbv` version to come to a resolution to #1548. As such, we need a newer GHC. * `ghcup` now recommends GHC 9.2.8 for most usage, so it's time we switched anyway.
This commit is contained in:
parent
71a8f86fb4
commit
77a52e3bb6
10
.github/workflows/ci.yml
vendored
10
.github/workflows/ci.yml
vendored
@ -70,7 +70,7 @@ jobs:
|
||||
run-tests: [true]
|
||||
exclude:
|
||||
- os: windows-2019
|
||||
ghc-version: 9.2.8
|
||||
ghc-version: 8.10.7
|
||||
run-tests: true
|
||||
- os: windows-2019
|
||||
ghc-version: 9.4.5
|
||||
@ -80,7 +80,7 @@ jobs:
|
||||
# coverage of possible Linux configurations. Since we already run the
|
||||
# tests with the newest LTS release, we won't bother testing this one.
|
||||
- os: ubuntu-20.04
|
||||
ghc-version: 8.10.7
|
||||
ghc-version: 9.2.8
|
||||
run-tests: false
|
||||
outputs:
|
||||
test-lib-json: ${{ steps.test-lib.outputs.targets-json }}
|
||||
@ -218,13 +218,13 @@ jobs:
|
||||
if-no-files-found: error
|
||||
retention-days: ${{ needs.config.outputs.retention-days }}
|
||||
|
||||
- if: matrix.ghc-version == '8.10.7' && matrix.run-tests
|
||||
- if: matrix.ghc-version == '9.2.8' && matrix.run-tests
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
path: dist/bin
|
||||
name: ${{ runner.os }}-dist-bin
|
||||
|
||||
- if: matrix.ghc-version == '8.10.7' && matrix.run-tests
|
||||
- if: matrix.ghc-version == '9.2.8' && matrix.run-tests
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
path: bin
|
||||
@ -268,7 +268,7 @@ jobs:
|
||||
|
||||
- uses: haskell/actions/setup@v2
|
||||
with:
|
||||
ghc-version: '8.10.7'
|
||||
ghc-version: '9.2.8'
|
||||
|
||||
- name: Install dependencies (Windows)
|
||||
uses: msys2/setup-msys2@v2
|
||||
|
4
.gitpod.Dockerfile
vendored
4
.gitpod.Dockerfile
vendored
@ -19,10 +19,10 @@ RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -yq \
|
||||
RUN curl https://i.jpillora.com/chisel! | bash
|
||||
|
||||
# Install GHC
|
||||
ARG GHCVER="8.10.7"
|
||||
ARG GHCVER="9.2.8"
|
||||
ENV GHCUP_INSTALL_BASE_PREFIX=/opt \
|
||||
PATH=/opt/.ghcup/bin:$PATH
|
||||
RUN curl -o /usr/local/bin/ghcup "https://downloads.haskell.org/~ghcup/0.1.17.7/x86_64-linux-ghcup-0.1.17.7" && \
|
||||
RUN curl -o /usr/local/bin/ghcup "https://downloads.haskell.org/~ghcup/0.1.19.4/x86_64-linux-ghcup-0.1.19.4" && \
|
||||
chmod +x /usr/local/bin/ghcup
|
||||
RUN ghcup install cabal --set
|
||||
ENV PATH=/root/.cabal/bin:$PATH
|
||||
|
@ -24,15 +24,15 @@ RUN z3 --version
|
||||
ARG CRYPTOLPATH="/cryptol/.cryptol"
|
||||
ENV LANG=C.UTF-8 \
|
||||
LC_ALL=C.UTF-8
|
||||
COPY cabal.GHC-8.10.7.config cabal.project.freeze
|
||||
COPY cabal.GHC-9.2.8.config cabal.project.freeze
|
||||
RUN mkdir -p /home/cryptol/.local/bin && \
|
||||
curl -L https://downloads.haskell.org/~ghcup/0.1.17.7/x86_64-linux-ghcup-0.1.17.7 -o /home/cryptol/.local/bin/ghcup && \
|
||||
curl -L https://downloads.haskell.org/~ghcup/0.1.19.4/x86_64-linux-ghcup-0.1.19.4 -o /home/cryptol/.local/bin/ghcup && \
|
||||
chmod +x /home/cryptol/.local/bin/ghcup
|
||||
RUN mkdir -p /home/cryptol/.ghcup && \
|
||||
ghcup --version && \
|
||||
ghcup install cabal 3.6.2.0 && \
|
||||
ghcup install ghc 8.10.7 && \
|
||||
ghcup set ghc 8.10.7
|
||||
ghcup install ghc 9.2.8 && \
|
||||
ghcup set ghc 9.2.8
|
||||
RUN cabal v2-update && \
|
||||
cabal v2-build -j cryptol:exe:cryptol && \
|
||||
cp $(cabal v2-exec which cryptol) rootfs/usr/local/bin && \
|
||||
|
@ -1,4 +1,4 @@
|
||||
ARG GHCVER="8.10.7"
|
||||
ARG GHCVER="9.2.8"
|
||||
ARG GHCVER_BOOTSTRAP="8.10.2"
|
||||
FROM ubuntu:22.04 AS toolchain
|
||||
ARG PORTABILITY=false
|
||||
@ -14,7 +14,7 @@ RUN apt-get update && \
|
||||
unzip
|
||||
ENV GHCUP_INSTALL_BASE_PREFIX=/opt \
|
||||
PATH=/opt/.ghcup/bin:$PATH
|
||||
RUN curl -o /usr/local/bin/ghcup "https://downloads.haskell.org/~ghcup/0.1.17.7/x86_64-linux-ghcup-0.1.17.7" && \
|
||||
RUN curl -o /usr/local/bin/ghcup "https://downloads.haskell.org/~ghcup/0.1.19.4/x86_64-linux-ghcup-0.1.19.4" && \
|
||||
chmod +x /usr/local/bin/ghcup
|
||||
RUN ghcup install cabal --set
|
||||
ENV PATH=/root/.cabal/bin:$PATH
|
||||
@ -25,7 +25,7 @@ RUN if ${PORTABILITY}; then \
|
||||
ghcup install ghc ${GHCVER_BOOTSTRAP} && \
|
||||
ghcup set ghc ${GHCVER_BOOTSTRAP} && \
|
||||
cabal v2-update && \
|
||||
cabal v2-install alex happy-1.19.12 && \
|
||||
cabal v2-install alex happy-1.20.1.1 && \
|
||||
git clone --recurse-submodules --depth 1 --branch ghc-${GHCVER}-release https://gitlab.haskell.org/ghc/ghc.git && \
|
||||
cd ./ghc && \
|
||||
git apply ../ghc-portability.patch && \
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6eac557b93..fd87983730 100644
|
||||
index 31dd8a89b2..03835037fc 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -922,7 +922,7 @@ dnl off_t, because it will affect the result of that test.
|
||||
@@ -943,7 +943,7 @@ dnl off_t, because it will affect the result of that test.
|
||||
AC_SYS_LARGEFILE
|
||||
|
||||
dnl ** check for specific header (.h) files that we are interested in
|
||||
@ -11,9 +11,9 @@ index 6eac557b93..fd87983730 100644
|
||||
|
||||
dnl sys/cpuset.h needs sys/param.h to be included first on FreeBSD 9.1; #7708
|
||||
AC_CHECK_HEADERS([sys/cpuset.h], [], [],
|
||||
@@ -1230,10 +1230,6 @@ AC_LINK_IFELSE([
|
||||
AC_MSG_RESULT(no)
|
||||
)
|
||||
@@ -1166,10 +1166,6 @@ AC_LINK_IFELSE([AC_LANG_CALL([], [printf\$LDBLStub])],
|
||||
|
||||
FP_CHECK_PTHREADS
|
||||
|
||||
-dnl ** check for eventfd which is needed by the I/O manager
|
||||
-AC_CHECK_HEADERS([sys/eventfd.h])
|
||||
@ -23,7 +23,7 @@ index 6eac557b93..fd87983730 100644
|
||||
AC_MSG_CHECKING(for __thread support)
|
||||
AC_COMPILE_IFELSE(
|
||||
diff --git a/libraries/base/configure.ac b/libraries/base/configure.ac
|
||||
index 716e46cc05..694bf6aa81 100644
|
||||
index 68295563af..2d7683c27b 100644
|
||||
--- a/libraries/base/configure.ac
|
||||
+++ b/libraries/base/configure.ac
|
||||
@@ -23,7 +23,7 @@ AC_MSG_RESULT($WINDOWS)
|
||||
@ -35,12 +35,12 @@ index 716e46cc05..694bf6aa81 100644
|
||||
|
||||
# Enable large file support. Do this before testing the types ino_t, off_t, and
|
||||
# rlim_t, because it will affect the result of that test.
|
||||
@@ -40,7 +40,7 @@ AC_CHECK_FUNCS([clock_gettime])
|
||||
AC_CHECK_FUNCS([getclock getrusage times])
|
||||
AC_CHECK_FUNCS([_chsize ftruncate])
|
||||
|
||||
@@ -46,7 +46,7 @@ AC_CHECK_FUNCS([_chsize ftruncate])
|
||||
# to keep kqueue/poll in line with HAVE_EPOLL and possible other additions in the future. You
|
||||
# should be aware of this peculiarity if you try to simulate not having kqueue or poll by
|
||||
# moving away header files (see also https://gitlab.haskell.org/ghc/ghc/-/issues/9283)
|
||||
-AC_CHECK_FUNCS([epoll_ctl eventfd kevent kevent64 kqueue poll])
|
||||
+AC_CHECK_FUNCS([epoll_ctl kevent kevent64 kqueue poll])
|
||||
|
||||
# event-related fun
|
||||
|
||||
if test "$ac_cv_header_sys_epoll_h" = yes && test "$ac_cv_func_epoll_ctl" = yes; then
|
||||
AC_DEFINE([HAVE_EPOLL], [1], [Define if you have epoll support.])
|
||||
|
Loading…
Reference in New Issue
Block a user