diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2016-05-11 08:10:08 +0100 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2016-05-11 09:48:03 +0100 |
commit | 11b4ff84d46a61af8e9057d050c129cf904cbd6d (patch) | |
tree | 5d46f5af33bb41f355e915c2ca61216b436a4988 /dev-haskell/citeproc-hs | |
parent | dev-haskell/classy-prelude: bump up to 0.12.7 (diff) | |
download | gentoo-11b4ff84d46a61af8e9057d050c129cf904cbd6d.tar.gz gentoo-11b4ff84d46a61af8e9057d050c129cf904cbd6d.tar.bz2 gentoo-11b4ff84d46a61af8e9057d050c129cf904cbd6d.zip |
dev-haskell/citeproc-hs: port to pandoc-1.16
Package-Manager: portage-2.2.28
Diffstat (limited to 'dev-haskell/citeproc-hs')
-rw-r--r-- | dev-haskell/citeproc-hs/citeproc-hs-0.3.10-r1.ebuild | 55 | ||||
-rw-r--r-- | dev-haskell/citeproc-hs/files/citeproc-hs-0.3.10-pandoc-1.16.patch | 126 |
2 files changed, 181 insertions, 0 deletions
diff --git a/dev-haskell/citeproc-hs/citeproc-hs-0.3.10-r1.ebuild b/dev-haskell/citeproc-hs/citeproc-hs-0.3.10-r1.ebuild new file mode 100644 index 000000000000..cf78e8c070bb --- /dev/null +++ b/dev-haskell/citeproc-hs/citeproc-hs-0.3.10-r1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.4.3 + +CABAL_FEATURES="lib profile haddock hoogle hscolour" +inherit haskell-cabal + +DESCRIPTION="A Citation Style Language implementation in Haskell" +HOMEPAGE="http://istitutocolli.org/repos/citeproc-hs/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~x86" +IUSE="+bibutils embed_data_files +hexpat +network +small_base unicode_collation" + +RDEPEND="dev-haskell/json:=[profile?] + dev-haskell/mtl:=[profile?] + >=dev-haskell/pandoc-types-1.8:=[profile?] + dev-haskell/parsec:=[profile?] + dev-haskell/syb:=[profile?] + dev-haskell/utf8-string:=[profile?] + >=dev-lang/ghc-7.4.1:= + bibutils? ( >=dev-haskell/hs-bibutils-0.3:=[profile?] ) + embed_data_files? ( dev-haskell/file-embed:=[profile?] ) + hexpat? ( >=dev-haskell/hexpat-0.20.2:=[profile?] ) + !hexpat? ( dev-haskell/xml:=[profile?] ) + network? ( >=dev-haskell/http-4000.0.9:=[profile?] + >=dev-haskell/network-2.6:=[profile?] + >=dev-haskell/network-uri-2.6:=[profile?] ) + unicode_collation? ( dev-haskell/text:=[profile?] + dev-haskell/text-icu:=[profile?] ) +" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.6 +" + +src_prepare() { + epatch "${FILESDIR}"/${P}-ghc-7.10.patch + epatch "${FILESDIR}"/${P}-pandoc-1.16.patch +} + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag bibutils bibutils) \ + $(cabal_flag embed_data_files embed_data_files) \ + $(cabal_flag hexpat hexpat) \ + $(cabal_flag network network) \ + $(cabal_flag small_base small_base) \ + $(cabal_flag unicode_collation unicode_collation) +} diff --git a/dev-haskell/citeproc-hs/files/citeproc-hs-0.3.10-pandoc-1.16.patch b/dev-haskell/citeproc-hs/files/citeproc-hs-0.3.10-pandoc-1.16.patch new file mode 100644 index 000000000000..ab95388748d4 --- /dev/null +++ b/dev-haskell/citeproc-hs/files/citeproc-hs-0.3.10-pandoc-1.16.patch @@ -0,0 +1,126 @@ +diff --git a/citeproc-hs.cabal b/citeproc-hs.cabal +index 542f893..606ec05 100644 +--- a/citeproc-hs.cabal ++++ b/citeproc-hs.cabal +@@ -119,3 +119,3 @@ library + build-depends: containers, directory, mtl, json, utf8-string, +- bytestring, filepath, pandoc-types >= 1.8 && < 1.13 ++ bytestring, filepath, pandoc-types >= 1.8 + +diff --git a/src/Text/CSL/Output/Pandoc.hs b/src/Text/CSL/Output/Pandoc.hs +index 0f2cdfb..74e698f 100644 +--- a/src/Text/CSL/Output/Pandoc.hs ++++ b/src/Text/CSL/Output/Pandoc.hs +@@ -1,2 +1,2 @@ +-{-# LANGUAGE PatternGuards, DeriveDataTypeable #-} ++{-# LANGUAGE PatternGuards, DeriveDataTypeable, CPP #-} + ----------------------------------------------------------------------------- +@@ -78,2 +78,10 @@ tailFO (f:fs) + ++#if MIN_VERSION_pandoc_types(1,16,0) ++# define P16_ATTRS nullAttr ++# define P16_ATTRS_ _attrs ++#else ++# define P16_ATTRS ++# define P16_ATTRS_ ++#endif ++ + renderFo :: Style -> FormattedOutput -> [Inline] +@@ -85,3 +93,3 @@ renderFo sty fo + | FO fm xs <- fo = toPandoc fm $ rest xs +- | FUrl u fm <- fo = toPandoc fm [Link (toStr $ snd u) u] ++ | FUrl u fm <- fo = toPandoc fm [Link P16_ATTRS (toStr $ snd u) u] + | otherwise = [] +@@ -109,3 +117,3 @@ renderFo sty fo + setCase' f i +- | Link s r <- i = Link (map (setCase f) s) r ++ | Link P16_ATTRS_ s r <- i = Link P16_ATTRS_ (map (setCase f) s) r + | otherwise = setCase f i +@@ -148,3 +156,3 @@ renderFo sty fo + rmZeros = dropWhile (== '0') +- escape s x = Link x (s,s) -- we use a link to store some data ++ escape s x = Link P16_ATTRS x (s,s) -- we use a link to store some data + +@@ -181,3 +189,4 @@ clean s b (i:is) + | Strong x <- i = split (isLink' "strong" ) (return . Strong ) x ++ clean s b is +- | Link x t <- i = clean' s b (Link x t : clean s b is) ++ | Link P16_ATTRS_ x t <- i = clean' ++ s b (Link P16_ATTRS_ x t : clean s b is) + | otherwise = clean' s b (i : clean s b is) +@@ -185,10 +194,10 @@ clean s b (i:is) + unwrap f ls +- | Link x _ : _ <- ls = clean' s b x +- | _ : _ <- ls = f ls ++ | Link P16_ATTRS_ x _ : _ <- ls = clean' s b x ++ | _ : _ <- ls = f ls + | otherwise = [] + isLink l il +- | Link _ (x,y) <- il = x == l && x == y ++ | Link P16_ATTRS_ _ (x,y) <- il = x == l && x == y + | otherwise = False + isLink' l il +- | Link _ (x,y) <- il = (x == l || x == "nodecor") && x == y ++ | Link P16_ATTRS_ _ (x,y) <- il = (x == l || x == "nodecor") && x == y + | otherwise = False +@@ -201,3 +210,3 @@ clean' _ _ [] = [] + clean' s b (i:is) +- | Link inls (y,z) <- i, y == "inquote" ++ | Link P16_ATTRS_ inls (y,z) <- i, y == "inquote" + , y == z = case headInline is of +@@ -235,7 +244,7 @@ flipFlop (i:is) + reverseEmph' e +- | bo, Emph inls <- e = Link (reverseEmph False inls) ("emph","emph") ++ | bo, Emph inls <- e = Link P16_ATTRS (reverseEmph False inls) ("emph","emph") + | Emph inls <- e = Emph (reverseEmph True inls) +- | Link ls (x,y) <- e = if x == "nodecor" && x == y +- then Link ls ("emph","emph") +- else e ++ | Link P16_ATTRS_ ls (x,y) <- e = if x == "nodecor" && x == y ++ then Link P16_ATTRS_ ls ("emph","emph") ++ else e + | otherwise = e +@@ -244,7 +253,7 @@ flipFlop (i:is) + reverseStrong' e +- | bo, Strong inls <- e = Link (reverseStrong False inls) ("strong","strong") ++ | bo, Strong inls <- e = Link P16_ATTRS (reverseStrong False inls) ("strong","strong") + | Strong inls <- e = Strong (reverseStrong True inls) +- | Link ls (x,y) <- e = if x == "nodecor" && x == y +- then Link ls ("strong","strong") +- else e ++ | Link P16_ATTRS_ ls (x,y) <- e = if x == "nodecor" && x == y ++ then Link P16_ATTRS_ ls ("strong","strong") ++ else e + | otherwise = e +@@ -306,3 +315,3 @@ initInline (i:[]) + | Strikeout is <- i = return $ Strikeout (initInline is) +- | Link is t <- i = return $ Link (initInline is) t ++ | Link P16_ATTRS_ is t <- i = return $ Link P16_ATTRS_ (initInline is) t + | otherwise = [] +@@ -336,3 +345,3 @@ mapHeadInline f (i:xs) + | Strikeout is <- i = Strikeout (mapHeadInline f is) : xs +- | Link is t <- i = Link (mapHeadInline f is) t : xs ++ | Link P16_ATTRS_ is t <- i = Link P16_ATTRS_ (mapHeadInline f is) t : xs + | otherwise = i : xs +@@ -348,3 +357,3 @@ getInline i + | SmallCaps is <- i = is +- | Link is _ <- i = is ++ | Link P16_ATTRS_ is _ <- i = is + | otherwise = [] +diff --git a/src/Text/CSL/Test.hs b/src/Text/CSL/Test.hs +index 1a470cf..2d9befa 100644 +--- a/src/Text/CSL/Test.hs ++++ b/src/Text/CSL/Test.hs +@@ -166,2 +166,8 @@ pandocBib s + ++#if MIN_VERSION_pandoc_types(1,16,0) ++# define P16_ATTRS_ _attrs ++#else ++# define P16_ATTRS_ ++#endif ++ + pandocToHTML :: [Inline] -> String +@@ -179,3 +185,3 @@ pandocToHTML (i:xs) + SingleQuote -> "‘" ++ pandocToHTML is ++ "’" ++ pandocToHTML xs +- | Link is x <- i = case snd x of ++ | Link P16_ATTRS_ is x <- i = case snd x of + "emph" -> "<span style=\"font-style:normal;\">" ++ |