Skip to content

Commit 211767c

Browse files
committed
Basic cabal configuration
1 parent bb40057 commit 211767c

File tree

2 files changed

+138
-0
lines changed

2 files changed

+138
-0
lines changed

cabal.project

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
-- Custom repository for cardano haskell packages
2+
repository cardano-haskell-packages
3+
url: https://input-output-hk.github.io/cardano-haskell-packages
4+
secure: True
5+
root-keys:
6+
3e0cce471cf09815f930210f7827266fd09045445d65923e6d0238a6cd15126f
7+
443abb7fb497a134c343faf52f0b659bd7999bc06b7f63fa76dc99d631f9bea1
8+
a86a1f6ce86c449c46666bda44268677abf29b5b2d2eb5ec7af903ec2f117a82
9+
bcec67e8e99cabfa7764d75ad9b158d72bfacf70ca1d0ec8bc6b4406d1bf8413
10+
c00aae8461a256275598500ea0e187588c35a5d5d7454fb57eac18d9edb86a56
11+
d4a35cd3121aa00d18544bb0ac01c3e1691d618f462c46129271bccf39f7e8ee
12+
13+
index-state:
14+
, hackage.haskell.org 2023-11-03T12:09:05Z
15+
, cardano-haskell-packages 2023-11-03T12:09:05Z
16+
17+
tests: true
18+
19+
packages: .

cem-script.cabal

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
cabal-version: 3.8
2+
name: cem-script
3+
version: 0.1.0
4+
synopsis: Cardano DApp SDK
5+
homepage: https://github.com/cem-script
6+
author: MLabs
7+
maintainer: [email protected]
8+
data-files: README.md
9+
10+
flag dev
11+
description:
12+
Defer errors from the PlutusTx plugin, which break HLS and Haddock. Also disable Werror.
13+
14+
default: True
15+
manual: False
16+
17+
common common-lang
18+
-- Options from MLabs styleguide
19+
20+
ghc-options:
21+
-Wall -Wcompat -Wincomplete-record-updates
22+
-Wincomplete-uni-patterns -Wredundant-constraints
23+
-Wmissing-export-lists -Wmissing-deriving-strategies
24+
-Wno-redundant-constraints
25+
26+
if !flag(dev)
27+
ghc-options: -Werror
28+
29+
build-depends:
30+
, base
31+
, mtl
32+
, transformers
33+
34+
default-extensions:
35+
BangPatterns
36+
BinaryLiterals
37+
ConstraintKinds
38+
DataKinds
39+
DeriveAnyClass
40+
DeriveFunctor
41+
DeriveGeneric
42+
DeriveTraversable
43+
DerivingStrategies
44+
DerivingVia
45+
DuplicateRecordFields
46+
EmptyCase
47+
FlexibleContexts
48+
FlexibleInstances
49+
FunctionalDependencies
50+
GADTs
51+
GeneralizedNewtypeDeriving
52+
HexFloatLiterals
53+
ImportQualifiedPost
54+
InstanceSigs
55+
KindSignatures
56+
LambdaCase
57+
MultiParamTypeClasses
58+
NamedFieldPuns
59+
NoImplicitPrelude
60+
NumericUnderscores
61+
OverloadedStrings
62+
PatternSynonyms
63+
QuantifiedConstraints
64+
RankNTypes
65+
ScopedTypeVariables
66+
StandaloneDeriving
67+
StrictData
68+
TemplateHaskell
69+
TupleSections
70+
TypeApplications
71+
TypeFamilies
72+
TypeFamilyDependencies
73+
TypeOperators
74+
TypeSynonymInstances
75+
UndecidableInstances
76+
77+
if flag(dev)
78+
default-extensions: PartialTypeSignatures
79+
80+
default-language: Haskell2010
81+
82+
common common-onchain
83+
import: common-lang
84+
build-depends:
85+
, plutus-ledger-api
86+
, plutus-tx
87+
, plutus-tx-plugin
88+
89+
if flag(dev)
90+
ghc-options: -fplugin-opt PlutusTx.Plugin:defer-errors
91+
92+
-- Options for Plutus Tx compilations
93+
-- (some are enabled additionaly in individual modules)
94+
95+
ghc-options:
96+
-fplugin-opt PlutusTx.Plugin:target-version=1.0.0 -fobject-code
97+
-fno-ignore-interface-pragmas -fno-omit-interface-pragmas
98+
-fno-specialize -fno-unbox-small-strict-fields
99+
-fno-unbox-strict-fields
100+
101+
common common-offchain
102+
import: common-lang
103+
build-depends:
104+
, bytestring
105+
, cardano-api
106+
, cardano-ledger-core
107+
, containers
108+
, filepath
109+
, text
110+
, time
111+
, unix
112+
113+
common common-executable
114+
import: common-offchain
115+
ghc-options: -threaded -rtsopts
116+
117+
library cem-sdk
118+
import: common-onchain
119+
hs-source-dirs: src/

0 commit comments

Comments
 (0)