[arch-commits] Commit in pandoc/repos (6 files)

Felix Yan felixonmars at archlinux.org
Wed Aug 30 23:29:03 UTC 2017


    Date: Wednesday, August 30, 2017 @ 23:29:03
  Author: felixonmars
Revision: 255011

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 255010, pandoc/trunk/PKGBUILD)
  pandoc/repos/community-staging-i686/ghc-8.2.1.patch
    (from rev 255010, pandoc/trunk/ghc-8.2.1.patch)
  pandoc/repos/community-staging-x86_64/
  pandoc/repos/community-staging-x86_64/PKGBUILD
    (from rev 255010, pandoc/trunk/PKGBUILD)
  pandoc/repos/community-staging-x86_64/ghc-8.2.1.patch
    (from rev 255010, 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 255010, pandoc/trunk/PKGBUILD)
===================================================================
--- community-staging-i686/PKGBUILD	                        (rev 0)
+++ community-staging-i686/PKGBUILD	2017-08-30 23:29:03 UTC (rev 255011)
@@ -0,0 +1,65 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars at archlinux.org>
+# Contributor: Arch Haskell Team <arch-haskell at haskell.org>
+
+pkgname=pandoc
+pkgver=1.19.2.1
+pkgrel=108
+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 255010, 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-30 23:29:03 UTC (rev 255011)
@@ -0,0 +1,81 @@
+From 10d91c147968d2e4d63b99b5b0342624827f416f Mon Sep 17 00:00:00 2001
+From: John MacFarlane <jgm at 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 255010, pandoc/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2017-08-30 23:29:03 UTC (rev 255011)
@@ -0,0 +1,65 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars at archlinux.org>
+# Contributor: Arch Haskell Team <arch-haskell at haskell.org>
+
+pkgname=pandoc
+pkgver=1.19.2.1
+pkgrel=108
+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 255010, 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-30 23:29:03 UTC (rev 255011)
@@ -0,0 +1,81 @@
+From 10d91c147968d2e4d63b99b5b0342624827f416f Mon Sep 17 00:00:00 2001
+From: John MacFarlane <jgm at 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



More information about the arch-commits mailing list