Advertisement
Guest User

Untitled

a guest
Sep 10th, 2021
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 21.69 KB | None | 0 0
  1. -- Initial semblance.cabal generated by cabal init. For further
  2. -- documentation, see http://haskell.org/cabal/users-guide/
  3.  
  4. -- The name of the package.
  5. name: gudni
  6.  
  7. -- The package version. See the Haskell package versioning policy (PVP)
  8. -- for standards guiding when and how versions should be incremented.
  9. -- https://wiki.haskell.org/Package_versioning_policy
  10. -- PVP summary: +-+------- breaking API changes
  11. -- | | +----- non-breaking API additions
  12. -- | | | +--- code changes with no API change
  13. version: 0.1.0.0
  14.  
  15. -- A short (one-line) description of the package.
  16. synopsis: Haskell-centric Fast Accurate Rasterizer
  17.  
  18. -- A longer description of the package.
  19. -- description:
  20.  
  21. -- The license under which the package is released.
  22. license: BSD3
  23.  
  24. -- The file containing the license text.
  25. license-file: LICENSE
  26.  
  27. -- The package author(s).
  28. author: Ian Bloom
  29.  
  30. -- An email address to which users can send suggestions, bug reports, and
  31. -- patches.
  32. maintainer: ianmbloom@gmail.com
  33.  
  34. -- A copyright notice.
  35. -- copyright:
  36.  
  37. category: Graphics
  38.  
  39. build-type: Simple
  40.  
  41. -- Extra files to be distributed with the package, such as examples or a
  42. -- README.
  43. extra-source-files: ChangeLog.md
  44. , src/Graphics/Gudni/Raster/Dag/OpenCL/Kernels.cl
  45.  
  46. -- Constraint on the version of Cabal needed to build this package.
  47. cabal-version: >=1.10
  48.  
  49. flag benchmarks
  50. description: Build benchmarks
  51. default: True
  52.  
  53. flag trace
  54. description: Build Rasterizer Trace Visualizer
  55. default: True
  56.  
  57. library
  58. -- Modules exported by the library.
  59. exposed-modules: Graphics.Gudni.Application
  60. , Graphics.Gudni.Base
  61. , Graphics.Gudni.Figure
  62. , Graphics.Gudni.Interface
  63. , Graphics.Gudni.Layout
  64. , Graphics.Gudni.ShapeTree
  65. , Graphics.Gudni.Draw
  66. , Graphics.Gudni.Image
  67.  
  68. , Graphics.Gudni.Util.CTypeConversion
  69. , Graphics.Gudni.Util.CurvePair
  70. , Graphics.Gudni.Util.MonadST
  71. , Graphics.Gudni.Util.Debug
  72. , Graphics.Gudni.Util.FlattenTree
  73. , Graphics.Gudni.Util.MonadUnique
  74. , Graphics.Gudni.Util.Segment
  75. , Graphics.Gudni.Util.StorableM
  76. , Graphics.Gudni.Util.Subdividable
  77. , Graphics.Gudni.Util.Util
  78. , Graphics.Gudni.Util.Shuffle
  79. , Graphics.Gudni.Util.TreeOrderTable
  80.  
  81. , Graphics.Gudni.Raster.Dag.ConfineTree.Add
  82. , Graphics.Gudni.Raster.Dag.ConfineTree.Build
  83. , Graphics.Gudni.Raster.Dag.ConfineTree.Decorate
  84. , Graphics.Gudni.Raster.Dag.ConfineTree.Depth
  85. , Graphics.Gudni.Raster.Dag.ConfineTree.Query
  86. , Graphics.Gudni.Raster.Dag.ConfineTree.Sweep
  87. , Graphics.Gudni.Raster.Dag.ConfineTree.Traverse
  88. , Graphics.Gudni.Raster.Dag.ConfineTree.Type
  89. , Graphics.Gudni.Raster.Dag.ConfineTree.Storage
  90. , Graphics.Gudni.Raster.Dag.ConfineTree.Out
  91.  
  92. , Graphics.Gudni.Raster.Dag.Constants
  93. , Graphics.Gudni.Raster.Dag.Fabric.Combine.Type
  94. , Graphics.Gudni.Raster.Dag.Fabric.Combine.Tag
  95. , Graphics.Gudni.Raster.Dag.Fabric.Combine.Apply
  96. , Graphics.Gudni.Raster.Dag.Fabric.Ray.Class
  97. , Graphics.Gudni.Raster.Dag.Fabric.Ray.Answer
  98. , Graphics.Gudni.Raster.Dag.Fabric.Filter.Type
  99. , Graphics.Gudni.Raster.Dag.Fabric.Filter.Tag
  100. , Graphics.Gudni.Raster.Dag.Fabric.Transformer.Type
  101. , Graphics.Gudni.Raster.Dag.Fabric.Transformer.Storage
  102. , Graphics.Gudni.Raster.Dag.Fabric.Substance.Type
  103. , Graphics.Gudni.Raster.Dag.Fabric.Substance.Storage
  104. , Graphics.Gudni.Raster.Dag.Fabric.Type
  105. , Graphics.Gudni.Raster.Dag.Fabric.Tag
  106. , Graphics.Gudni.Raster.Dag.Fabric.Traverse
  107. , Graphics.Gudni.Raster.Dag.Fabric.Out
  108. , Graphics.Gudni.Raster.Dag.Fabric.Storage
  109. , Graphics.Gudni.Raster.Dag.Fabric.Serialize
  110. , Graphics.Gudni.Raster.Dag.FromLayout
  111.  
  112. , Graphics.Gudni.Raster.Dag.ConfineTree.Primitive.Constants
  113. , Graphics.Gudni.Raster.Dag.ConfineTree.Primitive.Cross
  114. , Graphics.Gudni.Raster.Dag.ConfineTree.Primitive.Stack
  115. , Graphics.Gudni.Raster.Dag.ConfineTree.Primitive.Storage
  116. , Graphics.Gudni.Raster.Dag.ConfineTree.Primitive.Tag
  117. , Graphics.Gudni.Raster.Dag.ConfineTree.Primitive.Type
  118. , Graphics.Gudni.Raster.Dag.ConfineTree.Primitive.WithinBox
  119.  
  120. , Graphics.Gudni.Raster.Dag.Haskell.Rasterizer
  121.  
  122. , Graphics.Gudni.Raster.Dag.OpenCL.CallKernels
  123. , Graphics.Gudni.Raster.Dag.OpenCL.EmbeddedOpenCLSource
  124. , Graphics.Gudni.Raster.Dag.OpenCL.PrepareBuffers
  125. , Graphics.Gudni.Raster.Dag.OpenCL.Rasterizer
  126. , Graphics.Gudni.Raster.Dag.OpenCL.Setup
  127. , Graphics.Gudni.Raster.Dag.OpenCL.Instance
  128.  
  129. , Graphics.Gudni.Raster.Dag.TagTypes
  130. , Graphics.Gudni.Raster.Dag.Storage
  131. , Graphics.Gudni.Raster.Dag.State
  132. , Graphics.Gudni.Raster.Dag.Serialize
  133. , Graphics.Gudni.Raster.TextureReference
  134. , Graphics.Gudni.Raster.Class
  135.  
  136. -- Modules included in this library but not exported.
  137. other-modules: Graphics.Gudni.Base.HasDefault
  138. , Graphics.Gudni.Base.Reversible
  139. , Graphics.Gudni.Base.Chain
  140. , Graphics.Gudni.Base.Loop
  141.  
  142. , Graphics.Gudni.Figure.Bezier
  143. , Graphics.Gudni.Figure.Deknob
  144. , Graphics.Gudni.Figure.Facet
  145. , Graphics.Gudni.Figure.Fit
  146. , Graphics.Gudni.Figure.Principle
  147. , Graphics.Gudni.Figure.Shape
  148. , Graphics.Gudni.Figure.Substance
  149. , Graphics.Gudni.Figure.Transform
  150.  
  151. , Graphics.Gudni.Figure.Principle.Affine
  152. , Graphics.Gudni.Figure.Principle.Angle
  153. , Graphics.Gudni.Figure.Principle.ArcLength
  154. , Graphics.Gudni.Figure.Principle.Axis
  155. , Graphics.Gudni.Figure.Principle.Box
  156. , Graphics.Gudni.Figure.Principle.Cut
  157. , Graphics.Gudni.Figure.Principle.Point
  158. , Graphics.Gudni.Figure.Principle.Space
  159.  
  160. , Graphics.Gudni.Figure.Bezier.Type
  161. , Graphics.Gudni.Figure.Bezier.Cross
  162. , Graphics.Gudni.Figure.Bezier.Cut
  163. , Graphics.Gudni.Figure.Bezier.Split
  164. , Graphics.Gudni.Figure.Bezier.Deknob
  165. , Graphics.Gudni.Figure.Bezier.Math
  166. , Graphics.Gudni.Figure.Bezier.WithinBox
  167.  
  168. , Graphics.Gudni.Figure.Deknob.Class
  169.  
  170. , Graphics.Gudni.Figure.Facet.Cross
  171. , Graphics.Gudni.Figure.Facet.Triangle
  172. , Graphics.Gudni.Figure.Facet.BezierTriangle
  173. , Graphics.Gudni.Figure.Facet.Type
  174. , Graphics.Gudni.Figure.Facet.Subdivide
  175. , Graphics.Gudni.Figure.Facet.Traverse
  176. , Graphics.Gudni.Figure.Facet.Barycentric
  177. , Graphics.Gudni.Figure.Facet.WithinBox
  178.  
  179. , Graphics.Gudni.Figure.Fit.Bezier
  180. , Graphics.Gudni.Figure.Fit.Box
  181.  
  182. , Graphics.Gudni.Figure.Shape.Type
  183. , Graphics.Gudni.Figure.Shape.Outline
  184. , Graphics.Gudni.Figure.Shape.OpenCurve
  185.  
  186. , Graphics.Gudni.Figure.Substance.Color
  187. , Graphics.Gudni.Figure.Substance.Gradient
  188. , Graphics.Gudni.Figure.Substance.Picture
  189. , Graphics.Gudni.Figure.Substance.Type
  190.  
  191. , Graphics.Gudni.Figure.Transform.Transformable
  192. , Graphics.Gudni.Figure.Transform.Transformer
  193. , Graphics.Gudni.Figure.Transform.Projection
  194. , Graphics.Gudni.Figure.Transform.Projection.BezierSpace
  195. , Graphics.Gudni.Figure.Transform.Projection.Apply
  196.  
  197. , Graphics.Gudni.Figure.StorableInstances
  198.  
  199. , Graphics.Gudni.Image.Fast2D
  200. , Graphics.Gudni.Image.Type
  201. , Graphics.Gudni.Image.Format
  202.  
  203. , Graphics.Gudni.Interface.BasicSceneState
  204. , Graphics.Gudni.Interface.DrawTarget
  205. , Graphics.Gudni.Interface.FontLibrary
  206. , Graphics.Gudni.Interface.GLInterop
  207. , Graphics.Gudni.Interface.Input
  208. , Graphics.Gudni.Interface.InterfaceSDL
  209. , Graphics.Gudni.Interface.Query
  210. , Graphics.Gudni.Interface.ScreenMode
  211. , Graphics.Gudni.Interface.TargetFromImage
  212. , Graphics.Gudni.Interface.Time
  213.  
  214. , Graphics.Gudni.Draw.Representation
  215. , Graphics.Gudni.Draw.Representation.Class
  216. , Graphics.Gudni.Draw.Representation.Primitive
  217. , Graphics.Gudni.Draw.Representation.ConfineTree
  218. , Graphics.Gudni.Draw.Representation.DecorateTree
  219. , Graphics.Gudni.Draw.Representation.RayQuery
  220. , Graphics.Gudni.Draw.Representation.Fabric
  221.  
  222. , Graphics.Gudni.Draw.ArrowHead
  223. , Graphics.Gudni.Draw.Elipse
  224. , Graphics.Gudni.Draw.Symbols
  225. , Graphics.Gudni.Draw.Fuzzy
  226. , Graphics.Gudni.Draw.Plot
  227. , Graphics.Gudni.Draw.Rectangle
  228. , Graphics.Gudni.Draw.Stroke
  229. , Graphics.Gudni.Draw.Text
  230.  
  231. , Graphics.Gudni.Layout.Alignment
  232. , Graphics.Gudni.Layout.ApplyProximity
  233. , Graphics.Gudni.Layout.Collect
  234. , Graphics.Gudni.Layout.Compound
  235. , Graphics.Gudni.Layout.Empty
  236. , Graphics.Gudni.Layout.Fill
  237. , Graphics.Gudni.Layout.Font
  238. , Graphics.Gudni.Layout.FromLayout
  239. , Graphics.Gudni.Layout.Grid
  240. , Graphics.Gudni.Layout.Layout
  241. , Graphics.Gudni.Layout.Mask
  242. , Graphics.Gudni.Layout.Overlappable
  243. , Graphics.Gudni.Layout.Proximity
  244. , Graphics.Gudni.Layout.Style
  245. , Graphics.Gudni.Layout.Token
  246. , Graphics.Gudni.Layout.WithBox
  247.  
  248. , Graphics.Gudni.Raster.Serial.Reference
  249. , Graphics.Gudni.Raster.Serial.Slice
  250. , Graphics.Gudni.Raster.Serial.Pile
  251. , Graphics.Gudni.Raster.Serial.BytePile
  252. , Graphics.Gudni.Raster.Serial.CopyPile
  253.  
  254. , Graphics.Gudni.Raster.Thresholds.OpenCL.CallKernels
  255. , Graphics.Gudni.Raster.Thresholds.OpenCL.EmbeddedOpenCLSource
  256. , Graphics.Gudni.Raster.Thresholds.OpenCL.PrepareBuffers
  257. , Graphics.Gudni.Raster.Thresholds.OpenCL.ProcessBuffers
  258. , Graphics.Gudni.Raster.Thresholds.OpenCL.Rasterizer
  259. , Graphics.Gudni.Raster.Thresholds.OpenCL.Instance
  260. , Graphics.Gudni.Raster.Thresholds.OpenCL.Setup
  261.  
  262. , Graphics.Gudni.Raster.Thresholds.Constants
  263. , Graphics.Gudni.Raster.Thresholds.Enclosure
  264. , Graphics.Gudni.Raster.Thresholds.ItemInfo
  265. , Graphics.Gudni.Raster.Thresholds.Params
  266. , Graphics.Gudni.Raster.Thresholds.ReorderTable
  267. , Graphics.Gudni.Raster.Thresholds.Serialize
  268. , Graphics.Gudni.Raster.Thresholds.Strand
  269. , Graphics.Gudni.Raster.Thresholds.StrandReference
  270. , Graphics.Gudni.Raster.Thresholds.SubstanceInfo
  271. , Graphics.Gudni.Raster.Thresholds.TileTree
  272.  
  273. , Graphics.Gudni.Raster.OpenCL.Buffer
  274. , Graphics.Gudni.Raster.OpenCL.CppDefines
  275. , Graphics.Gudni.Raster.OpenCL.DeviceQuery
  276. , Graphics.Gudni.Raster.OpenCL.Instances
  277. , Graphics.Gudni.Raster.OpenCL.KernelQuery
  278.  
  279. , Graphics.Gudni.ShapeTree.STree
  280. , Graphics.Gudni.ShapeTree.FinalTree
  281. , Graphics.Gudni.ShapeTree.Traverse
  282.  
  283. -- LANGUAGE extensions used by modules in this package.
  284. other-extensions: FlexibleContexts
  285. , TypeFamilies
  286. , ScopedTypeVariables
  287. , MultiParamTypeClasses
  288. , UndecidableInstances
  289. , DatatypeContexts
  290. , TemplateHaskell
  291. , GeneralizedNewtypeDeriving
  292. , StandaloneDeriving
  293. , GADTs
  294. , LambdaCase
  295. , FlexibleInstances
  296. , AllowAmbiguousTypes
  297. , PatternSynonyms
  298. , KindSignatures
  299. , ConstraintKinds
  300. , Rank2Types
  301. , TypeOperators
  302. , RankNTypes
  303. , CPP
  304. , DeriveDataTypeable
  305. , ViewPatterns
  306. , ExistentialQuantification
  307.  
  308. build-tools: c2hs
  309. , happy
  310. -- Other library packages from which modules are imported.
  311. build-depends: base
  312. , hashable
  313. , vector
  314. , MonadRandom
  315. , random
  316. , half
  317. , containers
  318. , mtl
  319. , array
  320. , bytestring
  321. , primitive
  322. , transformers
  323. , time
  324. , clock
  325. , intervals
  326. , linear
  327. , loop
  328. , lens
  329. , monad-memo
  330.  
  331. , mmorph
  332. , parallel
  333. , parallel-io
  334.  
  335. , directory
  336. , filepath
  337. , file-embed
  338.  
  339. , sdl2 >= 2.5
  340. -- text only needed for window names
  341. , text
  342. , OpenGL
  343. , OpenGLRaw
  344. , OpenCL
  345. , CLUtil
  346.  
  347. , diagrams-lib
  348. , FontyFruity
  349. , JuicyPixels
  350. , colour
  351. , monadlist
  352. , IfElse
  353. , filtrable
  354. , numeric-limits
  355. , GenericPretty
  356. , pretty
  357. , STMonadTrans
  358. , monad-loops
  359.  
  360.  
  361. -- Directories containing source files.
  362. hs-source-dirs: src
  363. ghc-options: -fprint-potential-instances
  364. -- ld-options: -headerpad_max_install_names
  365. -- Base language which the package is written in.
  366. default-language: Haskell2010
  367.  
  368. executable gudni-benchmarks
  369. other-modules: GudniTests
  370. if flag(benchmarks)
  371. build-depends: gudni
  372. , base
  373. , lens
  374. , vector
  375. , mtl
  376. , GenericPretty
  377. , MonadRandom >=0.5 && <0.6
  378. , random >=1.1 && <1.2
  379. , JuicyPixels
  380. , silently
  381. , IfElse
  382. else
  383. buildable: False
  384. hs-source-dirs: ./tests
  385. main-is: GudniBenchmarks.hs
  386. default-language: Haskell2010
  387. ghc-options: -main-is GudniBenchmarks
  388. -O3
  389. -threaded
  390. -- "-with-rtsopts=-N -p -s -h -i0.1"
  391.  
  392. executable square-example
  393. if flag(benchmarks)
  394. build-depends: gudni
  395. , base
  396. , lens
  397. , mtl
  398. else
  399. buildable: False
  400. hs-source-dirs: ./examples
  401. main-is: Square.hs
  402. default-language: Haskell2010
  403. ghc-options: -main-is Square
  404. -O3
  405. -threaded
  406. -- "-with-rtsopts=-N -p -s -h -i0.1"
  407.  
  408. executable projection-example
  409. if flag(benchmarks)
  410. build-depends: gudni
  411. , base
  412. , lens
  413. , linear
  414. , mtl
  415. , vector
  416. else
  417. buildable: False
  418. hs-source-dirs: ./examples
  419. main-is: ProjectDemo.hs
  420. default-language: Haskell2010
  421. ghc-options: -main-is ProjectDemo
  422. -O3
  423. -threaded
  424. -fprint-potential-instances
  425.  
  426. executable facet-tesselation
  427. if flag(benchmarks)
  428. build-depends: gudni
  429. , base
  430. , lens
  431. , linear
  432. , mtl
  433. , vector
  434. else
  435. buildable: False
  436. hs-source-dirs: ./tests
  437. main-is: FacetTesselation.hs
  438. default-language: Haskell2010
  439. ghc-options: -main-is FacetTesselation
  440. -O3
  441. -threaded
  442. -fprint-potential-instances
  443.  
  444.  
  445. executable debug-projection
  446. if flag(benchmarks)
  447. build-depends: gudni
  448. , base
  449. , lens
  450. , linear
  451. , mtl
  452. else
  453. buildable: False
  454. hs-source-dirs: ./examples
  455. main-is: DebugProjection.hs
  456. default-language: Haskell2010
  457. ghc-options: -main-is DebugProjection
  458. -O3
  459. -threaded
  460. -fprint-potential-instances
  461.  
  462. executable stroke-example
  463. if flag(benchmarks)
  464. build-depends: gudni
  465. , base
  466. , lens
  467. , linear
  468. , mtl
  469. else
  470. buildable: False
  471. hs-source-dirs: ./examples
  472. main-is: StrokeDemo.hs
  473. default-language: Haskell2010
  474. ghc-options: -main-is StrokeDemo
  475. -O3
  476. -threaded
  477. -fprint-potential-instances
  478.  
  479. executable plot-example
  480. -- other-modules:
  481. if flag(benchmarks)
  482. build-depends: gudni
  483. , base
  484. , lens
  485. , vector
  486. , mtl
  487. else
  488. buildable: False
  489. hs-source-dirs: ./examples
  490. main-is: Plot.hs
  491. default-language: Haskell2010
  492. ghc-options: -main-is Plot
  493. -O3
  494. -threaded
  495. -- "-with-rtsopts=-N -p -s -h -i0.1"
  496.  
  497. executable paragraph-example
  498. -- other-modules:
  499. if flag(benchmarks)
  500. build-depends: gudni
  501. , base
  502. , lens
  503. , vector
  504. , mtl
  505. else
  506. buildable: False
  507. hs-source-dirs: ./examples
  508. main-is: Paragraph.hs
  509. default-language: Haskell2010
  510. ghc-options: -main-is Paragraph
  511. -O3
  512. -threaded
  513. -- "-with-rtsopts=-N -p -s -h -i0.1"
  514.  
  515. executable confinetree
  516. other-modules: GudniTests
  517. BasicShapes
  518. if flag(benchmarks)
  519. build-depends: gudni
  520. , base
  521. , lens
  522. , vector
  523. , containers
  524. , mtl
  525. , IfElse
  526. , GenericPretty
  527. , MonadRandom >=0.5 && <0.6
  528. , random >=1.1 && <1.2
  529. , colour
  530. else
  531. buildable: False
  532. hs-source-dirs: ./tests
  533. main-is: ConfineTreeTest.hs
  534. default-language: Haskell2010
  535. ghc-options: -main-is ConfineTreeTest
  536. -O3
  537. -threaded
  538. -- "-with-rtsopts=-N -p -s -h -i0.1"
  539.  
  540. executable crosstest
  541. -- other-modules:
  542. if flag(benchmarks)
  543. build-depends: gudni
  544. , base
  545. , lens
  546. , vector
  547. , containers
  548. , mtl
  549. , IfElse
  550. , GenericPretty
  551. , MonadRandom >=0.5 && <0.6
  552. , random >=1.1 && <1.2
  553. else
  554. buildable: False
  555. hs-source-dirs: ./tests
  556. main-is: CrossesBezierTest.hs
  557. default-language: Haskell2010
  558. ghc-options: -main-is CrossesBezierTest
  559. -O3
  560. -threaded
  561. -- "-with-rtsopts=-N -p -s -h -i0.1"
  562.  
  563. benchmark criterion
  564. hs-source-dirs: tests
  565. main-is: CriterionBenchmarks.hs
  566. ghc-options: -O2 -Wall -rtsopts
  567. build-depends: gudni
  568. , base
  569. , criterion
  570. , linear
  571. default-language: Haskell2010
  572. type: exitcode-stdio-1.0
  573.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement