diff options
Diffstat (limited to 'app-text/ghostscript-gpl/ghostscript-gpl-8.54-r1.ebuild')
-rw-r--r-- | app-text/ghostscript-gpl/ghostscript-gpl-8.54-r1.ebuild | 163 |
1 files changed, 163 insertions, 0 deletions
diff --git a/app-text/ghostscript-gpl/ghostscript-gpl-8.54-r1.ebuild b/app-text/ghostscript-gpl/ghostscript-gpl-8.54-r1.ebuild new file mode 100644 index 000000000000..a8be0abdf877 --- /dev/null +++ b/app-text/ghostscript-gpl/ghostscript-gpl-8.54-r1.ebuild @@ -0,0 +1,163 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-text/ghostscript-gpl/ghostscript-gpl-8.54-r1.ebuild,v 1.1 2007/11/02 20:39:17 tgurr Exp $ + +WANT_AUTOMAKE=1.6 + +inherit autotools elisp-common eutils versionator flag-o-matic + +DESCRIPTION="GPL Ghostscript - the most current Ghostscript, AFPL, relicensed" +HOMEPAGE="http://www.cs.wisc.edu/~ghost/" + +GSDJVU_PV=1.1 +CUPS_PV=1.1.23 +MY_P=ghostscript-${PV}-gpl +PVM=$(get_version_component_range 1-2) +SRC_URI="cjk? ( ftp://ftp.gyve.org/pub/gs-cjk/adobe-cmaps-200406.tar.gz + ftp://ftp.gyve.org/pub/gs-cjk/acro5-cmaps-2001.tar.gz ) + djvu? ( mirror://sourceforge/djvu/gsdjvu-${GSDJVU_PV}.tar.gz ) + cups? ( mirror://gentoo/cups-${CUPS_PV}-source.tar.bz2 ) + mirror://sourceforge/ghostscript/${MY_P}.tar.bz2 + mirror://gentoo/gdevhl12.c.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~sh ~x86 ~x86-fbsd" +IUSE="X cups cjk gtk djvu jpeg2k" + +DEP="virtual/libc + >=media-libs/jpeg-6b + >=media-libs/libpng-1.2.5 + >=sys-libs/zlib-1.1.4 + >=media-libs/tiff-3.7 + X? ( x11-libs/libXt x11-libs/libXext ) + djvu? ( app-text/djvu ) + gtk? ( >=x11-libs/gtk+-2.0 ) + cups? ( >=net-print/cups-1.1.20 ) + jpeg2k? ( media-libs/jasper ) + !app-text/ghostscript-esp + !app-text/ghostscript-gnu" + +RDEPEND="${DEP} + cjk? ( media-fonts/arphicfonts + media-fonts/kochi-substitute + media-fonts/baekmuk-fonts ) + media-fonts/gnu-gs-fonts-std" + +DEPEND="${DEP} + dev-util/pkgconfig" + +S=${WORKDIR}/${MY_P} + +src_unpack() { + unpack ${A/adobe-cmaps-200406.tar.gz acro5-cmaps-2001.tar.gz} + if use cjk; then + cat "${FILESDIR}/ghostscript-esp-8.15.2-cidfmap.cjk" >> "${S}/lib/cidfmap" + cat "${FILESDIR}/ghostscript-esp-8.15.2-FAPIcidfmap.cjk" >> "${S}/lib/FAPIcidfmap" + cd "${S}/Resource" + unpack adobe-cmaps-200406.tar.gz + unpack acro5-cmaps-2001.tar.gz + cd "${WORKDIR}" + fi + + # cups support + if use cups; then + cp -r cups-${CUPS_PV}/pstoraster "${S}" + cd "${S}/pstoraster" + sed -e 's:@prefix@:/usr:' -e 's:@exec_prefix@:${prefix}:' -e \ + 's:@bindir@:${exec_prefix}/bin:' -e 's:@GS@:gs:' \ + pstopxl.in > pstopxl || die "pstopxlsed failed" + sed -i -e 's:OUTPUTFILE="%stdout" $profile $6$:\0 -:' \ + -e 's:/usr/local:/usr:' pstoraster || die "pstorastersed failed" + sed -i -e "s:pstopcl6:pstopxl:" cups.mak || die "cupssed failed" + cd .. + epatch "${FILESDIR}/gdevcups.patch" + epatch "${FILESDIR}/ghostscript-afpl-8.54-cups-destdir.diff" + + echo 'include pstoraster/cups.mak' >> src/Makefile.in + sed -i -e 's:DEVICE_DEVS17=:\0$(DD)cups.dev:' src/Makefile.in || die "sed failed" + sed -i -e 's:EXTRALIBS=.*:\0 -lcups -lcupsimage:' src/Makefile.in || die "sed failed" + fi + cd "${S}" + + if use djvu; then + unpack gsdjvu-${GSDJVU_PV}.tar.gz + cp gsdjvu-${GSDJVU_PV}/gsdjvu "${S}" + cp gsdjvu-${GSDJVU_PV}/gdevdjvu.c "${S}/src" + epatch "${FILESDIR}/djvu-gs-gpl.patch" + cp gsdjvu-${GSDJVU_PV}/ps2utf8.ps "${S}/lib" + cp "${S}/src/contrib.mak" "${S}/src/contrib.mak.gsdjvu" + grep -q djvusep "${S}/src/contrib.mak" || \ + cat gsdjvu-${GSDJVU_PV}/gsdjvu.mak >> "${S}/src/contrib.mak" + fi + + epatch "${FILESDIR}/ghostscript-afpl-8.54-cups-lib.patch" + epatch "${FILESDIR}/ghostscript-afpl-8.54-big-cmap-post.patch" + + # enable cfax device (bug #56704) and rinkj device + sed -i -e 's:DEVICE_DEVS7=$(DD)faxg3.dev $(DD)faxg32d.dev $(DD)faxg4.dev:\0 $(DD)cfax.dev $(DD)rinkj.dev:' "${S}/src/Makefile.in" || die "sed failed" + + # http://www.linuxprinting.org/download/printing/ghostscript-8.x/drivers/hl1250 + # http://bugs.ghostscript.com/show_bug.cgi?id=687484 + cp "${WORKDIR}/gdevhl12.c" "${S}/src/gdevhl12.c" || die + cat "${FILESDIR}/gdevhl12-hl1250.mak" >> "${S}/src/contrib.mak" || die + sed -e 's#^\(DEVICE_DEVS6=.*\)$#\1 $(DD)hl1240.dev $(DD)hl1250.dev#' \ + -i "${S}/src/Makefile.in" || die + sed -i -e "s:#if 1:#if 0:" "${S}/src/gdevhl12.c" || die + + # #128650, #128645, http://bugs.ghostscript.com/show_bug.cgi?id=688703 + epatch "${FILESDIR}/ghostscript-afpl-8.54-ps2epsi-afpl.diff" + epatch "${FILESDIR}/ghostscript-afpl-8.54-rinkj.patch" + epatch "${FILESDIR}/ghostscript-afpl-8.54-destdir.diff" + + # already fixed inSVN, http://bugs.ghostscript.com/show_bug.cgi?id=688702 + epatch "${FILESDIR}/ghostscript-afpl-8.54-gtk2.patch" + if ! use gtk; then + sed -i "s:\$(GSSOX)::" src/*.mak || die "gsx sed failed" + sed -i "s:.*\$(GSSOX_XENAME)$::" src/*.mak || die "gsxso sed failed" + fi + + # fixed inSVN http://bugs.ghostscript.com/show_bug.cgi?id=688721 + epatch "${FILESDIR}/ghostscript-afpl-8.54-segfault.patch" + + epatch "${FILESDIR}/ghostscript-CVE-2007-2721.patch" + + # search path fix + sed -i -e "s:\$\(gsdatadir\)/lib:/usr/share/ghostscript/${PVM}/$(get_libdir):" \ + -e 's:$(gsdir)/fonts:/usr/share/fonts/default/ghostscript/:' \ + -e "s:exdir=.*:exdir=/usr/share/doc/${PF}/examples:" \ + -e "s:docdir=.*:docdir=/usr/share/doc/${PF}/html:" \ + -e "s:GS_DOCDIR=.*:GS_DOCDIR=/usr/share/doc/${PF}/html:" \ + src/Makefile.in src/*.mak || die "sed failed" +} + +src_compile() { + econf $(use_with X x) \ + $(use_with jpeg2k jasper) \ + --with-ijs \ + --with-jbig2dec || die "econf failed" + + if use djvu; then + sed -i -e 's!$(DD)bbox.dev!& $(DD)djvumask.dev $(DD)djvusep.dev!g' Makefile + sed -i -e 's:(/\(Resource/[a-zA-Z/]*\)):(\1) findlibfile {pop} {pop &} + ifelse:' lib/gs_res.ps + fi + + emake -j1 so all || die "emake failed" + + cd ijs + econf || die "ijs econf failed" + emake || die "ijs emake failed" +} + +src_install() { + emake DESTDIR="${D}" install soinstall || die "emake install failed" + + use djvu && dobin gsdjvu + + rm -fr "${D}/usr/share/doc/${PF}/html/"{README,PUBLIC} + dodoc doc/README + + cd "${S}/ijs" + emake DESTDIR="${D}" install || die "emake ijs install failed" +} |