Date: Thursday, August 17, 2017 @ 14:55:04 Author: felixonmars Revision: 251702
archrelease: copy trunk to community-staging-i686, community-staging-x86_64 Added: pandoc/repos/community-staging-i686/ pandoc/repos/community-staging-i686/PKGBUILD (from rev 251701, pandoc/trunk/PKGBUILD) pandoc/repos/community-staging-i686/ghc-8.2.1.patch (from rev 251701, pandoc/trunk/ghc-8.2.1.patch) pandoc/repos/community-staging-x86_64/ pandoc/repos/community-staging-x86_64/PKGBUILD (from rev 251701, pandoc/trunk/PKGBUILD) pandoc/repos/community-staging-x86_64/ghc-8.2.1.patch (from rev 251701, pandoc/trunk/ghc-8.2.1.patch) ------------------------------------------+ community-staging-i686/PKGBUILD | 65 +++++++++++++++++++++++ community-staging-i686/ghc-8.2.1.patch | 81 +++++++++++++++++++++++++++++ community-staging-x86_64/PKGBUILD | 65 +++++++++++++++++++++++ community-staging-x86_64/ghc-8.2.1.patch | 81 +++++++++++++++++++++++++++++ 4 files changed, 292 insertions(+) Copied: pandoc/repos/community-staging-i686/PKGBUILD (from rev 251701, pandoc/trunk/PKGBUILD) =================================================================== --- community-staging-i686/PKGBUILD (rev 0) +++ community-staging-i686/PKGBUILD 2017-08-17 14:55:04 UTC (rev 251702) @@ -0,0 +1,65 @@ +# $Id$ +# Maintainer: Felix Yan <felixonm...@archlinux.org> +# Contributor: Arch Haskell Team <arch-hask...@haskell.org> + +pkgname=pandoc +pkgver=1.19.2.1 +pkgrel=105 +pkgdesc="Conversion between markup formats" +url="http://pandoc.org" +license=("GPL") +arch=('i686' 'x86_64') +depends=('ghc-libs' "haskell-http" "haskell-juicypixels" "haskell-sha" "haskell-aeson" + "haskell-base64-bytestring" "haskell-blaze-html" "haskell-blaze-markup" "haskell-cmark" + "haskell-data-default" "haskell-doctemplates" "haskell-mtl" "haskell-extensible-exceptions" + "haskell-filemanip" "haskell-haddock-library" "haskell-skylighting" "haskell-hslua" + "haskell-http-client" "haskell-syb" "haskell-http-client-tls" "haskell-http-types" + "haskell-text" "haskell-texmath" "haskell-network" "haskell-old-time" + "haskell-pandoc-types" "haskell-parsec" "haskell-random" "haskell-scientific" + "haskell-tagsoup" "haskell-temporary" "haskell-network-uri" "haskell-unordered-containers" + "haskell-zip-archive" "haskell-vector" "haskell-xml" "haskell-yaml" "haskell-zlib") +optdepends=('pandoc-citeproc: for citation rendering with pandoc-citeproc filter' + 'texlive-core: for pdf output') +conflicts=('haskell-pandoc') +replaces=('haskell-pandoc') +makedepends=('ghc') +source=("https://hackage.haskell.org/packages/archive/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz" + ghc-8.2.1.patch) +sha256sums=('08692f3d77bf95bb9ba3407f7af26de7c23134e7efcdafad0bdaf9050e2c7801' + '2d28962550964540ad543833b38fee8ae8d247d2b8ec08fcef9b9879bf967846') + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i ../ghc-8.2.1.patch + sed -e 's/syb >= 0.1 && < 0.7,/syb >= 0.1,/' \ + -e 's/aeson >= 0.7.* && < 1.2,/aeson >= 0.7,/' \ + -e 's/process >= 1 && < 1.5,/process >= 1,/' \ + -e 's/time >= 1.5 && < 1.7/time >= 1.5/' \ + -e '/Build-Depends: pandoc,/a \ texmath,' \ + -i $pkgname.cabal +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + runhaskell Setup configure -O --enable-shared --enable-executable-dynamic \ + --prefix=/usr --docdir="/usr/share/doc/${pkgbase}" --datasubdir="$pkgname" \ + --dynlibdir=/usr/lib --libsubdir=\$compiler/site-local/\$pkgid \ + -f-old-locale -fnetwork-uri -fhttps -f-trypandoc -f-embed_data_files -f-weigh-pandoc + runhaskell Setup build + runhaskell Setup register --gen-script + runhaskell Setup unregister --gen-script + sed -i -r -e "s|ghc-pkg.*update[^ ]* |&'--force' |" register.sh + sed -i -r -e "s|ghc-pkg.*unregister[^ ]* |&'--force' |" unregister.sh +} + +package() { + cd "${srcdir}/${pkgbase}-${pkgver}" + install -D -m744 register.sh "${pkgdir}/usr/share/haskell/register/${pkgname}.sh" + install -D -m744 unregister.sh "${pkgdir}/usr/share/haskell/unregister/${pkgname}.sh" + runhaskell Setup copy --destdir="${pkgdir}" + rm -f "${pkgdir}/usr/share/doc/${pkgname}/COPYING.md" + + # Remove static libs + find "$pkgdir"/usr/lib -name "*.a" -delete +} Copied: pandoc/repos/community-staging-i686/ghc-8.2.1.patch (from rev 251701, pandoc/trunk/ghc-8.2.1.patch) =================================================================== --- community-staging-i686/ghc-8.2.1.patch (rev 0) +++ community-staging-i686/ghc-8.2.1.patch 2017-08-17 14:55:04 UTC (rev 251702) @@ -0,0 +1,81 @@ +From 10d91c147968d2e4d63b99b5b0342624827f416f Mon Sep 17 00:00:00 2001 +From: John MacFarlane <j...@berkeley.edu> +Date: Sun, 26 Mar 2017 17:22:00 +0200 +Subject: [PATCH] Use file-embed instead of hsb2hs to embed data files. + +I think template haskell is robust enough now across platforms +that this will work. + +Motivation: file-embed gives us better dependency tracking: if a data +file changes, ghc/stack/cabal know to recompile the Data module. + +This also removes hsb2hs as a build dependency. +--- + INSTALL.md | 3 --- + Setup.hs | 28 ++-------------------------- + linux/Dockerfile | 1 - + macos/make_macos_package.sh | 3 --- + pandoc.cabal | 2 +- + src/Text/Pandoc/{Data.hsb => Data.hs} | 9 +++++---- + 6 files changed, 8 insertions(+), 38 deletions(-) + rename src/Text/Pandoc/{Data.hsb => Data.hs} (77%) + +diff --git a/Setup.hs b/Setup.hs +index bc6651942..3f6bb2858 100644 +--- a/Setup.hs ++++ b/Setup.hs +@@ -20,41 +20,17 @@ import Distribution.Simple + import Distribution.Simple.PreProcess + import Distribution.Simple.Setup (ConfigFlags(..), CopyFlags(..), fromFlag) + import Distribution.PackageDescription (PackageDescription(..), FlagName(..)) +-import Distribution.Simple.Utils ( rawSystemExitCode, findProgramVersion ) + import System.Exit +-import Distribution.Simple.Utils (info, notice, installOrdinaryFiles) ++import Distribution.Simple.Utils (notice, installOrdinaryFiles) + import Distribution.Simple.Program (simpleProgram, Program(..)) + import Distribution.Simple.LocalBuildInfo + import Control.Monad (when) + + main :: IO () + main = defaultMainWithHooks $ simpleUserHooks { +- -- enable hsb2hs preprocessor for .hsb files +- hookedPreProcessors = [ppBlobSuffixHandler] +- , hookedPrograms = [(simpleProgram "hsb2hs"){ +- programFindVersion = \verbosity fp -> +- findProgramVersion "--version" id verbosity fp }] +- , postCopy = installManPage ++ postCopy = installManPage + } + +-ppBlobSuffixHandler :: PPSuffixHandler +-ppBlobSuffixHandler = ("hsb", \_ lbi -> +- PreProcessor { +- platformIndependent = True, +- runPreProcessor = mkSimplePreProcessor $ \infile outfile verbosity -> +- do let embedData = case lookup (FlagName "embed_data_files") +- (configConfigurationsFlags (configFlags lbi)) of +- Just True -> True +- _ -> False +- when embedData $ +- do info verbosity $ "Preprocessing " ++ infile ++ " to " ++ outfile +- ec <- rawSystemExitCode verbosity "hsb2hs" +- [infile, infile, outfile] +- case ec of +- ExitSuccess -> return () +- ExitFailure _ -> error "hsb2hs is needed to build this program" +- }) +- + installManPage :: Args -> CopyFlags + -> PackageDescription -> LocalBuildInfo -> IO () + installManPage _ flags pkg lbi = do +--- a/pandoc.cabal ++++ b/pandoc.cabal +@@ -332,7 +332,7 @@ Library + cpp-options: -DHTTP_CLIENT + if flag(embed_data_files) + cpp-options: -DEMBED_DATA_FILES +- Build-Tools: hsb2hs >= 0.3.1 ++ build-depends: file-embed >= 0.0 && < 0.1 + other-modules: Text.Pandoc.Data + if os(darwin) + Build-Tools: cpphs >= 1.19 Copied: pandoc/repos/community-staging-x86_64/PKGBUILD (from rev 251701, pandoc/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2017-08-17 14:55:04 UTC (rev 251702) @@ -0,0 +1,65 @@ +# $Id$ +# Maintainer: Felix Yan <felixonm...@archlinux.org> +# Contributor: Arch Haskell Team <arch-hask...@haskell.org> + +pkgname=pandoc +pkgver=1.19.2.1 +pkgrel=105 +pkgdesc="Conversion between markup formats" +url="http://pandoc.org" +license=("GPL") +arch=('i686' 'x86_64') +depends=('ghc-libs' "haskell-http" "haskell-juicypixels" "haskell-sha" "haskell-aeson" + "haskell-base64-bytestring" "haskell-blaze-html" "haskell-blaze-markup" "haskell-cmark" + "haskell-data-default" "haskell-doctemplates" "haskell-mtl" "haskell-extensible-exceptions" + "haskell-filemanip" "haskell-haddock-library" "haskell-skylighting" "haskell-hslua" + "haskell-http-client" "haskell-syb" "haskell-http-client-tls" "haskell-http-types" + "haskell-text" "haskell-texmath" "haskell-network" "haskell-old-time" + "haskell-pandoc-types" "haskell-parsec" "haskell-random" "haskell-scientific" + "haskell-tagsoup" "haskell-temporary" "haskell-network-uri" "haskell-unordered-containers" + "haskell-zip-archive" "haskell-vector" "haskell-xml" "haskell-yaml" "haskell-zlib") +optdepends=('pandoc-citeproc: for citation rendering with pandoc-citeproc filter' + 'texlive-core: for pdf output') +conflicts=('haskell-pandoc') +replaces=('haskell-pandoc') +makedepends=('ghc') +source=("https://hackage.haskell.org/packages/archive/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz" + ghc-8.2.1.patch) +sha256sums=('08692f3d77bf95bb9ba3407f7af26de7c23134e7efcdafad0bdaf9050e2c7801' + '2d28962550964540ad543833b38fee8ae8d247d2b8ec08fcef9b9879bf967846') + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i ../ghc-8.2.1.patch + sed -e 's/syb >= 0.1 && < 0.7,/syb >= 0.1,/' \ + -e 's/aeson >= 0.7.* && < 1.2,/aeson >= 0.7,/' \ + -e 's/process >= 1 && < 1.5,/process >= 1,/' \ + -e 's/time >= 1.5 && < 1.7/time >= 1.5/' \ + -e '/Build-Depends: pandoc,/a \ texmath,' \ + -i $pkgname.cabal +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + runhaskell Setup configure -O --enable-shared --enable-executable-dynamic \ + --prefix=/usr --docdir="/usr/share/doc/${pkgbase}" --datasubdir="$pkgname" \ + --dynlibdir=/usr/lib --libsubdir=\$compiler/site-local/\$pkgid \ + -f-old-locale -fnetwork-uri -fhttps -f-trypandoc -f-embed_data_files -f-weigh-pandoc + runhaskell Setup build + runhaskell Setup register --gen-script + runhaskell Setup unregister --gen-script + sed -i -r -e "s|ghc-pkg.*update[^ ]* |&'--force' |" register.sh + sed -i -r -e "s|ghc-pkg.*unregister[^ ]* |&'--force' |" unregister.sh +} + +package() { + cd "${srcdir}/${pkgbase}-${pkgver}" + install -D -m744 register.sh "${pkgdir}/usr/share/haskell/register/${pkgname}.sh" + install -D -m744 unregister.sh "${pkgdir}/usr/share/haskell/unregister/${pkgname}.sh" + runhaskell Setup copy --destdir="${pkgdir}" + rm -f "${pkgdir}/usr/share/doc/${pkgname}/COPYING.md" + + # Remove static libs + find "$pkgdir"/usr/lib -name "*.a" -delete +} Copied: pandoc/repos/community-staging-x86_64/ghc-8.2.1.patch (from rev 251701, pandoc/trunk/ghc-8.2.1.patch) =================================================================== --- community-staging-x86_64/ghc-8.2.1.patch (rev 0) +++ community-staging-x86_64/ghc-8.2.1.patch 2017-08-17 14:55:04 UTC (rev 251702) @@ -0,0 +1,81 @@ +From 10d91c147968d2e4d63b99b5b0342624827f416f Mon Sep 17 00:00:00 2001 +From: John MacFarlane <j...@berkeley.edu> +Date: Sun, 26 Mar 2017 17:22:00 +0200 +Subject: [PATCH] Use file-embed instead of hsb2hs to embed data files. + +I think template haskell is robust enough now across platforms +that this will work. + +Motivation: file-embed gives us better dependency tracking: if a data +file changes, ghc/stack/cabal know to recompile the Data module. + +This also removes hsb2hs as a build dependency. +--- + INSTALL.md | 3 --- + Setup.hs | 28 ++-------------------------- + linux/Dockerfile | 1 - + macos/make_macos_package.sh | 3 --- + pandoc.cabal | 2 +- + src/Text/Pandoc/{Data.hsb => Data.hs} | 9 +++++---- + 6 files changed, 8 insertions(+), 38 deletions(-) + rename src/Text/Pandoc/{Data.hsb => Data.hs} (77%) + +diff --git a/Setup.hs b/Setup.hs +index bc6651942..3f6bb2858 100644 +--- a/Setup.hs ++++ b/Setup.hs +@@ -20,41 +20,17 @@ import Distribution.Simple + import Distribution.Simple.PreProcess + import Distribution.Simple.Setup (ConfigFlags(..), CopyFlags(..), fromFlag) + import Distribution.PackageDescription (PackageDescription(..), FlagName(..)) +-import Distribution.Simple.Utils ( rawSystemExitCode, findProgramVersion ) + import System.Exit +-import Distribution.Simple.Utils (info, notice, installOrdinaryFiles) ++import Distribution.Simple.Utils (notice, installOrdinaryFiles) + import Distribution.Simple.Program (simpleProgram, Program(..)) + import Distribution.Simple.LocalBuildInfo + import Control.Monad (when) + + main :: IO () + main = defaultMainWithHooks $ simpleUserHooks { +- -- enable hsb2hs preprocessor for .hsb files +- hookedPreProcessors = [ppBlobSuffixHandler] +- , hookedPrograms = [(simpleProgram "hsb2hs"){ +- programFindVersion = \verbosity fp -> +- findProgramVersion "--version" id verbosity fp }] +- , postCopy = installManPage ++ postCopy = installManPage + } + +-ppBlobSuffixHandler :: PPSuffixHandler +-ppBlobSuffixHandler = ("hsb", \_ lbi -> +- PreProcessor { +- platformIndependent = True, +- runPreProcessor = mkSimplePreProcessor $ \infile outfile verbosity -> +- do let embedData = case lookup (FlagName "embed_data_files") +- (configConfigurationsFlags (configFlags lbi)) of +- Just True -> True +- _ -> False +- when embedData $ +- do info verbosity $ "Preprocessing " ++ infile ++ " to " ++ outfile +- ec <- rawSystemExitCode verbosity "hsb2hs" +- [infile, infile, outfile] +- case ec of +- ExitSuccess -> return () +- ExitFailure _ -> error "hsb2hs is needed to build this program" +- }) +- + installManPage :: Args -> CopyFlags + -> PackageDescription -> LocalBuildInfo -> IO () + installManPage _ flags pkg lbi = do +--- a/pandoc.cabal ++++ b/pandoc.cabal +@@ -332,7 +332,7 @@ Library + cpp-options: -DHTTP_CLIENT + if flag(embed_data_files) + cpp-options: -DEMBED_DATA_FILES +- Build-Tools: hsb2hs >= 0.3.1 ++ build-depends: file-embed >= 0.0 && < 0.1 + other-modules: Text.Pandoc.Data + if os(darwin) + Build-Tools: cpphs >= 1.19