summaryrefslogtreecommitdiff
path: root/package.yaml
blob: e7ea47d4e0111cbddaf91434dbadadafba41a5ee (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
99
100
101
102
103
104
105
106
name: bar
version: 0.6.6

flags:
  dev:
    description: Turn on development settings
    default: false
    manual: false
  library-only:
    description: Build for use with "yesod devel"
    default: false
    manual: false
  thermoprint:
    description: Use thermoprint-client
    default: false
    manual: false

when:
  - condition: flag(dev) || flag(library-only)
    then:
      cpp-options: -DDEVELOPMENT
      ghc-options: -Wall -fwarn-tabs -O0
    else:
      ghc-options: -Wall -fwarn-tabs -O2
  - condition: flag(thermoprint)
    cpp-options: -DTHERMOPRINT
    dependencies:
      - thermoprint-client

default-extensions:
  - DeriveGeneric
  - TupleSections
  - RecordWildCards
  - DeriveDataTypeable
  - EmptyDataDecls
  - FlexibleContexts
  - FlexibleInstances
  - TypeFamilies
  - MultiParamTypeClasses
  - NoImplicitPrelude
  - PatternGuards
  - DeriveFunctor
  - GADTs
  - CPP
  - TemplateHaskell
  - ViewPatterns
  - PatternGuards
  - QuasiQuotes
  - FunctionalDependencies
  - OverloadedStrings

other-extensions:
  - GeneralizedNewtypeDeriving
  - ApplicativeDo
  - PackageImports

library:
  source-dirs: .
  dependencies:
    - base
    - yesod
    - yesod-core
    - yesod-static
    - yesod-form
    - classy-prelude
    - classy-prelude-yesod
    - bytestring
    - text
    - persistent
    - persistent-postgresql
    - persistent-template
    - template-haskell
    - shakespeare
    - wai-extra
    - yaml
    - http-conduit
    - warp
    - aeson
    - conduit
    - monad-logger
    - fast-logger
    - wai-logger
    - file-embed
    - unordered-containers
    - containers
    - vector
    - time
    - wai
    - mtl
    - lens
    - hashids
    - systemd

executables:
  bar:
    when:
      - condition: flag(library-only)
        buildable: false
    main: main.hs
    source-dirs: app
    dependencies:
      - base
      - bar
      - foreign-store
      - warp
    ghc-options: -threaded -rtsopts -with-rtsopts=-N