diff options
author | Dror Levin <spatz@gentoo.org> | 2010-04-15 12:43:56 +0000 |
---|---|---|
committer | Dror Levin <spatz@gentoo.org> | 2010-04-15 12:43:56 +0000 |
commit | 7f206b90cecbf1e652eb72ebad19b2fe8bbba764 (patch) | |
tree | 15aee0287726f1b5960f4c2b7bca9b54f7d58976 /app-text | |
parent | Depend on proper kde4 version. Thx to Enrico for spotting. (diff) | |
download | gentoo-2-7f206b90cecbf1e652eb72ebad19b2fe8bbba764.tar.gz gentoo-2-7f206b90cecbf1e652eb72ebad19b2fe8bbba764.tar.bz2 gentoo-2-7f206b90cecbf1e652eb72ebad19b2fe8bbba764.zip |
Add a check in pkg_setup to die if /usr/share/fonts/default/ghostscript exists and is not a symlink to avoid installation issues, bug 311923.
(Portage version: 2.2_rc67/cvs/Linux x86_64)
Diffstat (limited to 'app-text')
-rw-r--r-- | app-text/ghostscript-gpl/ChangeLog | 9 | ||||
-rw-r--r-- | app-text/ghostscript-gpl/ghostscript-gpl-8.71-r4.ebuild | 212 |
2 files changed, 220 insertions, 1 deletions
diff --git a/app-text/ghostscript-gpl/ChangeLog b/app-text/ghostscript-gpl/ChangeLog index d904cb66d084..531251f5c0cc 100644 --- a/app-text/ghostscript-gpl/ChangeLog +++ b/app-text/ghostscript-gpl/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-text/ghostscript-gpl # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-text/ghostscript-gpl/ChangeLog,v 1.86 2010/03/31 23:51:33 tgurr Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-text/ghostscript-gpl/ChangeLog,v 1.87 2010/04/15 12:43:56 spatz Exp $ + +*ghostscript-gpl-8.71-r4 (15 Apr 2010) + + 15 Apr 2010; Dror Levin <spatz@gentoo.org> + +ghostscript-gpl-8.71-r4.ebuild: + Add a check in pkg_setup to die if /usr/share/fonts/default/ghostscript + exists and is not a symlink to avoid installation issues, bug 311923. *ghostscript-gpl-8.71-r3 (31 Mar 2010) diff --git a/app-text/ghostscript-gpl/ghostscript-gpl-8.71-r4.ebuild b/app-text/ghostscript-gpl/ghostscript-gpl-8.71-r4.ebuild new file mode 100644 index 000000000000..233d29fb1610 --- /dev/null +++ b/app-text/ghostscript-gpl/ghostscript-gpl-8.71-r4.ebuild @@ -0,0 +1,212 @@ +# Copyright 1999-2010 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.71-r4.ebuild,v 1.1 2010/04/15 12:43:56 spatz Exp $ + +EAPI=2 +inherit autotools eutils versionator flag-o-matic + +DESCRIPTION="GPL Ghostscript - the most current Ghostscript, AFPL, relicensed." +HOMEPAGE="http://ghostscript.com/" + +MY_P=${P/-gpl} +GSDJVU_PV=1.4 +PVM=$(get_version_component_range 1-2) +SRC_URI="!bindist? ( djvu? ( mirror://sourceforge/djvu/gsdjvu-${GSDJVU_PV}.tar.gz ) ) + mirror://sourceforge/ghostscript/${MY_P}.tar.gz + mirror://gentoo/${P}-patchset-2.tar.bz2" + +LICENSE="GPL-3 CPL-1.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd" +IUSE="bindist cairo cups djvu gtk jpeg2k X" + +COMMON_DEPEND="app-text/libpaper + media-libs/fontconfig + >=media-libs/jpeg-6b + >=media-libs/libpng-1.2.42 + >=media-libs/tiff-3.9.2 + >=sys-libs/zlib-1.2.3 + !bindist? ( djvu? ( app-text/djvu ) ) + cairo? ( >=x11-libs/cairo-1.2.0 ) + cups? ( >=net-print/cups-1.3.8 ) + gtk? ( >=x11-libs/gtk+-2.0 ) + jpeg2k? ( media-libs/jasper ) + X? ( x11-libs/libXt x11-libs/libXext ) + !app-text/ghostscript-gnu" + +DEPEND="${COMMON_DEPEND} + dev-util/pkgconfig" + +RDEPEND="${COMMON_DEPEND} + linguas_ja? ( media-fonts/kochi-substitute ) + linguas_ko? ( media-fonts/baekmuk-fonts ) + linguas_zh_CN? ( media-fonts/arphicfonts ) + linguas_zh_TW? ( media-fonts/arphicfonts ) + >=media-fonts/urw-fonts-2.4.9" + +S="${WORKDIR}/${MY_P}" + +LANGS="ja ko zh_CN zh_TW" +for X in ${LANGS} ; do + IUSE="${IUSE} linguas_${X}" +done + +pkg_setup() { + local p="/usr/share/fonts/default/ghostscript" + # die if path exists and is not a symbolic link so that + # installation of symbolic link doesn't fail, bug 311923 + if [[ -e ${p} && ! -L ${p} ]]; then + eerror "The path ${p} exists and is not a" + eerror "symlink. It must be removed for ${CATEGORY}/${PN} to be installed." + eerror "Use the following command to check to which packages it belongs:" + eerror " emerge gentoolkit ; equery belongs ${p}" + eerror + eerror "And remove packages listed. If it doesn't belong to any package, remove" + eerror "it manually and then re-emerge ${CATEGORY}/${PN}." + eerror "See bug 311923 for more details." + eerror + die "Path ${p} is not a symlink" + fi +} + +src_prepare() { + # remove internal copies of expat, jasper, jpeg, libpng and zlib + rm -rf "${S}/expat" + rm -rf "${S}/jasper" + rm -rf "${S}/jpeg" + rm -rf "${S}/libpng" + rm -rf "${S}/tiff" + rm -rf "${S}/zlib" + # remove internal urw-fonts + rm -rf "${S}/Resource/Font" + + # Fedora patches + # http://cvs.fedoraproject.org/viewvc/devel/ghostscript/ + epatch "${WORKDIR}/patches/${PN}-8.61-multilib.patch" + epatch "${WORKDIR}/patches/${PN}-8.64-scripts.patch" + epatch "${WORKDIR}/patches/${PN}-8.64-noopt.patch" + epatch "${WORKDIR}/patches/${PN}-8.64-fPIC.patch" + epatch "${WORKDIR}/patches/${PN}-8.70-runlibfileifexists.patch" + epatch "${WORKDIR}/patches/${PN}-8.64-system-jasper.patch" + epatch "${WORKDIR}/patches/${PN}-8.64-pksmraw.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-jbig2dec-nullderef.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-CVE-2009-4270.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-vsnprintf.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-pdftoraster-exit.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-ldflags.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-pdf2dsc.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-cups-realloc-color-depth.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-tiff-fail-close.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-tiff-default-strip-size.patch" + epatch "${WORKDIR}/patches/${PN}-8.71-tiff-fixes.patch" + + if use bindist && use djvu ; then + ewarn "You have bindist in your USE, djvu support will NOT be compiled!" + ewarn "See http://djvu.sourceforge.net/gsdjvu/COPYING for details on licensing issues." + fi + + if ! use bindist && use djvu ; then + unpack gsdjvu-${GSDJVU_PV}.tar.gz + cp gsdjvu-${GSDJVU_PV}/gsdjvu "${S}" + cp gsdjvu-${GSDJVU_PV}/gdevdjvu.c "${S}/base" + epatch "${WORKDIR}/patches/${PN}-8.64-gsdjvu-1.3.patch" + cp gsdjvu-${GSDJVU_PV}/ps2utf8.ps "${S}/lib" + cp "${S}/base/contrib.mak" "${S}/base/contrib.mak.gsdjvu" + grep -q djvusep "${S}/base/contrib.mak" || \ + cat gsdjvu-${GSDJVU_PV}/gsdjvu.mak >> "${S}/base/contrib.mak" + + # install ps2utf8.ps, bug #197818 + sed -i -e '/$(EXTRA_INIT_FILES)/ a\ps2utf8.ps \\' "${S}/base/unixinst.mak" \ + || die "sed failed" + fi + + if ! use gtk ; then + sed -i "s:\$(GSSOX)::" base/*.mak || die "gsx sed failed" + sed -i "s:.*\$(GSSOX_XENAME)$::" base/*.mak || die "gsxso sed failed" + fi + + # 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:" \ + base/Makefile.in base/*.mak || die "sed failed" + + # http://repos.archlinux.org/wsvn/packages/ghostscript/trunk/libpng14.patch + sed -i \ + -e 's:png_check_sig:png_sig_cmp:' \ + "${S}"/{,base,jbig2dec}/configure.ac || die + + cd "${S}" + eautoreconf + + cd "${S}/jbig2dec" + eautoreconf + + cd "${S}/ijs" + eautoreconf +} + +src_configure() { + econf \ + $(use_enable cairo) \ + $(use_enable cups) \ + $(use_enable gtk) \ + $(use_with jpeg2k jasper) \ + $(use_with X x) \ + --disable-compile-inits \ + --enable-dynamic \ + --enable-fontconfig \ + --with-drivers=ALL \ + --with-ijs \ + --with-jbig2dec \ + --with-libpaper + + if ! use bindist && use djvu ; then + sed -i -e 's!$(DD)bbox.dev!& $(DD)djvumask.dev $(DD)djvusep.dev!g' Makefile + fi + + cd "${S}/ijs" + econf || die "ijs econf failed" +} + +src_compile() { + emake -j1 so all || die "emake failed" + + cd "${S}/ijs" + emake || die "ijs emake failed" +} + +src_install() { + # parallel install is broken, bug #251066 + emake -j1 DESTDIR="${D}" install-so install || die "emake install failed" + + if ! use bindist && use djvu ; then + dobin gsdjvu || die "dobin gsdjvu install failed" + fi + + # remove gsc in favor of gambit, bug #253064 + rm -rf "${D}/usr/bin/gsc" + + rm -rf "${D}/usr/share/doc/${PF}/html/"{README,PUBLIC} + dodoc doc/README || die "dodoc install failed" + + cd "${S}/ijs" + emake DESTDIR="${D}" install || die "emake ijs install failed" + + # Rename an original cidfmap to cidfmap.GS + mv "${D}/usr/share/ghostscript/${PVM}/Resource/Init/cidfmap"{,.GS} + + # Install our own cidfmap to allow the separated cidfmap + insinto "/usr/share/ghostscript/${PVM}/Resource/Init" + doins "${WORKDIR}/fontmaps/CIDFnmap" || die "doins CIDFnmap failed" + doins "${WORKDIR}/fontmaps/cidfmap" || die "doins cidfmap failed" + for X in ${LANGS} ; do + if use linguas_${X} ; then + doins "${WORKDIR}/fontmaps/cidfmap.${X}" || die "doins cidfmap.${X} failed" + fi + done + + dosym /usr/share/fonts/urw-fonts /usr/share/fonts/default/ghostscript || die +} |