--- /dev/null
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-office/abiword/abiword-2.8.6-r2.ebuild,v 1.1 2011/12/04 20:03:03 pacho Exp $
+
+EAPI="4"
+GCONF_DEBUG="yes"
+GNOME2_LA_PUNT="yes"
+
+inherit alternatives eutils gnome2 versionator autotools
+
+MY_MAJORV=$(get_version_component_range 1-2)
+
+DESCRIPTION="Fully featured yet light and fast cross platform word processor"
+HOMEPAGE="http://www.abisource.com/"
+SRC_URI="http://www.abisource.com/downloads/${PN}/${PV}/source/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="collab cups gnome grammar latex math ots openxml plugins readline spell wordperfect wmf thesaurus" # svg
+
+# libgsf raised to make sure it provides gio backend
+# not enabling telepathy backend for collab, it depends on libempathy-gtk which
+# has be removed from empathy-2.30 already
+RDEPEND="
+ >=app-text/wv-1.2
+ >=dev-libs/fribidi-0.10.4
+ >=dev-libs/glib-2.16:2
+ >=gnome-base/librsvg-2.16:2
+ >=gnome-extra/libgsf-1.14.15
+ >=media-libs/libpng-1.2
+ virtual/jpeg
+ >=x11-libs/cairo-1.8[X]
+ >=x11-libs/gtk+-2.14:2[cups?]
+ gnome? (
+ >=gnome-extra/gucharmap-2
+ >=x11-libs/goffice-0.8:0.8 )
+ plugins? (
+ collab? (
+ >=dev-libs/boost-1.33.1
+ >=dev-libs/libxml2-2.4
+ >=net-libs/loudmouth-1
+ net-libs/libsoup:2.4
+ net-libs/gnutls )
+ grammar? ( >=dev-libs/link-grammar-4.2.1 )
+ latex? ( dev-libs/libxslt )
+ math? ( >=x11-libs/gtkmathview-0.7.5 )
+ openxml? ( dev-libs/boost )
+ ots? ( >=app-text/ots-0.5 )
+ readline? ( sys-libs/readline )
+ thesaurus? ( >=app-text/aiksaurus-1.2[gtk] )
+ wordperfect? (
+ app-text/libwpd:0.9
+ app-text/libwpg:0.2 )
+ wmf? ( >=media-libs/libwmf-0.2.8 )
+ )
+ spell? ( >=app-text/enchant-1.2 )
+ !<app-office/abiword-plugins-2.8"
+# svg? ( >=gnome-base/librsvg-2 )
+
+DEPEND="${RDEPEND}
+ >=dev-util/pkgconfig-0.9
+ collab? ( dev-cpp/asio )"
+
+pkg_setup() {
+ # do not enable gnome-vfs
+ G2CONF="${G2CONF}
+ --enable-shave
+ --disable-static
+ --disable-default-plugins
+ --disable-builtin-plugins
+ --disable-collab-backend-telepathy
+ --enable-clipart
+ --enable-statusbar
+ --enable-templates
+ --with-gio
+ --without-gnomevfs
+ $(use_with gnome goffice)
+ $(use_enable cups print)
+ $(use_enable collab collab-backend-xmpp)
+ $(use_enable collab collab-backend-tcp)
+ $(use_enable collab collab-backend-service)
+ $(use_enable spell)"
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-libpng15.patch
+ epatch "${FILESDIR}"/${P}-gcc46.patch
+ epatch "${FILESDIR}"/${P}-libwpd.patch
+
+ # install icon to pixmaps (bug #220097)
+ sed 's:$(datadir)/icons:$(datadir)/pixmaps:' \
+ -i Makefile.am Makefile.in || die "sed 1 failed"
+ # readme.txt will be installed using dodoc
+ sed '/readme\.txt\|abw/d' \
+ -i user/wp/Makefile.am user/wp/Makefile.in || die "sed 2 failed"
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ local plugins=""
+
+ if use plugins; then
+ # Plugins depending on libgsf
+ plugins="t602 docbook clarisworks wml kword hancom openwriter pdf
+ loadbindings mswrite garble pdb applix opendocument sdw xslfo"
+
+ # Plugins not depending on anything
+ plugins="${plugins} gimp bmp freetranslation iscii s5 babelfish opml eml
+ wikipedia gdict passepartout google presentation urldict hrtext mif"
+
+ # inter7eps: eps.h
+ # libtidy: gsf + tidy.h
+ # paint: windows only ?
+ use collab && plugins="${plugins} collab"
+ use gnome && plugins="${plugins} goffice"
+ use latex && plugins="${plugins} latex"
+ use math && plugins="${plugins} mathview"
+ use openxml && plugins="${plugins} openxml"
+ use ots && plugins="${plugins} ots"
+ # psion: >=psiconv-0.9.4
+ use readline && plugins="${plugins} command"
+ # plugin doesn't build
+ #use svg && plugins="${plugins} rsvg"
+ use thesaurus && plugins="${plugins} aiksaurus"
+ use wmf && plugins="${plugins} wmf"
+ # wordperfect: >=wpd-0.9 >=wpg-0.2
+ use wordperfect && plugins="${plugins} wpg"
+ fi
+
+ gnome2_src_configure --enable-plugins="$(echo ${plugins})"
+}
+
+src_install() {
+ gnome2_src_install
+
+ sed "s:Exec=abiword:Exec=abiword-${MY_MAJORV}:" \
+ -i "${ED}"/usr/share/applications/abiword.desktop || die "sed 3 failed"
+
+ mv "${ED}/usr/bin/abiword" "${ED}/usr/bin/AbiWord-${MY_MAJORV}"
+ dosym AbiWord-${MY_MAJORV} /usr/bin/abiword-${MY_MAJORV}
+
+ dodoc AUTHORS user/wp/readme.txt
+}
+
+pkg_postinst() {
+ gnome2_pkg_postinst
+ alternatives_auto_makesym "/usr/bin/abiword" "/usr/bin/abiword-[0-9].[0-9]"
+}
+
+pkg_postrm() {
+ gnome2_pkg_postrm
+ alternatives_auto_makesym "/usr/bin/abiword" "/usr/bin/abiword-[0-9].[0-9]"
+}
--- /dev/null
+--- plugins/wordperfect/xp/ie_imp_WordPerfect.cpp (revision 29401)
++++ plugins/wordperfect/xp/ie_imp_WordPerfect.cpp (revision 29403)
+@@ -60,7 +60,7 @@
+
+ // Stream class
+
+-#include <libwpd/WPXStream.h>
++#include <libwpd-stream/libwpd-stream.h>
+
+ #include <gsf/gsf-input.h>
+ #include <gsf/gsf-infile.h>
+@@ -70,12 +70,7 @@
+ #include <libwps/libwps.h>
+ #endif
+
+-class AbiWordperfectInputStream :
+-#ifdef HAVE_LIBWPS
+- public WPSInputStream
+-#else
+- public WPXInputStream
+-#endif
++class AbiWordperfectInputStream : public WPXInputStream
+ {
+ public:
+ AbiWordperfectInputStream(GsfInput *input);
+@@ -86,7 +81,7 @@
+
+ virtual WPXInputStream * getDocumentOLEStream(const char * name);
+
+- virtual const uint8_t *read(size_t numBytes, size_t &numBytesRead);
++ virtual const unsigned char *read(unsigned long numBytes, unsigned long &numBytesRead);
+ virtual int seek(long offset, WPX_SEEK_TYPE seekType);
+ virtual long tell();
+ virtual bool atEOS();
+@@ -98,11 +93,7 @@
+ };
+
+ AbiWordperfectInputStream::AbiWordperfectInputStream(GsfInput *input) :
+-#ifdef HAVE_LIBWPS
+- WPSInputStream(),
+-#else
+- WPXInputStream(true),
+-#endif
++ WPXInputStream(),
+ m_input(input),
+ m_ole(NULL)
+ {
+@@ -117,9 +108,9 @@
+ g_object_unref(G_OBJECT(m_input));
+ }
+
+-const uint8_t * AbiWordperfectInputStream::read(size_t numBytes, size_t &numBytesRead)
++const unsigned char * AbiWordperfectInputStream::read(unsigned long numBytes, unsigned long &numBytesRead)
+ {
+- const uint8_t *buf = gsf_input_read(m_input, numBytes, NULL);
++ const unsigned char *buf = gsf_input_read(m_input, numBytes, NULL);
+
+ if (buf == NULL)
+ numBytesRead = 0;
+@@ -256,19 +247,12 @@
+ {
+ AbiWordperfectInputStream gsfInput(input);
+
+- WPDConfidence confidence = WPDocument::isFileFormatSupported(&gsfInput, true);
++ WPDConfidence confidence = WPDocument::isFileFormatSupported(&gsfInput);
+
+ switch (confidence)
+ {
+ case WPD_CONFIDENCE_NONE:
+- // libwpd > 0.7.1 reports POOR if the text file is plain text (that _could_ be a WP4x document)
+- // however, we'll let the text importer handle such cases
+- case WPD_CONFIDENCE_POOR:
+ return UT_CONFIDENCE_ZILCH;
+- case WPD_CONFIDENCE_LIKELY:
+- return UT_CONFIDENCE_SOSO;
+- case WPD_CONFIDENCE_GOOD:
+- return UT_CONFIDENCE_GOOD;
+ case WPD_CONFIDENCE_EXCELLENT:
+ return UT_CONFIDENCE_PERFECT;
+ default:
+@@ -328,7 +312,7 @@
+ UT_Error IE_Imp_WordPerfect::_loadFile(GsfInput * input)
+ {
+ AbiWordperfectInputStream gsfInput(input);
+- WPDResult error = WPDocument::parse(&gsfInput, static_cast<WPXHLListenerImpl *>(this));
++ WPDResult error = WPDocument::parse(&gsfInput, static_cast<WPXDocumentInterface *>(this), NULL);
+
+ if (error != WPD_OK)
+ {
+@@ -381,9 +365,9 @@
+ float marginLeft = 1.0f, marginRight = 1.0f;
+
+ if (propList["fo:margin-left"])
+- marginLeft = propList["fo:margin-left"]->getFloat();
++ marginLeft = propList["fo:margin-left"]->getDouble();
+ if (propList["fo:margin-right"])
+- marginRight = propList["fo:margin-right"]->getFloat();
++ marginRight = propList["fo:margin-right"]->getDouble();
+
+ if (marginLeft != m_leftPageMargin || marginRight != m_rightPageMargin /* || */
+ /* marginTop != m_marginBottom || marginBottom != m_marginBottom */ )
+@@ -456,15 +440,15 @@
+ float marginTop = 0.0f, marginBottom = 0.0f;
+ float marginLeft = 0.0f, marginRight = 0.0f, textIndent = 0.0f;
+ if (propList["fo:margin-top"])
+- marginTop = propList["fo:margin-top"]->getFloat();
++ marginTop = propList["fo:margin-top"]->getDouble();
+ if (propList["fo:margin-bottom"])
+- marginBottom = propList["fo:margin-bottom"]->getFloat();
++ marginBottom = propList["fo:margin-bottom"]->getDouble();
+ if (propList["fo:margin-left"])
+- marginLeft = propList["fo:margin-left"]->getFloat();
++ marginLeft = propList["fo:margin-left"]->getDouble();
+ if (propList["fo:margin-right"])
+- marginRight = propList["fo:margin-right"]->getFloat();
++ marginRight = propList["fo:margin-right"]->getDouble();
+ if (propList["fo:text-indent"])
+- textIndent = propList["fo:text-indent"]->getFloat();
++ textIndent = propList["fo:text-indent"]->getDouble();
+
+ m_topMargin = marginTop;
+ m_bottomMargin = marginBottom;
+@@ -487,7 +471,7 @@
+
+ float lineSpacing = 1.0f;
+ if (propList["fo:line-height"])
+- lineSpacing = propList["fo:line-height"]->getFloat();
++ lineSpacing = propList["fo:line-height"]->getDouble();
+
+ UT_String tmpBuffer;
+ UT_String_sprintf(tmpBuffer, "; margin-top:%.4fin; margin-bottom:%.4fin; margin-left:%.4fin; margin-right:%.4fin; text-indent:%.4fin; line-height:%.4f",
+@@ -504,7 +488,7 @@
+ propBuffer += tmpBuffer;
+ if (i()["style:position"])
+ {
+- UT_String_sprintf(tmpBuffer, "%.4fin", i()["style:position"]->getFloat());
++ UT_String_sprintf(tmpBuffer, "%.4fin", i()["style:position"]->getDouble());
+ propBuffer += tmpBuffer;
+ }
+
+@@ -520,10 +504,10 @@
+ else // Left aligned is default
+ propBuffer += "/L";
+
+- if (i()["style:leader-char"])
+- if (i()["style:leader-char"]->getStr() == "-")
++ if (i()["style:leader-text"])
++ if (i()["style:leader-text"]->getStr() == "-")
+ propBuffer += "2";
+- else if (i()["style:leader-char"]->getStr() == "_")
++ else if (i()["style:leader-text"]->getStr() == "_")
+ propBuffer += "3";
+ else // default to dot leader if the given leader is dot or is not supported by AbiWord
+ propBuffer += "1";
+@@ -586,12 +570,12 @@
+ propBuffer += "subscript";
+ }
+
+- if (propList["style:text-underline"] || propList["style:text-crossing-out"])
++ if (propList["style:text-underline-type"] || propList["style:text-line-through-type"])
+ {
+ propBuffer += "; text-decoration:";
+- if (propList["style:text-underline"])
++ if (propList["style:text-underline-type"])
+ propBuffer += "underline ";
+- if (propList["style:text-crossing-out"])
++ if (propList["style:text-line-through-type"])
+ propBuffer += "line-through";
+
+ }
+@@ -615,10 +599,10 @@
+ propBuffer += propList["fo:color"]->getStr().cstr();
+ }
+
+- if (propList["style:text-background-color"])
++ if (propList["fo:background-color"])
+ {
+ propBuffer += "; bgcolor:";
+- propBuffer += propList["style:text-background-color"]->getStr().cstr();
++ propBuffer += propList["fo:background-color"]->getStr().cstr();
+ }
+
+ UT_DEBUGMSG(("AbiWordPerfect: Appending span format: %s\n", propBuffer.c_str()));
+@@ -639,10 +623,10 @@
+ int columnsCount = ((columns.count() == 0) ? 1 : columns.count());
+
+ // TODO: support spaceAfter
+- if (propList["fo:margin-left"])
+- marginLeft = propList["fo:margin-left"]->getFloat();
+- if (propList["fo:margin-right"])
+- marginRight = propList["fo:margin-right"]->getFloat();
++ if (propList["fo:start-indent"])
++ marginLeft = propList["fo:start-indent"]->getDouble();
++ if (propList["fo:end-indent"])
++ marginRight = propList["fo:end-indent"]->getDouble();
+
+ if (marginLeft != m_leftSectionMargin || marginRight != m_rightSectionMargin || m_sectionColumnsCount != columnsCount)
+ m_bSectionChanged = true;
+@@ -709,9 +693,9 @@
+ if (propList["style:num-format"])
+ listType = propList["style:num-format"]->getStr().cstr()[0];
+ if (propList["text:space-before"])
+- listLeftOffset = propList["text:space-before"]->getFloat();
++ listLeftOffset = propList["text:space-before"]->getDouble();
+ if (propList["text:min-label-width"])
+- listMinLabelWidth = propList["text:min-label-width"]->getFloat();
++ listMinLabelWidth = propList["text:min-label-width"]->getDouble();
+
+ if (!m_pCurrentListDefinition ||
+ m_pCurrentListDefinition->getOutlineHash() != listID ||
+@@ -749,9 +733,9 @@
+ if (propList["libwpd:level"])
+ level = propList["libwpd:level"]->getInt();
+ if (propList["text:space-before"])
+- listLeftOffset = propList["text:space-before"]->getFloat();
++ listLeftOffset = propList["text:space-before"]->getDouble();
+ if (propList["text:min-label-width"])
+- listMinLabelWidth = propList["text:min-label-width"]->getFloat();
++ listMinLabelWidth = propList["text:min-label-width"]->getDouble();
+
+ if (!m_pCurrentListDefinition || m_pCurrentListDefinition->getOutlineHash() != listID)
+ {
+@@ -871,10 +855,10 @@
+
+ UT_String_sprintf(tempBuffer, "margin-left:%.4fin; ", m_pCurrentListDefinition->getListLeftOffset(m_iCurrentListLevel)
+ + m_pCurrentListDefinition->getListMinLabelWidth(m_iCurrentListLevel)
+- - (propList["fo:text-indent"] ? propList["fo:text-indent"]->getFloat() : 0.0f));
++ - (propList["fo:text-indent"] ? propList["fo:text-indent"]->getDouble() : 0.0f));
+ propBuffer += tempBuffer;
+ UT_String_sprintf(tempBuffer, "text-indent:%.4fin", - m_pCurrentListDefinition->getListMinLabelWidth(m_iCurrentListLevel)
+- + (propList["fo:text-indent"] ? propList["fo:text-indent"]->getFloat() : 0.0f));
++ + (propList["fo:text-indent"] ? propList["fo:text-indent"]->getDouble() : 0.0f));
+ propBuffer += tempBuffer;
+
+ listAttribs[attribsCount++] = PT_PROPS_ATTRIBUTE_NAME;
+@@ -1263,7 +1247,7 @@
+ virtual UT_Error _loadFile(GsfInput * input)
+ {
+ AbiWordperfectInputStream gsfInput(input);
+- WPSResult error = WPSDocument::parse(&gsfInput, static_cast<WPXHLListenerImpl *>(this));
++ WPSResult error = WPSDocument::parse(&gsfInput, static_cast<WPXDocumentInterface *>(this));
+
+ if (error != WPS_OK)
+ {
+@@ -1302,18 +1286,12 @@
+ {
+ AbiWordperfectInputStream gsfInput(input);
+
+- WPSConfidence confidence = WPSDocument::isFileFormatSupported(&gsfInput, true);
++ WPSConfidence confidence = WPSDocument::isFileFormatSupported(&gsfInput);
+
+ switch (confidence)
+ {
+ case WPS_CONFIDENCE_NONE:
+ return UT_CONFIDENCE_ZILCH;
+- case WPS_CONFIDENCE_POOR:
+- return UT_CONFIDENCE_POOR;
+- case WPS_CONFIDENCE_LIKELY:
+- return UT_CONFIDENCE_SOSO;
+- case WPS_CONFIDENCE_GOOD:
+- return UT_CONFIDENCE_GOOD;
+ case WPS_CONFIDENCE_EXCELLENT:
+ return UT_CONFIDENCE_PERFECT;
+ default:
+--- plugins/wordperfect/xp/ie_imp_WordPerfect.h (revision 29401)
++++ plugins/wordperfect/xp/ie_imp_WordPerfect.h (revision 29403)
+@@ -30,13 +30,7 @@
+ #define IE_IMP_WP_H
+
+ #include <stdio.h>
+-#ifdef _WIN32
+-#define POINT WPX_POINT
+-#endif
+ #include <libwpd/libwpd.h>
+-#ifdef _WIN32
+-#undef POINT
+-#endif
+ #include "ie_imp.h"
+ #include "ut_string.h"
+ #include "ut_string_class.h"
+@@ -98,7 +92,7 @@
+ IE_Imp ** ppie);
+ };
+
+-class IE_Imp_WordPerfect : public IE_Imp, public WPXHLListenerImpl
++class IE_Imp_WordPerfect : public IE_Imp, public WPXDocumentInterface
+ {
+ public:
+ IE_Imp_WordPerfect(PD_Document * pDocument);
+@@ -154,6 +148,21 @@
+ virtual void insertCoveredTableCell(const WPXPropertyList & /*propList*/) {}
+ virtual void closeTable();
+
++ virtual void definePageStyle(const WPXPropertyList&) {}
++ virtual void defineParagraphStyle(const WPXPropertyList&, const WPXPropertyListVector&) {}
++ virtual void defineCharacterStyle(const WPXPropertyList&) {}
++ virtual void defineSectionStyle(const WPXPropertyList&, const WPXPropertyListVector&) {}
++ virtual void insertSpace() {}
++ virtual void insertField(const WPXString&, const WPXPropertyList&) {}
++ virtual void openComment(const WPXPropertyList&) {}
++ virtual void closeComment() {}
++ virtual void openTextBox(const WPXPropertyList&) {}
++ virtual void closeTextBox() {}
++ virtual void openFrame(const WPXPropertyList&) {}
++ virtual void closeFrame() {}
++ virtual void insertBinaryObject(const WPXPropertyList&, const WPXBinaryData&) {}
++ virtual void insertEquation(const WPXPropertyList&, const WPXString&) {}
++
+
+ protected:
+ virtual UT_Error _loadFile(GsfInput * input);
+--- plugins/wordperfect/plugin.m4 (revision 29401)
++++ plugins/wordperfect/plugin.m4 (revision 29403)
+@@ -1,6 +1,6 @@
+
+-wordperfect_pkgs="libwpd-0.8 >= 0.8.0 $gsf_req"
+-wordperfect_wps_pkgs='libwps-0.1 >= 0.1.0'
++wordperfect_pkgs="libwpg-0.2 >= 0.2.0 libwpd-0.9 >= 0.9.0 libwpd-stream-0.9 >= 0.9.0 $gsf_req"
++wordperfect_wps_pkgs='libwps-0.2 >= 0.1.0'
+ wordperfect_deps="no"
+
+ WORDPERFECT_CFLAGS=
+--- plugins/wpg/xp/ie_impGraphic_WPG.cpp (revision 29401)
++++ plugins/wpg/xp/ie_impGraphic_WPG.cpp (revision 29403)
+@@ -31,11 +31,10 @@
+ #include <gsf/gsf-input-memory.h>
+ #include <gsf/gsf-input-stdio.h>
+ #include <gsf/gsf-infile-msole.h>
+-#include <libwpd/WPXStream.h>
++#include <libwpd-stream/libwpd-stream.h>
+ #include "xap_Module.h"
+
+ using libwpg::WPGraphics;
+-using libwpg::WPGString;
+
+ ABI_PLUGIN_DECLARE("WPG")
+
+@@ -48,7 +47,7 @@
+ virtual bool isOLEStream();
+ virtual WPXInputStream * getDocumentOLEStream();
+ virtual WPXInputStream * getDocumentOLEStream(const char * name);
+- virtual const uint8_t *read(size_t numBytes, size_t &numBytesRead);
++ virtual const unsigned char *read(unsigned long numBytes, unsigned long &numBytesRead);
+ virtual int seek(long offset, WPX_SEEK_TYPE seekType);
+ virtual long tell();
+ virtual bool atEOS();
+@@ -60,7 +59,7 @@
+ };
+
+ AbiWordPerfectGraphicsInputStream::AbiWordPerfectGraphicsInputStream(GsfInput *input) :
+- WPXInputStream(true),
++ WPXInputStream(),
+ m_input(input),
+ m_ole(NULL)
+ {
+@@ -75,9 +74,9 @@
+ g_object_unref(G_OBJECT(m_input));
+ }
+
+-const uint8_t * AbiWordPerfectGraphicsInputStream::read(size_t numBytes, size_t &numBytesRead)
++const unsigned char * AbiWordPerfectGraphicsInputStream::read(unsigned long numBytes, unsigned long &numBytesRead)
+ {
+- const uint8_t *buf = gsf_input_read(m_input, numBytes, NULL);
++ const unsigned char *buf = gsf_input_read(m_input, numBytes, NULL);
+
+ if (buf == NULL)
+ numBytesRead = 0;
+@@ -245,10 +244,10 @@
+ UT_Error IE_Imp_WordPerfectGraphics::importGraphic(GsfInput *input, FG_Graphic **ppfg)
+ {
+ AbiWordPerfectGraphicsInputStream gsfInput(input);
+- WPGString svgOutput;
++ WPXString svgOutput;
+ if (WPGraphics::generateSVG(&gsfInput, svgOutput))
+ {
+- GsfInput * svgInput = gsf_input_memory_new((const guint8*)svgOutput.cstr(), svgOutput.length(), false);
++ GsfInput * svgInput = gsf_input_memory_new((const guint8*)svgOutput.cstr(), svgOutput.len(), false);
+ UT_Error result = IE_ImpGraphic::loadGraphic(svgInput, IE_ImpGraphic::fileTypeForSuffix(".svg"), ppfg);
+ g_object_unref(svgInput);
+ return result;
+--- plugins/wpg/plugin.m4 (revision 29401)
++++ plugins/wpg/plugin.m4 (revision 29403)
+@@ -1,5 +1,5 @@
+
+-wpg_pkgs="$gsf_req libwpg-0.1 >= 0.1.0 libwpd-0.8 >= 0.8.0"
++wpg_pkgs="$gsf_req libwpg-0.2 >= 0.2.0 libwpd-0.9 >= 0.9.0 libwpd-stream-0.9 >= 0.9.0"
+ wpg_deps="no"
+
+ if test "$enable_wpg" != ""; then
+
+