File: cborg.cabal

package info (click to toggle)
haskell-cborg 0.2.0.0-1
  • links: PTS
  • area: main
  • in suites: sid
  • size: 336 kB
  • sloc: haskell: 4,152; ansic: 20; makefile: 5
file content (93 lines) | stat: -rw-r--r-- 3,046 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
name:                cborg
version:             0.2.0.0
synopsis:            Concise Binary Object Representation
license:             BSD3
license-file:        LICENSE.txt
author:              Duncan Coutts
maintainer:          duncan@community.haskell.org, ben@smart-cactus.org
bug-reports:         https://github.com/well-typed/cborg/issues
copyright:           2015-2017 Duncan Coutts,
                     2015-2017 Well-Typed LLP,
                     2015 IRIS Connect Ltd
category:            Codec
build-type:          Simple
cabal-version:       >= 1.10
tested-with:         GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.1

description:
  This package (formerly @binary-serialise-cbor@) provides an efficient
  implementation of the Concise Binary Object Representation (CBOR), as
  specified by [RFC 7049](https://tools.ietf.org/html/rfc7049).
  .
  If you are looking for a library for serialisation of Haskell values,
  have a look at the [serialise](/package/serialise) package, which is
  built upon this library.
  .
  An implementation of the standard bijection between CBOR and JSON is provided
  by the [cborg-json](/package/cborg-json) package. Also see [cbor-tool](/package/cbor-tool)
  for a convenient command-line utility for working with CBOR data.
extra-source-files:
  src/cbits/cbor.h

source-repository head
  type: git
  location: https://github.com/well-typed/cborg.git

--------------------------------------------------------------------------------
-- Flags

flag optimize-gmp
  default: True
  manual: False
  description: Use optimized code paths for integer-gmp

--------------------------------------------------------------------------------
-- Library

library
  default-language:  Haskell2010
  ghc-options:       -Wall
  include-dirs:      src/cbits
  hs-source-dirs:    src

  exposed-modules:
    Codec.CBOR
    Codec.CBOR.Decoding
    Codec.CBOR.Encoding
    Codec.CBOR.FlatTerm
    Codec.CBOR.Magic
    Codec.CBOR.Pretty
    Codec.CBOR.Read
    Codec.CBOR.Write
    Codec.CBOR.Term
    Codec.CBOR.ByteArray
    Codec.CBOR.ByteArray.Sliced

  other-modules:
    Codec.CBOR.ByteArray.Internal

  other-extensions:
    CPP, ForeignFunctionInterface, MagicHash,
    UnboxedTuples, BangPatterns, DeriveDataTypeable,
    RankNTypes

  build-depends:
    array                   >= 0.4     && < 0.6,
    base                    >= 4.6     && < 5.0,
    bytestring              >= 0.10.4  && < 0.11,
    containers              >= 0.5     && < 0.6,
    ghc-prim                >= 0.3     && < 0.6,
    half                    >= 0.2.2.3 && < 0.4,
    primitive               >= 0.5     && < 0.7,
    text                    >= 1.1     && < 1.3

  if flag(optimize-gmp)
    cpp-options:            -DFLAG_OPTIMIZE_GMP
    build-depends:
      integer-gmp

  if impl(ghc >= 8.0)
    ghc-options: -Wcompat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances
  else
    -- provide/emulate `Control.Monad.Fail` and `Data.Semigroups` API for pre-GHC8
    build-depends: fail == 4.9.*, semigroups == 0.18.*