# Contributor: Cameron Banta # Maintainer: Cameron Banta pkgname=ghostscript pkgver=10.01.2 pkgrel=0 pkgdesc="Interpreter for the PostScript language and for PDF" url="https://ghostscript.com/" arch="all" license="AGPL-3.0-or-later" options="!check" makedepends=" autoconf automake cups-dev expat-dev freetype-dev gtk+3.0-dev jbig2dec-dev lcms2-dev libjpeg-turbo-dev libpng-dev libtool openjpeg-dev tiff-dev zlib-dev " subpackages="$pkgname-dbg $pkgname-doc $pkgname-dev $pkgname-gtk" source="https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${pkgver//./}/ghostscript-$pkgver.tar.gz ghostscript-system-zlib.patch fix-sprintf.patch " # secfixes: # 9.54-r1: # - CVE-2021-3781 # 9.51-r0: # - CVE-2020-16287 # - CVE-2020-16288 # - CVE-2020-16289 # - CVE-2020-16290 # - CVE-2020-16291 # - CVE-2020-16292 # - CVE-2020-16293 # - CVE-2020-16294 # - CVE-2020-16295 # - CVE-2020-16296 # - CVE-2020-16297 # - CVE-2020-16298 # - CVE-2020-16299 # - CVE-2020-16300 # - CVE-2020-16301 # - CVE-2020-16302 # - CVE-2020-16303 # - CVE-2020-16304 # - CVE-2020-16305 # - CVE-2020-16306 # - CVE-2020-16307 # - CVE-2020-16308 # - CVE-2020-16309 # - CVE-2020-16310 # - CVE-2020-17538 # 9.50-r0: # - CVE-2019-14869 # 9.27-r4: # - CVE-2019-14817 # 9.27-r3: # - CVE-2019-14811 # - CVE-2019-14812 # - CVE-2019-14813 # 9.27-r2: # - CVE-2019-10216 # 9.26-r2: # - CVE-2019-3835 # - CVE-2019-3838 # 9.26-r1: # - CVE-2019-6116 # 9.26-r0: # - CVE-2018-19409 # - CVE-2018-19475 # - CVE-2018-19476 # - CVE-2018-19477 # 9.25-r1: # - CVE-2018-17961 # - CVE-2018-18073 # - CVE-2018-18284 # 9.25-r0: # - CVE-2018-16802 # 9.24-r0: # - CVE-2018-15908 # - CVE-2018-15909 # - CVE-2018-15910 # - CVE-2018-15911 # 9.23-r0: # - CVE-2018-10194 # 9.21-r2: # - CVE-2017-8291 # 9.21-r3: # - CVE-2017-7207 # - CVE-2017-5951 prepare() { default_prepare # apply patches # force it to use system-libs rm -r jpeg libpng zlib tiff lcms2mt cups/libs jbig2dec \ freetype # fix parallel builds sed -i -e 's/ECHO_XE/ECHOGS_XE/g' \ -e 's/^\($(GLOBJ)md5.$(OBJ) :.*\)/\1 $(ECHOGS_XE)/' \ base/lib.mak aclocal && autoconf --force cd $builddir/ijs libtoolize --force && aclocal && autoconf && automake --add-missing } build() { export CFLAGS="$CFLAGS -flto=auto" # build ijs cd "$builddir"/ijs ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --enable-shared \ --disable-static make cd "$builddir" # --disable-compile-inits is needed to link with system-zlib ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --docdir=/usr/share/doc/"$pkgname" \ --with-system-libtiff \ --with-ijs \ --with-jbig2dec \ --without-libpaper \ --without-versioned-path \ --enable-gtk \ --with-drivers=ALL \ --with-fontpath=/usr/share/fonts/Type1:/usr/share/fonts \ --disable-compile-inits make so all } package() { make -j1 DESTDIR="$pkgdir" install soinstall cd "$builddir"/ijs make -j1 DESTDIR="$pkgdir" install cd .. # create empty dir for future fonts mkdir -p "$pkgdir"/usr/share/fonts/Type1 } gtk() { pkgdesc="A GTK-enabled PostScript interpreter and renderer" amove usr/bin/gsx } sha512sums=" 11887850d440b8bbd8b83b8b58df8c743cf94be8fdbcfbda1a5fce55ce7c6a963d94b41a4ebcf1ba48f64f8af01e76dec789e2711212b1f7a32f98c42d75e0ff ghostscript-10.01.2.tar.gz 70721e3a335afa5e21d4e6cf919119010bd4544a03ab8f53f5325c173902221ad9b88c118b4bfeee80b3e1956bcdbaf4c53f64ae7fb81f5ba57dbc956750c482 ghostscript-system-zlib.patch beefcf395f7f828e1b81c088022c08a506e218f27535b9de01e0f0edf7979b435316c318fa676771630f6ad16ff1ab059cd68aa128ed97e5a9f2f3fa840200c4 fix-sprintf.patch "