]> gitweb.michael.orlitzky.com - spline3.git/blobdiff - spline3.cabal
spline3.cabal: add Paths_spline3 to other-modules to silence a warning.
[spline3.git] / spline3.cabal
index 6ffcef28a5f12b60f99c5b0db4df0a2a472fd10e..52028c46458405c354931c48864a099071199042 100644 (file)
@@ -1,36 +1,56 @@
 name:           spline3
-version:        0.0
+version:        0.0.2
 cabal-version:  >= 1.8
 author:         Michael Orlitzky
 maintainer:    Michael Orlitzky <michael@orlitzky.com>
+homepage:       http://michael.orlitzky.com/code/spline3.xhtml
+category:       Math
+license:        AGPL-3
+license-file:   doc/LICENSE
+bug-reports:    mailto:michael@orlitzky.com
 synopsis:
-  An implementation of the Sorokina and Zeilfelder
-  trivariate spline scheme on type-6 tetrahedral partitions.
-build-type:     Simple
+  A parallel implementation of the Sorokina/Zeilfelder spline scheme.
+description:
+  Interpolate volumetric data according to "Local quasi-interpolation
+  by cubic C^1 splines on type-6 tetrahedral partitions." The defaults
+  are tailored to the MRI data contained in data/mri.bin from the
+  Stanford volume data archive at <http://graphics.stanford.edu/data/voldata/>.
+  .
+  For more information and examples, please see the project homepage at
+  <http://michael.orlitzky.com/code/spline3.php>.
 
-flag HPC
-  description: Build with Haskell Program Coverage (HPC) support
-  default:     False
+build-type:     Simple
+extra-source-files:
+  data/mri.bin
+  data/mri.info
+  data/announcement.txt
+  doc/README
+  -- Don't ship the references for copyright reasons.
+  --doc/references/*.pdf
+  doc/results/2d/*.png
+  doc/results/3d/*.png
+  util/view-mri-data.py
 
 flag LLVM
   description: Build with LLVM
   default:     False
 
+
 executable spline3
+
   build-depends:
-    base                        == 4.5.*,
-    doctest                     == 0.6.*,
-    filepath                    == 1.*,
-    HUnit                       == 1.2.*,
-    QuickCheck                  == 2.4.*,
-    repa                        == 3.1.*,
-    repa-algorithms             == 3.1.*,
-    repa-io                     == 3.1.*,
-    test-framework              == 0.6.*,
-    test-framework-doctest      == 0.2.*,
-    test-framework-hunit        == 0.2.*,
-    test-framework-quickcheck2  == 0.2.*,
-    vector                      == 0.9.*
+    base                        < 5,
+    cmdargs                     >= 0.10,
+    filepath                    >= 1,
+    MissingH                    >= 1,
+    repa                        >= 3,
+    repa-algorithms             >= 3,
+    repa-io                     >= 3,
+    vector                      >= 0.10,
+    -- Additional test dependencies.
+    tasty                       >= 0.8,
+    tasty-hunit                 >= 0.8,
+    tasty-quickcheck            >= 0.8.1
 
   main-is:
     Main.hs
@@ -38,6 +58,27 @@ executable spline3
   hs-source-dirs:
     src/
 
+  other-modules:
+    Assertions
+    Cardinal
+    CommandLine
+    Comparisons
+    Cube
+    Everything
+    Examples
+    ExitCodes
+    Face
+    FunctionValues
+    Grid
+    Misc
+    Paths_spline3
+    Point
+    RealFunction
+    ScaleFactor
+    Tetrahedron
+    Values
+    Volumetric
+
   ghc-options:
     -Wall
     -fwarn-hi-shadowing
@@ -66,11 +107,80 @@ executable spline3
       -optc-O3
       -optc-march=native
 
-  if flag(hpc)
-    ghc-options:
-      -fhpc
-
   ghc-prof-options:
     -prof
     -auto-all
     -caf-all
+
+
+test-suite doctests
+  type: exitcode-stdio-1.0
+  hs-source-dirs: test
+  main-is: Doctests.hs
+  build-depends:
+    base                        < 5,
+    -- Additional test dependencies.
+    doctest                     >= 0.9
+
+  -- It's not entirely clear to me why I have to reproduce all of this.
+  ghc-options:
+    -rtsopts
+    -threaded
+    -funbox-strict-fields
+    -fexcess-precision
+    -fno-spec-constr-count
+
+  if flag(llvm)
+    ghc-options:
+      -fllvm
+      -optlo-O3
+      -optlc-O3
+  else
+    ghc-options:
+      -O2
+      -optc-O3
+      -optc-march=native
+
+
+test-suite testsuite
+  type: exitcode-stdio-1.0
+  hs-source-dirs: src test
+  main-is: TestSuite.hs
+  build-depends:
+    base                        < 5,
+    cmdargs                     >= 0.10,
+    filepath                    >= 1,
+    MissingH                    >= 1,
+    repa                        >= 3,
+    repa-algorithms             >= 3,
+    repa-io                     >= 3,
+    vector                      >= 0.10,
+    -- Additional test dependencies.
+    tasty                       >= 0.8,
+    tasty-hunit                 >= 0.8,
+    tasty-quickcheck            >= 0.8.1
+
+  -- It's not entirely clear to me why I have to reproduce all of this.
+  ghc-options:
+    -rtsopts
+    -threaded
+    -funbox-strict-fields
+    -fexcess-precision
+    -fno-spec-constr-count
+
+  if flag(llvm)
+    ghc-options:
+      -fllvm
+      -optlo-O3
+      -optlc-O3
+  else
+    ghc-options:
+      -O2
+      -optc-O3
+      -optc-march=native
+
+
+source-repository head
+  type: git
+  location: http://gitweb.michael.orlitzky.com/spline3.git
+  branch: master