File: linear.cabal

package info (click to toggle)
haskell-linear 1.23.2-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 364 kB
  • sloc: haskell: 5,235; makefile: 2
file content (155 lines) | stat: -rw-r--r-- 4,264 bytes parent folder | download
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
name:          linear
category:      Math, Algebra
version:       1.23.2
license:       BSD3
cabal-version: >= 1.10
license-file:  LICENSE
author:        Edward A. Kmett
maintainer:    Edward A. Kmett <ekmett@gmail.com>
stability:     provisional
homepage:      http://github.com/ekmett/linear/
bug-reports:   http://github.com/ekmett/linear/issues
copyright:     Copyright (C) 2012-2015 Edward A. Kmett
synopsis:      Linear Algebra
description:   Types and combinators for linear algebra on free vector spaces
build-type:    Simple
tested-with:   GHC == 8.0.2
             , GHC == 8.2.2
             , GHC == 8.4.4
             , GHC == 8.6.5
             , GHC == 8.8.4
             , GHC == 8.10.7
             , GHC == 9.0.2
             , GHC == 9.2.8
             , GHC == 9.4.8
             , GHC == 9.6.6
             , GHC == 9.8.4
             , GHC == 9.10.1
             , GHC == 9.12.1
extra-source-files:
  .gitignore
  .hlint.yaml
  .vim.custom
  CHANGELOG.markdown
  README.markdown

flag template-haskell
  description:
    You can disable the use of the `template-haskell` package using `-f-template-haskell`.
    .
    Disabling this is an unsupported configuration, but it may be useful for accelerating builds in sandboxes for expert users.
  default: True
  manual: True

flag herbie
  description: Enable `herbie`.
  default: False
  manual: True

source-repository head
  type: git
  location: https://github.com/ekmett/linear

library
  build-depends:
    adjunctions          >= 4     && < 5,
    base                 >= 4.9   && < 5,
    base-orphans         >= 0.8.3 && < 1,
    binary               >= 0.5   && < 0.9,
    bytes                >= 0.15  && < 1,
    cereal               >= 0.4.1.1 && < 0.6,
    containers           >= 0.4   && < 0.9,
    deepseq              >= 1.1   && < 1.6,
    distributive         >= 0.5.1 && < 1,
    ghc-prim,
    hashable             >= 1.2.7.0 && < 1.6,
    indexed-traversable  >= 0.1.1 && < 0.2,
    lens                 >= 4.15.2 && < 6,
    random               >= 1.2   && < 1.4,
    reflection           >= 2     && < 3,
    semigroupoids        >= 5.2.1 && < 7,
    tagged               >= 0.8.6 && < 1,
    transformers         >= 0.5   && < 0.7,
    transformers-compat  >= 0.5.0.4 && < 1,
    unordered-containers >= 0.2.3 && < 0.3,
    vector               >= 0.12.1.2 && < 0.14,
    void                 >= 0.6   && < 1

  if impl(ghc < 8.0)
    build-depends: semigroups >= 0.9 && < 1

  if flag(template-haskell) && impl(ghc)
    build-depends: template-haskell >= 2.11.1.0 && < 3.0

  if flag(herbie)
    build-depends: HerbiePlugin >= 0.1 && < 0.2
    ghc-options: -fplugin=Herbie
    cpp-options: -DHERBIE

  exposed-modules:
    Linear
    Linear.Affine
    Linear.Algebra
    Linear.Binary
    Linear.Conjugate
    Linear.Covector
    Linear.Epsilon
    Linear.Instances
    Linear.Matrix
    Linear.Metric
    Linear.Plucker
    Linear.Plucker.Coincides
    Linear.Projection
    Linear.Quaternion
    Linear.Trace
    Linear.V
    Linear.V0
    Linear.V1
    Linear.V2
    Linear.V3
    Linear.V4
    Linear.Vector

  ghc-options: -Wall -Wtabs -O2 -fdicts-cheap -funbox-strict-fields -Wno-trustworthy-safe
  hs-source-dirs: src

  default-language: Haskell2010

  x-docspec-extra-packages: simple-reflect

-- We need this dummy test-suite to add simple-reflect to the install plan
--
-- When cabal-install's extra-packages support becomes widely available
-- (i.e. after 3.4 release), we can remove this test-suite.
test-suite doctests
  type:              exitcode-stdio-1.0
  main-is:           doctests.hs
  hs-source-dirs:    tests
  default-language:  Haskell2010

  build-depends: base < 5, simple-reflect >= 0.3.1

test-suite test
  type:           exitcode-stdio-1.0
  main-is:        Test.hs
  other-modules:  Prop.Quaternion
                  Prop.V3
                  Unit.Binary
                  Unit.Plucker
                  Unit.V
  ghc-options:    -Wall -threaded
  hs-source-dirs: tests
  build-depends:
    base,
    binary,
    bytestring,
    deepseq,
    tasty >= 1.4 && < 1.6,
    tasty-hunit >= 0.10 && < 0.11,
    tasty-quickcheck >= 0.10 && < 0.12,
    linear,
    QuickCheck >= 2.5,
    reflection,
    vector
  default-language: Haskell2010