summaryrefslogtreecommitdiff
path: root/pcr/pandoc/PKGBUILD
blob: 4d3483c08f4d1c53a7496c5340e6f9cd5da93b9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# Maintainer: Nicolas Reynolds <fauno@kiwwwi.com.ar>
# Based on haskell-pandoc

# Run `makepkg -sp SRCBUILD` if you want to update the source tarball

# hslua fails if LANG is empty or C
test -z "$LANG" && export LANG="en_US.utf8"

pkgname=pandoc-static
_pkgname=pandoc
pkgver=1.13.1
pkgrel=1
_srcrel=1
pkgdesc='Conversion between markup formats (no Haskell libs)'
url='http://johnmacfarlane.net/pandoc/'
license=('GPL')
arch=('i686' 'x86_64')
# Needed for pandoc-citeproc
depends=('icu<=55')
makedepends=('ghc' 'sh' 'cabal-install' 'alex' 'happy')
options=(strip !makeflags !distcc !emptydirs)
source=(https://repo.parabolagnulinux.org/other/pandoc-static/${_pkgname}-${pkgver}-${_srcrel}-any.src.tar.xz{,.sig}
        SRCBUILD)
replaces=('pandoc')
provides=('pandoc')
optdepends=('texlive-most: for pdf creation')
md5sums=('c805827e4369bf5ba6ccff7164f03623'
         'SKIP'
         '4c25acc06724a994d2ce52b069aab911')

# PKGBUILD functions
build() {
   mkdir -p ${srcdir}/{build,${_pkgname}-${pkgver}}
   cd ${srcdir}/${_pkgname}-${pkgver}

# pandoc-citeproc needs hsb2hs
   export PATH=${srcdir}/build/usr/bin:$PATH

   while read _hkpkg extra; do
# Skip already built
       [ -d "${srcdir}/build/usr/lib/i386-linux-ghc-7.8.3/$_hkpkg" ] && continue

       pushd ${srcdir}/${_pkgname}-${pkgver}/${_hkpkg} >/dev/null || continue

       msg2 "Building $_hkpkg"

       case $_hkpkg in
        $_pkgname-$pkgver)
         HOME=${srcdir}/${_pkgname}-${pkgver} \
         cabal configure --prefix=/usr \
                         --flags='embed_data_files https' \
                         --libdir=${srcdir}/build/usr/lib/i386-linux-ghc-7.8.3 -v

         HOME=${srcdir}/${_pkgname}-${pkgver} \
         cabal build

         HOME=${srcdir}/${_pkgname}-${pkgver} \
         cabal register --inplace
         ;;

        pandoc-citeproc*)
         HOME=${srcdir}/${_pkgname}-${pkgver} \
         cabal configure --flags='small_base embed_data_files bibutils hexpat unicode_collation' \
                       --libdir=${srcdir}/build/usr/lib/i386-linux-ghc-7.8.3 \
                       --prefix=/usr -v

         HOME=${srcdir}/${_pkgname}-${pkgver} \
         cabal build
         ;;

        *)
         HOME=${srcdir}/${_pkgname}-${pkgver} \
         cabal install --prefix=${srcdir}/build/usr --flags="embed_data_files"
         ;;
       esac

       popd >/dev/null
   done <BUILDORDER

}

package() {
  cd ${srcdir}/${_pkgname}-${pkgver}/${_pkgname}-${pkgver}

  runghc Setup.hs copy --destdir=${pkgdir}/

  cd ${srcdir}/${_pkgname}-${pkgver}/pandoc-citeproc*
  runghc Setup.hs copy --destdir=${pkgdir}/

# For some reason the library is installed anyway
# Remove all files and !emptydirs takes care of the rest
  msg2 "Removing lib files..."
  find ${pkgdir} -iname lib -print0 | xargs -0 rm -rvf

  cp -av ${srcdir}/build/usr/bin/* ${pkgdir}/usr/bin/

# EC is unfree and makes Parabola TeXLive cry
# besides, it's unneeded
  find "${pkgdir}/usr/share" -name default.latex -exec \
  sed "/fontenc/d" -i {} \;

  find ${pkgdir}/usr/share -type f -exec chmod 644 {} \;
  find ${pkgdir}/usr/share -type d -exec chmod 755 {} \;

  msg2 "Installing licenses"
  install -d ${pkgdir}/usr/share/licenses
  cp -rv ${srcdir}/build/usr/share/doc/* ${pkgdir}/usr/share/licenses/
}