agora/agora.cabal
2022-04-21 19:03:14 -05:00

170 lines
3.5 KiB
Text

cabal-version: 3.0
name: agora
version: 0.1
extra-source-files: CHANGELOG.md
author: Emily Martins <emi@haskell.fyi>
license: Apache-2.0
--------------------------------------------------------------------------------
-- Common Stanza Declarations
-- Language options, warnings, some options for plutus
common lang
ghc-options:
-Wall -Wcompat -Wincomplete-uni-patterns -Wno-unused-do-bind
-Wno-partial-type-signatures -Wmissing-export-lists
-Wincomplete-record-updates -Wmissing-deriving-strategies
-Wno-name-shadowing -Wunused-foralls -fprint-explicit-foralls
-fprint-explicit-kinds -Werror
mixins:
base hiding (Prelude),
pprelude (PPrelude as Prelude)
default-extensions:
NoStarIsType
BangPatterns
BinaryLiterals
ConstrainedClassMethods
ConstraintKinds
DataKinds
DeriveAnyClass
DeriveDataTypeable
DeriveFoldable
DeriveFunctor
DeriveGeneric
DeriveLift
DeriveTraversable
DerivingStrategies
DerivingVia
DoAndIfThenElse
EmptyCase
EmptyDataDecls
EmptyDataDeriving
ExistentialQuantification
ExplicitForAll
FlexibleContexts
FlexibleInstances
ForeignFunctionInterface
GADTSyntax
GeneralisedNewtypeDeriving
HexFloatLiterals
ImplicitPrelude
ImportQualifiedPost
InstanceSigs
KindSignatures
LambdaCase
MonomorphismRestriction
MultiParamTypeClasses
NamedFieldPuns
NamedWildCards
NumericUnderscores
OverloadedStrings
PartialTypeSignatures
PatternGuards
PolyKinds
PostfixOperators
RankNTypes
RelaxedPolyRec
ScopedTypeVariables
StandaloneDeriving
StandaloneKindSignatures
TupleSections
TypeApplications
TypeFamilies
TypeOperators
TypeSynonymInstances
UndecidableInstances
ViewPatterns
OverloadedRecordDot
QualifiedDo
default-language: Haskell2010
common deps
build-depends:
, aeson
, ansi-terminal
, base >=4.14 && <5
, base-compat
, bytestring
, cardano-prelude
, containers
, data-default
, data-default-class
, generics-sop
, plutarch
, plutarch-extra
, plutarch-numeric
, plutarch-safemoney
, plutus-core
, plutus-ledger-api
, plutus-tx
, pprelude
, prettyprinter
, recursion-schemes
, serialise
, template-haskell
, text
common test-deps
build-depends:
, apropos
, apropos-tx
, QuickCheck
, quickcheck-instances
, tasty
, tasty-hedgehog
, tasty-hunit
library
import: lang, deps
exposed-modules:
Agora.AuthorityToken
Agora.Effect
Agora.Effect.TreasuryWithdrawal
Agora.Governor
Agora.MultiSig
Agora.Proposal
Agora.SafeMoney
Agora.Stake
Agora.Treasury
other-modules:
Agora.Utils
Agora.Utils.Value
hs-source-dirs: agora
library pprelude
build-depends:
, base
, plutarch
exposed-modules: PPrelude
hs-source-dirs: agora
default-language: Haskell2010
test-suite agora-test
import: lang, deps, test-deps
type: exitcode-stdio-1.0
main-is: Spec.hs
hs-source-dirs: agora-test
other-modules:
Spec.AuthorityToken
Spec.Effect.TreasuryWithdrawal
Spec.Model.MultiSig
Spec.Sample.Effect.TreasuryWithdrawal
Spec.Sample.Stake
Spec.Stake
Spec.Util
build-depends: agora
benchmark agora-bench
import: lang, deps
hs-source-dirs: agora-bench
main-is: Main.hs
type: exitcode-stdio-1.0
build-depends: agora