summaryrefslogtreecommitdiff
path: root/libre/ghostscript/PKGBUILD
blob: a72e4d7cbe0e69a95d19ee8af2718550d6ff4ce0 (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
# $Id: PKGBUILD 272516 2016-07-27 18:05:29Z andyrtr $
# Maintainer (Arch): AndyRTR <andyrtr@archlinux.org>
# Maintainer: André Silva <emulatorman@parabola.nu>

pkgname=ghostscript
pkgver=9.19
pkgrel=2.parabola1
pkgdesc="An interpreter for the PostScript language, without nonfree JPEG XR support"
arch=('i686' 'x86_64' 'armv7h')
license=('AGPL' 'custom')
depends=('libxt' 'libcups' 'fontconfig' 'jasper' 'zlib' 'libpng>=1.5.7' 'libjpeg'
         'libtiff>=4.0.0' 'lcms2' 'dbus' 'libpaper')
makedepends=('gtk3' 'gnutls' 'hardening-wrapper' 'ijs')
optdepends=('texlive-core:      needed for dvipdf'
            'gtk3:              needed for gsx')
conflicts=('ghostscript-libre')
replaces=('ghostscript-libre')
url="http://www.ghostscript.com/"
mksource=(https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${pkgver/./}/ghostscript-${pkgver}.tar.bz2)
source=(https://repo.parabola.nu/other/ghostscript-libre/ghostscript-libre-${pkgver}.tar.bz2
        ghostscript-sys-zlib.patch
        libre.patch)
#options=('!makeflags')
# https://github.com/ArtifexSoftware/ghostpdl-downloads/releases
mksha1sums=('4aeb7c259dac524b3147447cf5dd5753d846ad11')
sha1sums=('32378d7286ab78060bf98c877c735ef887d55ad0'
          'e054caf753df4d67221b29a2eac66130653f7556'
          '51f821faec00749ed8b61d772879269f9809f694')
mksource() {
  cd ghostscript-${pkgver}
  # JPEG XR is nonfree because it has the following license that forbids making modifications that 
  # do not comply with the ITU standard and might have other issues.
  rm -rfv jpegxr
}

prepare() {
  cd ghostscript-${pkgver}
  # fix build with system zlib
  patch -Np1 -i ${srcdir}/ghostscript-sys-zlib.patch
  # remove nonfree JPEG XR reference on the license file
  patch -Np1 -i ${srcdir}/libre.patch
}

build() {
  cd ghostscript-${pkgver}
  
  # force it to use system-libs
  # keep heavily patched included openjpeg, leads to segfault with system openjpeg
  # https://bugs.archlinux.org/task/38226
  rm -rf jpeg libpng zlib jasper expat tiff lcms lcms2 freetype cups/libs # jbig2dec is in community

  autoconf --force

  ./configure --prefix=/usr \
	--enable-dynamic \
	--with-ijs \
	--with-jbig2dec \
	--with-omni \
	--with-x \
	--with-drivers=ALL\
	--with-fontpath=/usr/share/fonts/Type1:/usr/share/fonts \
	--enable-fontconfig \
	--enable-freetype \
	--enable-openjpeg \
	--without-luratech \
	--without-omni \
	--with-system-libtiff \
	--with-libpaper \
	--disable-compile-inits #--help # needed for linking with system-zlib
  make

}

package() {
  cd ghostscript-${pkgver}
  make DESTDIR="${pkgdir}" \
	cups_serverroot="${pkgdir}"/etc/cups \
	cups_serverbin="${pkgdir}"/usr/lib/cups install install-so

  # install missing doc files # http://bugs.archlinux.org/task/18023
  install -m 644 "${srcdir}"/ghostscript-${pkgver}/doc/{VectorDevices.htm,gs-vms.hlp,gsdoc.el,pscet_status.txt} "${pkgdir}"/usr/share/ghostscript/$pkgver/doc/
  
  install -D -m644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE

  # remove unwanted localized man-pages
  rm -rf "$pkgdir"/usr/share/man/[^man1]*

  # remove filters that are now maintained in cups-filters as upstream home
  rm -rf "$pkgdir"/usr/lib/cups/filter/{gstopxl,gstoraster}
}