diff --git a/abiword-2.8.6-gcc-4.7.patch b/abiword-2.8.6-gcc-4.7.patch deleted file mode 100644 index a88c0c7..0000000 --- a/abiword-2.8.6-gcc-4.7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -ru abiword-2.8.6.orig/src/af/util/xp/ut_go_file.h abiword-2.8.6/src/af/util/xp/ut_go_file.h ---- abiword-2.8.6.orig/src/af/util/xp/ut_go_file.h 2009-08-27 15:27:10.000000000 +0200 -+++ abiword-2.8.6/src/af/util/xp/ut_go_file.h 2012-08-16 08:03:13.134073474 +0200 -@@ -31,7 +31,6 @@ - - #include - #include --#include - #include - - G_BEGIN_DECLS diff --git a/abiword-2.8.6-libpng-1.5.patch b/abiword-2.8.6-libpng-1.5.patch deleted file mode 100644 index 9ec6ea3..0000000 --- a/abiword-2.8.6-libpng-1.5.patch +++ /dev/null @@ -1,111 +0,0 @@ -diff -up abiword-2.8.6/plugins/bmp/xp/ie_impGraphic_BMP.cpp.png15 abiword-2.8.6/plugins/bmp/xp/ie_impGraphic_BMP.cpp ---- abiword-2.8.6/plugins/bmp/xp/ie_impGraphic_BMP.cpp.png15 2012-02-27 15:39:39.258617605 -0500 -+++ abiword-2.8.6/plugins/bmp/xp/ie_impGraphic_BMP.cpp 2012-02-27 15:48:37.830936901 -0500 -@@ -191,7 +191,14 @@ UT_Error IE_ImpGraphic_BMP::_convertGrap - - /* Clean Up Memory Used */ - -+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4 -+ int num_palette; -+ png_colorp palette; -+ png_get_PLTE(m_pPNG, m_pPNGInfo, &palette, &num_palette); -+ FREEP(palette); -+#else - FREEP(m_pPNGInfo->palette); -+#endif - DELETEP(pBB); - png_destroy_write_struct(&m_pPNG, &m_pPNGInfo); - -@@ -313,7 +320,11 @@ UT_Error IE_ImpGraphic_BMP::Initialize_P - * the normal method of doing things with libpng). REQUIRED unless you - * set up your own error handlers in the png_create_read_struct() earlier. - */ -+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4 -+ if (setjmp(png_jmpbuf(m_pPNG))) -+#else - if (setjmp(m_pPNG->jmpbuf)) -+#endif - { - /* Free all of the memory associated with the png_ptr and info_ptr */ - png_destroy_write_struct(&m_pPNG, &m_pPNGInfo); -@@ -332,7 +343,11 @@ UT_Error IE_ImpGraphic_BMP::Initialize_P - UT_Error IE_ImpGraphic_BMP::Convert_BMP_Pallet(UT_ByteBuf* pBB) - { - /* Reset error handling for libpng */ -+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4 -+ if (setjmp(png_jmpbuf(m_pPNG))) -+#else - if (setjmp(m_pPNG->jmpbuf)) -+#endif - { - png_destroy_write_struct(&m_pPNG, &m_pPNGInfo); - return UT_ERROR; -@@ -372,7 +387,11 @@ UT_Error IE_ImpGraphic_BMP::Initialize_P - UT_Error IE_ImpGraphic_BMP::Convert_BMP(UT_ByteBuf* pBB) - { - /* Reset error handling for libpng */ -+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4 -+ if (setjmp(png_jmpbuf(m_pPNG))) -+#else - if (setjmp(m_pPNG->jmpbuf)) -+#endif - { - png_destroy_write_struct(&m_pPNG, &m_pPNGInfo); - return UT_ERROR; -diff -up abiword-2.8.6/plugins/garble/xp/abiword-garble-png.cpp.png15 abiword-2.8.6/plugins/garble/xp/abiword-garble-png.cpp ---- abiword-2.8.6/plugins/garble/xp/abiword-garble-png.cpp.png15 2012-02-27 15:31:30.178868169 -0500 -+++ abiword-2.8.6/plugins/garble/xp/abiword-garble-png.cpp 2012-02-27 15:36:17.795368497 -0500 -@@ -79,7 +79,11 @@ bool abiword_document::garble_png( void* - png_set_strip_alpha( png_ptr ); - png_set_interlace_handling( png_ptr ); - png_set_bgr( png_ptr ); -+#if (PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4) && defined(PNG_EASY_ACCESS_SUPPORTED) -+ rowbytes = png_get_rowbytes( png_ptr, info_ptr ); -+#else - rowbytes = info_ptr->rowbytes; -+#endif - png_destroy_read_struct( &png_ptr, &info_ptr, NULL ); - } - -diff -up abiword-2.8.6/src/af/util/xp/ut_png.cpp.png15 abiword-2.8.6/src/af/util/xp/ut_png.cpp ---- abiword-2.8.6/src/af/util/xp/ut_png.cpp.png15 2012-02-27 15:11:18.599397989 -0500 -+++ abiword-2.8.6/src/af/util/xp/ut_png.cpp 2012-02-27 15:12:20.560859433 -0500 -@@ -71,7 +71,11 @@ bool UT_PNG_getDimensions(const UT_ByteB - * the normal method of doing things with libpng). REQUIRED unless you - * set up your own error handlers in the png_create_read_struct() earlier. - */ -+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4 -+ if (setjmp(png_jmpbuf(png_ptr))) -+#else - if (setjmp(png_ptr->jmpbuf)) -+#endif - { - /* Free all of the memory associated with the png_ptr and info_ptr */ - png_destroy_read_struct(&png_ptr, &info_ptr, static_cast(NULL)); -diff -up abiword-2.8.6/src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp.png15 abiword-2.8.6/src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp ---- abiword-2.8.6/src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp.png15 2012-02-27 15:24:23.959572417 -0500 -+++ abiword-2.8.6/src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp 2012-02-27 15:26:42.549367943 -0500 -@@ -185,7 +185,11 @@ UT_Error IE_ImpGraphic_GdkPixbuf::import - /** needed for the stejmp context */ - UT_Error IE_ImpGraphic_GdkPixbuf::_png_write(GdkPixbuf * pixbuf) - { -+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4 -+ if (setjmp(png_jmpbuf(m_pPNG))) -+#else - if (setjmp(m_pPNG->jmpbuf)) -+#endif - { - DELETEP(m_pPngBB); - png_destroy_write_struct(&m_pPNG, &m_pPNGInfo); -@@ -446,7 +450,11 @@ UT_Error IE_ImpGraphic_GdkPixbuf::Initia - * the normal method of doing things with libpng). REQUIRED unless you - * set up your own error handlers in the png_create_read_struct() earlier. - */ -+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4 -+ if (setjmp(png_jmpbuf(m_pPNG))) -+#else - if (setjmp(m_pPNG->jmpbuf)) -+#endif - { - /* Free all of the memory associated with the png_ptr and info_ptr */ - png_destroy_write_struct(&m_pPNG, &m_pPNGInfo); diff --git a/abiword-2.8.6-libwpd-0.9.patch b/abiword-2.8.6-libwpd-0.9.patch deleted file mode 100644 index a3f4a47..0000000 --- a/abiword-2.8.6-libwpd-0.9.patch +++ /dev/null @@ -1,391 +0,0 @@ ---- 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 - - diff --git a/abiword-2.8.6-no-undefined.patch b/abiword-2.8.6-no-undefined.patch deleted file mode 100644 index c07000e..0000000 --- a/abiword-2.8.6-no-undefined.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -u -r abiword-2.8.6.orig/src/Makefile.am abiword-2.8.6/src/Makefile.am ---- abiword-2.8.6.orig/src/Makefile.am 2009-09-09 15:11:01.000000000 +0200 -+++ abiword-2.8.6/src/Makefile.am 2011-08-02 23:35:51.904761961 +0200 -@@ -107,7 +107,7 @@ - - AbiWord_LDFLAGS = \ - $(DEPS_LIBS) \ -- --no-undefined \ -+ -Wl,--no-undefined \ - -avoid-version \ - -export-dynamic \ - -headerpad_max_install_names -@@ -129,7 +129,7 @@ - - abiword_LDFLAGS = \ - $(platform_ldflags) \ -- --no-undefined \ -+ -Wl,--no-undefined \ - -avoid-version \ - -export-dynamic - diff --git a/abiword-3.0.1-link-grammar-5-2.patch b/abiword-3.0.1-link-grammar-5-2.patch deleted file mode 100644 index c471c74..0000000 --- a/abiword-3.0.1-link-grammar-5-2.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- abiword-3.0.0/plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp.orig 2014-06-30 08:21:30.000000000 -0500 -+++ abiword-3.0.0/plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp 2014-06-30 08:27:01.000000000 -0500 -@@ -220,6 +220,7 @@ bool LinkGrammarWrap::parseSentence(Piec - pErr = NULL; - } - -+#ifdef DEAD_DEBUG_CODE - // for(i=0; i< pT->m_vecGrammarErrors.getItemCount(); i++) - // { - // pErr = pT->m_vecGrammarErrors.getNthItem(i); -@@ -227,15 +228,10 @@ bool LinkGrammarWrap::parseSentence(Piec - // } - UT_UTF8String sErr = linkage_get_violation_name(linkage); - // UT_DEBUGMSG(("Top Level error message |%s|\n",sErr.utf8_str())); -- UT_sint32 count = linkage_get_num_sublinkages(linkage); - // - // Find linkages with violations - // -- for(i=0; i= 1); diff --git a/abiword-3.0.1-link-grammar-5-4.patch b/abiword-3.0.1-link-grammar-5-4.patch deleted file mode 100644 index b06904f..0000000 --- a/abiword-3.0.1-link-grammar-5-4.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- abiword/trunk/plugins/grammar/plugin.m4 2010/05/25 10:09:01 28902 -+++ abiword/trunk/plugins/grammar/plugin.m4 2015/09/09 14:14:20 35098 -@@ -22,6 +22,10 @@ - fi - - PKG_CHECK_MODULES(GRAMMAR,[ $grammar_pkgs ]) -+PKG_CHECK_EXISTS([ link-grammar >= 5.1.0 ], -+[ -+ AC_DEFINE([HAVE_LINK_GRAMMAR_51],[1],["have link-grammar 5.1.0 or later"]) -+]) - - test "$enable_grammar" = "auto" && PLUGINS="$PLUGINS grammar" - diff --git a/abiword-3.0.1-link-grammar-5.patch b/abiword-3.0.1-link-grammar-5.patch deleted file mode 100644 index bbf75f6..0000000 --- a/abiword-3.0.1-link-grammar-5.patch +++ /dev/null @@ -1,45 +0,0 @@ ---- abiword-3.0.0/plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp.orig 2014-06-29 14:50:30.000000000 -0500 -+++ abiword-3.0.0/plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp 2014-06-29 14:55:39.000000000 -0500 -@@ -145,12 +145,11 @@ bool LinkGrammarWrap::parseSentence(Piec - } - AbiGrammarError * pWordMap = new AbiGrammarError(); - pWordMap->m_iErrLow = iLow; -- pWordMap->m_iErrHigh = iLow + strlen(sentence_get_nth_word(sent, i)); -+ pWordMap->m_iErrHigh = iLow + strlen(linkage_get_word(linkage, i)); - pWordMap->m_iWordNum = i; - vecMapOfWords.addItem(pWordMap); - bool bNew = false; -- if(!sentence_nth_word_has_disjunction(sent, i)) -- { -+ - //UT_DEBUGMSG(("|%s| NULL LINK\n",sent->word[i].string)); - if(pErr == NULL) - { -@@ -167,7 +166,7 @@ bool LinkGrammarWrap::parseSentence(Piec - } - pErr = new AbiGrammarError(); - } -- iHigh = iLow + strlen(sentence_get_nth_word(sent, i)); -+ iHigh = iLow + strlen(linkage_get_word(linkage, i)); - pErr->m_iErrLow = iLow + iOff -1; - pErr->m_iErrHigh = iHigh + iOff -1; - if(pErr->m_iErrLow < 0) -@@ -188,7 +187,7 @@ bool LinkGrammarWrap::parseSentence(Piec - // - // Expand the sqiggle - // -- iHigh = iLow + strlen(sentence_get_nth_word(sent, i)) + iOff; -+ iHigh = iLow + strlen(linkage_get_word(linkage, i)) + iOff; - pErr->m_iErrHigh = iHigh; - if(pErr->m_iErrHigh < totlen-1) - { -@@ -196,8 +195,7 @@ bool LinkGrammarWrap::parseSentence(Piec - } - pErr->m_iWordNum = i; - } -- } -- iLow += strlen(sentence_get_nth_word(sent, i)); -+ iLow += strlen(linkage_get_word(linkage, i)); - } - // - // No NULL links but still an error , mark the whole sentence bad. diff --git a/abiword-3.0.6-enchant-2.8.2.patch b/abiword-3.0.6-enchant-2.8.2.patch new file mode 100644 index 0000000..010aac1 --- /dev/null +++ b/abiword-3.0.6-enchant-2.8.2.patch @@ -0,0 +1,29 @@ +--- abiword-3.0.2/src/af/xap/xp/enchant_checker.cpp.orig 2013-04-07 13:53:03.000000000 +0000 ++++ abiword-3.0.2/src/af/xap/xp/enchant_checker.cpp 2017-11-19 22:54:41.236180298 +0000 +@@ -127,7 +127,7 @@ + pvSugg->addItem (ucszSugg); + } + +- enchant_dict_free_suggestions (m_dict, suggestions); ++ enchant_dict_free_string_list (m_dict, suggestions); + } + + return pvSugg; +@@ -139,7 +139,7 @@ + + if (word && len) { + UT_UTF8String utf8 (word, len); +- enchant_dict_add_to_personal (m_dict, utf8.utf8_str(), utf8.byteLength()); ++ enchant_dict_add (m_dict, utf8.utf8_str(), utf8.byteLength()); + return true; + } + return false; +@@ -150,7 +150,7 @@ + UT_return_val_if_fail (m_dict, false); + + UT_UTF8String ignore (toCorrect, toCorrectLen); +- return enchant_dict_is_in_session (m_dict, ignore.utf8_str(), ignore.byteLength()) != 0; ++ return enchant_dict_is_added (m_dict, ignore.utf8_str(), ignore.byteLength()) != 0; + } + + void EnchantChecker::ignoreWord (const UT_UCSChar *toCorrect, size_t toCorrectLen) diff --git a/abiword-3.0.6-xp-RealmConnection-add_missing_headers.patch b/abiword-3.0.6-xp-RealmConnection-add_missing_headers.patch new file mode 100644 index 0000000..b5c2944 --- /dev/null +++ b/abiword-3.0.6-xp-RealmConnection-add_missing_headers.patch @@ -0,0 +1,11 @@ +--- AbiWord-3.0.6/plugins/collab/backends/service/xp/RealmConnection.cpp.orig 2025-01-17 21:54:11.651530286 +0100 ++++ AbiWord-3.0.6/plugins/collab/backends/service/xp/RealmConnection.cpp 2025-01-17 21:54:29.734566147 +0100 +@@ -19,6 +19,8 @@ + #include + #include + #include ++#include ++#include + #include "ut_assert.h" + #include "ut_debugmsg.h" + #include "ServiceAccountHandler.h" diff --git a/abiword-extras-2.6.0-build_datadir.patch b/abiword-extras-2.6.0-build_datadir.patch deleted file mode 100644 index 444d6d0..0000000 --- a/abiword-extras-2.6.0-build_datadir.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -Nru abiword-extras-2.6.0.orig/clipart/Makefile.am abiword-extras-2.6.0/clipart/Makefile.am ---- abiword-extras-2.6.0.orig/clipart/Makefile.am 2008-03-18 23:18:48.000000000 +0100 -+++ abiword-extras-2.6.0/clipart/Makefile.am 2008-03-25 02:53:55.000000000 +0100 -@@ -1,5 +1,5 @@ - --clipartdir = $(DESTDIR)/$(ABIWORD_EXTRAS_PKGDATADIR)/clipart -+clipartdir = $(ABIWORD_EXTRAS_PKGDATADIR)/clipart - clipart_DATA = \ - book.png \ - chip.png \ -diff -Nru abiword-extras-2.6.0.orig/dictionary/Makefile.am abiword-extras-2.6.0/dictionary/Makefile.am ---- abiword-extras-2.6.0.orig/dictionary/Makefile.am 2008-03-18 23:18:47.000000000 +0100 -+++ abiword-extras-2.6.0/dictionary/Makefile.am 2008-03-25 02:54:04.000000000 +0100 -@@ -1,5 +1,5 @@ - --dictionarydir = $(DESTDIR)/$(ABIWORD_EXTRAS_PKGDATADIR)/dictionary -+dictionarydir = $(ABIWORD_EXTRAS_PKGDATADIR)/dictionary - - if BIGENDIAN - hash = BigEndian32.american.hash -diff -Nru abiword-extras-2.6.0.orig/templates/Makefile.am abiword-extras-2.6.0/templates/Makefile.am ---- abiword-extras-2.6.0.orig/templates/Makefile.am 2008-03-18 23:18:49.000000000 +0100 -+++ abiword-extras-2.6.0/templates/Makefile.am 2008-03-25 02:54:15.000000000 +0100 -@@ -1,5 +1,5 @@ - --templatesdir = $(DESTDIR)/$(ABIWORD_EXTRAS_PKGDATADIR)/templates -+templatesdir = $(ABIWORD_EXTRAS_PKGDATADIR)/templates - templates_DATA = \ - A4.awt \ - Business-Letter.awt \ diff --git a/abiword.spec b/abiword.spec index f781a67..b7bc95b 100644 --- a/abiword.spec +++ b/abiword.spec @@ -1,28 +1,22 @@ %define majversion %(echo %version | cut -d. -f 1-2) Name: abiword -Version: 3.0.5 -Release: 2mamba +Version: 3.0.6 +Release: 1mamba Summary: A free word processing program Group: Graphical Desktop/Applications/Office Vendor: openmamba Distribution: openmamba Packager: Silvan Calarco -URL: https://www.abisource.com -Source0: https://www.abisource.com/downloads/abiword/%{version}/source/%{name}-%{version}.tar.gz +URL: https://gitlab.gnome.org/World/AbiWord +Source0: https://gitlab.gnome.org/World/AbiWord.git/release-%{version}/AbiWord-%{version}.tar.bz2 Source4: abiword.mime -Patch0: abiword-extras-2.6.0-build_datadir.patch -Patch1: abiword-2.8.6-gcc-4.7.patch -Patch2: abiword-2.8.6-libwpd-0.9.patch -Patch3: abiword-2.8.6-libpng-1.5.patch -Patch4: abiword-2.8.6-no-undefined.patch -Patch5: abiword-3.0.1-link-grammar-5.patch -Patch6: abiword-3.0.1-link-grammar-5-2.patch -Patch7: abiword-3.0.1-link-grammar-5-3.patch -Patch8: abiword-3.0.1-link-grammar-5-4.patch +Patch0: abiword-3.0.6-enchant-2.8.2.patch +Patch1: abiword-3.0.6-xp-RealmConnection-add_missing_headers.patch License: GPL ## AUTOBUILDREQ-BEGIN BuildRequires: clutter-gtk-devel +BuildRequires: evolution-data-server-devel BuildRequires: glibc-devel BuildRequires: libX11-devel BuildRequires: libXcomposite-devel @@ -33,13 +27,10 @@ BuildRequires: libXi-devel BuildRequires: libXrandr-devel BuildRequires: libaiksaurus-devel BuildRequires: libat-spi2-core-devel -BuildRequires: libbrotli-devel -BuildRequires: libbzip2-devel BuildRequires: libcairo-devel BuildRequires: libchamplain-devel BuildRequires: libclutter-devel BuildRequires: libcogl-devel -BuildRequires: libdb53-devel BuildRequires: libdbus-devel BuildRequires: libdbus-glib-devel BuildRequires: libdrm-devel @@ -54,38 +45,30 @@ BuildRequires: libgcrypt-devel BuildRequires: libgdk-pixbuf-devel BuildRequires: libglib-devel BuildRequires: libglvnd-devel -BuildRequires: libgmp-devel +BuildRequires: libgnutls-devel BuildRequires: libgoffice-devel -BuildRequires: libgpg-error-devel -BuildRequires: libgraphite2-devel BuildRequires: libgsf-devel BuildRequires: libgtk3-devel BuildRequires: libharfbuzz-devel BuildRequires: libical-devel -BuildRequires: libidn-devel -BuildRequires: libjpeg-devel +BuildRequires: libjpeg-turbo BuildRequires: libjson-glib-devel BuildRequires: libkrb5-devel BuildRequires: liblink-grammar-devel BuildRequires: libloudmouth-devel BuildRequires: libmesa-devel -BuildRequires: libmhash-devel BuildRequires: libnettle-devel BuildRequires: libnsl-devel -BuildRequires: libopenssl-devel BuildRequires: libpango-devel -BuildRequires: libpcre-devel BuildRequires: libpng-devel BuildRequires: libraptor2-devel BuildRequires: librasqal-devel BuildRequires: librdf-devel BuildRequires: libreadline-devel BuildRequires: librsvg-devel -BuildRequires: librtmp-devel -BuildRequires: libsasl2-devel -BuildRequires: libselinux-devel +BuildRequires: libsoup-devel +BuildRequires: libsoup2-devel BuildRequires: libstdc++6-devel -BuildRequires: libsystemd-devel BuildRequires: libtasn1-devel BuildRequires: libwayland-devel BuildRequires: libwayland-egl-devel @@ -94,7 +77,6 @@ BuildRequires: libwv-devel BuildRequires: libxkbcommon-devel BuildRequires: libxml2-devel BuildRequires: libxslt-devel -BuildRequires: libyajl-devel BuildRequires: libz-devel BuildRequires: telepathy-glib-devel ## AUTOBUILDREQ-END @@ -120,28 +102,28 @@ Requires: %{name} = %{version}-%{release} %description devel AbiWord is a free word processing program similar to Microsoft Word. It is suitable for typing papers, letters, reports, memos, and so forth. - This package provides files needed for development. -%debug_package - %prep -%setup -q %{name}-%{version} +%setup -q -n AbiWord-%{version} #-D -T -autoreconf --force --install +%patch 0 -p1 -b .enchant-2.8.2 +%patch 1 -p1 + +NOCONFIGURE=1 ./autogen.sh %build -#:<< _EOF +#:<< _EOF +export CXXFLAGS="-std=c++14 %{optflags} -DASIO_ENABLE_BOOST" + %configure \ - --with-libxml2 \ - --enable-printing \ - --enable-gnomevfs \ - --enable-gnomeui \ - --enable-libabiword \ - --enable-shared \ - --without-evolution-data-server \ --enable-plugins \ - GRAMMAR_CFLAGS="-DHAVE_LINK_GRAMMAR_51" + --enable-clipart \ + --enable-introspection \ + --enable-templates \ + --enable-shared + +# GRAMMAR_CFLAGS="-DHAVE_LINK_GRAMMAR_51" %make @@ -149,16 +131,9 @@ autoreconf --force --install [ "%{buildroot}" != / ] && rm -rf %{buildroot} %makeinstall -# install the mime files -install -D -m644 %{S:4} \ - %{buildroot}%{_datadir}/mime-info/%{name}.mime - %clean [ "%{buildroot}" != / ] && rm -rf %{buildroot} -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig - %files %defattr(-,root,root) %{_bindir}/* @@ -168,13 +143,13 @@ install -D -m644 %{S:4} \ %{_datadir}/appdata/abiword.appdata.xml %{_datadir}/dbus-1/services/org.freedesktop.Telepathy.Client.AbiCollab.service %{_datadir}/telepathy/clients/AbiCollab.client -%{_datadir}/icons/* -%{_datadir}/mime-info/abiword.mime -#%{_datadir}/mime-info/abiword.keys %{_libdir}/libabiword-%{majversion}.so %{_libdir}/libAiksaurusGtk3--export-dynamic.so %{_libdir}/libAiksaurusGtk3.so +%{_libdir}/girepository-1.0/Abi-3.0.typelib %{_libdir}/abiword-%{majversion}/plugins/*.so +%{_datadir}/icons/hicolor/*/apps/abiword.png +%{_datadir}/icons/hicolor/scalable/apps/abiword.svg %{_mandir}/man1/abiword.1* %files devel @@ -182,11 +157,13 @@ install -D -m644 %{S:4} \ %{_includedir}/abiword-%{majversion}/abiwidget.h %{_includedir}/abiword-%{majversion}/libabiword.h %{_includedir}/abiword-%{majversion}/xap_UnixTableWidget.h -#%{_libdir}/abiword-%{majversion}/plugins/opendocument.a -#%{_libdir}/libabiword-%{majversion}.a +%{_datadir}/gir-1.0/Abi-3.0.gir %{_libdir}/pkgconfig/abiword-%{majversion}.pc %changelog +* Mon Nov 25 2024 Silvan Calarco 3.0.6-1mamba +- update to 3.0.6 + * Mon Sep 04 2023 Silvan Calarco 3.0.5-2mamba - rebuilt with ghostscript 10