File: snap-server.cabal

package info (click to toggle)
haskell-snap-server 0.9.4.5-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 428 kB
  • sloc: haskell: 4,300; sh: 46; makefile: 2
file content (164 lines) | stat: -rw-r--r-- 4,957 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
156
157
158
159
160
161
162
163
164
name:           snap-server
version:        0.9.4.5
synopsis:       A fast, iteratee-based, epoll-enabled web server for the Snap Framework
description:
  Snap is a simple and fast web development framework and server written in
  Haskell. For more information or to download the latest version, you can
  visit the Snap project website at <http://snapframework.com/>.
  .
  The Snap HTTP server is a high performance, epoll-enabled, iteratee-based web
  server library written in Haskell. Together with the @snap-core@ library upon
  which it depends, it provides a clean and efficient Haskell programming
  interface to the HTTP protocol.

license:        BSD3
license-file:   LICENSE
author:         James Sanders, Gregory Collins, Doug Beardsley
maintainer:     snap@snapframework.com
build-type:     Simple
cabal-version:  >= 1.6
homepage:       http://snapframework.com/
category:       Web, Snap

extra-source-files:
  CONTRIBUTORS,
  extra/haddock.css,
  extra/hscolour.css,
  extra/logo.gif,
  haddock.sh,
  LICENSE,
  README.md,
  README.SNAP.md,
  test/benchmark/Benchmark.hs,
  test/benchmark/Snap/Internal/Http/Parser/Benchmark.hs,
  test/benchmark/Snap/Internal/Http/Parser/Data.hs,
  test/common/Paths_snap_server.hs,
  test/common/Snap/Test/Common.hs,
  test/common/Test/Common/TestHandler.hs,
  test/common/Test/Common/Rot13.hs,
  test/data/fileServe/foo.bin,
  test/data/fileServe/foo.bin.bin.bin,
  test/data/fileServe/foo.html,
  test/data/fileServe/foo.txt,
  test/pongserver/Main.hs,
  test/runTestsAndCoverage.sh,
  test/snap-server-testsuite.cabal,
  test/suite/Snap/Internal/Http/Parser/Tests.hs,
  test/suite/Snap/Internal/Http/Server/Tests.hs,
  test/suite/Snap/Internal/Http/Server/TimeoutManager/Tests.hs,
  test/suite/Test/Blackbox.hs,
  test/suite/TestSuite.hs,
  test/testserver/Main.hs,
  test/testserver/static/hello.txt


Flag portable
  Description: Compile in cross-platform mode. No platform-specific code or
               optimizations such as C routines will be used.
  Default: False

Flag openssl
  Description: Enable https support using the HsOpenSSL library.
  Default: False

Flag debug
  Description: Enable support for debugging.
  Default: False
  Manual: True

Library
  hs-source-dirs: src

  exposed-modules:
    Snap.Http.Server,
    Snap.Http.Server.Config,
    System.FastLogger

  other-modules:
    Paths_snap_server,
    Snap.Internal.Http.Parser,
    Snap.Internal.Http.Server,
    Snap.Internal.Http.Server.Address,
    Snap.Internal.Http.Server.Date,
    Snap.Internal.Http.Server.Backend,
    Snap.Internal.Http.Server.Config,
    Snap.Internal.Http.Server.ListenHelpers,
    Snap.Internal.Http.Server.HttpPort,
    Snap.Internal.Http.Server.SimpleBackend,
    Snap.Internal.Http.Server.TimeoutManager,
    Snap.Internal.Http.Server.TLS,
    Control.Concurrent.Extended

  build-depends:
    attoparsec                >= 0.10     && < 0.13,
    attoparsec-enumerator     >= 0.3      && < 0.4,
    base                      >= 4        && < 5,
    blaze-builder             >= 0.2.1.4  && < 0.4,
    blaze-builder-enumerator  >= 0.2.0    && < 0.3,
    bytestring                >= 0.9.1    && < 0.11,
    case-insensitive          >= 0.3      && < 1.3,
    containers                >= 0.3      && < 0.6,
    enumerator                >= 0.4.15   && < 0.5,
    MonadCatchIO-transformers >= 0.2.1    && < 0.4,
    mtl                       >= 2        && < 3,
    network                   >= 2.3      && < 2.6,
    old-locale,
    snap-core                 >= 0.9.3    && < 0.10,
    text                      >= 0.11     && < 1.2,
    time                      >= 1.0      && < 1.5,
    unix-compat               >= 0.2      && < 0.5

  extensions:
    BangPatterns,
    CPP,
    MagicHash,
    Rank2Types,
    OverloadedStrings,
    ScopedTypeVariables,
    DeriveDataTypeable,
    PackageImports,
    ViewPatterns,
    ForeignFunctionInterface,
    EmptyDataDecls,
    GeneralizedNewtypeDeriving

  if flag(portable) || os(windows)
    cpp-options: -DPORTABLE
  else
    build-depends: unix

  if flag(openssl)
    cpp-options: -DOPENSSL
    build-depends: HsOpenSSL >= 0.10 && <0.11

  if os(linux) && !flag(portable)
    cpp-options: -DLINUX -DHAS_SENDFILE
    other-modules:
      System.SendFile,
      System.SendFile.Linux

  if os(darwin) && !flag(portable)
    cpp-options: -DOSX -DHAS_SENDFILE
    other-modules:
      System.SendFile,
      System.SendFile.Darwin

  if os(freebsd) && !flag(portable)
    cpp-options: -DFREEBSD -DHAS_SENDFILE
    other-modules:
      System.SendFile,
      System.SendFile.FreeBSD

  ghc-prof-options: -prof -auto-all

  if impl(ghc >= 6.12.0)
    ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2 -fno-warn-unused-do-bind
  else
    ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2

  if flag(debug)
    cpp-options: -DLABEL_THREADS

source-repository head
  type:     git
  location: git://github.com/snapframework/snap-server.git