mirror of
https://gitlab.com/sheaf/metabrush.git
synced 2024-11-05 14:53:37 +00:00
183 lines
3.7 KiB
Plaintext
183 lines
3.7 KiB
Plaintext
cabal-version: 3.0
|
|
name: brush-strokes
|
|
version: 0.1.0.0
|
|
synopsis: Stroking brush paths
|
|
category: Calligraphy, Geometry, Graphics
|
|
license: BSD-3-Clause
|
|
homepage: https://gitlab.com/sheaf/MetaBrush
|
|
build-type: Simple
|
|
description:
|
|
Computing brush strokes using Bézier curves.
|
|
|
|
flag use-fma
|
|
description: Use fused-muliply add instructions to implement interval arithmetic.
|
|
default: True
|
|
manual: False
|
|
|
|
common common
|
|
|
|
build-depends:
|
|
base
|
|
>= 4.17 && < 4.20
|
|
, containers
|
|
>= 0.6.0.1 && < 0.8
|
|
, tree-view
|
|
^>= 0.5
|
|
|
|
default-extensions:
|
|
BangPatterns
|
|
BlockArguments
|
|
ConstraintKinds
|
|
DataKinds
|
|
DeriveAnyClass
|
|
DeriveTraversable
|
|
DeriveGeneric
|
|
DerivingVia
|
|
FlexibleContexts
|
|
FlexibleInstances
|
|
FunctionalDependencies
|
|
GADTs
|
|
GeneralisedNewtypeDeriving
|
|
InstanceSigs
|
|
LambdaCase
|
|
LexicalNegation
|
|
MagicHash
|
|
MultiWayIf
|
|
NamedFieldPuns
|
|
NoStarIsType
|
|
PatternSynonyms
|
|
RankNTypes
|
|
RecordWildCards
|
|
RoleAnnotations
|
|
StandaloneDeriving
|
|
StandaloneKindSignatures
|
|
TupleSections
|
|
TypeApplications
|
|
TypeFamilies
|
|
TypeOperators
|
|
UnboxedTuples
|
|
ViewPatterns
|
|
|
|
ghc-options:
|
|
-O2
|
|
-fexpose-all-unfoldings
|
|
-- -funfolding-use-threshold=1000
|
|
-fspecialise-aggressively
|
|
-flate-dmd-anal
|
|
-fmax-worker-args=200
|
|
-optc-O3
|
|
-Wall
|
|
-Wcompat
|
|
-fwarn-missing-local-signatures
|
|
-fwarn-incomplete-patterns
|
|
-fwarn-incomplete-uni-patterns
|
|
-fwarn-missing-deriving-strategies
|
|
-fno-warn-unticked-promoted-constructors
|
|
|
|
if flag(use-fma)
|
|
cpp-options:
|
|
-DUSE_FMA
|
|
ghc-options:
|
|
-mfma
|
|
build-depends:
|
|
base
|
|
>= 4.19
|
|
|
|
library
|
|
|
|
import:
|
|
common
|
|
|
|
hs-source-dirs:
|
|
src
|
|
|
|
default-language:
|
|
Haskell2010
|
|
|
|
exposed-modules:
|
|
Calligraphy.Brushes
|
|
, Math.Algebra.Dual
|
|
, Math.Bezier.Cubic
|
|
, Math.Bezier.Cubic.Fit
|
|
, Math.Bezier.Quadratic
|
|
, Math.Bezier.Spline
|
|
, Math.Bezier.Stroke
|
|
, Math.Bezier.Stroke.EnvelopeEquation
|
|
, Math.Differentiable
|
|
, Math.Epsilon
|
|
, Math.Interval
|
|
, Math.Linear
|
|
, Math.Linear.Solve
|
|
, Math.Module
|
|
, Math.Monomial
|
|
, Math.Orientation
|
|
, Math.Ring
|
|
, Math.Roots
|
|
, Debug.Utils
|
|
|
|
other-modules:
|
|
Math.Algebra.Dual.Internal
|
|
, Math.Interval.Internal
|
|
, Math.Linear.Internal
|
|
, Math.Module.Internal
|
|
, TH.Utils
|
|
|
|
if flag(use-fma)
|
|
other-modules:
|
|
Math.Interval.FMA
|
|
|
|
build-depends:
|
|
template-haskell
|
|
>= 2.18 && < 2.22
|
|
|
|
, acts
|
|
^>= 0.3.1.0
|
|
, bifunctors
|
|
>= 5.5.4 && < 5.7
|
|
, code-page
|
|
^>= 0.2.1
|
|
, deepseq
|
|
>= 1.4.4.0 && < 1.6
|
|
, directory
|
|
>= 1.3.7.1 && < 1.4
|
|
, eigen
|
|
^>= 3.3.7.0
|
|
, filepath
|
|
>= 1.4 && < 1.6
|
|
, generic-lens
|
|
>= 2.2 && < 2.3
|
|
, groups
|
|
^>= 0.5.3
|
|
, groups-generic
|
|
^>= 0.3.1.0
|
|
, parallel
|
|
^>= 3.2.2.0
|
|
, primitive
|
|
^>= 0.9.0.0
|
|
, rounded-hw
|
|
^>= 0.4
|
|
, time
|
|
^>= 1.12.2
|
|
, transformers
|
|
>= 0.5.6.2 && < 0.7
|
|
|
|
benchmark cusps
|
|
|
|
import:
|
|
common
|
|
|
|
hs-source-dirs:
|
|
bench
|
|
|
|
main-is:
|
|
Main.hs
|
|
|
|
build-depends:
|
|
brush-strokes
|
|
|
|
type:
|
|
exitcode-stdio-1.0
|
|
|
|
default-language:
|
|
Haskell2010
|