summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Alfredsen <loki_val@gentoo.org>2009-04-17 00:35:41 +0000
committerPeter Alfredsen <loki_val@gentoo.org>2009-04-17 00:35:41 +0000
commit50d78a72dab8d0f12c64f028770df1b4159b8b38 (patch)
tree164c4cb582d535dacdad7dd34857b528c7405f09 /app-text/poppler-bindings
parentRemove stupid evdev checks. Never die cuz a kernel.src does not exist. linux-... (diff)
downloadgentoo-2-50d78a72dab8d0f12c64f028770df1b4159b8b38.tar.gz
gentoo-2-50d78a72dab8d0f12c64f028770df1b4159b8b38.tar.bz2
gentoo-2-50d78a72dab8d0f12c64f028770df1b4159b8b38.zip
Bump w.r.t. bug 263028.
(Portage version: 2.2_rc28/cvs/Linux x86_64)
Diffstat (limited to 'app-text/poppler-bindings')
-rw-r--r--app-text/poppler-bindings/ChangeLog8
-rw-r--r--app-text/poppler-bindings/files/poppler-CVE-2009-1187.patch11
-rw-r--r--app-text/poppler-bindings/poppler-bindings-0.10.5-r1.ebuild135
3 files changed, 153 insertions, 1 deletions
diff --git a/app-text/poppler-bindings/ChangeLog b/app-text/poppler-bindings/ChangeLog
index 389a8520672f..ecb985e36de9 100644
--- a/app-text/poppler-bindings/ChangeLog
+++ b/app-text/poppler-bindings/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-text/poppler-bindings
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-text/poppler-bindings/ChangeLog,v 1.132 2009/04/01 14:42:45 loki_val Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-text/poppler-bindings/ChangeLog,v 1.133 2009/04/17 00:35:40 loki_val Exp $
+
+*poppler-bindings-0.10.5-r1 (16 Apr 2009)
+
+ 16 Apr 2009; Peter Alfredsen <loki_val@gentoo.org>
+ +files/poppler-CVE-2009-1187.patch, +poppler-bindings-0.10.5-r1.ebuild:
+ Bump w.r.t. bug 263028.
01 Apr 2009; Peter Alfredsen <loki_val@gentoo.org>
poppler-bindings-0.8.7.ebuild, poppler-bindings-0.10.4.ebuild,
diff --git a/app-text/poppler-bindings/files/poppler-CVE-2009-1187.patch b/app-text/poppler-bindings/files/poppler-CVE-2009-1187.patch
new file mode 100644
index 000000000000..72a578a19487
--- /dev/null
+++ b/app-text/poppler-bindings/files/poppler-CVE-2009-1187.patch
@@ -0,0 +1,11 @@
+--- a/poppler/CairoOutputDev.cc
++++ b/poppler/CairoOutputDev.cc
+@@ -1605,7 +1605,7 @@ void CairoOutputDev::drawImage(GfxState *state, Object *ref, Stream *str,
+ cairo_matrix_t matrix;
+ int is_identity_transform;
+
+- buffer = (unsigned char *)gmalloc (width * height * 4);
++ buffer = (unsigned char *)gmallocn (width, height * 4);
+
+ /* TODO: Do we want to cache these? */
+ imgStr = new ImageStream(str, width,
diff --git a/app-text/poppler-bindings/poppler-bindings-0.10.5-r1.ebuild b/app-text/poppler-bindings/poppler-bindings-0.10.5-r1.ebuild
new file mode 100644
index 000000000000..894ec7489ae7
--- /dev/null
+++ b/app-text/poppler-bindings/poppler-bindings-0.10.5-r1.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-text/poppler-bindings/poppler-bindings-0.10.5-r1.ebuild,v 1.1 2009/04/17 00:35:40 loki_val Exp $
+
+EAPI="2"
+
+#Inherit qt3 to get QTDIR even if the env file has not yet been sourced.
+
+inherit qt3 autotools eutils multilib
+
+MY_P=${P/-bindings/}
+DESCRIPTION="rendering bindings for GUI toolkits for poppler"
+HOMEPAGE="http://poppler.freedesktop.org/"
+
+# Creating the testsuite tarball
+# must be done if upstream has added tests since last release.
+# can be checked at cgit.freedesktop.org
+#
+# git clone git://anongit.freedesktop.org/git/poppler/test
+# rm -rf test/.git
+# tar czf poppler-test-${PV}.tar.gz test
+
+SRC_URI="http://poppler.freedesktop.org/${MY_P}.tar.gz
+ test? ( mirror://gentoo/poppler-test-0.9.2.tar.bz2 )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="gtk qt3 cairo qt4 test"
+
+RDEPEND="
+ ~app-text/poppler-${PV}
+ cairo? (
+ >=x11-libs/cairo-1.4
+ !gtk? (
+ >=x11-libs/gtk+-2.8
+ >=dev-libs/glib-2.8
+ )
+ )
+ gtk? (
+ >=x11-libs/gtk+-2.8
+ >=dev-libs/glib-2.8
+ )
+ qt3? ( >=x11-libs/qt-3.3:3 )
+ qt4? (
+ || (
+ ( x11-libs/qt-core:4
+ x11-libs/qt-gui:4
+ x11-libs/qt-test:4 )
+
+ =x11-libs/qt-4.3*
+ )
+ )
+ !dev-libs/poppler-qt3
+ !dev-libs/poppler-qt4
+ !dev-libs/poppler
+ !dev-libs/poppler-glib
+ !app-text/poppler-utils
+ "
+DEPEND="
+ ${RDEPEND}
+ dev-util/pkgconfig
+ test? ( gtk? ( >=gnome-base/libglade-2 ) )
+ "
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ if ! { use gtk || use qt3 || use qt4 || use cairo; }
+ then
+ eerror "You've selected to build no bindings for poppler."
+ eerror "Please select at least one of:"
+ eerror "gtk, qt3, qt4, cairo"
+ die "Please select a toolkit"
+ fi
+ use test && ewarn "Tests will fail if your locale is unset."
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/poppler-CVE-2009-1187.patch"
+ sed -i \
+ -e 's:$(top_builddir)/poppler/libpoppler.la:-lpoppler:' \
+ $(find . -name 'Makefile.am' ) || die "404"
+ sed -i \
+ -e '/libpoppler_la_LIBADD/,/win32_libs/d' \
+ -e '/libpoppler_la_SOURCES/,/XpdfPluginAPI.cc/d' \
+ -e '/libpoppler.la/d' \
+ -e '/libpoppler_la/d' \
+ poppler/Makefile.am || die "404"
+
+ sed -i \
+ -e '/if BUILD_SPLASH_OUTPUT/,/endif/d' \
+ -e '/poppler.pc\t/d' \
+ -e ':$(splash_pc_file):d' \
+ Makefile.am || die "404"
+ rm m4/lt*.m4 m4/libtool.m4 || die "rm failed"
+
+ eautoreconf
+}
+
+src_configure() {
+ # Configure needs help finding qt libs on multilib systems
+ export QTLIB="${QTDIR}/$(get_libdir)"
+ echo $QTLIB
+
+ econf --disable-utils \
+ --disable-static \
+ $(use_enable gtk poppler-glib) \
+ $(use_enable qt3 poppler-qt) \
+ $(use_enable qt4 poppler-qt4) \
+ $(use cairo && echo "--enable-poppler-glib") \
+ $(use_enable cairo cairo-output) \
+ || die "configuration failed"
+}
+
+src_compile() {
+ cd poppler
+ if use cairo; then
+ emake libpoppler-cairo.la || die "cairo failed"
+ fi
+ if use qt4; then
+ emake libpoppler-arthur.la || die "arthur failed"
+ fi
+ cd ..
+ emake || die "compilation failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ rm -f $(find "${D}" -name '*.la')
+}
+
+pkg_postinst() {
+ ewarn "You need to rebuild everything depending on poppler, use revdep-rebuild"
+}