Add a check in pkg_setup to die if /usr/share/fonts/default/ghostscript exists and...
authorDror Levin <spatz@gentoo.org>
Thu, 15 Apr 2010 12:43:56 +0000 (12:43 +0000)
committerDror Levin <spatz@gentoo.org>
Thu, 15 Apr 2010 12:43:56 +0000 (12:43 +0000)
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64

app-text/ghostscript-gpl/ChangeLog
app-text/ghostscript-gpl/Manifest
app-text/ghostscript-gpl/ghostscript-gpl-8.71-r4.ebuild [new file with mode: 0644]

index d904cb66d0849f7ebc5182f63c95609f1a9e60c1..531251f5c0cc0e064bf5a371c0385ec7967979b1 100644 (file)
@@ -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)
 
index 7737d0ff6c3ea5a611ed59c0dc08a16d5e0de194..1f8037cf1cea37c5307da05e4bc0181a2666dc44 100644 (file)
@@ -1,3 +1,6 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
 DIST acro5-cmaps-2001.tar.gz 631653 RMD160 c723afc2207157a434988b46bcf0a458281c29a4 SHA1 fbc8715eae880f59e2251ae8fa99f79fbcfbd3e5 SHA256 80abec481fd4b5e59ac3d3f5790542dbfabe3c9269a6ac17064160d6dab38ee4
 DIST adobe-cmaps-200406.tar.gz 5001983 RMD160 284b943b3476f6f7e2bc49842fd027c6f7f57552 SHA1 b846292af4541d907dd9041e397c2f1d8c72a056 SHA256 0f397255506cda4b20e362ab5e3f6cdacba09e0a0cca7f4d93afd980977c5689
 DIST ghostscript-8.64.tar.bz2 16921504 RMD160 565134dcfe1e823b435c3761461c5eb394bd633c SHA1 4c2a6e04145428d35da73fbc4db9c66a75e336e0 SHA256 012f7fec58480c728580836fec6f865588d8a33fe8ada7ae73b1f971440d02bb
@@ -14,5 +17,17 @@ EBUILD ghostscript-gpl-8.70-r1.ebuild 5457 RMD160 88076a489ae14790beca13ee3828dc
 EBUILD ghostscript-gpl-8.71-r1.ebuild 5940 RMD160 a9db1567d7dea3fbab44c88070217cfa72be4c1f SHA1 fbb4f1e6d5d4dff2c7bad246a1209605fd595bfd SHA256 734e55eb8521dcc48b8ad8a0922ccff3bc48c249dafcc07f4aa432ae8567d350
 EBUILD ghostscript-gpl-8.71-r2.ebuild 6016 RMD160 662b396efe96ec17952663726f1224ace7dffed4 SHA1 2367ceb7da57de71c6f4a8603700de69337e6734 SHA256 dc3ec06e6baf1a9e6212487aa513692ef56414f1a589e2a584505309336746d5
 EBUILD ghostscript-gpl-8.71-r3.ebuild 6213 RMD160 62aa57946fcf1c2f2b0aee3d52824292c52293aa SHA1 6f7d905b7279fde6391b9d5d216e0ad44ccfa5a3 SHA256 9773ac617f4b4456cbfe32f97007e04831b48ad011dac41059720d065aedb99f
-MISC ChangeLog 16795 RMD160 246b5d50a32360de67951eccaed931ff1d82a94d SHA1 98fce769caf5faa68d42eff3c1c61f4131af9b91 SHA256 1a869e78cef146c812f6c9d79011c314df07b594ba13195fc25354cba53094b6
+EBUILD ghostscript-gpl-8.71-r4.ebuild 6927 RMD160 94587a22d5788e932edcf8562fc87af5cd3b8899 SHA1 1ebb4e90c3e3bb6e952b0e1aaef791f88b1807c0 SHA256 940429298ff7fefb8cc8471b4e1264c883a0d6b9cb70acfcd0176a86510ebedc
+MISC ChangeLog 17062 RMD160 ca143396dcd364640194196959953cae9155d794 SHA1 2d3c87e69bd47f01c35f3b62fc956671eecec4c3 SHA256 369bb9b5f2297945b700d596e0c2a9e361352f366b12589049514b0d1845be9a
 MISC metadata.xml 161 RMD160 1e5b1e42553c8869b93c4a5448e9a2a2ed9fe525 SHA1 209c6a46e4cdd891980115e42ba419e3799f8088 SHA256 7c85e6739a71f5bb23e8de36c88677d772946e61f7285892f7554e37bd2bca76
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.14 (GNU/Linux)
+
+iQEcBAEBCgAGBQJLxwoVAAoJEAWF714uGAc6TmQH/A1HOBWXEoGGHFE0p9s72TYW
+q0G4SgyNSkbNMcs6C+Y7W6GrbbIvoGxtvyTGeSwZybecvBM5Zh9dHqMLLdrws7OT
+689NivJmMW79A12N+uKTRHG/LJoeKPPd6+fs+8EGtFY6FX0lh5ZHcBtNMMPISDA2
+udyc4jlq5O3v8SEkhiGQpZrpGFMLwlbW2JD0lVzXdN44uu62Ex0Oz+7LgyTtfQkQ
++dAJd/wqJ/2C/S/WGKOTxajx/CZldWmIB2JRmaFlTWiPLgeAWFE8WJ1ISrRZmB3J
+ORrkUKBUOxOp+IryVM3GtLPLAgILq22VttvxnXxS1gchlPCITlqWMlQzfsn/+nQ=
+=n3f7
+-----END PGP SIGNATURE-----
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 (file)
index 0000000..233d29f
--- /dev/null
@@ -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
+}