2014-04-18 21:18:26 +04:00
Name: cryptol
2018-07-30 23:24:33 +03:00
Version: 2.6.0
2014-04-18 02:34:25 +04:00
Synopsis: Cryptol: The Language of Cryptography
2015-03-10 01:16:53 +03:00
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/>.
2014-04-18 02:34:25 +04:00
License: BSD3
2015-06-26 23:45:26 +03:00
License-file: LICENSE
2014-04-18 02:34:25 +04:00
Author: Galois, Inc.
Maintainer: cryptol@galois.com
2015-03-10 01:16:53 +03:00
Homepage: http://www.cryptol.net/
Bug-reports: https://github.com/GaloisInc/cryptol/issues
2017-07-24 19:01:34 +03:00
Copyright: 2013-2017 Galois Inc.
2014-04-18 02:34:25 +04:00
Category: Language
2015-03-16 23:18:28 +03:00
Build-type: Simple
2015-06-26 23:45:26 +03:00
Cabal-version: >= 1.18
2016-05-20 22:04:53 +03:00
extra-source-files: bench/data/*.cry
2014-04-18 02:34:25 +04:00
2018-05-24 01:48:31 +03:00
data-files: *.cry *.z3
2015-01-22 02:03:16 +03:00
data-dir: lib
2014-04-18 02:34:25 +04:00
2015-03-10 01:16:53 +03:00
source-repository head
type: git
location: https://github.com/GaloisInc/cryptol.git
source-repository this
type: git
location: https://github.com/GaloisInc/cryptol.git
2018-07-30 23:24:33 +03:00
tag: 2.6.0
2014-04-18 02:34:25 +04:00
flag static
default: False
description: Create a statically-linked binary
2015-03-04 03:22:14 +03:00
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.
2017-07-25 01:26:49 +03:00
-- 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
2015-07-08 04:13:34 +03:00
2014-04-18 02:34:25 +04:00
library
2014-09-15 01:37:37 +04:00
Default-language:
2017-10-24 21:59:34 +03:00
Haskell2010
2016-06-07 23:40:15 +03:00
Build-depends: base >= 4.8 && < 5,
2018-04-18 20:07:08 +03:00
base-compat >= 0.6 && < 0.10,
2015-12-26 08:39:01 +03:00
bytestring >= 0.10,
2015-12-04 02:36:43 +03:00
array >= 0.4,
containers >= 0.5,
deepseq >= 1.3,
2016-06-07 23:40:15 +03:00
directory >= 1.2.2.0,
2015-12-04 02:36:43 +03:00
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,
2018-04-30 19:54:26 +03:00
sbv >= 7.7,
2017-10-03 20:20:15 +03:00
simple-smt >= 0.7.1,
2017-09-14 01:31:43 +03:00
strict,
2015-12-04 02:36:43 +03:00
text >= 1.1,
tf-random >= 0.5,
transformers-base >= 0.4,
2017-07-18 20:25:00 +03:00
mtl >= 2.2.1,
2018-05-23 00:27:03 +03:00
time >= 1.6.0.1,
panic >= 0.3
2014-04-18 02:34:25 +04:00
2017-09-27 00:02:52 +03:00
2017-09-11 20:36:59 +03:00
Build-tools: alex, happy
2015-01-24 01:22:18 +03:00
hs-source-dirs: src
2014-04-18 02:34:25 +04:00
Exposed-modules: Cryptol.Prims.Syntax,
Cryptol.Prims.Eval,
Cryptol.Parser,
Cryptol.Parser.Lexer,
Cryptol.Parser.AST,
2018-06-12 00:28:49 +03:00
Cryptol.Parser.Fixity,
2014-04-18 02:34:25 +04:00
Cryptol.Parser.Position,
Cryptol.Parser.Names,
2015-09-25 00:47:52 +03:00
Cryptol.Parser.Name,
2014-04-18 02:34:25 +04:00
Cryptol.Parser.NoPat,
Cryptol.Parser.NoInclude,
2018-06-12 00:28:49 +03:00
Cryptol.Parser.Selector,
2014-04-18 02:34:25 +04:00
Cryptol.Parser.Utils,
Cryptol.Parser.Unlit,
2015-09-25 00:47:52 +03:00
Cryptol.Utils.Ident,
2014-04-18 02:34:25 +04:00
Cryptol.Utils.PP,
Cryptol.Utils.Panic,
Cryptol.Utils.Debug,
2014-12-05 22:46:09 +03:00
Cryptol.Utils.Misc,
2017-02-09 02:08:50 +03:00
Cryptol.Utils.Patterns,
2017-10-05 01:50:31 +03:00
Cryptol.Utils.Logger,
2014-04-18 02:34:25 +04:00
Cryptol.Version,
Cryptol.ModuleSystem,
Cryptol.ModuleSystem.Base,
Cryptol.ModuleSystem.Env,
Cryptol.ModuleSystem.Interface,
Cryptol.ModuleSystem.Monad,
2015-05-21 23:42:54 +03:00
Cryptol.ModuleSystem.Name,
2014-04-18 02:34:25 +04:00
Cryptol.ModuleSystem.NamingEnv,
Cryptol.ModuleSystem.Renamer,
2017-10-03 01:01:45 +03:00
Cryptol.ModuleSystem.Exports,
2017-09-30 02:27:13 +03:00
Cryptol.ModuleSystem.InstantiateModule,
2014-04-18 02:34:25 +04:00
Cryptol.TypeCheck,
2017-01-31 05:14:10 +03:00
Cryptol.TypeCheck.Type,
2017-02-09 02:08:50 +03:00
Cryptol.TypeCheck.TypePat,
Cryptol.TypeCheck.SimpType,
2014-04-18 02:34:25 +04:00
Cryptol.TypeCheck.AST,
2017-08-15 01:45:37 +03:00
Cryptol.TypeCheck.Parseable,
2014-04-18 02:34:25 +04:00
Cryptol.TypeCheck.Monad,
Cryptol.TypeCheck.Infer,
2017-10-05 22:45:11 +03:00
Cryptol.TypeCheck.CheckModuleInstance,
2014-04-18 02:34:25 +04:00
Cryptol.TypeCheck.InferTypes,
2017-12-22 00:59:43 +03:00
Cryptol.TypeCheck.Error,
2014-04-18 02:34:25 +04:00
Cryptol.TypeCheck.Kind,
Cryptol.TypeCheck.Subst,
Cryptol.TypeCheck.Instantiate,
Cryptol.TypeCheck.Unify,
Cryptol.TypeCheck.Depends,
Cryptol.TypeCheck.PP,
Cryptol.TypeCheck.Solve,
2017-12-23 03:01:19 +03:00
Cryptol.TypeCheck.Default,
2017-01-31 05:14:10 +03:00
Cryptol.TypeCheck.SimpleSolver,
2014-04-18 02:34:25 +04:00
Cryptol.TypeCheck.TypeMap,
2014-05-10 03:27:07 +04:00
Cryptol.TypeCheck.TypeOf,
2015-05-20 00:25:56 +03:00
Cryptol.TypeCheck.Sanity,
2014-04-18 02:34:25 +04:00
2017-02-01 01:12:53 +03:00
Cryptol.TypeCheck.Solver.Types,
2017-02-17 03:46:38 +03:00
Cryptol.TypeCheck.Solver.SMT,
2014-04-18 02:34:25 +04:00
Cryptol.TypeCheck.Solver.InfNat,
Cryptol.TypeCheck.Solver.Class,
Cryptol.TypeCheck.Solver.Selector,
Cryptol.TypeCheck.Solver.Utils,
2017-01-31 05:14:10 +03:00
Cryptol.TypeCheck.Solver.Numeric,
2017-02-09 02:08:50 +03:00
Cryptol.TypeCheck.Solver.Improve,
2015-08-15 03:38:41 +03:00
Cryptol.TypeCheck.Solver.Numeric.Fin,
Cryptol.TypeCheck.Solver.Numeric.Interval,
2014-12-02 03:28:29 +03:00
2014-04-18 02:34:25 +04:00
Cryptol.Transform.MonoValues,
Cryptol.Transform.Specialize,
2017-10-19 23:45:40 +03:00
Cryptol.Transform.AddModParams,
2014-04-18 02:34:25 +04:00
2017-10-28 00:59:32 +03:00
Cryptol.IR.FreeVars,
2014-04-18 02:34:25 +04:00
Cryptol.Eval,
2014-11-04 23:11:24 +03:00
Cryptol.Eval.Arch,
2014-04-18 02:34:25 +04:00
Cryptol.Eval.Env,
2016-05-13 04:44:06 +03:00
Cryptol.Eval.Monad,
2017-02-03 20:02:25 +03:00
Cryptol.Eval.Reference,
2014-04-18 02:34:25 +04:00
Cryptol.Eval.Type,
Cryptol.Eval.Value,
2015-12-23 05:17:20 +03:00
Cryptol.Testing.Concrete,
2014-04-18 02:34:25 +04:00
Cryptol.Testing.Random,
2015-03-03 02:46:21 +03:00
Cryptol.Symbolic,
Cryptol.Symbolic.Prims,
Cryptol.Symbolic.Value,
2014-04-18 02:34:25 +04:00
2015-03-03 02:46:21 +03:00
Cryptol.REPL.Command,
Cryptol.REPL.Monad,
Cryptol.REPL.Trie
2014-04-18 02:34:25 +04:00
2014-08-06 20:49:19 +04:00
Other-modules: Cryptol.Parser.LexerUtils,
Cryptol.Parser.ParserUtils,
2015-03-06 02:14:09 +03:00
Cryptol.Prelude,
2014-04-18 21:28:46 +04:00
Paths_cryptol,
2014-04-18 02:34:25 +04:00
GitRev
2018-08-01 18:59:54 +03:00
GHC-options: -Wall -fsimpl-tick-factor=140
2016-06-28 00:56:55 +03:00
if impl(ghc >= 8.0.1)
ghc-options: -Wno-redundant-constraints
2014-04-18 02:34:25 +04:00
2015-03-04 03:22:14 +03:00
if flag(relocatable)
cpp-options: -DRELOCATABLE
2014-04-18 02:34:25 +04:00
executable cryptol
2014-09-15 01:37:37 +04:00
Default-language:
2017-10-24 21:59:34 +03:00
Haskell2010
2014-04-18 02:34:25 +04:00
Main-is: Main.hs
hs-source-dirs: cryptol
Other-modules: OptParser,
REPL.Haskeline,
2015-01-28 22:28:52 +03:00
REPL.Logo,
2014-04-18 21:28:46 +04:00
Paths_cryptol
2015-02-06 04:05:11 +03:00
build-depends: ansi-terminal
, base
2015-10-09 02:54:08 +03:00
, base-compat
2018-07-31 04:11:08 +03:00
, containers
2015-02-06 04:05:11 +03:00
, cryptol
, directory
, filepath
, haskeline
2015-12-04 02:36:43 +03:00
, monad-control
2017-10-05 05:15:42 +03:00
, text
2015-02-06 04:05:11 +03:00
, transformers
2018-08-01 18:59:54 +03:00
GHC-options: -Wall -threaded -rtsopts "-with-rtsopts=-N1 -A64m"
2016-06-28 00:56:55 +03:00
if impl(ghc >= 8.0.1)
ghc-options: -Wno-redundant-constraints
2014-04-18 02:34:25 +04:00
if os(linux) && flag(static)
ld-options: -static -pthread
2015-07-08 04:13:34 +03:00
2017-10-25 21:12:37 +03:00
executable cryptol-html
2018-08-01 18:59:54 +03:00
Default-language:
Haskell2010
2017-10-25 21:12:37 +03:00
main-is: CryHtml.hs
hs-source-dirs: utils
2018-03-06 04:07:19 +03:00
build-depends: base, text, cryptol, blaze-html
2017-10-25 21:12:37 +03:00
GHC-options: -Wall
2017-07-25 01:26:49 +03:00
-- 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
2018-08-01 18:59:54 +03:00
-- GHC-options: -Wall -threaded -rtsopts "-with-rtsopts=-N1 -A64m"
2017-07-25 01:26:49 +03:00
-- 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
2015-08-10 21:24:36 +03:00
benchmark cryptol-bench
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: bench
default-language: Haskell2010
2018-08-01 18:59:54 +03:00
GHC-options: -Wall -threaded -rtsopts "-with-rtsopts=-N1 -A64m"
2016-06-28 00:56:55 +03:00
if impl(ghc >= 8.0.1)
ghc-options: -Wno-redundant-constraints
2015-08-10 21:24:36 +03:00
if os(linux) && flag(static)
ld-options: -static -pthread
build-depends: base
, criterion
, cryptol
2015-08-10 23:52:01 +03:00
, deepseq
2017-03-21 22:31:04 +03:00
, directory
, filepath
2018-04-30 19:54:26 +03:00
, sbv >= 7.7
2015-08-10 21:24:36 +03:00
, text