mirror of
https://github.com/GaloisInc/cryptol.git
synced 2024-11-24 15:08:58 +03:00
71b2f8ce70
module. Push primitive type if/then/else operations into the `Backend` class, and promote `iteValue` and `mergeValue` to operations on generic values.
271 lines
10 KiB
Plaintext
271 lines
10 KiB
Plaintext
Name: cryptol
|
|
Version: 2.8.1
|
|
Synopsis: Cryptol: The Language of Cryptography
|
|
Description: Cryptol is a domain-specific language for specifying cryptographic algorithms. A Cryptol implementation of an algorithm resembles its mathematical specification more closely than an implementation in a general purpose language. For more, see <http://www.cryptol.net/>.
|
|
License: BSD3
|
|
License-file: LICENSE
|
|
Author: Galois, Inc.
|
|
Maintainer: cryptol@galois.com
|
|
Homepage: http://www.cryptol.net/
|
|
Bug-reports: https://github.com/GaloisInc/cryptol/issues
|
|
Copyright: 2013-2019 Galois Inc.
|
|
Category: Language
|
|
Build-type: Simple
|
|
Cabal-version: 1.18
|
|
extra-source-files: bench/data/*.cry
|
|
CHANGES.md
|
|
|
|
data-files: *.cry *.z3
|
|
data-dir: lib
|
|
|
|
source-repository head
|
|
type: git
|
|
location: https://github.com/GaloisInc/cryptol.git
|
|
|
|
source-repository this
|
|
type: git
|
|
location: https://github.com/GaloisInc/cryptol.git
|
|
|
|
flag static
|
|
default: False
|
|
description: Create a statically-linked binary
|
|
|
|
flag relocatable
|
|
default: True
|
|
description: Don't use the Cabal-provided data directory for looking up Cryptol libraries. This is useful when the data directory can't be known ahead of time, like for a relocatable distribution.
|
|
|
|
-- Note: the Cryptol server needs to be updated to some new APIs.
|
|
--flag server
|
|
-- default: False
|
|
-- description: Build with the ZeroMQ/JSON cryptol-server executable
|
|
|
|
library
|
|
Default-language:
|
|
Haskell2010
|
|
Build-depends: base >= 4.8 && < 5,
|
|
base-compat >= 0.6 && < 0.11,
|
|
bytestring >= 0.10,
|
|
array >= 0.4,
|
|
containers >= 0.5,
|
|
cryptohash-sha1 >= 0.11 && < 0.12,
|
|
deepseq >= 1.3,
|
|
directory >= 1.2.2.0,
|
|
filepath >= 1.3,
|
|
gitrev >= 1.0,
|
|
GraphSCC >= 1.0.4,
|
|
heredoc >= 0.2,
|
|
monad-control >= 1.0,
|
|
monadLib >= 3.7.2,
|
|
pretty >= 1.1,
|
|
process >= 1.2,
|
|
random >= 1.0.1,
|
|
sbv >= 8.1,
|
|
simple-smt >= 0.7.1,
|
|
strict,
|
|
text >= 1.1,
|
|
tf-random >= 0.5,
|
|
transformers-base >= 0.4,
|
|
mtl >= 2.2.1,
|
|
time >= 1.6.0.1,
|
|
panic >= 0.3
|
|
|
|
|
|
Build-tools: alex, happy
|
|
hs-source-dirs: src
|
|
|
|
Exposed-modules: Cryptol.Parser,
|
|
Cryptol.Parser.Lexer,
|
|
Cryptol.Parser.AST,
|
|
Cryptol.Parser.Position,
|
|
Cryptol.Parser.Names,
|
|
Cryptol.Parser.Name,
|
|
Cryptol.Parser.NoPat,
|
|
Cryptol.Parser.NoInclude,
|
|
Cryptol.Parser.Selector,
|
|
Cryptol.Parser.Utils,
|
|
Cryptol.Parser.Unlit,
|
|
|
|
Cryptol.Utils.Fixity,
|
|
Cryptol.Utils.Ident,
|
|
Cryptol.Utils.PP,
|
|
Cryptol.Utils.Panic,
|
|
Cryptol.Utils.Debug,
|
|
Cryptol.Utils.Misc,
|
|
Cryptol.Utils.Patterns,
|
|
Cryptol.Utils.Logger,
|
|
Cryptol.Version,
|
|
|
|
Cryptol.ModuleSystem,
|
|
Cryptol.ModuleSystem.Base,
|
|
Cryptol.ModuleSystem.Env,
|
|
Cryptol.ModuleSystem.Fingerprint,
|
|
Cryptol.ModuleSystem.Interface,
|
|
Cryptol.ModuleSystem.Monad,
|
|
Cryptol.ModuleSystem.Name,
|
|
Cryptol.ModuleSystem.NamingEnv,
|
|
Cryptol.ModuleSystem.Renamer,
|
|
Cryptol.ModuleSystem.Exports,
|
|
Cryptol.ModuleSystem.InstantiateModule,
|
|
|
|
Cryptol.TypeCheck,
|
|
Cryptol.TypeCheck.Type,
|
|
Cryptol.TypeCheck.TCon,
|
|
Cryptol.TypeCheck.TypePat,
|
|
Cryptol.TypeCheck.SimpType,
|
|
Cryptol.TypeCheck.AST,
|
|
Cryptol.TypeCheck.Parseable,
|
|
Cryptol.TypeCheck.Monad,
|
|
Cryptol.TypeCheck.Infer,
|
|
Cryptol.TypeCheck.CheckModuleInstance,
|
|
Cryptol.TypeCheck.InferTypes,
|
|
Cryptol.TypeCheck.Error,
|
|
Cryptol.TypeCheck.Kind,
|
|
Cryptol.TypeCheck.Subst,
|
|
Cryptol.TypeCheck.Instantiate,
|
|
Cryptol.TypeCheck.Unify,
|
|
Cryptol.TypeCheck.Depends,
|
|
Cryptol.TypeCheck.PP,
|
|
Cryptol.TypeCheck.Solve,
|
|
Cryptol.TypeCheck.Default,
|
|
Cryptol.TypeCheck.SimpleSolver,
|
|
Cryptol.TypeCheck.TypeMap,
|
|
Cryptol.TypeCheck.TypeOf,
|
|
Cryptol.TypeCheck.Sanity,
|
|
|
|
Cryptol.TypeCheck.Solver.Types,
|
|
Cryptol.TypeCheck.Solver.SMT,
|
|
Cryptol.TypeCheck.Solver.InfNat,
|
|
Cryptol.TypeCheck.Solver.Class,
|
|
Cryptol.TypeCheck.Solver.Selector,
|
|
Cryptol.TypeCheck.Solver.Utils,
|
|
|
|
Cryptol.TypeCheck.Solver.Numeric,
|
|
Cryptol.TypeCheck.Solver.Improve,
|
|
Cryptol.TypeCheck.Solver.Numeric.Fin,
|
|
Cryptol.TypeCheck.Solver.Numeric.Interval,
|
|
|
|
Cryptol.Transform.MonoValues,
|
|
Cryptol.Transform.Specialize,
|
|
Cryptol.Transform.AddModParams,
|
|
|
|
Cryptol.IR.FreeVars,
|
|
|
|
Cryptol.Eval,
|
|
Cryptol.Eval.Arch,
|
|
Cryptol.Eval.Backend,
|
|
Cryptol.Eval.Concrete,
|
|
Cryptol.Eval.Concrete.Value,
|
|
Cryptol.Eval.Env,
|
|
Cryptol.Eval.Generic,
|
|
Cryptol.Eval.Monad,
|
|
Cryptol.Eval.Reference,
|
|
Cryptol.Eval.SBV,
|
|
Cryptol.Eval.Type,
|
|
Cryptol.Eval.Value,
|
|
|
|
Cryptol.Testing.Random,
|
|
|
|
Cryptol.Symbolic,
|
|
|
|
Cryptol.REPL.Command,
|
|
Cryptol.REPL.Monad,
|
|
Cryptol.REPL.Trie
|
|
|
|
Other-modules: Cryptol.Parser.LexerUtils,
|
|
Cryptol.Parser.ParserUtils,
|
|
Cryptol.Prelude,
|
|
Paths_cryptol,
|
|
GitRev
|
|
|
|
GHC-options: -Wall -fsimpl-tick-factor=140
|
|
if impl(ghc >= 8.0.1)
|
|
ghc-options: -Wno-redundant-constraints
|
|
|
|
if flag(relocatable)
|
|
cpp-options: -DRELOCATABLE
|
|
|
|
executable cryptol
|
|
Default-language:
|
|
Haskell2010
|
|
Main-is: Main.hs
|
|
hs-source-dirs: cryptol
|
|
Other-modules: OptParser,
|
|
REPL.Haskeline,
|
|
REPL.Logo,
|
|
Paths_cryptol
|
|
build-depends: ansi-terminal
|
|
, base
|
|
, base-compat
|
|
, containers
|
|
, cryptol
|
|
, directory
|
|
, filepath
|
|
, haskeline >= 0.7 && <= 0.8
|
|
, monad-control
|
|
, text
|
|
, transformers
|
|
GHC-options: -Wall -threaded -rtsopts "-with-rtsopts=-N1 -A64m"
|
|
if impl(ghc >= 8.0.1)
|
|
ghc-options: -Wno-redundant-constraints
|
|
|
|
if os(linux) && flag(static)
|
|
ld-options: -static -pthread
|
|
|
|
executable cryptol-html
|
|
Default-language:
|
|
Haskell2010
|
|
main-is: CryHtml.hs
|
|
hs-source-dirs: utils
|
|
build-depends: base, text, cryptol, blaze-html
|
|
GHC-options: -Wall
|
|
|
|
-- Note: the Cryptol server needs to be updated to some new APIs.
|
|
--executable cryptol-server
|
|
-- main-is: Main.hs
|
|
-- hs-source-dirs: cryptol-server
|
|
-- other-modules: Cryptol.Aeson
|
|
-- default-language: Haskell2010
|
|
-- default-extensions: OverloadedStrings
|
|
-- GHC-options: -Wall -threaded -rtsopts "-with-rtsopts=-N1 -A64m"
|
|
-- if impl(ghc >= 8.0.1)
|
|
-- ghc-options: -Wno-redundant-constraints
|
|
-- if os(linux) && flag(static)
|
|
-- ld-options: -static -pthread
|
|
-- if flag(server)
|
|
-- build-depends: aeson >= 0.10
|
|
-- , aeson-pretty >= 0.7
|
|
-- , base
|
|
-- , base-compat
|
|
-- , bytestring >= 0.10
|
|
-- , containers
|
|
-- , cryptol
|
|
-- , filepath
|
|
-- , monad-control
|
|
-- , optparse-applicative >= 0.12
|
|
-- , text
|
|
-- , transformers
|
|
-- , unix
|
|
-- , unordered-containers >= 0.2
|
|
-- , zeromq4-haskell >= 0.6
|
|
-- else
|
|
-- buildable: False
|
|
|
|
benchmark cryptol-bench
|
|
type: exitcode-stdio-1.0
|
|
main-is: Main.hs
|
|
hs-source-dirs: bench
|
|
default-language: Haskell2010
|
|
GHC-options: -Wall -threaded -rtsopts "-with-rtsopts=-N1 -A64m"
|
|
if impl(ghc >= 8.0.1)
|
|
ghc-options: -Wno-redundant-constraints
|
|
if os(linux) && flag(static)
|
|
ld-options: -static -pthread
|
|
build-depends: base
|
|
, criterion
|
|
, cryptol
|
|
, deepseq
|
|
, directory
|
|
, filepath
|
|
, sbv >= 8.1
|
|
, text
|