cryptol/cryptol-remote-api/cryptol-remote-api.cabal
Ryan Scott 8fcb9f9cc2 Support building with GHC 9.8
This patch:

* Tightens up imports in `Cryptol.Eval.FFI.GenHeader` to avoid importing two
  different versions of `unzip` (note that GHC 9.8 defines `unzip` in
  `Data.Functor`, which is different from the version defined in `Data.List`).
* Bumps the upper version bounds on various dependencies (`base`, `sbv`, etc.)
  to support versions that are compatible with GHC 9.8.

Fixes #1624.
2024-05-22 07:25:20 -04:00

124 lines
3.1 KiB
Plaintext

cabal-version: 2.4
name: cryptol-remote-api
version: 3.1.0.99
license: BSD-3-Clause
license-file: LICENSE
author: Galois, Inc.
maintainer: cryptol-team@galois.com
category: Language
extra-source-files: CHANGELOG.md
flag static
default: False
description: Create a statically-linked binary
flag NotThreaded
default: False
manual: True
description: Omit the -threaded ghc flag
common warnings
ghc-options:
-Wall
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations
-Wno-all-missed-specialisations
-Wno-unsafe
-Wno-safe
-Wno-missing-local-signatures
-Wno-monomorphism-restriction
-Wno-implicit-prelude
-Wno-missing-deriving-strategies
common errors
ghc-options:
-Werror=missing-fields
-Werror=incomplete-patterns
-Werror=missing-methods
-Werror=overlapping-patterns
common deps
build-depends:
base >=4.11.1.0 && <4.20,
argo,
aeson >= 1.4.2 && < 2.3,
base64-bytestring >= 1.0,
bytestring >= 0.10.8 && < 0.13,
containers >=0.6.0.1 && <0.7,
cryptol >= 2.9.0,
directory,
filepath ^>= 1.4,
lens >= 4.17 && < 5.3,
mtl >= 2.2 && < 2.4,
scientific ^>= 0.3,
text >= 1.2.3 && < 2.2,
tf-random,
unordered-containers ^>= 0.2,
vector >= 0.12 && < 0.14,
default-language: Haskell2010
library
import: deps, warnings, errors
hs-source-dirs: src
exposed-modules:
CryptolServer
CryptolServer.Call
CryptolServer.Check
CryptolServer.ClearState
CryptolServer.Data.Expression
CryptolServer.Data.Type
CryptolServer.EvalExpr
CryptolServer.ExtendSearchPath
CryptolServer.Exceptions
CryptolServer.FocusedModule
CryptolServer.Interrupt
CryptolServer.LoadModule
CryptolServer.Options
CryptolServer.Names
CryptolServer.Sat
CryptolServer.TypeCheck
CryptolServer.Version
CryptolServer.FileDeps
other-modules:
CryptolServer.AesonCompat
Paths_cryptol_remote_api
executable cryptol-remote-api
import: deps, warnings, errors
main-is: Main.hs
hs-source-dirs: cryptol-remote-api
if flag(NotThreaded)
ghc-options: -rtsopts -with-rtsopts=-xb0x200000000
else
ghc-options: -threaded -rtsopts -with-rtsopts=-xb0x200000000
build-depends:
cryptol-remote-api,
sbv
if os(linux) && flag(static)
ld-options: -static -pthread
executable cryptol-eval-server
import: deps, warnings, errors
main-is: Main.hs
hs-source-dirs: cryptol-eval-server
if flag(NotThreaded)
ghc-options: -rtsopts -with-rtsopts=-xb0x200000000
else
ghc-options: -threaded -rtsopts -with-rtsopts=-xb0x200000000
build-depends:
cryptol-remote-api,
optparse-applicative,
sbv
if os(linux) && flag(static)
ld-options: -static -pthread