packages feed

implicit-0.3.0.1: implicit.cabal

Name:                implicit
Version:             0.3.0.1
Cabal-version:       >= 1.10
Tested-with:         GHC >= 8.6
Build-type:          Simple
Synopsis:            A math-inspired programmatic 2D & 3D CAD system.
Description:         An OpenSCAD execution engine for generating models in STL and many other formats.
License:             AGPL-3
License-file:        LICENSE
Author:              Julia Longtin <julia.longtin@gmail.com>
Maintainer:          Julia Longtin <julia.longtin@gmail.com>
Homepage:            http://implicitcad.org/
Category:            Graphics

Library

    Default-Extensions: NoImplicitPrelude
    Default-Language: Haskell2010
    Build-depends:
                  base >= 3 && < 5,
                  filepath,
                  directory,
                  parsec,
                  parallel,
                  containers,
                  deepseq,
                  vector-space,
                  hspec,
                  text,
                  monads-tf,
                  bytestring,
                  blaze-builder,
                  blaze-markup,
                  blaze-svg,
                  storable-endian,
                  JuicyPixels,
                  transformers

    Ghc-options:
--                -O2
                -optc-O3
--                -dynamic
                -- see GHC manual 8.2.1 section 6.5.1.
                -feager-blackholing
                -- for debugging.
                -Wall
                -Wcompat
                -Wmonomorphism-restriction
                -Wmissing-local-signatures
                -Wmissing-export-lists
                -Wmissing-import-lists
                -Wmissing-home-modules
                -Widentities
                -Wimplicit-prelude
                -Wredundant-constraints
                -Wall-missed-specialisations
--                -Werror
    Exposed-modules:
                    Graphics.Implicit
                    Graphics.Implicit.Definitions
                    Graphics.Implicit.Primitives
                    Graphics.Implicit.Export
                    Graphics.Implicit.MathUtil
                    Graphics.Implicit.ExtOpenScad
                    Graphics.Implicit.ObjectUtil
                    -- These modules are exposed for the unit tests against the parser interface.
                    Graphics.Implicit.ExtOpenScad.Parser.Statement
                    Graphics.Implicit.ExtOpenScad.Parser.Expr
                    Graphics.Implicit.ExtOpenScad.Eval.Constant
                    Graphics.Implicit.ExtOpenScad.Definitions
                    -- These are exposed for Benchmark.
                    Graphics.Implicit.Export.SymbolicObj2
                    Graphics.Implicit.Export.SymbolicObj3
                    -- These are exposed for implicitsnap.
                    Graphics.Implicit.Export.TriangleMeshFormats
                    Graphics.Implicit.Export.NormedTriangleMeshFormats
                    Graphics.Implicit.Export.PolylineFormats
                    Graphics.Implicit.Export.DiscreteAproxable
                    -- These are exposed for docgen.
                    Graphics.Implicit.ExtOpenScad.Primitives            

    Other-modules:
                  Graphics.Implicit.FastIntUtil
                  Graphics.Implicit.IntegralUtil
                  Graphics.Implicit.ObjectUtil.GetBox2
                  Graphics.Implicit.ObjectUtil.GetBox3
                  Graphics.Implicit.ObjectUtil.GetImplicit2
                  Graphics.Implicit.ObjectUtil.GetImplicit3
                  Graphics.Implicit.ExtOpenScad.Default
                  Graphics.Implicit.ExtOpenScad.Parser.Lexer
                  Graphics.Implicit.ExtOpenScad.Parser.Util
                  Graphics.Implicit.ExtOpenScad.Eval.Statement
                  Graphics.Implicit.ExtOpenScad.Eval.Expr
                  Graphics.Implicit.ExtOpenScad.Util.ArgParser
                  Graphics.Implicit.ExtOpenScad.Util.OVal
                  Graphics.Implicit.ExtOpenScad.Util.StateC
                  Graphics.Implicit.Export.MarchingSquaresFill
                  Graphics.Implicit.Export.RayTrace
                  Graphics.Implicit.Export.SymbolicFormats
                  Graphics.Implicit.Export.Util
                  Graphics.Implicit.Export.TextBuilderUtils
                  Graphics.Implicit.Export.Symbolic.Rebound2
                  Graphics.Implicit.Export.Symbolic.Rebound3
                  Graphics.Implicit.Export.Render
                  Graphics.Implicit.Export.Render.Definitions
                  Graphics.Implicit.Export.Render.GetLoops
                  Graphics.Implicit.Export.Render.GetSegs
                  Graphics.Implicit.Export.Render.HandleSquares
                  Graphics.Implicit.Export.Render.Interpolate
                  Graphics.Implicit.Export.Render.RefineSegs
                  Graphics.Implicit.Export.Render.TesselateLoops
                  Graphics.Implicit.Export.Render.HandlePolylines

