summaryrefslogtreecommitdiff
path: root/debian/rules
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2012-05-20 21:32:07 +0200
committerJonas Smedegaard <dr@jones.dk>2012-05-20 21:32:07 +0200
commit13c13a51f2b5804eb8717d9ad136cc8673a5d3e7 (patch)
treed05e84291e7ff20326133ce705138709d71c8e6b /debian/rules
parentcb4cfb06ffb1a143d3e4a9267f830a67de24123c (diff)
Major overhaul of package dependency resolving.
Diffstat (limited to 'debian/rules')
-rwxr-xr-xdebian/rules89
1 files changed, 56 insertions, 33 deletions
diff --git a/debian/rules b/debian/rules
index 100450be5..0e544307c 100755
--- a/debian/rules
+++ b/debian/rules
@@ -53,41 +53,64 @@ cleanbuilddir:: haskell-clean
haskell-clean:
[ ! -x "$(DEB_SETUP_BIN_NAME)" ] || $(DEB_SETUP_BIN_NAME) clean
-deps-stems = syb parsec3 xhtml mtl network zip-archive utf8-string http texmath xml citeproc-hs
-deps-stems += pandoc-types json dlist tagsoup base64-bytestring highlighting-kate diff testpack
-deps-stems += binary digest pcre-light transformers zlib blaze-html temporary
-# indirect (doc-only?) dependencies not pulled in from above
-deps-stems += blaze-builder hs-bibutils random text
-deps-doc = ghc-doc
-deps-doc += $(patsubst %,$(comma) libghc-%-doc, $(deps-stems))
-deps-prof = ghc-prof
-deps-prof += $(patsubst %,$(comma) libghc-%-prof, $(deps-stems))
+# Haskell dependencies for any build from pandoc.cabal
+# * Versions only relevant post Squeeze when libhc-* namespace was introduced
+deps-ghc += parsec3,<<,3.2
+deps-ghc += mtl,<<,2.2
+deps-ghc += network,<<,2.4
+deps-ghc += zip-archive,<<,0.2
+# Should be safe to drop versioning for Squeeze
+deps-ghc += utf8-string,<<,0.4
+deps-ghc += http,<<,1:4000.3
+deps-ghc += texmath,<<,0.7
+deps-ghc += xml,<<,1.4
+deps-ghc += random,<<1.1
+deps-ghc += citeproc-hs,<<,0.4
+deps-ghc += pandoc-types,<<,1.10
+deps-ghc += json,<<,0.6
+deps-ghc += tagsoup,<<,0.13
+deps-ghc += base64-bytestring,<<,0.2
+deps-ghc += zlib,<<,0.6
+deps-ghc += highlighting-kate,<<,0.6
+deps-ghc += temporary,<<,1.2
+deps-ghc += blaze-html,<<,0.5
+# Should be safe to drop versioning for Squeeze
+deps-ghc += syb,<<,0.4
+
+# Haskell dependencies for testsuite from pandoc.cabal
+deps-ghc-test += diff
+deps-ghc-test += test-framework,<<,0.7
+deps-ghc-test += test-framework-hunit,<<,0.3
+deps-ghc-test += test-framework-quickcheck2,<<,0.3
+deps-ghc-test += quickcheck,<<,2.6
+deps-ghc-test += hunit,<<,1.3
+deps-ghc-test += template-haskell,<<,2.8
+deps-ghc-test += ansi-terminal,<<,0.6
+
+# Haskell dependencies (maybe) needed for documentation
+# TODO: actually use these (not maintain Build-depends-indep by hand)
+deps-ghc-doc += binary
+deps-ghc-doc += digest
+deps-ghc-doc += pcre-light
+deps-ghc-doc += transformers
+deps-ghc-doc += blaze-builder
+deps-ghc-doc += hs-bibutils
+deps-ghc-doc += random
+deps-ghc-doc += text
+
+expand-ghc-dep = $(comma) libghc-$2-$1 $(if $3,($3 $4)$(if $5,$(comma) libghc-$2-$1 ($5 $6)))
+strip-ghc-deps = $(foreach dep,$2,$(call expand-ghc-dep,$1,$(word 1,$(subst $(comma),$(space),$(dep)))))
+expand-ghc-deps = $(foreach dep,$2,$(call expand-ghc-dep,$1,$(word 1,$(subst $(comma),$(space),$(dep))),$(word 2,$(subst $(comma),$(space),$(dep))),$(word 3,$(subst $(comma),$(space),$(dep))),$(word 4,$(subst $(comma),$(space),$(dep))),$(word 5,$(subst $(comma),$(space),$(dep)))))
# Needed by upstream build process
-CDBS_BUILD_DEPENDS += , ghc, libghc-syb-dev
-CDBS_BUILD_DEPENDS += , libghc-parsec3-dev (<< 3.2)
-CDBS_BUILD_DEPENDS += , libghc-xhtml-dev (<< 3000.3)
-CDBS_BUILD_DEPENDS += , libghc-mtl-dev (<< 2.1)
-CDBS_BUILD_DEPENDS += , libghc-network-dev (<< 2.4)
-CDBS_BUILD_DEPENDS += , libghc-zip-archive-dev (<< 0.2)
-CDBS_BUILD_DEPENDS += , libghc-utf8-string-dev
-CDBS_BUILD_DEPENDS += , libghc-http-dev (>= 1:4000.0.5), libghc-http-dev (<< 1:4000.3)
-CDBS_BUILD_DEPENDS += , libghc-texmath-dev (>= 0.6.0.2), libghc-texmath-dev (<< 0.7)
-CDBS_BUILD_DEPENDS += , libghc-xml-dev (<< 1.4)
-CDBS_BUILD_DEPENDS += , libghc-citeproc-hs-dev (<< 0.4)
-CDBS_BUILD_DEPENDS += , libghc-pandoc-types-dev (>= 1.9.0.2), libghc-pandoc-types-dev (<< 1.10)
-CDBS_BUILD_DEPENDS += , libghc-json-dev (>= 0.4), libghc-json-dev (<< 0.6)
-CDBS_BUILD_DEPENDS += , libghc-dlist-dev (<< 0.6)
-CDBS_BUILD_DEPENDS += , libghc-tagsoup-dev (<< 0.13)
-CDBS_BUILD_DEPENDS += , libghc-base64-bytestring-dev (>= 0.1), libghc-base64-bytestring-dev (<< 0.2)
-CDBS_BUILD_DEPENDS += , libghc-highlighting-kate-dev (>= 0.5.0.2), libghc-highlighting-kate-dev (<< 0.6)
-CDBS_BUILD_DEPENDS += , libghc-diff-dev, libghc-testpack-dev
-CDBS_BUILD_DEPENDS += , libghc-blaze-html-dev (>= 0.4.3.0), libghc-blaze-html-dev (<< 0.5)
-CDBS_BUILD_DEPENDS += , libghc-temporary-dev (>= 1.1), libghc-temporary-dev (<< 1.2)
-CDBS_BUILD_DEPENDS += , libghc-zlib-dev (>= 0.5), libghc-zlib-dev (<= 0.6)
-CDBS_BUILD_DEPENDS += , hscolour (>= 1.8)
-CDBS_BUILD_DEPENDS += , $(deps-prof)
-CDBS_BUILD_DEPENDS_INDEP += , $(deps-doc)
+CDBS_BUILD_DEPENDS += , ghc
+CDBS_BUILD_DEPENDS += $(call expand-ghc-deps,dev,$(deps-ghc))
+# FIXME: enable, set DEB_ENABLE_TESTS = yes, and configure with -ftests
+#CDBS_BUILD_DEPENDS += $(call expand-ghc-deps,dev,$(deps-ghc-test))
+CDBS_BUILD_DEPENDS += , ghc-prof
+CDBS_BUILD_DEPENDS += , $(call strip-ghc-deps,prof,$(deps-ghc))
+CDBS_BUILD_DEPENDS_INDEP += , ghc-doc
+CDBS_BUILD_DEPENDS_INDEP += , $(call strip-ghc-deps,doc,$(deps-ghc) $(deps-ghc-doc))
# Needed for our packaging
CDBS_BUILD_DEPENDS += , haskell-devscripts (>=0.5.12)