aboutsummaryrefslogtreecommitdiffstats
path: root/verifuzz.cabal
blob: 575365b374110ee165b912c39bf556a71e1c250a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
name:                  verifuzz
version:               0.1.0.0
synopsis:              Random verilog generation and simulator testing.
description:           VeriFuzz provides random verilog generation modules
                       implementing functions to test supported simulators.
homepage:              https://github.com/githubuser/verifuzz#readme
license:               BSD3
license-file:          LICENSE
author:                Yann Herklotz
maintainer:            ymherklotz@gmail.com
copyright:             2018 Yann Herklotz
category:              Web
build-type:            Simple
cabal-version:         >=1.10
extra-source-files:    README.md
                     , data/*.v
                     , examples/*.v

library
  hs-source-dirs:      src
  default-language:    Haskell2010
  ghc-options:         -Wall
  other-modules:     , VeriFuzz.Internal.Gen
                     , VeriFuzz.Internal.Shared
                     , VeriFuzz.Simulator.Internal.Template
  exposed-modules:     VeriFuzz
                     , VeriFuzz.Circuit
                     , VeriFuzz.Graph.ASTGen
                     , VeriFuzz.Graph.CodeGen
                     , VeriFuzz.Graph.Random
                     , VeriFuzz.Graph.RandomAlt
                     , VeriFuzz.Simulator
                     , VeriFuzz.Simulator.General
                     , VeriFuzz.Simulator.Icarus
                     , VeriFuzz.Simulator.Xst
                     , VeriFuzz.Simulator.Yosys
                     , VeriFuzz.Verilog
                     , VeriFuzz.Verilog.AST
                     , VeriFuzz.Verilog.CodeGen
                     , VeriFuzz.Verilog.Helpers
                     , VeriFuzz.Verilog.Mutate
  build-depends:       base >= 4.7 && < 5
                     , QuickCheck >=2.3 && <2.10
                     , fgl
                     , fgl-arbitrary
                     , lens
                     , random
                     , shakespeare
                     , shelly
                     , text
                     , bytestring
                     , hashable
                     , transformers
  default-extensions:  OverloadedStrings

executable verifuzz
  main-is:             app/Main.hs
  default-language:    Haskell2010
  build-depends:       base >= 4.7 && < 5
                     , verifuzz
                     , fgl
                     , fgl-arbitrary
                     , fgl-visualize
                     , text
                     , QuickCheck
                     , bytestring
                     , shelly
                     , DRBG
                     , lens
  default-extensions:  OverloadedStrings

test-suite verifuzz-test
  default-language:    Haskell2010
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Test.hs
  other-modules:       Unit
                     , Property
  build-depends:       base >= 4 && < 5
                     , verifuzz
                     , fgl
                     , tasty >= 0.7
                     , tasty-hunit >= 0.10
                     , tasty-quickcheck >= 0.10
                     , lens
                     , text
  default-extensions:  OverloadedStrings

test-suite verifuzz-doctest
  default-language:    Haskell2010
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Doctest.hs
  build-depends:       base >= 4 && < 5
                     , verifuzz
                     , doctest
                     , doctest-discover
  default-extensions:  OverloadedStrings