Executable extopenscad
   Main-is: extopenscad.hs
   default-extensions: NoImplicitPrelude
   Default-Language: Haskell2010
   Hs-source-dirs: programs
   Build-depends:
                 base,
                 vector-space,
                 filepath,
                 optparse-applicative >= 0.10.0,
                 implicit
   Ghc-options:
--               -O2
               -optc-O3
               -threaded
               -rtsopts
--               -dynamic
               -- see GHC manual 8.2.1 section 6.5.1.
               -feager-blackholing
               -- for debugging.
               -Wall
               -Wcompat
               -Wmonomorphism-restriction
               -Wmissing-local-signatures
               -Wmissing-export-lists
               -Wmissing-import-lists
               -Wmissing-home-modules
               -Widentities
               -Wimplicit-prelude
               -Wredundant-constraints
               -Wall-missed-specialisations
--               -Werror

Executable docgen
   main-is: docgen.hs
   default-extensions: NoImplicitPrelude
   Default-Language: Haskell2010
   Hs-source-dirs: programs
   build-depends:
                 base,
                 implicit
   ghc-options:
--               -dynamic
               -- for debugging.
               -Wall
               -Wcompat
               -Wmonomorphism-restriction
               -Wmissing-local-signatures
               -Wmissing-export-lists
               -Wmissing-import-lists
               -Wmissing-home-modules
               -Widentities
               -Wimplicit-prelude
               -Wredundant-constraints
               -Wall-missed-specialisations
--               -Werror

Executable implicitsnap
   Main-is: implicitsnap.hs
   default-extensions: NoImplicitPrelude
   Default-Language: Haskell2010
   Hs-source-dirs: programs
   Build-depends:
                 base,
                 bytestring,
                 implicit,
                 snap-core,
                 snap-server,
                 text,
                 vector-space
   Ghc-options:
               -threaded
               -rtsopts
--               -O2
               -optc-O3
--               -dynamic
               -- see GHC manual 8.2.1 section 6.5.1.
               -feager-blackholing
               -- for debugging.
               -Wall
               -Wcompat
               -Wmonomorphism-restriction
               -Wmissing-local-signatures
               -Wmissing-export-lists
               -Wmissing-import-lists
               -Wmissing-home-modules
               -Widentities
               -Wimplicit-prelude
               -Wredundant-constraints
               -Wall-missed-specialisations
--               -Werror

Executable Benchmark
   Main-is: Benchmark.hs
   default-extensions: NoImplicitPrelude
   Default-Language: Haskell2010
   Hs-source-dirs: programs
   Build-depends:
                 base,
                 criterion,
                 implicit
   Ghc-options:
--               -O2
               -optc-O3
--               -dynamic
               -- for debugging.
               -Wall
               -Wcompat
               -Wmonomorphism-restriction
               -Wmissing-local-signatures
               -Wmissing-export-lists
               -Wmissing-import-lists
               -Wmissing-home-modules
               -Widentities
               -Wimplicit-prelude
               -Wredundant-constraints
               -Wall-missed-specialisations
--               -Werror

Test-suite test-implicit
    Type: exitcode-stdio-1.0
    default-extensions: NoImplicitPrelude
    Default-Language: Haskell2010
    Build-depends:
                  base,
                  hspec,
                  implicit,
                  parsec
    Main-is: Main.hs
    Hs-source-dirs: tests
    Ghc-options:
--                -O2
                -optc-O3
--                -dynamic
                -- for debugging.
                -Wall
                -Wcompat
                -Wmonomorphism-restriction
                -Wmissing-local-signatures
                -Wmissing-export-lists
                -Wmissing-import-lists
                -Wmissing-home-modules
                -Widentities
                -Wimplicit-prelude
                -Wredundant-constraints
                -Wall-missed-specialisations
--                -Werror
    Other-Modules:
                  ParserSpec.Expr
                  ParserSpec.Statement
                  ParserSpec.Util
                  ExecSpec.Expr
                  ExecSpec.Util
                  MessageSpec.Message
                  MessageSpec.Util

Benchmark parser-bench
    Type: exitcode-stdio-1.0
    default-extensions: NoImplicitPrelude
    Default-Language: Haskell2010
    Build-depends:
                  base,
                  criterion,
                  parsec,
                  implicit
    Main-is: parser-bench.hs
    Hs-source-dirs: programs
    Ghc-options:
--                -O2
                -optc-O3
--                -dynamic
                -- for debugging.
                -Wall
                -Wcompat
                -Wmonomorphism-restriction
                -Wmissing-local-signatures
                -Wmissing-export-lists
                -Wmissing-import-lists
                -Wmissing-home-modules
                -Widentities
                -Wimplicit-prelude
                -Wredundant-constraints
                -Wall-missed-specialisations
--                -Werror

Source-repository head
    Type:            git
    Location:        https://github.com/colah/ImplicitCAD.git