diff -u abiword-2.8.6/debian/changelog abiword-2.8.6/debian/changelog --- abiword-2.8.6/debian/changelog +++ abiword-2.8.6/debian/changelog @@ -1,8 +1,24 @@ -abiword (2.8.6-0.1~ppa1~lucid1) lucid; urgency=low +abiword (2.8.6-0.3~ppa1~lucid1) lucid; urgency=low - * Backport to Lucidbleed ppa. + * Backport to Lucidbleed. - -- Nicola Ferralis Wed, 01 Dec 2010 22:54:58 -0800 + -- Nicola Ferralis Mon, 28 Mar 2011 19:32:37 -0400 + +abiword (2.8.6-0.3) unstable; urgency=low + + * Non-maintainer upload. + * by request of the release team: disable psion plugin, as it blocks + this package + + -- Rene Engelhard Sun, 13 Feb 2011 22:26:18 +0100 + +abiword (2.8.6-0.2) unstable; urgency=low + + * Non-maintainer upload. + * build against libwpd 0.9.0/libwpg 0.2.0/libwps 0.2.0 (closes: #604826) + * build-depend on libxcb-render-util0-dev + + -- Rene Engelhard Sun, 13 Feb 2011 14:14:51 +0100 abiword (2.8.6-0.1) unstable; urgency=low diff -u abiword-2.8.6/debian/control abiword-2.8.6/debian/control --- abiword-2.8.6/debian/control +++ abiword-2.8.6/debian/control @@ -2,7 +2,7 @@ Section: gnome Priority: optional Maintainer: Patrik Fimml -Build-Depends: cdbs, debhelper (>= 7), quilt, libaiksaurus-1.2-dev (>= 1.2.1+dev-0.12-1.1), libaiksaurusgtk-1.2-dev (>= 1.2.1+dev-0.12-1.1), libasio-dev (>= 1.4.1), libenchant-dev (>= 1.2.0), libfreetype6-dev, libfribidi-dev, libglade2-dev, libglib2.0-dev, libgsf-1-dev (>= 1.13.2), libgtk2.0-dev, libgtkmathview-dev (>= 0.7.5), liblink-grammar4-dev, libloudmouth1-dev, libots-dev, libpng-dev, libpopt-dev, libreadline-dev, libwmf-dev, libwpd-dev, libwpg-dev (>= 0.1.0), libwps-dev, libwv-dev (>= 1.2), libgoffice-0.8-dev, libgucharmap2-dev, libpsiconv-dev (>= 0.9.4), librsvg2-dev (>= 2.16.0), libboost-regex-dev, libsoup2.4-dev, libdbus-glib-1-dev, libxslt-dev, libaspell-dev, flex, bison +Build-Depends: cdbs, debhelper (>= 7), quilt, libaiksaurus-1.2-dev (>= 1.2.1+dev-0.12-1.1), libaiksaurusgtk-1.2-dev (>= 1.2.1+dev-0.12-1.1), libasio-dev (>= 1.4.1), libenchant-dev (>= 1.2.0), libfreetype6-dev, libfribidi-dev, libglade2-dev, libglib2.0-dev, libgsf-1-dev (>= 1.13.2), libgtk2.0-dev, libgtkmathview-dev (>= 0.7.5), liblink-grammar4-dev, libloudmouth1-dev, libots-dev, libpng-dev, libpopt-dev, libreadline-dev, libwmf-dev, libwpd-dev (>= 0.9.0), libwpg-dev (>= 0.2.0), libwps-dev (>= 0.2.0), libwv-dev (>= 1.2), libgoffice-0.8-dev, libgucharmap2-dev, librsvg2-dev (>= 2.16.0), libboost-regex-dev, libsoup2.4-dev, libdbus-glib-1-dev, libxslt-dev, libaspell-dev, flex, bison, libxcb-render-util0-dev Standards-Version: 3.9.1 Homepage: http://www.abisource.com/ Vcs-Browser: http://git.debian.org/?p=users/patrikf-guest/abiword.git;a=summary diff -u abiword-2.8.6/debian/rules abiword-2.8.6/debian/rules --- abiword-2.8.6/debian/rules +++ abiword-2.8.6/debian/rules @@ -15,7 +15,7 @@ eml freetranslation gdict gimp goffice google grammar hancom \ hrtext iscii kword latex loadbindings mathview mht mif mswrite \ opendocument openwriter openxml opml ots paint passepartout pdb \ - pdf presentation psion s5 sdw t602 urldict wikipedia wmf wml \ + pdf presentation s5 sdw t602 urldict wikipedia wmf wml \ wordperfect wpg xslfo \ garble diff -u abiword-2.8.6/debian/patches/series abiword-2.8.6/debian/patches/series --- abiword-2.8.6/debian/patches/series +++ abiword-2.8.6/debian/patches/series @@ -9 +9 @@ - +libwpd-0.9.diff -p0 only in patch2: unchanged: --- abiword-2.8.6.orig/debian/patches/libwpd-0.9.diff +++ abiword-2.8.6/debian/patches/libwpd-0.9.diff @@ -0,0 +1,412 @@ +--- 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 ++#include + + #include + #include +@@ -70,12 +70,7 @@ + #include + #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(this)); ++ WPDResult error = WPDocument::parse(&gsfInput, static_cast(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(this)); ++ WPSResult error = WPSDocument::parse(&gsfInput, static_cast(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 +-#ifdef _WIN32 +-#define POINT WPX_POINT +-#endif + #include +-#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 + #include + #include +-#include ++#include + #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 + +--- configure 2010-11-24 17:29:47.000000000 +0100 ++++ configure 2010-11-24 17:31:56.000000000 +0100 +@@ -20604,7 +20604,7 @@ + + + +-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 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 +@@ -22664,8 +22664,8 @@ + + + +-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=