summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--editors/abiword/DESCR2
-rw-r--r--editors/abiword/Makefile54
-rw-r--r--editors/abiword/Makefile.common40
-rw-r--r--editors/abiword/PLIST575
-rw-r--r--editors/abiword/buildlink3.mk25
-rw-r--r--editors/abiword/distinfo90
-rw-r--r--editors/abiword/options.mk18
-rw-r--r--editors/abiword/patches/patch-aa279
-rw-r--r--editors/abiword/patches/patch-ac18
-rw-r--r--editors/abiword/patches/patch-ae15
-rw-r--r--editors/abiword/patches/patch-af24
-rw-r--r--editors/abiword/patches/patch-configure.ac14
-rw-r--r--editors/abiword/patches/patch-goffice-bits_goffice_app_goffice-app.h15
-rw-r--r--editors/abiword/patches/patch-plugin-configure.m425
-rw-r--r--editors/abiword/patches/patch-plugins_aiksaurus_Makefile.am16
-rw-r--r--editors/abiword/patches/patch-plugins_aiksaurus_aiksaurusgtk3_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_applix_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_babelfish_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_bmp_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_bmp_xp_ie__impGraphic__BMP.cpp45
-rw-r--r--editors/abiword/patches/patch-plugins_clarisworks_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_collab_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_command_Makefile.am17
-rw-r--r--editors/abiword/patches/patch-plugins_docbook_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_eml_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_epub_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_freetranslation_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_garble_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_garble_xp_abiword-garble-png.cpp15
-rw-r--r--editors/abiword/patches/patch-plugins_gda_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_gdict_Makefile.am18
-rw-r--r--editors/abiword/patches/patch-plugins_gimp_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_gimp_xp_AbiGimp.cpp15
-rw-r--r--editors/abiword/patches/patch-plugins_goffice_Makefile.am24
-rw-r--r--editors/abiword/patches/patch-plugins_google_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_grammar_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_hancom_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_hrtext_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_iscii_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_kword_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_latex_Makefile.am20
-rw-r--r--editors/abiword/patches/patch-plugins_loadbindings_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_mathview_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_mht_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_mif_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_mswrite_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_opendocument_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_openwriter_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_openxml_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_opml_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_ots_Makefile.am13
-rw-r--r--editors/abiword/patches/patch-plugins_paint_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_paint_xp_AbiGeneric.cpp15
-rw-r--r--editors/abiword/patches/patch-plugins_paint_xp_AbiPaint.cpp25
-rw-r--r--editors/abiword/patches/patch-plugins_passepartout_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_pdb_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_pdf_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_presentation_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_psion_Makefile.am18
-rw-r--r--editors/abiword/patches/patch-plugins_rsvg_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_s5_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_sdw_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_t602_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_urldict_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_wikipedia_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_wmf_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_wml_Makefile.am20
-rw-r--r--editors/abiword/patches/patch-plugins_wordperfect_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_wordperfect_xp_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_wordperfect_xp_ie__imp__WordPerfect.cpp653
-rw-r--r--editors/abiword/patches/patch-plugins_wordperfect_xp_ie__imp__WordPerfect.h165
-rw-r--r--editors/abiword/patches/patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.cpp55
-rw-r--r--editors/abiword/patches/patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.h13
-rw-r--r--editors/abiword/patches/patch-plugins_wpg_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-plugins_wpg_xp_ie__impGraphic__WPG.cpp252
-rw-r--r--editors/abiword/patches/patch-plugins_xslfo_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-src_Makefile.am14
-rw-r--r--editors/abiword/patches/patch-src_Makefile.in34
-rw-r--r--editors/abiword/patches/patch-src_af_util_xp_ut__endian.h18
-rw-r--r--editors/abiword/patches/patch-src_af_util_xp_ut__go__file.h14
-rw-r--r--editors/abiword/patches/patch-src_af_util_xp_ut__iconv.cpp (renamed from editors/abiword/patches/patch-ab)6
-rw-r--r--editors/abiword/patches/patch-src_af_util_xp_ut__iconv.h (renamed from editors/abiword/patches/patch-ad)14
-rw-r--r--editors/abiword/patches/patch-src_af_util_xp_ut__mbtowc.cpp31
-rw-r--r--editors/abiword/patches/patch-src_af_util_xp_ut__misc.cpp (renamed from editors/abiword/patches/patch-sa)8
-rw-r--r--editors/abiword/patches/patch-src_text_ptbl_xp_pd__DocumentRDF.cpp32
-rw-r--r--editors/abiword/patches/patch-src_text_ptbl_xp_pd__DocumentRDF.h15
86 files changed, 2566 insertions, 829 deletions
diff --git a/editors/abiword/DESCR b/editors/abiword/DESCR
index 7e49bcadd90..474d9a7f8c3 100644
--- a/editors/abiword/DESCR
+++ b/editors/abiword/DESCR
@@ -1,5 +1,5 @@
AbiWord is an open-source, cross-platform WYSIWYG word processor.
-This version uses GTK+2.
+This version uses GTK+3.
Features include:
- Basic character formatting (bold, underline, italics, etc.)
diff --git a/editors/abiword/Makefile b/editors/abiword/Makefile
index 7031770b32e..3dc21d01143 100644
--- a/editors/abiword/Makefile
+++ b/editors/abiword/Makefile
@@ -1,22 +1,52 @@
-# $NetBSD: Makefile,v 1.154 2015/06/12 10:50:01 wiz Exp $
+# $NetBSD: Makefile,v 1.155 2015/09/13 21:32:12 nros Exp $
-.include "Makefile.common"
-PKGREVISION= 27
+.include "Makefile.common"
+DISTNAME= abiword-${ABIVERSION}
+CATEGORIES= editors
+MASTER_SITES= http://www.abiword.com/downloads/abiword/${PKGVERSION_NOREV}/source/
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://www.abiword.com/
COMMENT= Open Source cross-platform word processor
+LICENSE= gnu-gpl-v2
-# GTK1 version and previous name of the GTK2 version
-CONFLICTS= abiword-personal-[0-9]* abiword2-[0-9]*
+CONFLICTS= abiword-personal-[0-9]* abiword2-[0-9]*
-USE_TOOLS+= perl
-CONFIGURE_ARGS+= --disable-builtin-plugins
+GNU_CONFIGURE= yes
+USE_LIBTOOL= yes
+USE_TOOLS+= autoconf automake gmake pkg-config
+USE_LANGUAGES= c c++
+
+CONFIGURE_ARGS+= --disable-default-plugins #do not build any plugins by default
+CONFIGURE_ARGS+= --enable-spell # (Gtk+ only) include spell checking support
CONFIGURE_ARGS+= --enable-plugins=""
-CONFIGURE_ARGS+= --without-gnomevfs
+# evolution data server can't be found even if buildlinked
+# disable to make usre it's not found somewhere else
+CONFIGURE_ARGS+= --with-evolution-data-server=no
-REPLACE_SH+= ${WRKDIR}/${DISTNAME}/abiword-docs/make-html.sh
-REPLACE_PERL+= user/wp/scripts/abw2html.pl
-.include "../../textproc/enchant/buildlink3.mk"
-.include "../../databases/shared-mime-info/mimedb.mk"
+PKGCONFIG_OVERRIDE+= libabiword.pc.in
+
+pre-configure:
+ cd ${WRKSRC}; \
+ autoreconf --force --install
+
+.include "options.mk"
+
+.include "../../converters/fribidi/buildlink3.mk"
+.include "../../converters/wv/buildlink3.mk"
+.include "../../devel/boost-headers/buildlink3.mk"
+.include "../../devel/glib2/buildlink3.mk"
+.include "../../devel/libltdl/buildlink3.mk"
+.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
+.include "../../graphics/librsvg/buildlink3.mk"
+.include "../../graphics/png/buildlink3.mk"
+.include "../../mk/jpeg.buildlink3.mk"
.include "../../sysutils/desktop-file-utils/desktopdb.mk"
+.include "../../textproc/enchant/buildlink3.mk"
+.include "../../textproc/libxslt/buildlink3.mk"
+.include "../../textproc/redland/buildlink3.mk"
+.include "../../time/libical/buildlink3.mk"
+.include "../../x11/gtk3/buildlink3.mk"
+
.include "../../mk/bsd.pkg.mk"
diff --git a/editors/abiword/Makefile.common b/editors/abiword/Makefile.common
index 9ba63301d19..3ad13f0e345 100644
--- a/editors/abiword/Makefile.common
+++ b/editors/abiword/Makefile.common
@@ -1,39 +1 @@
-# $NetBSD: Makefile.common,v 1.43 2013/07/15 02:02:21 ryoon Exp $
-#
-# used by editors/abiword-plugins/Makefile
-
-# Be sure to update PLIST for editors/abiword-plugins when updating
-ABIVERSION= 2.8.6
-DISTNAME= abiword-${ABIVERSION}
-
-CATEGORIES= editors
-MASTER_SITES= http://www.abisource.com/downloads/abiword/${ABIVERSION}/source/
-
-MAINTAINER?= adam@NetBSD.org
-HOMEPAGE= http://www.abisource.com/
-LICENSE= gnu-gpl-v2
-
-USE_LANGUAGES= c c++
-USE_LIBTOOL= yes
-USE_TOOLS+= gmake msgfmt pkg-config
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS+= --enable-clipart
-CONFIGURE_ARGS+= --enable-templates
-CONFIGURE_ARGS+= --with-gnomevfs
-PKGCONFIG_OVERRIDE+= libabiword.pc.in
-
-DISTINFO_FILE= ${.CURDIR}/../../editors/abiword/distinfo
-PATCHDIR= ${.CURDIR}/../../editors/abiword/patches
-
-.include "../../converters/fribidi/buildlink3.mk"
-.include "../../converters/libiconv/buildlink3.mk"
-.include "../../converters/wv/buildlink3.mk"
-.include "../../devel/libgsf/buildlink3.mk"
-.include "../../devel/popt/buildlink3.mk"
-.include "../../mk/readline.buildlink3.mk"
-.include "../../mk/jpeg.buildlink3.mk"
-.include "../../graphics/librsvg/buildlink3.mk"
-.include "../../graphics/png/buildlink3.mk"
-.include "../../x11/gtk2/buildlink3.mk"
-
-.include "../../mk/pthread.buildlink3.mk"
+ABIVERSION=3.0.1
diff --git a/editors/abiword/PLIST b/editors/abiword/PLIST
index 6ca010c5add..770691b0b91 100644
--- a/editors/abiword/PLIST
+++ b/editors/abiword/PLIST
@@ -1,291 +1,290 @@
-@comment $NetBSD: PLIST,v 1.26 2010/11/26 14:49:49 adam Exp $
+@comment $NetBSD: PLIST,v 1.27 2015/09/13 21:32:12 nros Exp $
bin/abiword
-include/abiword-2.8/abiwidget.h
-include/abiword-2.8/libabiword.h
-include/abiword-2.8/xap_UnixTableWidget.h
-lib/libabiword-2.8.la
-lib/pkgconfig/abiword-2.8.pc
+include/abiword-3.0/abiwidget.h
+include/abiword-3.0/libabiword.h
+include/abiword-3.0/xap_UnixTableWidget.h
+lib/libabiword-3.0.la
+lib/pkgconfig/abiword-3.0.pc
man/man1/abiword.1
-share/abiword-2.8/clipart/book.png
-share/abiword-2.8/clipart/chip.png
-share/abiword-2.8/clipart/fun.png
-share/abiword-2.8/clipart/gear.png
-share/abiword-2.8/clipart/gnomea.png
-share/abiword-2.8/clipart/gnomeb.png
-share/abiword-2.8/clipart/gnomec.png
-share/abiword-2.8/clipart/gnomecorner.png
-share/abiword-2.8/clipart/gnomed.png
-share/abiword-2.8/clipart/gnomedecor1.png
-share/abiword-2.8/clipart/gnomedecor2.png
-share/abiword-2.8/clipart/gnomee.png
-share/abiword-2.8/clipart/gnomeflowers.png
-share/abiword-2.8/clipart/gnomeline.png
-share/abiword-2.8/clipart/idea.png
-share/abiword-2.8/clipart/lamp.png
-share/abiword-2.8/clipart/monitor.png
-share/abiword-2.8/clipart/music1.png
-share/abiword-2.8/clipart/pinceau.png
-share/abiword-2.8/clipart/simca.png
-share/abiword-2.8/clipart/surprise.png
-share/abiword-2.8/clipart/together.png
-share/abiword-2.8/clipart/toolbox.png
-share/abiword-2.8/clipart/tree.png
-share/abiword-2.8/clipart/tux_bordelais.png
-share/abiword-2.8/clipart/weather.png
-share/abiword-2.8/clipart/write.png
-share/abiword-2.8/mime-info/abiword.keys
-share/abiword-2.8/readme.abw
-share/abiword-2.8/readme.txt
-share/abiword-2.8/strings/am-ET.strings
-share/abiword-2.8/strings/ar.strings
-share/abiword-2.8/strings/ast-ES.strings
-share/abiword-2.8/strings/ayc-BO.strings
-share/abiword-2.8/strings/aym-BO.strings
-share/abiword-2.8/strings/be-BY.strings
-share/abiword-2.8/strings/bg-BG.strings
-share/abiword-2.8/strings/br-FR.strings
-share/abiword-2.8/strings/ca-ES.strings
-share/abiword-2.8/strings/cs-CZ.strings
-share/abiword-2.8/strings/cy-GB.strings
-share/abiword-2.8/strings/da-DK.strings
-share/abiword-2.8/strings/de-CH.strings
-share/abiword-2.8/strings/de-DE.strings
-share/abiword-2.8/strings/el-GR.strings
-share/abiword-2.8/strings/en-AU.strings
-share/abiword-2.8/strings/en-CA.strings
-share/abiword-2.8/strings/en-GB.strings
-share/abiword-2.8/strings/en-IE.strings
-share/abiword-2.8/strings/eo.strings
-share/abiword-2.8/strings/es-ES.strings
-share/abiword-2.8/strings/es-MX.strings
-share/abiword-2.8/strings/et.strings
-share/abiword-2.8/strings/eu-ES.strings
-share/abiword-2.8/strings/fi-FI.strings
-share/abiword-2.8/strings/fr-FR.strings
-share/abiword-2.8/strings/ga-IE.strings
-share/abiword-2.8/strings/gl.strings
-share/abiword-2.8/strings/he-IL.strings
-share/abiword-2.8/strings/hr-HR.strings
-share/abiword-2.8/strings/hu-HU.strings
-share/abiword-2.8/strings/id-ID.strings
-share/abiword-2.8/strings/it-IT.strings
-share/abiword-2.8/strings/ja-JP.strings
-share/abiword-2.8/strings/jbo.strings
-share/abiword-2.8/strings/ko.strings
-share/abiword-2.8/strings/ku.strings
-share/abiword-2.8/strings/lt-LT.strings
-share/abiword-2.8/strings/lv-LV.strings
-share/abiword-2.8/strings/mg-MG.strings
-share/abiword-2.8/strings/mh-MH.strings
-share/abiword-2.8/strings/mk-MK.strings
-share/abiword-2.8/strings/ms-MY.strings
-share/abiword-2.8/strings/nb-NO.strings
-share/abiword-2.8/strings/ne-NP.strings
-share/abiword-2.8/strings/nl-NL.strings
-share/abiword-2.8/strings/nn-NO.strings
-share/abiword-2.8/strings/pl-PL.strings
-share/abiword-2.8/strings/pt-BR.strings
-share/abiword-2.8/strings/pt-PT.strings
-share/abiword-2.8/strings/quh-BO.strings
-share/abiword-2.8/strings/qul-BO.strings
-share/abiword-2.8/strings/ro-RO.strings
-share/abiword-2.8/strings/ru-RU.strings
-share/abiword-2.8/strings/sc-IT.strings
-share/abiword-2.8/strings/sk-SK.strings
-share/abiword-2.8/strings/sl-SI.strings
-share/abiword-2.8/strings/sq-AL.strings
-share/abiword-2.8/strings/sr.strings
-share/abiword-2.8/strings/sv-SE.strings
-share/abiword-2.8/strings/ta-IN.strings
-share/abiword-2.8/strings/tr-TR.strings
-share/abiword-2.8/strings/uk-UA.strings
-share/abiword-2.8/strings/ur.strings
-share/abiword-2.8/strings/vi-VN.strings
-share/abiword-2.8/strings/wo-SN.strings
-share/abiword-2.8/strings/yi.strings
-share/abiword-2.8/strings/zh-CN.strings
-share/abiword-2.8/strings/zh-HK.strings
-share/abiword-2.8/strings/zh-TW.strings
-share/abiword-2.8/system.profile
-share/abiword-2.8/system.profile-CP1254
-share/abiword-2.8/system.profile-KOI8-R
-share/abiword-2.8/system.profile-KOI8-U
-share/abiword-2.8/system.profile-KOI8-UB
-share/abiword-2.8/system.profile-am-ET
-share/abiword-2.8/system.profile-ar
-share/abiword-2.8/system.profile-ar-EG
-share/abiword-2.8/system.profile-ar-SA
-share/abiword-2.8/system.profile-bg-BG
-share/abiword-2.8/system.profile-ca-ES
-share/abiword-2.8/system.profile-cs-CZ
-share/abiword-2.8/system.profile-da-DK
-share/abiword-2.8/system.profile-de
-share/abiword-2.8/system.profile-de-AT
-share/abiword-2.8/system.profile-de-CH
-share/abiword-2.8/system.profile-de-DE
-share/abiword-2.8/system.profile-div-MV
-share/abiword-2.8/system.profile-el-GR
-share/abiword-2.8/system.profile-en
-share/abiword-2.8/system.profile-en-AU
-share/abiword-2.8/system.profile-en-CA
-share/abiword-2.8/system.profile-en-GB
-share/abiword-2.8/system.profile-en-IE
-share/abiword-2.8/system.profile-en-NZ
-share/abiword-2.8/system.profile-en-US
-share/abiword-2.8/system.profile-en-ZA
-share/abiword-2.8/system.profile-es
-share/abiword-2.8/system.profile-es-ES
-share/abiword-2.8/system.profile-es-MX
-share/abiword-2.8/system.profile-eu
-share/abiword-2.8/system.profile-eu-ES
-share/abiword-2.8/system.profile-fa-IR
-share/abiword-2.8/system.profile-fi-FI
-share/abiword-2.8/system.profile-fr
-share/abiword-2.8/system.profile-fr-BE
-share/abiword-2.8/system.profile-fr-CA
-share/abiword-2.8/system.profile-fr-CH
-share/abiword-2.8/system.profile-fr-FR
-share/abiword-2.8/system.profile-gl-ES
-share/abiword-2.8/system.profile-he
-share/abiword-2.8/system.profile-he-IL
-share/abiword-2.8/system.profile-hu-HU
-share/abiword-2.8/system.profile-it-IT
-share/abiword-2.8/system.profile-ja-JP
-share/abiword-2.8/system.profile-lt-LT
-share/abiword-2.8/system.profile-nb-NO
-share/abiword-2.8/system.profile-nl-NL
-share/abiword-2.8/system.profile-nn-NO
-share/abiword-2.8/system.profile-pl-PL
-share/abiword-2.8/system.profile-ps
-share/abiword-2.8/system.profile-pt-BR
-share/abiword-2.8/system.profile-pt-PT
-share/abiword-2.8/system.profile-ro
-share/abiword-2.8/system.profile-ro-RO
-share/abiword-2.8/system.profile-ru
-share/abiword-2.8/system.profile-ru-RU
-share/abiword-2.8/system.profile-sk-SK
-share/abiword-2.8/system.profile-sk-SK.CP1250
-share/abiword-2.8/system.profile-sl
-share/abiword-2.8/system.profile-sv
-share/abiword-2.8/system.profile-sv-SE
-share/abiword-2.8/system.profile-syr
-share/abiword-2.8/system.profile-tr
-share/abiword-2.8/system.profile-tr-TR
-share/abiword-2.8/system.profile-tr-TR.CP1254
-share/abiword-2.8/system.profile-uk-UA
-share/abiword-2.8/system.profile-ur-PK
-share/abiword-2.8/system.profile-yi
-share/abiword-2.8/system.profile-zh-CN
-share/abiword-2.8/system.profile-zh-TW
-share/abiword-2.8/templates/A4.awt
-share/abiword-2.8/templates/Business-Letter.awt
-share/abiword-2.8/templates/Business-Report.awt
-share/abiword-2.8/templates/Employee-Directory.awt
-share/abiword-2.8/templates/Fax-Coversheet.awt
-share/abiword-2.8/templates/Friendly-Letter.awt
-share/abiword-2.8/templates/Memo.awt
-share/abiword-2.8/templates/Press-Release.awt
-share/abiword-2.8/templates/Resume.awt
-share/abiword-2.8/templates/Two-Columns.awt
-share/abiword-2.8/templates/US-Letter.awt
-share/abiword-2.8/templates/normal.awt
-share/abiword-2.8/templates/normal.awt-am_ET
-share/abiword-2.8/templates/normal.awt-ar
-share/abiword-2.8/templates/normal.awt-ar_EG
-share/abiword-2.8/templates/normal.awt-ar_SA
-share/abiword-2.8/templates/normal.awt-bg_BG
-share/abiword-2.8/templates/normal.awt-ca_ES
-share/abiword-2.8/templates/normal.awt-cs_CZ
-share/abiword-2.8/templates/normal.awt-da_DK
-share/abiword-2.8/templates/normal.awt-de
-share/abiword-2.8/templates/normal.awt-de_AT
-share/abiword-2.8/templates/normal.awt-de_CH
-share/abiword-2.8/templates/normal.awt-de_DE
-share/abiword-2.8/templates/normal.awt-div_MV
-share/abiword-2.8/templates/normal.awt-el_GR
-share/abiword-2.8/templates/normal.awt-en_AU
-share/abiword-2.8/templates/normal.awt-en_CA
-share/abiword-2.8/templates/normal.awt-en_GB
-share/abiword-2.8/templates/normal.awt-en_IE
-share/abiword-2.8/templates/normal.awt-en_NZ
-share/abiword-2.8/templates/normal.awt-en_ZA
-share/abiword-2.8/templates/normal.awt-es
-share/abiword-2.8/templates/normal.awt-es_AR
-share/abiword-2.8/templates/normal.awt-es_ES
-share/abiword-2.8/templates/normal.awt-es_IR
-share/abiword-2.8/templates/normal.awt-es_MX
-share/abiword-2.8/templates/normal.awt-fa_IR
-share/abiword-2.8/templates/normal.awt-fi_FI
-share/abiword-2.8/templates/normal.awt-fr
-share/abiword-2.8/templates/normal.awt-fr_BE
-share/abiword-2.8/templates/normal.awt-fr_CA
-share/abiword-2.8/templates/normal.awt-fr_CH
-share/abiword-2.8/templates/normal.awt-fr_FR
-share/abiword-2.8/templates/normal.awt-gl_ES
-share/abiword-2.8/templates/normal.awt-he
-share/abiword-2.8/templates/normal.awt-he_IL
-share/abiword-2.8/templates/normal.awt-hu_HU
-share/abiword-2.8/templates/normal.awt-it_IT
-share/abiword-2.8/templates/normal.awt-ja_JP
-share/abiword-2.8/templates/normal.awt-lt_LT
-share/abiword-2.8/templates/normal.awt-nb_NO
-share/abiword-2.8/templates/normal.awt-nl_NL
-share/abiword-2.8/templates/normal.awt-nn_NO
-share/abiword-2.8/templates/normal.awt-pl_PL
-share/abiword-2.8/templates/normal.awt-ps
-share/abiword-2.8/templates/normal.awt-pt_BR
-share/abiword-2.8/templates/normal.awt-pt_PT
-share/abiword-2.8/templates/normal.awt-ro
-share/abiword-2.8/templates/normal.awt-ro_RO
-share/abiword-2.8/templates/normal.awt-ru
-share/abiword-2.8/templates/normal.awt-ru_RU
-share/abiword-2.8/templates/normal.awt-sk_SK
-share/abiword-2.8/templates/normal.awt-sl
-share/abiword-2.8/templates/normal.awt-sv
-share/abiword-2.8/templates/normal.awt-sv_SE
-share/abiword-2.8/templates/normal.awt-syr
-share/abiword-2.8/templates/normal.awt-tr
-share/abiword-2.8/templates/normal.awt-tr_TR
-share/abiword-2.8/templates/normal.awt-uk_UA
-share/abiword-2.8/templates/normal.awt-ur_PK
-share/abiword-2.8/templates/normal.awt-yi
-share/abiword-2.8/templates/normal.awt-zh_CN
-share/abiword-2.8/templates/normal.awt-zh_TW
-share/abiword-2.8/ui/ap_UnixDialog_Annotation.xml
-share/abiword-2.8/ui/ap_UnixDialog_Break.xml
-share/abiword-2.8/ui/ap_UnixDialog_Field.xml
-share/abiword-2.8/ui/ap_UnixDialog_FormatFootnotes.xml
-share/abiword-2.8/ui/ap_UnixDialog_FormatFrame.xml
-share/abiword-2.8/ui/ap_UnixDialog_FormatTOC.xml
-share/abiword-2.8/ui/ap_UnixDialog_FormatTable.xml
-share/abiword-2.8/ui/ap_UnixDialog_Goto.xml
-share/abiword-2.8/ui/ap_UnixDialog_HdrFtr.xml
-share/abiword-2.8/ui/ap_UnixDialog_InsertTable.xml
-share/abiword-2.8/ui/ap_UnixDialog_Insert_DateTime.xml
-share/abiword-2.8/ui/ap_UnixDialog_Latex.xml
-share/abiword-2.8/ui/ap_UnixDialog_MailMerge.xml
-share/abiword-2.8/ui/ap_UnixDialog_MetaData.xml
-share/abiword-2.8/ui/ap_UnixDialog_New.xml
-share/abiword-2.8/ui/ap_UnixDialog_Options.xml
-share/abiword-2.8/ui/ap_UnixDialog_Options_ColorSel.xml
-share/abiword-2.8/ui/ap_UnixDialog_PageNumbers.xml
-share/abiword-2.8/ui/ap_UnixDialog_PageSetup.xml
-share/abiword-2.8/ui/ap_UnixDialog_Replace.xml
-share/abiword-2.8/ui/ap_UnixDialog_Spell.xml
-share/abiword-2.8/ui/ap_UnixDialog_Styles.xml
-share/abiword-2.8/ui/ap_UnixDialog_Stylist.xml
-share/abiword-2.8/ui/ap_UnixDialog_Stylist_modal.xml
-share/abiword-2.8/ui/ap_UnixDialog_Tab.xml
-share/abiword-2.8/ui/ap_UnixDialog_WordCount.xml
-share/abiword-2.8/ui/xap_UnixDlg_DocComparison.xml
-share/abiword-2.8/ui/xap_UnixDlg_Encoding.xml
-share/abiword-2.8/ui/xap_UnixDlg_History.xml
-share/abiword-2.8/ui/xap_UnixDlg_Image.xml
-share/abiword-2.8/ui/xap_UnixDlg_Language.xml
-share/abiword-2.8/ui/xap_UnixDlg_ListDocuments.xml
-share/abiword-2.8/ui/xap_UnixDlg_Password.xml
-share/abiword-2.8/ui/xap_UnixDlg_PluginManager.xml
-share/abiword-2.8/ui/xap_UnixDlg_WindowMore.xml
-share/abiword-2.8/ui/xap_UnixDlg_Zoom.xml
+share/abiword-3.0/mime-info/abiword.keys
+share/abiword-3.0/readme.abw
+share/abiword-3.0/readme.txt
+share/abiword-3.0/strings/ach.strings
+share/abiword-3.0/strings/af-ZA.strings
+share/abiword-3.0/strings/ak.strings
+share/abiword-3.0/strings/am-ET.strings
+share/abiword-3.0/strings/ar.strings
+share/abiword-3.0/strings/ast-ES.strings
+share/abiword-3.0/strings/ayc-BO.strings
+share/abiword-3.0/strings/aym-BO.strings
+share/abiword-3.0/strings/be-BY.strings
+share/abiword-3.0/strings/be@latin.strings
+share/abiword-3.0/strings/bg-BG.strings
+share/abiword-3.0/strings/bm.strings
+share/abiword-3.0/strings/bn.strings
+share/abiword-3.0/strings/br-FR.strings
+share/abiword-3.0/strings/bs.strings
+share/abiword-3.0/strings/ca-ES.strings
+share/abiword-3.0/strings/cgg.strings
+share/abiword-3.0/strings/cs-CZ.strings
+share/abiword-3.0/strings/cy-GB.strings
+share/abiword-3.0/strings/da-DK.strings
+share/abiword-3.0/strings/de-CH.strings
+share/abiword-3.0/strings/de-DE.strings
+share/abiword-3.0/strings/el-GR.strings
+share/abiword-3.0/strings/en-AU.strings
+share/abiword-3.0/strings/en-CA.strings
+share/abiword-3.0/strings/en-GB.strings
+share/abiword-3.0/strings/en-IE.strings
+share/abiword-3.0/strings/eo.strings
+share/abiword-3.0/strings/es-ES.strings
+share/abiword-3.0/strings/es-MX.strings
+share/abiword-3.0/strings/et.strings
+share/abiword-3.0/strings/eu-ES.strings
+share/abiword-3.0/strings/fa-AF.strings
+share/abiword-3.0/strings/ff.strings
+share/abiword-3.0/strings/fi-FI.strings
+share/abiword-3.0/strings/fil.strings
+share/abiword-3.0/strings/fr-FR.strings
+share/abiword-3.0/strings/ga-IE.strings
+share/abiword-3.0/strings/gl.strings
+share/abiword-3.0/strings/he-IL.strings
+share/abiword-3.0/strings/hi.strings
+share/abiword-3.0/strings/hr-HR.strings
+share/abiword-3.0/strings/hu-HU.strings
+share/abiword-3.0/strings/id-ID.strings
+share/abiword-3.0/strings/it-IT.strings
+share/abiword-3.0/strings/ja-JP.strings
+share/abiword-3.0/strings/jbo.strings
+share/abiword-3.0/strings/kk-KZ.strings
+share/abiword-3.0/strings/km.strings
+share/abiword-3.0/strings/ko.strings
+share/abiword-3.0/strings/ku.strings
+share/abiword-3.0/strings/lg.strings
+share/abiword-3.0/strings/lt-LT.strings
+share/abiword-3.0/strings/lv-LV.strings
+share/abiword-3.0/strings/mg-MG.strings
+share/abiword-3.0/strings/mk-MK.strings
+share/abiword-3.0/strings/mnk-SN.strings
+share/abiword-3.0/strings/ms-MY.strings
+share/abiword-3.0/strings/nb-NO.strings
+share/abiword-3.0/strings/ne-NP.strings
+share/abiword-3.0/strings/nl-NL.strings
+share/abiword-3.0/strings/nn-NO.strings
+share/abiword-3.0/strings/pl-PL.strings
+share/abiword-3.0/strings/ps.strings
+share/abiword-3.0/strings/pt-BR.strings
+share/abiword-3.0/strings/pt-PT.strings
+share/abiword-3.0/strings/quh-BO.strings
+share/abiword-3.0/strings/qul-BO.strings
+share/abiword-3.0/strings/quz.strings
+share/abiword-3.0/strings/ro-RO.strings
+share/abiword-3.0/strings/ru-RU.strings
+share/abiword-3.0/strings/sc-IT.strings
+share/abiword-3.0/strings/sk-SK.strings
+share/abiword-3.0/strings/sl-SI.strings
+share/abiword-3.0/strings/son.strings
+share/abiword-3.0/strings/sq-AL.strings
+share/abiword-3.0/strings/sr.strings
+share/abiword-3.0/strings/sr@latin.strings
+share/abiword-3.0/strings/sv-SE.strings
+share/abiword-3.0/strings/sw.strings
+share/abiword-3.0/strings/ta-IN.strings
+share/abiword-3.0/strings/th.strings
+share/abiword-3.0/strings/tr-TR.strings
+share/abiword-3.0/strings/uk-UA.strings
+share/abiword-3.0/strings/vi-VN.strings
+share/abiword-3.0/strings/wo-SN.strings
+share/abiword-3.0/strings/yi.strings
+share/abiword-3.0/strings/zh-CN.strings
+share/abiword-3.0/strings/zh-HK.strings
+share/abiword-3.0/strings/zh-TW.strings
+share/abiword-3.0/strings/zu.strings
+share/abiword-3.0/system.profile
+share/abiword-3.0/system.profile-CP1254
+share/abiword-3.0/system.profile-KOI8-R
+share/abiword-3.0/system.profile-KOI8-U
+share/abiword-3.0/system.profile-KOI8-UB
+share/abiword-3.0/system.profile-am-ET
+share/abiword-3.0/system.profile-ar
+share/abiword-3.0/system.profile-ar-EG
+share/abiword-3.0/system.profile-ar-SA
+share/abiword-3.0/system.profile-bg-BG
+share/abiword-3.0/system.profile-ca-ES
+share/abiword-3.0/system.profile-cs-CZ
+share/abiword-3.0/system.profile-da-DK
+share/abiword-3.0/system.profile-de
+share/abiword-3.0/system.profile-de-AT
+share/abiword-3.0/system.profile-de-CH
+share/abiword-3.0/system.profile-de-DE
+share/abiword-3.0/system.profile-div-MV
+share/abiword-3.0/system.profile-el-GR
+share/abiword-3.0/system.profile-en
+share/abiword-3.0/system.profile-en-AU
+share/abiword-3.0/system.profile-en-CA
+share/abiword-3.0/system.profile-en-GB
+share/abiword-3.0/system.profile-en-IE
+share/abiword-3.0/system.profile-en-NZ
+share/abiword-3.0/system.profile-en-US
+share/abiword-3.0/system.profile-en-ZA
+share/abiword-3.0/system.profile-es
+share/abiword-3.0/system.profile-es-ES
+share/abiword-3.0/system.profile-es-MX
+share/abiword-3.0/system.profile-eu
+share/abiword-3.0/system.profile-eu-ES
+share/abiword-3.0/system.profile-fa-IR
+share/abiword-3.0/system.profile-fi-FI
+share/abiword-3.0/system.profile-fr
+share/abiword-3.0/system.profile-fr-BE
+share/abiword-3.0/system.profile-fr-CA
+share/abiword-3.0/system.profile-fr-CH
+share/abiword-3.0/system.profile-fr-FR
+share/abiword-3.0/system.profile-gl-ES
+share/abiword-3.0/system.profile-he
+share/abiword-3.0/system.profile-he-IL
+share/abiword-3.0/system.profile-hu-HU
+share/abiword-3.0/system.profile-it-IT
+share/abiword-3.0/system.profile-ja-JP
+share/abiword-3.0/system.profile-kk-KZ
+share/abiword-3.0/system.profile-lt-LT
+share/abiword-3.0/system.profile-nb-NO
+share/abiword-3.0/system.profile-nl-NL
+share/abiword-3.0/system.profile-nn-NO
+share/abiword-3.0/system.profile-pl-PL
+share/abiword-3.0/system.profile-ps
+share/abiword-3.0/system.profile-pt-BR
+share/abiword-3.0/system.profile-pt-PT
+share/abiword-3.0/system.profile-ro
+share/abiword-3.0/system.profile-ro-RO
+share/abiword-3.0/system.profile-ru
+share/abiword-3.0/system.profile-ru-RU
+share/abiword-3.0/system.profile-sk-SK
+share/abiword-3.0/system.profile-sk-SK.CP1250
+share/abiword-3.0/system.profile-sl
+share/abiword-3.0/system.profile-sv
+share/abiword-3.0/system.profile-sv-SE
+share/abiword-3.0/system.profile-syr
+share/abiword-3.0/system.profile-tr
+share/abiword-3.0/system.profile-tr-TR
+share/abiword-3.0/system.profile-tr-TR.CP1254
+share/abiword-3.0/system.profile-uk-UA
+share/abiword-3.0/system.profile-ur-PK
+share/abiword-3.0/system.profile-yi
+share/abiword-3.0/system.profile-zh-CN
+share/abiword-3.0/system.profile-zh-TW
+share/abiword-3.0/templates/normal.awt
+share/abiword-3.0/templates/normal.awt-am_ET
+share/abiword-3.0/templates/normal.awt-ar
+share/abiword-3.0/templates/normal.awt-ar_EG
+share/abiword-3.0/templates/normal.awt-ar_SA
+share/abiword-3.0/templates/normal.awt-bg_BG
+share/abiword-3.0/templates/normal.awt-ca_ES
+share/abiword-3.0/templates/normal.awt-cs_CZ
+share/abiword-3.0/templates/normal.awt-da_DK
+share/abiword-3.0/templates/normal.awt-de
+share/abiword-3.0/templates/normal.awt-de_AT
+share/abiword-3.0/templates/normal.awt-de_CH
+share/abiword-3.0/templates/normal.awt-de_DE
+share/abiword-3.0/templates/normal.awt-div_MV
+share/abiword-3.0/templates/normal.awt-el_GR
+share/abiword-3.0/templates/normal.awt-en_AU
+share/abiword-3.0/templates/normal.awt-en_CA
+share/abiword-3.0/templates/normal.awt-en_GB
+share/abiword-3.0/templates/normal.awt-en_IE
+share/abiword-3.0/templates/normal.awt-en_NZ
+share/abiword-3.0/templates/normal.awt-en_ZA
+share/abiword-3.0/templates/normal.awt-es
+share/abiword-3.0/templates/normal.awt-es_AR
+share/abiword-3.0/templates/normal.awt-es_ES
+share/abiword-3.0/templates/normal.awt-es_IR
+share/abiword-3.0/templates/normal.awt-es_MX
+share/abiword-3.0/templates/normal.awt-fa_IR
+share/abiword-3.0/templates/normal.awt-fi_FI
+share/abiword-3.0/templates/normal.awt-fr
+share/abiword-3.0/templates/normal.awt-fr_BE
+share/abiword-3.0/templates/normal.awt-fr_CA
+share/abiword-3.0/templates/normal.awt-fr_CH
+share/abiword-3.0/templates/normal.awt-fr_FR
+share/abiword-3.0/templates/normal.awt-gl_ES
+share/abiword-3.0/templates/normal.awt-he
+share/abiword-3.0/templates/normal.awt-he_IL
+share/abiword-3.0/templates/normal.awt-hu_HU
+share/abiword-3.0/templates/normal.awt-it_IT
+share/abiword-3.0/templates/normal.awt-ja_JP
+share/abiword-3.0/templates/normal.awt-kk_KZ
+share/abiword-3.0/templates/normal.awt-km_KH
+share/abiword-3.0/templates/normal.awt-lt_LT
+share/abiword-3.0/templates/normal.awt-nb_NO
+share/abiword-3.0/templates/normal.awt-nl_NL
+share/abiword-3.0/templates/normal.awt-nn_NO
+share/abiword-3.0/templates/normal.awt-pl_PL
+share/abiword-3.0/templates/normal.awt-ps
+share/abiword-3.0/templates/normal.awt-pt_BR
+share/abiword-3.0/templates/normal.awt-pt_PT
+share/abiword-3.0/templates/normal.awt-ro
+share/abiword-3.0/templates/normal.awt-ro_RO
+share/abiword-3.0/templates/normal.awt-ru
+share/abiword-3.0/templates/normal.awt-ru_RU
+share/abiword-3.0/templates/normal.awt-sk_SK
+share/abiword-3.0/templates/normal.awt-sl
+share/abiword-3.0/templates/normal.awt-sv
+share/abiword-3.0/templates/normal.awt-sv_SE
+share/abiword-3.0/templates/normal.awt-syr
+share/abiword-3.0/templates/normal.awt-tr
+share/abiword-3.0/templates/normal.awt-tr_TR
+share/abiword-3.0/templates/normal.awt-uk_UA
+share/abiword-3.0/templates/normal.awt-ur_PK
+share/abiword-3.0/templates/normal.awt-yi
+share/abiword-3.0/templates/normal.awt-zh_CN
+share/abiword-3.0/templates/normal.awt-zh_TW
+share/abiword-3.0/ui/ap_UnixDialog_Annotation.ui
+share/abiword-3.0/ui/ap_UnixDialog_Border_Shading.ui
+share/abiword-3.0/ui/ap_UnixDialog_Break.ui
+share/abiword-3.0/ui/ap_UnixDialog_Field.ui
+share/abiword-3.0/ui/ap_UnixDialog_FormatFootnotes.ui
+share/abiword-3.0/ui/ap_UnixDialog_FormatFrame.ui
+share/abiword-3.0/ui/ap_UnixDialog_FormatTOC.ui
+share/abiword-3.0/ui/ap_UnixDialog_FormatTable.ui
+share/abiword-3.0/ui/ap_UnixDialog_Goto.ui
+share/abiword-3.0/ui/ap_UnixDialog_HdrFtr.ui
+share/abiword-3.0/ui/ap_UnixDialog_InsertTable.ui
+share/abiword-3.0/ui/ap_UnixDialog_Insert_DateTime.ui
+share/abiword-3.0/ui/ap_UnixDialog_Latex.ui
+share/abiword-3.0/ui/ap_UnixDialog_MailMerge.ui
+share/abiword-3.0/ui/ap_UnixDialog_MetaData.ui
+share/abiword-3.0/ui/ap_UnixDialog_New.ui
+share/abiword-3.0/ui/ap_UnixDialog_Options.ui
+share/abiword-3.0/ui/ap_UnixDialog_Options_ColorSel.ui
+share/abiword-3.0/ui/ap_UnixDialog_PageNumbers.ui
+share/abiword-3.0/ui/ap_UnixDialog_PageSetup.ui
+share/abiword-3.0/ui/ap_UnixDialog_RDFEditor.ui
+share/abiword-3.0/ui/ap_UnixDialog_RDFQuery.ui
+share/abiword-3.0/ui/ap_UnixDialog_Replace.ui
+share/abiword-3.0/ui/ap_UnixDialog_SemanticStylesheets.ui
+share/abiword-3.0/ui/ap_UnixDialog_Spell.ui
+share/abiword-3.0/ui/ap_UnixDialog_Styles.ui
+share/abiword-3.0/ui/ap_UnixDialog_Stylist.ui
+share/abiword-3.0/ui/ap_UnixDialog_Tab.ui
+share/abiword-3.0/ui/ap_UnixDialog_WordCount.ui
+share/abiword-3.0/ui/pd_RDFContact.ui
+share/abiword-3.0/ui/pd_RDFEvent.ui
+share/abiword-3.0/ui/pd_RDFInsertReference.ui
+share/abiword-3.0/ui/pd_RDFLocation.ui
+share/abiword-3.0/ui/xap_UnixDlg_DocComparison.ui
+share/abiword-3.0/ui/xap_UnixDlg_Encoding.ui
+share/abiword-3.0/ui/xap_UnixDlg_History.ui
+share/abiword-3.0/ui/xap_UnixDlg_Image.ui
+share/abiword-3.0/ui/xap_UnixDlg_Language.ui
+share/abiword-3.0/ui/xap_UnixDlg_ListDocuments.ui
+share/abiword-3.0/ui/xap_UnixDlg_Password.ui
+share/abiword-3.0/ui/xap_UnixDlg_PluginManager.ui
+share/abiword-3.0/ui/xap_UnixDlg_WindowMore.ui
+share/abiword-3.0/ui/xap_UnixDlg_Zoom.ui
share/applications/abiword.desktop
-share/icons/abiword_48.png
+share/icons/hicolor/16x16/apps/abiword.png
+share/icons/hicolor/22x22/apps/abiword.png
+share/icons/hicolor/256x256/apps/abiword.png
+share/icons/hicolor/32x32/apps/abiword.png
+share/icons/hicolor/48x48/apps/abiword.png
+share/icons/hicolor/512x512/apps/abiword.png
+share/icons/hicolor/scalable/apps/abiword.svg
diff --git a/editors/abiword/buildlink3.mk b/editors/abiword/buildlink3.mk
new file mode 100644
index 00000000000..a4fc00b0847
--- /dev/null
+++ b/editors/abiword/buildlink3.mk
@@ -0,0 +1,25 @@
+# $NetBSD: buildlink3.mk,v 1.1 2015/09/13 21:32:12 nros Exp $
+
+BUILDLINK_TREE+= abiword
+
+.if !defined(ABIWORD_BUILDLINK3_MK)
+ABIWORD_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.abiword+= abiword>=3.0.1
+BUILDLINK_PKGSRCDIR.abiword?= ../../editors/abiword
+
+.include "../../converters/fribidi/buildlink3.mk"
+.include "../../converters/wv/buildlink3.mk"
+.include "../../devel/boost-headers/buildlink3.mk"
+.include "../../devel/glib2/buildlink3.mk"
+.include "../../graphics/librsvg/buildlink3.mk"
+.include "../../graphics/png/buildlink3.mk"
+.include "../../mk/jpeg.buildlink3.mk"
+.include "../../textproc/enchant/buildlink3.mk"
+.include "../../textproc/libxslt/buildlink3.mk"
+.include "../../textproc/redland/buildlink3.mk"
+.include "../../time/libical/buildlink3.mk"
+.include "../../x11/gtk3/buildlink3.mk"
+.endif # ABIWORD_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -abiword
diff --git a/editors/abiword/distinfo b/editors/abiword/distinfo
index e17754bb0a3..ad7868a03b8 100644
--- a/editors/abiword/distinfo
+++ b/editors/abiword/distinfo
@@ -1,17 +1,75 @@
-$NetBSD: distinfo,v 1.64 2012/10/09 19:57:02 marino Exp $
+$NetBSD: distinfo,v 1.65 2015/09/13 21:32:13 nros Exp $
-SHA1 (abiword-2.8.6.tar.gz) = 998f69d038000b3fc027d4259548f02d67c8d0df
-RMD160 (abiword-2.8.6.tar.gz) = caabab25d197f9553ea12376de36fc7f5a771a58
-Size (abiword-2.8.6.tar.gz) = 9218827 bytes
-SHA1 (patch-aa) = dea737eb09e271f99e2b50f5ffc3037a68116451
-SHA1 (patch-ab) = fa589d531c08bf293eeeaa9a775015e27eaf6da4
-SHA1 (patch-ac) = a82fd781195e9ff52dbc33258fd4774cd23fe5c9
-SHA1 (patch-ad) = 48ff4fcce593f9996e90cce718b2f774b271d5a3
-SHA1 (patch-ae) = ec3bb0a00100fea97f46b3a25440d7a4e46e30eb
-SHA1 (patch-af) = fc6927eb963c4be956825d1656e8957b358ed1ad
-SHA1 (patch-goffice-bits_goffice_app_goffice-app.h) = 894647ea5d2176db1793673befe703f5be603278
-SHA1 (patch-plugins_bmp_xp_ie__impGraphic__BMP.cpp) = 65852f6f934c9fdf2aa9bf02d0a2ad66b5c2db09
-SHA1 (patch-plugins_garble_xp_abiword-garble-png.cpp) = c9b4b7030fa038da9ba37b5489d8d8571a0e6c77
-SHA1 (patch-sa) = 29ee7e9891b11773217ec73bbda01e2591e78b56
-SHA1 (patch-src_Makefile.in) = cbc7d5e042421b92aa2b1004b2a7d6ca8ea5346d
-SHA1 (patch-src_af_util_xp_ut__go__file.h) = 07a9d580ca9f6b5c1e8814d182d9f56d3f3a7e72
+SHA1 (abiword-3.0.1.tar.gz) = 7badf9663564a144e16764a456cadda18df70991
+RMD160 (abiword-3.0.1.tar.gz) = 05d92a7304e4e419776970d7b35065ceb59f7681
+Size (abiword-3.0.1.tar.gz) = 11144990 bytes
+SHA1 (patch-configure.ac) = bbffa133509affe43fdef7e420e3a96a14edf58f
+SHA1 (patch-plugin-configure.m4) = a8b8db3bdbd69339e32eefec1de7b1b59467db40
+SHA1 (patch-plugins_aiksaurus_Makefile.am) = e859a0af2b436616b1dae45f3be8593cf917c87d
+SHA1 (patch-plugins_aiksaurus_aiksaurusgtk3_Makefile.am) = 2790a45fa4590f8f5ac27ec6e1b0e9eacc5c7c6e
+SHA1 (patch-plugins_applix_Makefile.am) = d579e6620189bcdd5cb9286edb77936893d66727
+SHA1 (patch-plugins_babelfish_Makefile.am) = 9a14d52b882824a344e4189b210ea05f15cd5dc4
+SHA1 (patch-plugins_bmp_Makefile.am) = 9919326323259fdb717f1cc1b63be7b5fecb4d85
+SHA1 (patch-plugins_clarisworks_Makefile.am) = 20b149e4ccba72e54421e59f62cee8823737af5d
+SHA1 (patch-plugins_collab_Makefile.am) = 268b976c687e300326f1af9933cea7c060ecef90
+SHA1 (patch-plugins_command_Makefile.am) = 42bf4af0905f83faf21ceabfbf20756c39d9d268
+SHA1 (patch-plugins_docbook_Makefile.am) = 73ef7476c0eae93a79ffd1571081b545a7cf5f0b
+SHA1 (patch-plugins_eml_Makefile.am) = 23bccc8e3aa62275f441635675a2a34f53c5d118
+SHA1 (patch-plugins_epub_Makefile.am) = 0d4f2bca4e2a40d3f0c34f1c5b37284190979d48
+SHA1 (patch-plugins_freetranslation_Makefile.am) = f494b16bdd2d8cb484bec09a61c6e3e0d8f78b44
+SHA1 (patch-plugins_garble_Makefile.am) = b6c3f68a390c0b4a4e5e5d626a7532f4542b5e9f
+SHA1 (patch-plugins_gda_Makefile.am) = 73a112eb3118c6769bef00c5f4c3ad50a735b54a
+SHA1 (patch-plugins_gdict_Makefile.am) = 16e6fc9134bf96e8b924c8ef5f6f57988531684b
+SHA1 (patch-plugins_gimp_Makefile.am) = 0c284afb8e168dff87da0d4ae70936c8759b8cb5
+SHA1 (patch-plugins_gimp_xp_AbiGimp.cpp) = 15692cf15fd4099e7ad4ad854b6b57b103717269
+SHA1 (patch-plugins_goffice_Makefile.am) = 935af789858b3fbf3b928837acca024a1415bf86
+SHA1 (patch-plugins_google_Makefile.am) = ae883071f847b641ded349e5cb2ac3c126942d8d
+SHA1 (patch-plugins_grammar_Makefile.am) = 0c651d09ae690a22ce70f93fd091ceabb18a44d0
+SHA1 (patch-plugins_hancom_Makefile.am) = 93e6b69160438a254a6c68b81a6385456d328999
+SHA1 (patch-plugins_hrtext_Makefile.am) = 439ecd0ac09b147c5a789bfb498e5da866d0cb59
+SHA1 (patch-plugins_iscii_Makefile.am) = ff740a1d6e308658d18c0102a67fa8c3f32cf95b
+SHA1 (patch-plugins_kword_Makefile.am) = bac30878f5eb8a3d7d037f13bdef81308c5a3e17
+SHA1 (patch-plugins_latex_Makefile.am) = 196edb99bcbc3040ec665bf422472558684c5fe5
+SHA1 (patch-plugins_loadbindings_Makefile.am) = e689adf52c0786f648435e259da3410a98036887
+SHA1 (patch-plugins_mathview_Makefile.am) = 8a779c043b3b9b483ec072e2780240e1ec6f575a
+SHA1 (patch-plugins_mht_Makefile.am) = a302d8af3cbcaa246b1d61cf90adb2276a95d502
+SHA1 (patch-plugins_mif_Makefile.am) = 9dbd23cee5d1f5d56058eb95cf3f247766972110
+SHA1 (patch-plugins_mswrite_Makefile.am) = bd0d7546d07500ce74828e0414ee14278c49a396
+SHA1 (patch-plugins_opendocument_Makefile.am) = db01004db8480509f9c6060f82b7095bfe0b4715
+SHA1 (patch-plugins_openwriter_Makefile.am) = 40fc8135faa71918f02420ba5d527f74bc4e7999
+SHA1 (patch-plugins_openxml_Makefile.am) = 1eb9cf1df2fdd9e707e26412089b08f45ae59581
+SHA1 (patch-plugins_opml_Makefile.am) = 94fe9afb9d8145f36d50abec8c956cc295a6ff4d
+SHA1 (patch-plugins_ots_Makefile.am) = a674a0b2a222ba8d2acc8de002bf6d618c206573
+SHA1 (patch-plugins_paint_Makefile.am) = bbae6fdc2cfa162ccd2dd87178759997c6e7b71b
+SHA1 (patch-plugins_paint_xp_AbiGeneric.cpp) = 0c29c7ddf0dbd55d4bb6ab90311e40f2cff7130b
+SHA1 (patch-plugins_paint_xp_AbiPaint.cpp) = bf1ea7eb25fb384014523554f7ca55e6507bcbe6
+SHA1 (patch-plugins_passepartout_Makefile.am) = c048ef9cdfab149394a6ecb02f7d5faf027c89ed
+SHA1 (patch-plugins_pdb_Makefile.am) = a01b5ed0ee10d3f72cf6fa2d20b96628844c8217
+SHA1 (patch-plugins_pdf_Makefile.am) = 68fd361019ab4f2a3bd9bc0ea9e5b2d697e13e45
+SHA1 (patch-plugins_presentation_Makefile.am) = 463c2bd628d4cdad9cee89ae1c10c56b0343366d
+SHA1 (patch-plugins_psion_Makefile.am) = 1f8836ea23aa38ad6716461fa4f0c6db1ec6eba0
+SHA1 (patch-plugins_rsvg_Makefile.am) = f844ee15921547e769da8dd5acfb64b57958b33f
+SHA1 (patch-plugins_s5_Makefile.am) = 4cf5ee72bd6878c5e3801141023c1e0ec5ec9002
+SHA1 (patch-plugins_sdw_Makefile.am) = b9a756c639225e7d57543f83d6db6e93be3d411e
+SHA1 (patch-plugins_t602_Makefile.am) = a4714fcefe149b874832683688a7537dcb04ae9f
+SHA1 (patch-plugins_urldict_Makefile.am) = 7cfb2775dd67cce045e31a01b79e4cb04887f7d5
+SHA1 (patch-plugins_wikipedia_Makefile.am) = 57e65f04b202f475c586d399a8c128f51d594630
+SHA1 (patch-plugins_wmf_Makefile.am) = 00bf982683d1d6c122b62a1df1bc241f6e276c4d
+SHA1 (patch-plugins_wml_Makefile.am) = 6c05337b5619864dde5a2100e1859684333fed47
+SHA1 (patch-plugins_wordperfect_Makefile.am) = d08d7d21ed8106bcbe77cc42ffca13d7ad18d3ac
+SHA1 (patch-plugins_wordperfect_xp_Makefile.am) = e5cba76cfdba5caca672b801fa222b277a7522c1
+SHA1 (patch-plugins_wordperfect_xp_ie__imp__WordPerfect.cpp) = 10a6d88e21f98e743b4443a09cd73ab8b7812fc9
+SHA1 (patch-plugins_wordperfect_xp_ie__imp__WordPerfect.h) = 6e1e264506edabf0e1cb359f664ed455d16fa05e
+SHA1 (patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.cpp) = c87bc227eebcfcc2ab11ee6b5237ef8fcc47c0bc
+SHA1 (patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.h) = 0a75276dc0d1d99b97155f61d9f98de7126fb0a3
+SHA1 (patch-plugins_wpg_Makefile.am) = a96fafec05866fb7c3480c8d2a041b970ad8e988
+SHA1 (patch-plugins_wpg_xp_ie__impGraphic__WPG.cpp) = 36d7ca7855ddc504701e392c28e3d8530f78b81e
+SHA1 (patch-plugins_xslfo_Makefile.am) = cceef8d780dc63c1253544f21bd123dac19eba0b
+SHA1 (patch-src_Makefile.am) = b2b898470b842e5bfa45e2b3b653ca9b51714b73
+SHA1 (patch-src_af_util_xp_ut__endian.h) = e73aef0db6ddef0316cca3f7a77fd4c71c870637
+SHA1 (patch-src_af_util_xp_ut__iconv.cpp) = 613f162d4db0ba9520e0481a98564e59ccd862d4
+SHA1 (patch-src_af_util_xp_ut__iconv.h) = bbcfa2098ea77d393feb50d69de9ae29fcce302f
+SHA1 (patch-src_af_util_xp_ut__mbtowc.cpp) = 01f6793651533e7e39f665e5c15e6c12e1c7b96d
+SHA1 (patch-src_af_util_xp_ut__misc.cpp) = f552ecbb87490355d8e74218dd59fd3961f1af5d
+SHA1 (patch-src_text_ptbl_xp_pd__DocumentRDF.cpp) = d07eaf64446efc83c24e02e5969e0921451269a8
+SHA1 (patch-src_text_ptbl_xp_pd__DocumentRDF.h) = 59837727c060bc8f8f14478c3a0245b877c2d29a
diff --git a/editors/abiword/options.mk b/editors/abiword/options.mk
new file mode 100644
index 00000000000..4fb29c4a079
--- /dev/null
+++ b/editors/abiword/options.mk
@@ -0,0 +1,18 @@
+# $NetBSD: options.mk,v 1.1 2015/09/13 21:32:13 nros Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.abiword
+PKG_SUPPORTED_OPTIONS= debug
+.include "../../mk/bsd.options.mk"
+
+#
+# Enable debugging funcionality
+# more verbose terminal output
+#
+.if !empty(PKG_OPTIONS:Mdebug)
+CC+= -ggdb
+CXX+= -ggdb
+CONFIGURE_ARGS+= --enable-debug
+INSTALL_UNSTRIPPED= yes
+CFLAGS+= -O0
+.endif
+
diff --git a/editors/abiword/patches/patch-aa b/editors/abiword/patches/patch-aa
deleted file mode 100644
index 1b641be6512..00000000000
--- a/editors/abiword/patches/patch-aa
+++ /dev/null
@@ -1,279 +0,0 @@
-$NetBSD: patch-aa,v 1.12 2010/11/26 14:49:50 adam Exp $
-
---- configure.orig 2010-06-13 21:17:37.000000000 +0000
-+++ configure
-@@ -17074,7 +17074,7 @@ fi
-
- # maybe just switch on TOOLKIT instead of the fancy TARGET defines
- # also for embedded, e.g. hildon would set TOOLKIT_GTK and TOOLKIT_HILDON
-- if test "$TOOLKIT" == "cocoa"; then
-+ if test "$TOOLKIT" = "cocoa"; then
- TOOLKIT_COCOA_TRUE=
- TOOLKIT_COCOA_FALSE='#'
- else
-@@ -17082,7 +17082,7 @@ else
- TOOLKIT_COCOA_FALSE=
- fi
-
-- if test "$TOOLKIT" == "gtk"; then
-+ if test "$TOOLKIT" = "gtk"; then
- TOOLKIT_GTK_TRUE=
- TOOLKIT_GTK_FALSE='#'
- else
-@@ -17090,7 +17090,7 @@ else
- TOOLKIT_GTK_FALSE=
- fi
-
-- if test "$TOOLKIT" == "win"; then
-+ if test "$TOOLKIT" = "win"; then
- TOOLKIT_WIN_TRUE=
- TOOLKIT_WIN_FALSE='#'
- else
-@@ -17099,15 +17099,15 @@ else
- fi
-
-
--if test "$enable_dynamic" == ""; then
-+if test "$enable_dynamic" = ""; then
- enable_dynamic="no"
- fi
-
--if test "$enable_static" == ""; then
-+if test "$enable_static" = ""; then
- enable_static="no"
- fi
-
--if test "$TOOLKIT" == "win"; then
-+if test "$TOOLKIT" = "win"; then
-
- $as_echo "#define TOOLKIT_WIN 1" >>confdefs.h
-
-@@ -17120,7 +17120,7 @@ $as_echo "#define _WIN32_WINNT 0x0500" >
- # override static/dynamic, on win32 only static is possible
- enable_dynamic="no"
- enable_static="yes"
--elif test "$TOOLKIT" == "cocoa"; then
-+elif test "$TOOLKIT" = "cocoa"; then
-
- $as_echo "#define TOOLKIT_COCOA 1" >>confdefs.h
-
-@@ -17132,7 +17132,7 @@ else
- $as_echo "#define TOOLKIT_GTK 1" >>confdefs.h
-
- fi
-- if test "$enable_dynamic" == "yes"; then
-+ if test "$enable_dynamic" = "yes"; then
- ENABLE_DYNAMIC_TRUE=
- ENABLE_DYNAMIC_FALSE='#'
- else
-@@ -17140,7 +17140,7 @@ else
- ENABLE_DYNAMIC_FALSE=
- fi
-
-- if test "$enable_static" == "yes"; then
-+ if test "$enable_static" = "yes"; then
- ENABLE_STATIC_TRUE=
- ENABLE_STATIC_FALSE='#'
- else
-@@ -17239,33 +17239,33 @@ $as_echo "yes" >&6; }
-
- fi
- PLUGIN_CFLAGS="$PLUGIN_CFLAGS "'${WP_CPPFLAGS} -DABI_DLL'
--if test "$TOOLKIT" == "gtk" &&
-- test "$enable_dynamic" == "yes"; then
-+if test "$TOOLKIT" = "gtk" &&
-+ test "$enable_dynamic" = "yes"; then
- # link plugins to work around gcc visibility issue with
- # derived classes in dlopened modules
- PLUGIN_LIBS="$PLUGIN_LIBS "'-L${top_builddir}/src'" -labiword-$ABIWORD_SERIES"
--elif test "$TOOLKIT" == "win"; then
-+elif test "$TOOLKIT" = "win"; then
- PLUGIN_CFLAGS="$PLUGIN_CFLAGS "'-D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0500'
- # link plugins to the executable so they can be loaded
- PLUGIN_LIBS="$PLUGIN_LIBS "'-L${top_builddir}/src -labiword'
--elif test "$TOOLKIT" == "cocoa" ; then
-+elif test "$TOOLKIT" = "cocoa" ; then
- PLUGIN_LIBS="$PLUGIN_LIBS "'-L${top_builddir}/src'" -labiword-$ABIWORD_SERIES"
- fi
-
-
-
--if test "$abi_cv_disable_exports" == "yes"; then
-+if test "$abi_cv_disable_exports" = "yes"; then
-
- $as_echo "#define DISABLE_EXPORTS 1" >>confdefs.h
-
- fi
-
--if test "$abi_cv_menubutton" == "yes"; then
-+if test "$abi_cv_menubutton" = "yes"; then
-
- $as_echo "#define ENABLE_MENUBUTTON 1" >>confdefs.h
-
- fi
-- if test "$abi_cv_menubutton" == "yes"; then
-+ if test "$abi_cv_menubutton" = "yes"; then
- ENABLE_MENUBUTTON_TRUE=
- ENABLE_MENUBUTTON_FALSE='#'
- else
-@@ -17274,12 +17274,12 @@ else
- fi
-
-
--if test "$abi_cv_print" == "yes"; then
-+if test "$abi_cv_print" = "yes"; then
-
- $as_echo "#define ENABLE_PRINT 1" >>confdefs.h
-
- fi
-- if test "$abi_cv_print" == "yes"; then
-+ if test "$abi_cv_print" = "yes"; then
- ENABLE_PRINT_TRUE=
- ENABLE_PRINT_FALSE='#'
- else
-@@ -17288,7 +17288,7 @@ else
- fi
-
-
--if test "$abi_cv_spell" == "yes"; then
-+if test "$abi_cv_spell" = "yes"; then
-
- $as_echo "#define ENABLE_SPELL 1" >>confdefs.h
-
-@@ -17297,7 +17297,7 @@ $as_echo "#define ENABLE_SPELL 1" >>conf
- $as_echo "#define WITH_ENCHANT 1" >>confdefs.h
-
- fi
-- if test "$abi_cv_spell" == "yes"; then
-+ if test "$abi_cv_spell" = "yes"; then
- ENABLE_SPELL_TRUE=
- ENABLE_SPELL_FALSE='#'
- else
-@@ -17306,12 +17306,12 @@ else
- fi
-
-
--if test "$abi_cv_statusbar" == "yes"; then
-+if test "$abi_cv_statusbar" = "yes"; then
-
- $as_echo "#define ENABLE_STATUSBAR 1" >>confdefs.h
-
- fi
-- if test "$abi_cv_statusbar" == "yes"; then
-+ if test "$abi_cv_statusbar" = "yes"; then
- ENABLE_STATUSBAR_TRUE=
- ENABLE_STATUSBAR_FALSE='#'
- else
-@@ -17327,7 +17327,7 @@ cat >>confdefs.h <<_ACEOF
- _ACEOF
-
- fi
-- if test "$abi_cv_embedded_target" == "EMBEDDED_TARGET_HILDON"; then
-+ if test "$abi_cv_embedded_target" = "EMBEDDED_TARGET_HILDON"; then
- EMBEDDED_HILDON_TRUE=
- EMBEDDED_HILDON_FALSE='#'
- else
-@@ -17336,12 +17336,12 @@ else
- fi
-
-
--if test "$abi_cv_emacs_keybinding" == "yes"; then
-+if test "$abi_cv_emacs_keybinding" = "yes"; then
-
- $as_echo "#define ENABLE_EMACS_KEYBINDING 1" >>confdefs.h
-
- fi
-- if test "$abi_cv_emacs_keybinding" == "yes"; then
-+ if test "$abi_cv_emacs_keybinding" = "yes"; then
- ENABLE_EMACS_KEYBINDING_TRUE=
- ENABLE_EMACS_KEYBINDING_FALSE='#'
- else
-@@ -17350,12 +17350,12 @@ else
- fi
-
-
--if test "$abi_cv_vi_keybinding" == "yes"; then
-+if test "$abi_cv_vi_keybinding" = "yes"; then
-
- $as_echo "#define ENABLE_VI_KEYBINDING 1" >>confdefs.h
-
- fi
-- if test "$abi_cv_vi_keybinding" == "yes"; then
-+ if test "$abi_cv_vi_keybinding" = "yes"; then
- ENABLE_VI_KEYBINDING_TRUE=
- ENABLE_VI_KEYBINDING_FALSE='#'
- else
-@@ -17364,7 +17364,7 @@ else
- fi
-
-
-- if test "$abi_cv_clipart" == "yes"; then
-+ if test "$abi_cv_clipart" = "yes"; then
- ENABLE_CLIPART_TRUE=
- ENABLE_CLIPART_FALSE='#'
- else
-@@ -17372,7 +17372,7 @@ else
- ENABLE_CLIPART_FALSE=
- fi
-
-- if test "$abi_cv_templates" == "yes"; then
-+ if test "$abi_cv_templates" = "yes"; then
- ENABLE_TEMPLATES_TRUE=
- ENABLE_TEMPLATES_FALSE='#'
- else
-@@ -17381,7 +17381,7 @@ else
- fi
-
-
--if test "$abi_cv_debug" == "yes"; then
-+if test "$abi_cv_debug" = "yes"; then
-
- $as_echo "#define DEBUG 1" >>confdefs.h
-
-@@ -17390,7 +17390,7 @@ else
- $as_echo "#define NDEBUG 1" >>confdefs.h
-
- fi
-- if test "$abi_cv_debug" == "yes"; then
-+ if test "$abi_cv_debug" = "yes"; then
- DEBUG_TRUE=
- DEBUG_FALSE='#'
- else
-@@ -17403,24 +17403,24 @@ fi
- # Optional dependencies handling
- #
-
--if test "$abi_cv_gnomevfs" == "yes"; then
-+if test "$abi_cv_gnomevfs" = "yes"; then
-
- $as_echo "#define WITH_GNOMEVFS 1" >>confdefs.h
-
- fi
-
--if test "$abi_cv_gio" == "yes"; then
-+if test "$abi_cv_gio" = "yes"; then
-
- $as_echo "#define WITH_GIO 1" >>confdefs.h
-
- fi
-
--if test "$abi_cv_goffice" == "yes"; then
-+if test "$abi_cv_goffice" = "yes"; then
-
- $as_echo "#define WITH_GOFFICE 1" >>confdefs.h
-
- fi
-- if test "$TOOLKIT" == "gtk" && test "$abi_cv_goffice" != "yes"; then
-+ if test "$TOOLKIT" = "gtk" && test "$abi_cv_goffice" != "yes"; then
- WITH_GOFFICE_BUILTIN_TRUE=
- WITH_GOFFICE_BUILTIN_FALSE='#'
- else
-@@ -17447,7 +17447,7 @@ if test "$abi_cv_plugins" = "auto"; then
- eval $(echo "enable_$plugin")="auto"
- done
- else
-- default_plugins="opendocument"
-+ default_plugins=""
-
- if test "$abi_cv_disable_default_plugins" != "yes"; then
- PLUGINS="$default_plugins"
diff --git a/editors/abiword/patches/patch-ac b/editors/abiword/patches/patch-ac
deleted file mode 100644
index 8767848a01b..00000000000
--- a/editors/abiword/patches/patch-ac
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD: patch-ac,v 1.17 2010/11/26 14:49:50 adam Exp $
-
---- src/af/util/xp/ut_endian.h.orig 2009-12-13 20:26:17.000000000 +0000
-+++ src/af/util/xp/ut_endian.h
-@@ -56,6 +56,13 @@
- #else
- #define UT_BIG_ENDIAN
- #endif
-+#elif defined(__DragonFly__)
-+ #include <sys/endian.h>
-+ #if _BYTE_ORDER == _LITTLE_ENDIAN
-+ #define UT_LITTLE_ENDIAN
-+ #else
-+ #define UT_BIG_ENDIAN
-+ #endif
- #elif defined(__sgi)
- #include <sys/endian.h>
- #if BYTE_ORDER == LITTLE_ENDIAN
diff --git a/editors/abiword/patches/patch-ae b/editors/abiword/patches/patch-ae
deleted file mode 100644
index 27025e83fa2..00000000000
--- a/editors/abiword/patches/patch-ae
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-ae,v 1.21 2011/01/15 15:07:11 wiz Exp $
-
-Fix build with png-1.5.
-
---- src/af/util/xp/ut_png.cpp.orig 2008-02-24 03:33:07.000000000 +0000
-+++ src/af/util/xp/ut_png.cpp
-@@ -71,7 +71,7 @@ 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 (setjmp(png_ptr->jmpbuf))
-+ if (setjmp(png_jmpbuf(png_ptr)))
- {
- /* Free all of the memory associated with the png_ptr and info_ptr */
- png_destroy_read_struct(&png_ptr, &info_ptr, static_cast<png_infopp>(NULL));
diff --git a/editors/abiword/patches/patch-af b/editors/abiword/patches/patch-af
deleted file mode 100644
index 7dd327da287..00000000000
--- a/editors/abiword/patches/patch-af
+++ /dev/null
@@ -1,24 +0,0 @@
-$NetBSD: patch-af,v 1.12 2011/01/15 15:07:11 wiz Exp $
-
-Fix build with png-1.5.
-
---- src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp.orig 2009-07-01 04:02:04.000000000 +0000
-+++ src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp
-@@ -185,7 +185,7 @@ UT_Error IE_ImpGraphic_GdkPixbuf::import
- /** needed for the stejmp context */
- UT_Error IE_ImpGraphic_GdkPixbuf::_png_write(GdkPixbuf * pixbuf)
- {
-- if (setjmp(m_pPNG->jmpbuf))
-+ if (setjmp(png_jmpbuf(m_pPNG)))
- {
- DELETEP(m_pPngBB);
- png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
-@@ -446,7 +446,7 @@ 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 (setjmp(m_pPNG->jmpbuf))
-+ if (setjmp(png_jmpbuf(m_pPNG)))
- {
- /* Free all of the memory associated with the png_ptr and info_ptr */
- png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
diff --git a/editors/abiword/patches/patch-configure.ac b/editors/abiword/patches/patch-configure.ac
new file mode 100644
index 00000000000..6cc08d81d53
--- /dev/null
+++ b/editors/abiword/patches/patch-configure.ac
@@ -0,0 +1,14 @@
+$NetBSD: patch-configure.ac,v 1.1 2015/09/13 21:32:13 nros Exp $
+Use the installed libabiword instead of the one in the build directory
+This is needed for the plugins so the can build as a separate package
+--- configure.ac.orig 2015-06-06 23:11:58.000000000 +0000
++++ configure.ac
+@@ -893,7 +893,7 @@ if test "$TOOLKIT" = "gtk" &&
+ test "$enable_shared" = "yes"; then
+ # link plugins to work around gcc visibility issue with
+ # derived classes in dlopened modules
+- PLUGIN_LIBS='${top_builddir}/src/libabiword-'"$ABIWORD_SERIES"'.la'" $PLUGIN_LIBS"
++ PLUGIN_LIBS='${prefix}/lib/libabiword-'"$ABIWORD_SERIES"'.la'" $PLUGIN_LIBS"
+ elif test "$TOOLKIT" = "win"; then
+ PLUGIN_CFLAGS="$PLUGIN_CFLAGS "'-D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0500'
+ PLUGIN_LIBS='${top_builddir}/src/libabiword-'"$ABIWORD_SERIES"'.la'" $PLUGIN_LIBS"
diff --git a/editors/abiword/patches/patch-goffice-bits_goffice_app_goffice-app.h b/editors/abiword/patches/patch-goffice-bits_goffice_app_goffice-app.h
deleted file mode 100644
index c0a03ed52c0..00000000000
--- a/editors/abiword/patches/patch-goffice-bits_goffice_app_goffice-app.h
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-goffice-bits_goffice_app_goffice-app.h,v 1.1 2012/05/03 06:16:42 wiz Exp $
-
-Fix build with glib-2.32.
-
---- goffice-bits/goffice/app/goffice-app.h.orig 2007-01-16 23:17:27.000000000 +0000
-+++ goffice-bits/goffice/app/goffice-app.h
-@@ -22,7 +22,7 @@
- #ifndef GOFFICE_APP_H
- #define GOFFICE_APP_H
-
--#include <glib/gmacros.h>
-+#include <glib.h>
-
- G_BEGIN_DECLS
-
diff --git a/editors/abiword/patches/patch-plugin-configure.m4 b/editors/abiword/patches/patch-plugin-configure.m4
new file mode 100644
index 00000000000..9654dd3fc1f
--- /dev/null
+++ b/editors/abiword/patches/patch-plugin-configure.m4
@@ -0,0 +1,25 @@
+$NetBSD: patch-plugin-configure.m4,v 1.1 2015/09/13 21:32:13 nros Exp $
+* adapt wordperfect plugins to dependecies available in pkgsrc
+ from abiword svn date 2014-12-27
+--- plugin-configure.m4.orig 2014-12-23 05:13:14.000000000 +0000
++++ plugin-configure.m4
+@@ -1355,7 +1355,7 @@ AC_SUBST([BMP_CFLAGS])
+ AC_SUBST([BMP_LIBS])
+
+
+-wpg_pkgs="$gsf_req libwpg-0.2 >= 0.2.0 libwpd-0.9 >= 0.9.0 libwpd-stream-0.9 >= 0.9.0"
++wpg_pkgs="libwpg-0.3 $gsf_req"
+ wpg_deps="no"
+
+ if test "$enable_wpg" != ""; then
+@@ -1469,8 +1469,8 @@ AC_SUBST([AIKSAURUS_CFLAGS])
+ AC_SUBST([AIKSAURUS_LIBS])
+
+
+-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_pkgs="libwpd-0.10 $gsf_req"
++wordperfect_wps_pkgs='libwps-0.3'
+ wordperfect_deps="no"
+
+ WORDPERFECT_CFLAGS=
diff --git a/editors/abiword/patches/patch-plugins_aiksaurus_Makefile.am b/editors/abiword/patches/patch-plugins_aiksaurus_Makefile.am
new file mode 100644
index 00000000000..8994d60efdb
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_aiksaurus_Makefile.am
@@ -0,0 +1,16 @@
+$NetBSD: patch-plugins_aiksaurus_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+Use CXX for linking.
+--- plugins/aiksaurus/Makefile.am.orig 2014-03-21 23:51:31.000000000 +0000
++++ plugins/aiksaurus/Makefile.am
+@@ -28,7 +28,8 @@ aiksaurus_la_LIBADD = \
+ aiksaurus_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ aiksaurus_la_SOURCES =
++nodist_EXTRA_aiksaurus_la_SOURCES = dummy.cpp
+
diff --git a/editors/abiword/patches/patch-plugins_aiksaurus_aiksaurusgtk3_Makefile.am b/editors/abiword/patches/patch-plugins_aiksaurus_aiksaurusgtk3_Makefile.am
new file mode 100644
index 00000000000..8f5a68dee38
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_aiksaurus_aiksaurusgtk3_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_aiksaurus_aiksaurusgtk3_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/aiksaurus/aiksaurusgtk3/Makefile.am.orig 2014-03-08 02:55:42.000000000 +0000
++++ plugins/aiksaurus/aiksaurusgtk3/Makefile.am
+@@ -2,7 +2,7 @@ AM_CXXFLAGS = $(AIKSAURUS_CFLAGS) -Wall
+
+ lib_LTLIBRARIES = libAiksaurusGtk3.la
+
+-libAiksaurusGtk3_la_LDFLAGS = -no-undefined -release $(LT_RELEASE) -export-dynamic
++libAiksaurusGtk3_la_LDFLAGS = -Wl,-no-undefined -release $(LT_RELEASE) -export-dynamic
+
+ libAiksaurusGtk3_la_LIBADD = $(AIKSAURUS_LIBS)
+
diff --git a/editors/abiword/patches/patch-plugins_applix_Makefile.am b/editors/abiword/patches/patch-plugins_applix_Makefile.am
new file mode 100644
index 00000000000..c6781a57717
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_applix_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_applix_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/applix/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/applix/Makefile.am
+@@ -18,7 +18,7 @@ applix_la_LIBADD = \
+ applix_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ applix_la_SOURCES =
+
diff --git a/editors/abiword/patches/patch-plugins_babelfish_Makefile.am b/editors/abiword/patches/patch-plugins_babelfish_Makefile.am
new file mode 100644
index 00000000000..77563659d4f
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_babelfish_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_babelfish_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/babelfish/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/babelfish/Makefile.am
+@@ -18,7 +18,7 @@ babelfish_la_LIBADD = \
+ babelfish_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ babelfish_la_SOURCES =
+
diff --git a/editors/abiword/patches/patch-plugins_bmp_Makefile.am b/editors/abiword/patches/patch-plugins_bmp_Makefile.am
new file mode 100644
index 00000000000..4189c477422
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_bmp_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_bmp_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/bmp/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/bmp/Makefile.am
+@@ -18,7 +18,7 @@ bmp_la_LIBADD = \
+ bmp_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ bmp_la_SOURCES =
+ nodist_EXTRA_bmp_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_bmp_xp_ie__impGraphic__BMP.cpp b/editors/abiword/patches/patch-plugins_bmp_xp_ie__impGraphic__BMP.cpp
deleted file mode 100644
index 0efb05dc4f5..00000000000
--- a/editors/abiword/patches/patch-plugins_bmp_xp_ie__impGraphic__BMP.cpp
+++ /dev/null
@@ -1,45 +0,0 @@
-$NetBSD: patch-plugins_bmp_xp_ie__impGraphic__BMP.cpp,v 1.1 2011/02/01 10:48:15 wiz Exp $
-
-Fix build with png-1.5.
-
---- plugins/bmp/xp/ie_impGraphic_BMP.cpp.orig 2009-06-25 04:02:06.000000000 +0000
-+++ plugins/bmp/xp/ie_impGraphic_BMP.cpp
-@@ -191,7 +191,10 @@ UT_Error IE_ImpGraphic_BMP::_convertGrap
-
- /* Clean Up Memory Used */
-
-- FREEP(m_pPNGInfo->palette);
-+ png_colorp palette;
-+ int num_palette;
-+ png_get_PLTE( m_pPNG, m_pPNGInfo, &palette, &num_palette );
-+ FREEP(palette);
- DELETEP(pBB);
- png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
-
-@@ -313,7 +316,7 @@ 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 (setjmp(m_pPNG->jmpbuf))
-+ if (setjmp(png_jmpbuf(m_pPNG)))
- {
- /* Free all of the memory associated with the png_ptr and info_ptr */
- png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
-@@ -332,7 +335,7 @@ UT_Error IE_ImpGraphic_BMP::Initialize_P
- UT_Error IE_ImpGraphic_BMP::Convert_BMP_Pallet(UT_ByteBuf* pBB)
- {
- /* Reset error handling for libpng */
-- if (setjmp(m_pPNG->jmpbuf))
-+ if (setjmp(png_jmpbuf(m_pPNG)))
- {
- png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
- return UT_ERROR;
-@@ -372,7 +375,7 @@ UT_Error IE_ImpGraphic_BMP::Initialize_P
- UT_Error IE_ImpGraphic_BMP::Convert_BMP(UT_ByteBuf* pBB)
- {
- /* Reset error handling for libpng */
-- if (setjmp(m_pPNG->jmpbuf))
-+ if (setjmp(png_jmpbuf(m_pPNG)))
- {
- png_destroy_write_struct(&m_pPNG, &m_pPNGInfo);
- return UT_ERROR;
diff --git a/editors/abiword/patches/patch-plugins_clarisworks_Makefile.am b/editors/abiword/patches/patch-plugins_clarisworks_Makefile.am
new file mode 100644
index 00000000000..3fbf7a69f5d
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_clarisworks_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_clarisworks_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/clarisworks/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/clarisworks/Makefile.am
+@@ -18,7 +18,7 @@ clarisworks_la_LIBADD = \
+ clarisworks_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ clarisworks_la_SOURCES =
+
diff --git a/editors/abiword/patches/patch-plugins_collab_Makefile.am b/editors/abiword/patches/patch-plugins_collab_Makefile.am
new file mode 100644
index 00000000000..7308e7ff4e1
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_collab_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_collab_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/collab/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/collab/Makefile.am
+@@ -22,7 +22,7 @@ collab_la_LIBADD = \
+ collab_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ collab_la_SOURCES =
+ nodist_EXTRA_collab_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_command_Makefile.am b/editors/abiword/patches/patch-plugins_command_Makefile.am
new file mode 100644
index 00000000000..8816eb74ba1
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_command_Makefile.am
@@ -0,0 +1,17 @@
+$NetBSD: patch-plugins_command_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+Use CXX for linking.
+--- plugins/command/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/command/Makefile.am
+@@ -13,8 +13,9 @@ command_la_LIBADD = \
+ command_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ command_la_SOURCES =
++nodist_EXTRA_command_la_SOURCES = dummy.cpp
+
+ endif
diff --git a/editors/abiword/patches/patch-plugins_docbook_Makefile.am b/editors/abiword/patches/patch-plugins_docbook_Makefile.am
new file mode 100644
index 00000000000..0e94e7da1fa
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_docbook_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_docbook_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/docbook/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/docbook/Makefile.am
+@@ -18,7 +18,7 @@ docbook_la_LIBADD = \
+ docbook_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+ if TOOLKIT_COCOA
+ docbook_la_LDFLAGS += -headerpad_max_install_names
+ endif # TOOLKIT_COCOA
diff --git a/editors/abiword/patches/patch-plugins_eml_Makefile.am b/editors/abiword/patches/patch-plugins_eml_Makefile.am
new file mode 100644
index 00000000000..cb327e59477
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_eml_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_eml_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/eml/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/eml/Makefile.am
+@@ -18,7 +18,7 @@ eml_la_LIBADD = \
+ eml_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ eml_la_SOURCES =
+ nodist_EXTRA_eml_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_epub_Makefile.am b/editors/abiword/patches/patch-plugins_epub_Makefile.am
new file mode 100644
index 00000000000..412e02ec619
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_epub_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_epub_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/epub/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/epub/Makefile.am
+@@ -28,7 +28,7 @@ epub_la_LIBADD += $(EPUB_LIBS)
+ epub_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+ if TOOLKIT_COCOA
+ epub_la_LDFLAGS += -headerpad_max_install_names
+ endif # TOOLKIT_COCOA
diff --git a/editors/abiword/patches/patch-plugins_freetranslation_Makefile.am b/editors/abiword/patches/patch-plugins_freetranslation_Makefile.am
new file mode 100644
index 00000000000..dbdb2b27149
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_freetranslation_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_freetranslation_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/freetranslation/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/freetranslation/Makefile.am
+@@ -18,7 +18,7 @@ freetranslation_la_LIBADD = \
+ freetranslation_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ freetranslation_la_SOURCES =
+
diff --git a/editors/abiword/patches/patch-plugins_garble_Makefile.am b/editors/abiword/patches/patch-plugins_garble_Makefile.am
new file mode 100644
index 00000000000..c58bf86f634
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_garble_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_garble_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/garble/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/garble/Makefile.am
+@@ -13,7 +13,7 @@ garble_la_LIBADD = \
+ garble_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ garble_la_SOURCES =
+ nodist_EXTRA_garble_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_garble_xp_abiword-garble-png.cpp b/editors/abiword/patches/patch-plugins_garble_xp_abiword-garble-png.cpp
deleted file mode 100644
index fcaa801b8a9..00000000000
--- a/editors/abiword/patches/patch-plugins_garble_xp_abiword-garble-png.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-plugins_garble_xp_abiword-garble-png.cpp,v 1.1 2011/02/01 10:48:15 wiz Exp $
-
-Fix build with png-1.5.
-
---- plugins/garble/xp/abiword-garble-png.cpp.orig 2009-09-05 15:34:44.000000000 +0000
-+++ plugins/garble/xp/abiword-garble-png.cpp
-@@ -79,7 +79,7 @@ bool abiword_document::garble_png( void*
- png_set_strip_alpha( png_ptr );
- png_set_interlace_handling( png_ptr );
- png_set_bgr( png_ptr );
-- rowbytes = info_ptr->rowbytes;
-+ rowbytes = png_get_rowbytes( png_ptr, info_ptr );
- png_destroy_read_struct( &png_ptr, &info_ptr, NULL );
- }
-
diff --git a/editors/abiword/patches/patch-plugins_gda_Makefile.am b/editors/abiword/patches/patch-plugins_gda_Makefile.am
new file mode 100644
index 00000000000..8d6b11011eb
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_gda_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_gda_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/gda/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/gda/Makefile.am
+@@ -11,7 +11,7 @@ gda_la_LIBADD = \
+ gda_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ gda_la_SOURCES =
+
diff --git a/editors/abiword/patches/patch-plugins_gdict_Makefile.am b/editors/abiword/patches/patch-plugins_gdict_Makefile.am
new file mode 100644
index 00000000000..31c83de24ad
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_gdict_Makefile.am
@@ -0,0 +1,18 @@
+$NetBSD: patch-plugins_gdict_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+Use CXX for linking.
+--- plugins/gdict/Makefile.am.orig 2011-12-11 05:10:10.000000000 +0000
++++ plugins/gdict/Makefile.am
+@@ -18,9 +18,10 @@ gdict_la_LIBADD = \
+ gdict_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ gdict_la_SOURCES =
++nodist_EXTRA_gdict_la_SOURCES = dummy.cpp
+
+ EXTRA_DIST = \
+ plugin.m4
diff --git a/editors/abiword/patches/patch-plugins_gimp_Makefile.am b/editors/abiword/patches/patch-plugins_gimp_Makefile.am
new file mode 100644
index 00000000000..7828e99bcd7
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_gimp_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_gimp_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/gimp/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/gimp/Makefile.am
+@@ -18,7 +18,7 @@ gimp_la_LIBADD = \
+ gimp_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ gimp_la_SOURCES =
+ nodist_EXTRA_gimp_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_gimp_xp_AbiGimp.cpp b/editors/abiword/patches/patch-plugins_gimp_xp_AbiGimp.cpp
new file mode 100644
index 00000000000..a6fa799c1f5
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_gimp_xp_AbiGimp.cpp
@@ -0,0 +1,15 @@
+$NetBSD: patch-plugins_gimp_xp_AbiGimp.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
+* Fix seg fault.
+--- plugins/gimp/xp/AbiGimp.cpp.orig 2013-12-23 02:37:58.000000000 +0000
++++ plugins/gimp/xp/AbiGimp.cpp
+@@ -249,6 +249,10 @@ AbiGimp_invoke(AV_View* /*v*/, EV_EditMe
+ {
+ // Get the current view that the user is in.
+ XAP_Frame *pFrame = XAP_App::getApp()->getLastFocussedFrame();
++ if (pFrame == NULL) {
++ UT_DEBUGMSG(("Gimp plugin: getLastFocussedFrame() returned NULL\n"));
++ return false;
++ }
+ FV_View* pView = static_cast<FV_View*>(pFrame->getCurrentView());
+
+ //
diff --git a/editors/abiword/patches/patch-plugins_goffice_Makefile.am b/editors/abiword/patches/patch-plugins_goffice_Makefile.am
new file mode 100644
index 00000000000..cee37edcb49
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_goffice_Makefile.am
@@ -0,0 +1,24 @@
+$NetBSD: patch-plugins_goffice_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+Use CXX for linking.
+--- plugins/goffice/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/goffice/Makefile.am
+@@ -1,4 +1,5 @@
+
++
+ SUBDIRS = unix
+
+ plugindir = $(ABIWORD_PLUGINSDIR)
+@@ -11,9 +12,10 @@ goffice_la_LIBADD = \
+ goffice_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ goffice_la_SOURCES =
++nodist_EXTRA_goffice_la_SOURCES = dummy.cpp
+
+ EXTRA_DIST = \
+ plugin.m4
diff --git a/editors/abiword/patches/patch-plugins_google_Makefile.am b/editors/abiword/patches/patch-plugins_google_Makefile.am
new file mode 100644
index 00000000000..aa0335fc92f
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_google_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_google_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/google/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/google/Makefile.am
+@@ -18,7 +18,7 @@ google_la_LIBADD = \
+ google_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ google_la_SOURCES =
+ nodist_EXTRA_google_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_grammar_Makefile.am b/editors/abiword/patches/patch-plugins_grammar_Makefile.am
new file mode 100644
index 00000000000..24d6564a463
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_grammar_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_grammar_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/grammar/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/grammar/Makefile.am
+@@ -12,7 +12,7 @@ grammar_la_LIBADD = \
+ grammar_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ nodist_EXTRA_grammar_la_SOURCES = dummy.cpp
+ grammar_la_SOURCES =
diff --git a/editors/abiword/patches/patch-plugins_hancom_Makefile.am b/editors/abiword/patches/patch-plugins_hancom_Makefile.am
new file mode 100644
index 00000000000..0a1a1243c39
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_hancom_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_hancom_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/hancom/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/hancom/Makefile.am
+@@ -18,7 +18,7 @@ hancom_la_LIBADD = \
+ hancom_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ hancom_la_SOURCES =
+ nodist_EXTRA_hancom_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_hrtext_Makefile.am b/editors/abiword/patches/patch-plugins_hrtext_Makefile.am
new file mode 100644
index 00000000000..71e03659492
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_hrtext_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_hrtext_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/hrtext/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/hrtext/Makefile.am
+@@ -18,7 +18,7 @@ hrtext_la_LIBADD = \
+ hrtext_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ hrtext_la_SOURCES =
+ nodist_EXTRA_hrtext_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_iscii_Makefile.am b/editors/abiword/patches/patch-plugins_iscii_Makefile.am
new file mode 100644
index 00000000000..d9f2f736686
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_iscii_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_iscii_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/iscii/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/iscii/Makefile.am
+@@ -18,7 +18,7 @@ iscii_la_LIBADD = \
+ iscii_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ iscii_la_SOURCES =
+ nodist_EXTRA_iscii_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_kword_Makefile.am b/editors/abiword/patches/patch-plugins_kword_Makefile.am
new file mode 100644
index 00000000000..3bf8d1f2356
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_kword_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_kword_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/kword/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/kword/Makefile.am
+@@ -18,7 +18,7 @@ kword_la_LIBADD = \
+ kword_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ kword_la_SOURCES =
+ nodist_EXTRA_kword_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_latex_Makefile.am b/editors/abiword/patches/patch-plugins_latex_Makefile.am
new file mode 100644
index 00000000000..564c93e4055
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_latex_Makefile.am
@@ -0,0 +1,20 @@
+$NetBSD: patch-plugins_latex_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/latex/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/latex/Makefile.am
+@@ -1,4 +1,5 @@
+
++
+ if HAVE_LIBXSLT
+ SUBDIRS = xp xsltml
+ else
+@@ -22,7 +23,7 @@ latex_la_LIBADD = \
+ latex_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+ if TOOLKIT_COCOA
+ latex_la_LDFLAGS += -headerpad_max_install_names
+ endif # TOOLKIT_COCOA
diff --git a/editors/abiword/patches/patch-plugins_loadbindings_Makefile.am b/editors/abiword/patches/patch-plugins_loadbindings_Makefile.am
new file mode 100644
index 00000000000..ab35c279068
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_loadbindings_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_loadbindings_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/loadbindings/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/loadbindings/Makefile.am
+@@ -18,7 +18,7 @@ loadbindings_la_LIBADD = \
+ loadbindings_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ loadbindings_la_SOURCES =
+ nodist_EXTRA_loadbindings_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_mathview_Makefile.am b/editors/abiword/patches/patch-plugins_mathview_Makefile.am
new file mode 100644
index 00000000000..35b1dbcd0f4
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_mathview_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_mathview_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/mathview/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/mathview/Makefile.am
+@@ -12,7 +12,7 @@ mathview_la_LIBADD = \
+ mathview_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ nodist_EXTRA_mathview_la_SOURCES = dummy.cpp
+ mathview_la_SOURCES =
diff --git a/editors/abiword/patches/patch-plugins_mht_Makefile.am b/editors/abiword/patches/patch-plugins_mht_Makefile.am
new file mode 100644
index 00000000000..b278aed2aec
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_mht_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_mht_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/mht/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/mht/Makefile.am
+@@ -11,7 +11,7 @@ mht_la_LIBADD = \
+ mht_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ mht_la_SOURCES =
+ nodist_EXTRA_mht_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_mif_Makefile.am b/editors/abiword/patches/patch-plugins_mif_Makefile.am
new file mode 100644
index 00000000000..c3c75b34d77
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_mif_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_mif_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/mif/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/mif/Makefile.am
+@@ -18,7 +18,7 @@ mif_la_LIBADD = \
+ mif_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ mif_la_SOURCES =
+ nodist_EXTRA_mif_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_mswrite_Makefile.am b/editors/abiword/patches/patch-plugins_mswrite_Makefile.am
new file mode 100644
index 00000000000..f8d232bd019
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_mswrite_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_mswrite_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/mswrite/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/mswrite/Makefile.am
+@@ -18,7 +18,7 @@ mswrite_la_LIBADD = \
+ mswrite_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ mswrite_la_SOURCES =
+ nodist_EXTRA_mswrite_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_opendocument_Makefile.am b/editors/abiword/patches/patch-plugins_opendocument_Makefile.am
new file mode 100644
index 00000000000..ae452aa74c4
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_opendocument_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_opendocument_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/opendocument/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/opendocument/Makefile.am
+@@ -21,7 +21,7 @@ opendocument_la_LIBADD = \
+ opendocument_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+ if TOOLKIT_COCOA
+ opendocument_la_LDFLAGS += -headerpad_max_install_names
+ endif # TOOLKIT_COCOA
diff --git a/editors/abiword/patches/patch-plugins_openwriter_Makefile.am b/editors/abiword/patches/patch-plugins_openwriter_Makefile.am
new file mode 100644
index 00000000000..d9f5967357a
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_openwriter_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_openwriter_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/openwriter/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/openwriter/Makefile.am
+@@ -18,7 +18,7 @@ openwriter_la_LIBADD = \
+ openwriter_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+ if TOOLKIT_COCOA
+ openwriter_la_LDFLAGS += -headerpad_max_install_names
+ endif # TOOLKIT_COCOA
diff --git a/editors/abiword/patches/patch-plugins_openxml_Makefile.am b/editors/abiword/patches/patch-plugins_openxml_Makefile.am
new file mode 100644
index 00000000000..56f94b67b22
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_openxml_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_openxml_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/openxml/Makefile.am.orig 2012-11-25 18:08:57.000000000 +0000
++++ plugins/openxml/Makefile.am
+@@ -20,7 +20,7 @@ openxml_la_LIBADD = \
+ openxml_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+ if TOOLKIT_COCOA
+ openxml_la_LDFLAGS += -headerpad_max_install_names
+ endif # TOOLKIT_COCOA
diff --git a/editors/abiword/patches/patch-plugins_opml_Makefile.am b/editors/abiword/patches/patch-plugins_opml_Makefile.am
new file mode 100644
index 00000000000..635c9fedc0e
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_opml_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_opml_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/opml/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/opml/Makefile.am
+@@ -18,7 +18,7 @@ opml_la_LIBADD = \
+ opml_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+ if TOOLKIT_COCOA
+ opml_la_LDFLAGS += -headerpad_max_install_names
+ endif # TOOLKIT_COCOA
diff --git a/editors/abiword/patches/patch-plugins_ots_Makefile.am b/editors/abiword/patches/patch-plugins_ots_Makefile.am
new file mode 100644
index 00000000000..5f88c5055bf
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_ots_Makefile.am
@@ -0,0 +1,13 @@
+$NetBSD: patch-plugins_ots_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/ots/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/ots/Makefile.am
+@@ -9,6 +9,7 @@ ots_la_LIBADD = \
+ $(OTS_LIBS)
+
+ ots_la_LDFLAGS = \
++ -Wl, \
+ -avoid-version \
+ -module \
+ -no-undefined
diff --git a/editors/abiword/patches/patch-plugins_paint_Makefile.am b/editors/abiword/patches/patch-plugins_paint_Makefile.am
new file mode 100644
index 00000000000..90e24facd47
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_paint_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_paint_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/paint/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/paint/Makefile.am
+@@ -20,7 +20,7 @@ paint_la_LIBADD = \
+ paint_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ paint_la_SOURCES =
+ nodist_EXTRA_paint_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_paint_xp_AbiGeneric.cpp b/editors/abiword/patches/patch-plugins_paint_xp_AbiGeneric.cpp
new file mode 100644
index 00000000000..5148dfc55c5
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_paint_xp_AbiGeneric.cpp
@@ -0,0 +1,15 @@
+$NetBSD: patch-plugins_paint_xp_AbiGeneric.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
+If pFrame is NULL an image is obviously not selected.
+Fixes seg fault.
+--- plugins/paint/xp/AbiGeneric.cpp.orig 2013-04-07 13:53:03.000000000 +0000
++++ plugins/paint/xp/AbiGeneric.cpp
+@@ -297,6 +297,9 @@ bool isImageSelected (void)
+ {
+ // Get the current view that the user is in.
+ XAP_Frame *pFrame = XAP_App::getApp()->getLastFocussedFrame();
++ if (pFrame == NULL) {
++ return false;
++ }
+ FV_View* pView = static_cast<FV_View*>(pFrame->getCurrentView());
+
+ return (pView->getSelectedImage(NULL) != 0);
diff --git a/editors/abiword/patches/patch-plugins_paint_xp_AbiPaint.cpp b/editors/abiword/patches/patch-plugins_paint_xp_AbiPaint.cpp
new file mode 100644
index 00000000000..2dd14b28b90
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_paint_xp_AbiPaint.cpp
@@ -0,0 +1,25 @@
+$NetBSD: patch-plugins_paint_xp_AbiPaint.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
+* Fix seg fault.
+--- plugins/paint/xp/AbiPaint.cpp.orig 2013-04-07 13:53:03.000000000 +0000
++++ plugins/paint/xp/AbiPaint.cpp
+@@ -177,6 +177,9 @@ static DECLARE_ABI_PLUGIN_METHOD(specify
+
+ // Get a frame in case we need to show an error message
+ XAP_Frame *pFrame = XAP_App::getApp()->getLastFocussedFrame();
++ if (pFrame == NULL) {
++ return false;
++ }
+
+ {
+ const char * szDescList[3];
+@@ -254,6 +257,10 @@ static DECLARE_ABI_PLUGIN_METHOD(saveAsB
+ {
+ // Get a frame (for error messages) and (to) get the current view that the user is in.
+ XAP_Frame *pFrame = XAP_App::getApp()->getLastFocussedFrame();
++ if (pFrame == NULL) {
++ g_varning("paint saveAsBmp: getLastFocussedFrame returned NULL\n");
++ return false;
++ }
+ FV_View* pView = static_cast<FV_View*>(pFrame->getCurrentView());
+
+ char *szTempFileName = NULL;
diff --git a/editors/abiword/patches/patch-plugins_passepartout_Makefile.am b/editors/abiword/patches/patch-plugins_passepartout_Makefile.am
new file mode 100644
index 00000000000..27f865ac1bb
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_passepartout_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_passepartout_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/passepartout/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/passepartout/Makefile.am
+@@ -18,7 +18,7 @@ passepartout_la_LIBADD = \
+ passepartout_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ passepartout_la_SOURCES =
+ nodist_EXTRA_passepartout_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_pdb_Makefile.am b/editors/abiword/patches/patch-plugins_pdb_Makefile.am
new file mode 100644
index 00000000000..94be9601292
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_pdb_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_pdb_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/pdb/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/pdb/Makefile.am
+@@ -18,7 +18,7 @@ pdb_la_LIBADD = \
+ pdb_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ pdb_la_SOURCES =
+ nodist_EXTRA_pdb_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_pdf_Makefile.am b/editors/abiword/patches/patch-plugins_pdf_Makefile.am
new file mode 100644
index 00000000000..96570f5be41
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_pdf_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_pdf_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/pdf/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/pdf/Makefile.am
+@@ -18,7 +18,7 @@ pdf_la_LIBADD = \
+ pdf_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ pdf_la_SOURCES =
+ nodist_EXTRA_pdf_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_presentation_Makefile.am b/editors/abiword/patches/patch-plugins_presentation_Makefile.am
new file mode 100644
index 00000000000..40c158717be
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_presentation_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_presentation_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/presentation/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/presentation/Makefile.am
+@@ -18,7 +18,7 @@ presentation_la_LIBADD = \
+ presentation_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ presentation_la_SOURCES =
+ nodist_EXTRA_presentation_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_psion_Makefile.am b/editors/abiword/patches/patch-plugins_psion_Makefile.am
new file mode 100644
index 00000000000..1cb03e62a9e
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_psion_Makefile.am
@@ -0,0 +1,18 @@
+$NetBSD: patch-plugins_psion_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+Use CXX for linking.
+--- plugins/psion/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/psion/Makefile.am
+@@ -11,9 +11,10 @@ psion_la_LIBADD = \
+ psion_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ psion_la_SOURCES =
++nodist_EXTRA_psion_la_SOURCES = dummy.cpp
+
+ EXTRA_DIST = \
+ plugin.m4
diff --git a/editors/abiword/patches/patch-plugins_rsvg_Makefile.am b/editors/abiword/patches/patch-plugins_rsvg_Makefile.am
new file mode 100644
index 00000000000..d5bff47d439
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_rsvg_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_rsvg_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/rsvg/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/rsvg/Makefile.am
+@@ -12,7 +12,7 @@ rsvg_la_LIBADD = \
+ rsvg_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ rsvg_la_SOURCES =
+ nodist_EXTRA_rsvg_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_s5_Makefile.am b/editors/abiword/patches/patch-plugins_s5_Makefile.am
new file mode 100644
index 00000000000..eed86278335
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_s5_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_s5_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/s5/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/s5/Makefile.am
+@@ -18,7 +18,7 @@ s5_la_LIBADD = \
+ s5_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ s5_la_SOURCES =
+ nodist_EXTRA_s5_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_sdw_Makefile.am b/editors/abiword/patches/patch-plugins_sdw_Makefile.am
new file mode 100644
index 00000000000..3f1a5590c2d
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_sdw_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_sdw_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/sdw/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/sdw/Makefile.am
+@@ -18,7 +18,7 @@ sdw_la_LIBADD = \
+ sdw_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ sdw_la_SOURCES =
+ nodist_EXTRA_sdw_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_t602_Makefile.am b/editors/abiword/patches/patch-plugins_t602_Makefile.am
new file mode 100644
index 00000000000..d1426652636
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_t602_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_t602_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/t602/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/t602/Makefile.am
+@@ -18,7 +18,7 @@ t602_la_LIBADD = \
+ t602_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ t602_la_SOURCES =
+ nodist_EXTRA_t602_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_urldict_Makefile.am b/editors/abiword/patches/patch-plugins_urldict_Makefile.am
new file mode 100644
index 00000000000..7e8d85d16c8
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_urldict_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_urldict_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/urldict/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/urldict/Makefile.am
+@@ -18,7 +18,7 @@ urldict_la_LIBADD = \
+ urldict_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ urldict_la_SOURCES =
+ nodist_EXTRA_urldict_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_wikipedia_Makefile.am b/editors/abiword/patches/patch-plugins_wikipedia_Makefile.am
new file mode 100644
index 00000000000..3173602e3ed
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wikipedia_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_wikipedia_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/wikipedia/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/wikipedia/Makefile.am
+@@ -18,7 +18,7 @@ wikipedia_la_LIBADD = \
+ wikipedia_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ wikipedia_la_SOURCES =
+ nodist_EXTRA_wikipedia_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_wmf_Makefile.am b/editors/abiword/patches/patch-plugins_wmf_Makefile.am
new file mode 100644
index 00000000000..5d9f6d50113
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wmf_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_wmf_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/wmf/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/wmf/Makefile.am
+@@ -11,7 +11,7 @@ wmf_la_LIBADD = \
+ wmf_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ wmf_la_SOURCES =
+ nodist_EXTRA_wmf_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_wml_Makefile.am b/editors/abiword/patches/patch-plugins_wml_Makefile.am
new file mode 100644
index 00000000000..d20dc757afd
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wml_Makefile.am
@@ -0,0 +1,20 @@
+$NetBSD: patch-plugins_wml_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/wml/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/wml/Makefile.am
+@@ -1,4 +1,5 @@
+
++
+ SUBDIRS = xp
+
+ if WML_BUILTIN
+@@ -18,7 +19,7 @@ wml_la_LIBADD = \
+ wml_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ wml_la_SOURCES =
+ nodist_EXTRA_wml_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_wordperfect_Makefile.am b/editors/abiword/patches/patch-plugins_wordperfect_Makefile.am
new file mode 100644
index 00000000000..967d70b37c9
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wordperfect_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_wordperfect_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/wordperfect/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/wordperfect/Makefile.am
+@@ -11,7 +11,7 @@ wordperfect_la_LIBADD = \
+ wordperfect_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ wordperfect_la_SOURCES =
+ nodist_EXTRA_wordperfect_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_wordperfect_xp_Makefile.am b/editors/abiword/patches/patch-plugins_wordperfect_xp_Makefile.am
new file mode 100644
index 00000000000..d397e59401f
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wordperfect_xp_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_wordperfect_xp_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+* adapt wordperfect plugins to dependecies available in pkgsrc
+ from abiword svn date 2014-12-27
+--- plugins/wordperfect/xp/Makefile.am.orig 2008-05-08 13:12:53.000000000 +0000
++++ plugins/wordperfect/xp/Makefile.am
+@@ -6,8 +6,6 @@ AM_CPPFLAGS = \
+ -DABI_BUILD_VERSION=\"$(VERSION)\"
+
+ libxp_la_SOURCES = \
+- ie_exp_WordPerfect.cpp \
+- ie_exp_WordPerfect.h \
+ ie_impexp_WordPerfect.cpp \
+ ie_impexp_WordPerfect.h \
+ ie_imp_WordPerfect.cpp \
diff --git a/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__imp__WordPerfect.cpp b/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__imp__WordPerfect.cpp
new file mode 100644
index 00000000000..c315a1cafcd
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__imp__WordPerfect.cpp
@@ -0,0 +1,653 @@
+$NetBSD: patch-plugins_wordperfect_xp_ie__imp__WordPerfect.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
+* adapt wordperfect plugins to dependecies available in pkgsrc
+ from abiword svn date 2014-12-27
+--- plugins/wordperfect/xp/ie_imp_WordPerfect.cpp.orig 2013-04-07 13:53:03.000000000 +0000
++++ plugins/wordperfect/xp/ie_imp_WordPerfect.cpp
+@@ -31,6 +31,8 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <math.h>
++#include <map>
++#include <string>
+ #include <gsf/gsf-utils.h>
+ #include <gsf/gsf-input-memory.h>
+ #include <gsf/gsf-input-stdio.h>
+@@ -60,42 +62,47 @@
+
+ // Stream class
+
+-#include <libwpd-stream/libwpd-stream.h>
++#include <librevenge-stream/librevenge-stream.h>
++#include <libwpd/libwpd.h>
+
+ #include <gsf/gsf-input.h>
+ #include <gsf/gsf-infile.h>
+ #include <gsf/gsf-infile-msole.h>
++#include <gsf/gsf-infile-zip.h>
+
+ #ifdef HAVE_LIBWPS
+ #include <libwps/libwps.h>
+ #endif
+
+-class AbiWordperfectInputStream : public WPXInputStream
++class AbiWordperfectInputStream : public librevenge::RVNGInputStream
+ {
+ public:
+ AbiWordperfectInputStream(GsfInput *input);
+ ~AbiWordperfectInputStream();
+
+- virtual bool isOLEStream();
+- virtual WPXInputStream * getDocumentOLEStream();
+-
+- virtual WPXInputStream * getDocumentOLEStream(const char * name);
+-
++ virtual bool isStructured();
++ virtual unsigned subStreamCount();
++ virtual const char* subStreamName(unsigned);
++ bool existsSubStream(const char*);
++ virtual librevenge::RVNGInputStream* getSubStreamByName(const char*);
++ virtual librevenge::RVNGInputStream* getSubStreamById(unsigned);
+ virtual const unsigned char *read(unsigned long numBytes, unsigned long &numBytesRead);
+- virtual int seek(long offset, WPX_SEEK_TYPE seekType);
++ virtual int seek(long offset, librevenge::RVNG_SEEK_TYPE seekType);
+ virtual long tell();
+- virtual bool atEOS();
++ virtual bool isEnd();
+
+ private:
+
+ GsfInput *m_input;
+ GsfInfile *m_ole;
++ std::map<unsigned, std::string> m_substreams;
+ };
+
+ AbiWordperfectInputStream::AbiWordperfectInputStream(GsfInput *input) :
+- WPXInputStream(),
++ librevenge::RVNGInputStream(),
+ m_input(input),
+- m_ole(NULL)
++ m_ole(NULL),
++ m_substreams()
+ {
+ g_object_ref(G_OBJECT(input));
+ }
+@@ -120,45 +127,115 @@ const unsigned char * AbiWordperfectInpu
+ return buf;
+ }
+
+-int AbiWordperfectInputStream::seek(long offset, WPX_SEEK_TYPE seekType)
++int AbiWordperfectInputStream::seek(long offset, librevenge::RVNG_SEEK_TYPE seekType)
+ {
+ GSeekType gsfSeekType = G_SEEK_SET;
+ switch(seekType)
+ {
+- case WPX_SEEK_CUR:
++ case librevenge::RVNG_SEEK_CUR:
+ gsfSeekType = G_SEEK_CUR;
+ break;
+- case WPX_SEEK_SET:
++ case librevenge::RVNG_SEEK_SET:
+ gsfSeekType = G_SEEK_SET;
+ break;
++ case librevenge::RVNG_SEEK_END:
++ gsfSeekType = G_SEEK_END;
++ break;
+ }
+
+ return gsf_input_seek(m_input, offset, gsfSeekType);
+ }
+
+-bool AbiWordperfectInputStream::isOLEStream()
++bool AbiWordperfectInputStream::isStructured()
+ {
+ if (!m_ole)
+ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
+
+- if (m_ole != NULL)
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
++ if (m_ole)
+ return true;
+
+ return false;
+ }
+
+-WPXInputStream * AbiWordperfectInputStream::getDocumentOLEStream()
++unsigned AbiWordperfectInputStream::subStreamCount()
+ {
+- return getDocumentOLEStream("PerfectOffice_MAIN");
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
++ if (m_ole)
++ {
++ int numChildren = gsf_infile_num_children(m_ole);
++ if (numChildren > 0)
++ return numChildren;
++ return 0;
++ }
++
++ return 0;
+ }
+
+-WPXInputStream * AbiWordperfectInputStream::getDocumentOLEStream(const char * name)
++const char * AbiWordperfectInputStream::subStreamName(unsigned id)
+ {
+- WPXInputStream *documentStream = NULL;
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
+
+ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
++ if (m_ole)
++ {
++ if ((int)id >= gsf_infile_num_children(m_ole))
++ {
++ return 0;
++ }
++ std::map<unsigned, std::string>::iterator i = m_substreams.lower_bound(id);
++ if (i == m_substreams.end() || m_substreams.key_comp()(id, i->first))
++ {
++ std::string name = gsf_infile_name_by_index(m_ole, (int)id);
++ i = m_substreams.insert(i, std::map<unsigned, std::string>::value_type(id, name));
++ }
++ return i->second.c_str();
++ }
++
++ return 0;
++}
++
++bool AbiWordperfectInputStream::existsSubStream(const char * name)
++{
++ if (!m_ole)
+ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
+
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
++ if (m_ole)
++ {
++ GsfInput *document = gsf_infile_child_by_name(m_ole, name);
++ if (document)
++ {
++ g_object_unref(G_OBJECT (document));
++ return true;
++ }
++ }
++
++ return false;
++}
++
++librevenge::RVNGInputStream * AbiWordperfectInputStream::getSubStreamByName(const char * name)
++{
++ librevenge::RVNGInputStream *documentStream = NULL;
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
+ if (m_ole)
+ {
+ GsfInput *document = gsf_infile_child_by_name(m_ole, name);
+@@ -172,12 +249,35 @@ WPXInputStream * AbiWordperfectInputStre
+ return documentStream;
+ }
+
++librevenge::RVNGInputStream * AbiWordperfectInputStream::getSubStreamById(unsigned id)
++{
++ librevenge::RVNGInputStream *documentStream = NULL;
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
++ if (m_ole)
++ {
++ GsfInput *document = gsf_infile_child_by_index(m_ole, (int)id);
++ if (document)
++ {
++ documentStream = new AbiWordperfectInputStream(document);
++ g_object_unref(G_OBJECT (document)); // the only reference should be encapsulated within the new stream
++ }
++ }
++
++ return documentStream;
++}
++
+ long AbiWordperfectInputStream::tell()
+ {
+ return gsf_input_tell(m_input);
+ }
+
+-bool AbiWordperfectInputStream::atEOS()
++bool AbiWordperfectInputStream::isEnd()
+ {
+ return gsf_input_eof(m_input);
+ }
+@@ -247,13 +347,13 @@ UT_Confidence_t IE_Imp_WordPerfect_Sniff
+ {
+ AbiWordperfectInputStream gsfInput(input);
+
+- WPDConfidence confidence = WPDocument::isFileFormatSupported(&gsfInput);
+-
++ libwpd::WPDConfidence confidence = libwpd::WPDocument::isFileFormatSupported(&gsfInput);
++
+ switch (confidence)
+ {
+- case WPD_CONFIDENCE_NONE:
++ case libwpd::WPD_CONFIDENCE_NONE:
+ return UT_CONFIDENCE_ZILCH;
+- case WPD_CONFIDENCE_EXCELLENT:
++ case libwpd::WPD_CONFIDENCE_EXCELLENT:
+ return UT_CONFIDENCE_PERFECT;
+ default:
+ return UT_CONFIDENCE_ZILCH;
+@@ -312,9 +412,9 @@ IE_Imp_WordPerfect::~IE_Imp_WordPerfect(
+ UT_Error IE_Imp_WordPerfect::_loadFile(GsfInput * input)
+ {
+ AbiWordperfectInputStream gsfInput(input);
+- WPDResult error = WPDocument::parse(&gsfInput, static_cast<WPXDocumentInterface *>(this), NULL);
++ libwpd::WPDResult error = libwpd::WPDocument::parse(&gsfInput, static_cast<librevenge::RVNGTextInterface *>(this), NULL);
+
+- if (error != WPD_OK)
++ if (error != libwpd::WPD_OK)
+ {
+ UT_DEBUGMSG(("AbiWordPerfect: ERROR: %i!\n", (int)error));
+ return UT_IE_IMPORTERROR;
+@@ -329,7 +429,7 @@ void IE_Imp_WordPerfect::pasteFromBuffer
+ // nada
+ }
+
+-void IE_Imp_WordPerfect::setDocumentMetaData(const WPXPropertyList &propList)
++void IE_Imp_WordPerfect::setDocumentMetaData(const librevenge::RVNGPropertyList &propList)
+ {
+ if (propList["dc:author"])
+ getDoc()->setMetaDataProp(PD_META_KEY_CREATOR, propList["dc:author"]->getStr().cstr());
+@@ -339,15 +439,15 @@ void IE_Imp_WordPerfect::setDocumentMeta
+ getDoc()->setMetaDataProp(PD_META_KEY_PUBLISHER, propList["dc:publisher"]->getStr().cstr());
+ if (propList["dc:type"])
+ getDoc()->setMetaDataProp(PD_META_KEY_TYPE, propList["dc:category"]->getStr().cstr());
+- if (propList["libwpd:keywords"])
+- getDoc()->setMetaDataProp(PD_META_KEY_KEYWORDS, propList["libwpd:keywords"]->getStr().cstr());
++ if (propList["librevenge:keywords"])
++ getDoc()->setMetaDataProp(PD_META_KEY_KEYWORDS, propList["librevenge:keywords"]->getStr().cstr());
+ if (propList["dc:language"])
+ getDoc()->setMetaDataProp(PD_META_KEY_LANGUAGE, propList["dc:language"]->getStr().cstr());
+- if (propList["libwpd:abstract"])
+- getDoc()->setMetaDataProp(PD_META_KEY_DESCRIPTION, propList["libwpd:abstract"]->getStr().cstr());
++ if (propList["librevenge:abstract"])
++ getDoc()->setMetaDataProp(PD_META_KEY_DESCRIPTION, propList["librevenge:abstract"]->getStr().cstr());
+ }
+
+-void IE_Imp_WordPerfect::startDocument()
++void IE_Imp_WordPerfect::startDocument(const librevenge::RVNGPropertyList & /* propList */)
+ {
+ UT_DEBUGMSG(("AbiWordPerfect: startDocument\n"));
+ }
+@@ -357,7 +457,7 @@ void IE_Imp_WordPerfect::endDocument()
+ UT_DEBUGMSG(("AbiWordPerfect: endDocument\n"));
+ }
+
+-void IE_Imp_WordPerfect::openPageSpan(const WPXPropertyList &propList)
++void IE_Imp_WordPerfect::openPageSpan(const librevenge::RVNGPropertyList &propList)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ UT_DEBUGMSG(("AbiWordPerfect: openPageSpan\n"));
+@@ -378,7 +478,7 @@ void IE_Imp_WordPerfect::openPageSpan(co
+
+ }
+
+-void IE_Imp_WordPerfect::openHeader(const WPXPropertyList & /*propList*/)
++void IE_Imp_WordPerfect::openHeader(const librevenge::RVNGPropertyList & /*propList*/)
+ {
+ m_bHdrFtrOpenCount++;
+
+@@ -420,7 +520,7 @@ void IE_Imp_WordPerfect::closeHeader()
+ */
+ }
+
+-void IE_Imp_WordPerfect::openFooter(const WPXPropertyList & /*propList*/)
++void IE_Imp_WordPerfect::openFooter(const librevenge::RVNGPropertyList & /*propList*/)
+ {
+ m_bHdrFtrOpenCount++;
+ // see above comments re: openHeader
+@@ -432,7 +532,7 @@ void IE_Imp_WordPerfect::closeFooter()
+ // see above comments re: closeHeader
+ }
+
+-void IE_Imp_WordPerfect::openParagraph(const WPXPropertyList &propList, const WPXPropertyListVector &tabStops)
++void IE_Imp_WordPerfect::openParagraph(const librevenge::RVNGPropertyList &propList)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ UT_DEBUGMSG(("AbiWordPerfect: openParagraph()\n"));
+@@ -478,13 +578,15 @@ void IE_Imp_WordPerfect::openParagraph(c
+ (int)(m_topMargin*72), (int)(m_bottomMargin*72), m_leftMarginOffset, m_rightMarginOffset, m_textIndent, lineSpacing);
+ propBuffer += tmpBuffer;
+
+- if (tabStops.count() > 0) // Append the tabstop information
++ const librevenge::RVNGPropertyListVector *tabStops = propList.child("style:tab-stops");
++
++ if (tabStops && tabStops->count()) // Append the tabstop information
+ {
+ propBuffer += "; tabstops:";
+ tmpBuffer = "";
+- WPXPropertyListVector::Iter i(tabStops);
+- for (i.rewind(); i.next();)
+- {
++ librevenge::RVNGPropertyListVector::Iter i(*tabStops);
++ for (i.rewind(); i.next();)
++ {
+ propBuffer += tmpBuffer;
+ if (i()["style:position"])
+ {
+@@ -515,8 +617,8 @@ void IE_Imp_WordPerfect::openParagraph(c
+ propBuffer += "0";
+
+ tmpBuffer = ",";
+- }
+- }
++ }
++ }
+
+
+
+@@ -543,7 +645,7 @@ void IE_Imp_WordPerfect::openParagraph(c
+ }
+ }
+
+-void IE_Imp_WordPerfect::openSpan(const WPXPropertyList &propList)
++void IE_Imp_WordPerfect::openSpan(const librevenge::RVNGPropertyList &propList)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ UT_DEBUGMSG(("AbiWordPerfect: Appending current text properties\n"));
+@@ -614,13 +716,14 @@ void IE_Imp_WordPerfect::openSpan(const
+ X_CheckDocumentError(appendFmt(propsArray));
+ }
+
+-void IE_Imp_WordPerfect::openSection(const WPXPropertyList &propList, const WPXPropertyListVector &columns)
++void IE_Imp_WordPerfect::openSection(const librevenge::RVNGPropertyList &propList)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ UT_DEBUGMSG(("AbiWordPerfect: openSection\n"));
+
+ float marginLeft = 0.0f, marginRight = 0.0f;
+- int columnsCount = ((columns.count() == 0) ? 1 : columns.count());
++ const librevenge::RVNGPropertyListVector *columns = propList.child("style:columns");
++ int columnsCount = ((!columns || !columns->count()) ? 1 : columns->count());
+
+ // TODO: support spaceAfter
+ if (propList["fo:start-indent"])
+@@ -647,7 +750,7 @@ void IE_Imp_WordPerfect::insertTab()
+ X_CheckDocumentError(appendSpan(&ucs,1));
+ }
+
+-void IE_Imp_WordPerfect::insertText(const WPXString &text)
++void IE_Imp_WordPerfect::insertText(const librevenge::RVNGString &text)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ if (text.len())
+@@ -658,6 +761,15 @@ void IE_Imp_WordPerfect::insertText(cons
+ }
+ }
+
++void IE_Imp_WordPerfect::insertSpace()
++{
++ if (m_bHdrFtrOpenCount) return; // HACK
++ UT_DEBUGMSG(("AbiWordPerfect: insertSpace\n"));
++
++ UT_UCS4Char ucs = UCS_SPACE;
++ X_CheckDocumentError(appendSpan(&ucs,1));
++}
++
+ void IE_Imp_WordPerfect::insertLineBreak()
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+@@ -668,24 +780,23 @@ void IE_Imp_WordPerfect::insertLineBreak
+ }
+
+
+-
+-void IE_Imp_WordPerfect::defineOrderedListLevel(const WPXPropertyList &propList)
++void IE_Imp_WordPerfect::openOrderedListLevel(const librevenge::RVNGPropertyList &propList)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+- UT_DEBUGMSG(("AbiWordPerfect: defineOrderedListLevel\n"));
+-
++ UT_DEBUGMSG(("AbiWordPerfect: openOrderedListLevel\n"));
++
+ int listID = 0, startingNumber = 0, level = 1;
+ char listType = '1';
+ UT_UTF8String textBeforeNumber, textAfterNumber;
+ float listLeftOffset = 0.0f;
+ float listMinLabelWidth = 0.0f;
+
+- if (propList["libwpd:id"])
+- listID = propList["libwpd:id"]->getInt();
++ if (propList["librevenge:id"])
++ listID = propList["librevenge:id"]->getInt();
+ if (propList["text:start-value"])
+ startingNumber = propList["text:start-value"]->getInt();
+- if (propList["libwpd:level"])
+- level = propList["libwpd:level"]->getInt();
++ if (propList["librevenge:level"])
++ level = propList["librevenge:level"]->getInt();
+ if (propList["style:num-prefix"])
+ textBeforeNumber += propList["style:num-prefix"]->getStr().cstr();
+ if (propList["style:num-suffix"])
+@@ -716,22 +827,38 @@ void IE_Imp_WordPerfect::defineOrderedLi
+ m_pCurrentListDefinition->setListMinLabelWidth(level, listMinLabelWidth);
+ _updateDocumentOrderedListDefinition(m_pCurrentListDefinition, level, listType, textBeforeNumber, textAfterNumber, startingNumber);
+ }
++
++ m_iCurrentListLevel++;
+ }
+
+-void IE_Imp_WordPerfect::defineUnorderedListLevel(const WPXPropertyList &propList)
++void IE_Imp_WordPerfect::closeOrderedListLevel()
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+- UT_DEBUGMSG(("AbiWordPerfect: defineUnorderedListLevel\n"));
++ UT_DEBUGMSG(("AbiWordPerfect: closeOrderedListLevel (level: %i)\n", m_iCurrentListLevel));
++ UT_ASSERT(m_iCurrentListLevel > 0);
++
++ // every time we close a list level, the level above it is normally renumbered to start at "1"
++ // again. this code takes care of that.
++ if (m_iCurrentListLevel < (WP6_NUM_LIST_LEVELS-1))
++ m_pCurrentListDefinition->setLevelNumber(m_iCurrentListLevel + 1, 0);
++
++ m_iCurrentListLevel--;
++}
+
++void IE_Imp_WordPerfect::openUnorderedListLevel(const librevenge::RVNGPropertyList &propList)
++{
++ if (m_bHdrFtrOpenCount) return; // HACK
++ UT_DEBUGMSG(("AbiWordPerfect: openUNorderedListLevel\n"));
++
+ int listID = 0, level = 1;
+- WPXString textBeforeNumber, textAfterNumber;
++ librevenge::RVNGString textBeforeNumber, textAfterNumber;
+ float listLeftOffset = 0.0f;
+ float listMinLabelWidth = 0.0f;
+
+- if (propList["libwpd:id"])
+- listID = propList["libwpd:id"]->getInt();
+- if (propList["libwpd:level"])
+- level = propList["libwpd:level"]->getInt();
++ if (propList["librevenge:id"])
++ listID = propList["librevenge:id"]->getInt();
++ if (propList["librevenge:level"])
++ level = propList["librevenge:level"]->getInt();
+ if (propList["text:space-before"])
+ listLeftOffset = propList["text:space-before"]->getDouble();
+ if (propList["text:min-label-width"])
+@@ -752,36 +879,7 @@ void IE_Imp_WordPerfect::defineUnordered
+ m_pCurrentListDefinition->setListMinLabelWidth(level, listMinLabelWidth);
+ _updateDocumentUnorderedListDefinition(m_pCurrentListDefinition, level);
+ }
+-}
+
+-//void IE_Imp_WordPerfect::openOrderedListLevel(const int listID)
+-void IE_Imp_WordPerfect::openOrderedListLevel(const WPXPropertyList & /*propList*/)
+-{
+- if (m_bHdrFtrOpenCount) return; // HACK
+- UT_DEBUGMSG(("AbiWordPerfect: openOrderedListLevel\n"));
+-
+- m_iCurrentListLevel++;
+-}
+-
+-void IE_Imp_WordPerfect::closeOrderedListLevel()
+-{
+- if (m_bHdrFtrOpenCount) return; // HACK
+- UT_DEBUGMSG(("AbiWordPerfect: closeOrderedListLevel (level: %i)\n", m_iCurrentListLevel));
+- UT_ASSERT(m_iCurrentListLevel > 0);
+-
+- // every time we close a list level, the level above it is normally renumbered to start at "1"
+- // again. this code takes care of that.
+- if (m_iCurrentListLevel < (WP6_NUM_LIST_LEVELS-1))
+- m_pCurrentListDefinition->setLevelNumber(m_iCurrentListLevel + 1, 0);
+-
+- m_iCurrentListLevel--;
+-}
+-
+-void IE_Imp_WordPerfect::openUnorderedListLevel(const WPXPropertyList & /*propList*/)
+-{
+- if (m_bHdrFtrOpenCount) return; // HACK
+- UT_DEBUGMSG(("AbiWordPerfect: openUNorderedListLevel\n"));
+-
+ m_iCurrentListLevel++;
+ }
+
+@@ -796,7 +894,7 @@ void IE_Imp_WordPerfect::closeUnorderedL
+
+ // ASSUMPTION: We assume that unordered lists will always pass a number of "0". unpredictable behaviour
+ // may result otherwise
+-void IE_Imp_WordPerfect::openListElement(const WPXPropertyList &propList, const WPXPropertyListVector & /*tabStops*/)
++void IE_Imp_WordPerfect::openListElement(const librevenge::RVNGPropertyList &propList)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ UT_DEBUGMSG(("AbiWordPerfect: openListElement\n"));
+@@ -885,7 +983,7 @@ void IE_Imp_WordPerfect::openListElement
+ X_CheckDocumentError(appendSpan(&ucs,1));
+ }
+
+-void IE_Imp_WordPerfect::openFootnote(const WPXPropertyList & /*propList*/)
++void IE_Imp_WordPerfect::openFootnote(const librevenge::RVNGPropertyList & /*propList*/)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+
+@@ -934,7 +1032,7 @@ void IE_Imp_WordPerfect::closeFootnote()
+ X_CheckDocumentError(appendStrux(PTX_EndFootnote,NULL));
+ }
+
+-void IE_Imp_WordPerfect::openEndnote(const WPXPropertyList & /*propList*/)
++void IE_Imp_WordPerfect::openEndnote(const librevenge::RVNGPropertyList & /*propList*/)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ const gchar** propsArray = NULL;
+@@ -975,7 +1073,7 @@ void IE_Imp_WordPerfect::closeEndnote()
+ X_CheckDocumentError(appendStrux(PTX_EndEndnote,NULL));
+ }
+
+-void IE_Imp_WordPerfect::openTable(const WPXPropertyList &propList, const WPXPropertyListVector &columns)
++void IE_Imp_WordPerfect::openTable(const librevenge::RVNGPropertyList &propList)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ // TODO: handle 'marginLeftOffset' and 'marginRightOffset'
+@@ -1000,14 +1098,18 @@ void IE_Imp_WordPerfect::openTable(const
+ }
+ }
+
+- propBuffer += "table-column-props:";
+- WPXPropertyListVector::Iter i(columns);
+- for (i.rewind(); i.next();)
+- {
+- UT_String tmpBuffer;
+- if (i()["style:column-width"])
+- UT_String_sprintf(tmpBuffer, "%s/", i()["style:column-width"]->getStr().cstr());
+- propBuffer += tmpBuffer;
++ const librevenge::RVNGPropertyListVector *columns = propList.child("librevenge:table-columns");
++ if (columns)
++ {
++ propBuffer += "table-column-props:";
++ librevenge::RVNGPropertyListVector::Iter i(*columns);
++ for (i.rewind(); i.next();)
++ {
++ UT_String tmpBuffer;
++ if (i()["style:column-width"])
++ UT_String_sprintf(tmpBuffer, "%s/", i()["style:column-width"]->getStr().cstr());
++ propBuffer += tmpBuffer;
++ }
+ }
+
+ const gchar* propsArray[3];
+@@ -1018,7 +1120,7 @@ void IE_Imp_WordPerfect::openTable(const
+ X_CheckDocumentError(appendStrux(PTX_SectionTable, propsArray));
+ }
+
+-void IE_Imp_WordPerfect::openTableRow(const WPXPropertyList & /*propList*/)
++void IE_Imp_WordPerfect::openTableRow(const librevenge::RVNGPropertyList & /*propList*/)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ UT_DEBUGMSG(("AbiWordPerfect: openRow\n"));
+@@ -1030,14 +1132,14 @@ void IE_Imp_WordPerfect::openTableRow(co
+ m_bInCell = false;
+ }
+
+-void IE_Imp_WordPerfect::openTableCell(const WPXPropertyList &propList)
++void IE_Imp_WordPerfect::openTableCell(const librevenge::RVNGPropertyList &propList)
+ {
+ if (m_bHdrFtrOpenCount) return; // HACK
+ int col =0, row = 0, colSpan = 0, rowSpan = 0;
+- if (propList["libwpd:column"])
+- col = propList["libwpd:column"]->getInt();
+- if (propList["libwpd:row"])
+- row = propList["libwpd:row"]->getInt();
++ if (propList["librevenge:column"])
++ col = propList["librevenge:column"]->getInt();
++ if (propList["librevenge:row"])
++ row = propList["librevenge:row"]->getInt();
+ if (propList["table:number-columns-spanned"])
+ colSpan = propList["table:number-columns-spanned"]->getInt();
+ if (propList["table:number-rows-spanned"])
+@@ -1247,9 +1349,9 @@ protected:
+ virtual UT_Error _loadFile(GsfInput * input)
+ {
+ AbiWordperfectInputStream gsfInput(input);
+- WPSResult error = WPSDocument::parse(&gsfInput, static_cast<WPXDocumentInterface *>(this));
++ libwps::WPSResult error = libwps::WPSDocument::parse(&gsfInput, static_cast<librevenge::RVNGTextInterface *>(this));
+
+- if (error != WPS_OK)
++ if (error != libwps::WPS_OK)
+ {
+ UT_DEBUGMSG(("AbiMSWorks: ERROR: %i!\n", (int)error));
+ return UT_IE_IMPORTERROR;
+@@ -1286,13 +1388,17 @@ UT_Confidence_t IE_Imp_MSWorks_Sniffer::
+ {
+ AbiWordperfectInputStream gsfInput(input);
+
+- WPSConfidence confidence = WPSDocument::isFileFormatSupported(&gsfInput);
++ libwps::WPSKind kind;
++ libwps::WPSConfidence confidence = libwps::WPSDocument::isFileFormatSupported(&gsfInput, kind);
++
++ if (kind != libwps::WPS_TEXT)
++ confidence = libwps::WPS_CONFIDENCE_NONE;
+
+ switch (confidence)
+ {
+- case WPS_CONFIDENCE_NONE:
++ case libwps::WPS_CONFIDENCE_NONE:
+ return UT_CONFIDENCE_ZILCH;
+- case WPS_CONFIDENCE_EXCELLENT:
++ case libwps::WPS_CONFIDENCE_EXCELLENT:
+ return UT_CONFIDENCE_PERFECT;
+ default:
+ return UT_CONFIDENCE_ZILCH;
diff --git a/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__imp__WordPerfect.h b/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__imp__WordPerfect.h
new file mode 100644
index 00000000000..9e9a48a6eb8
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__imp__WordPerfect.h
@@ -0,0 +1,165 @@
+$NetBSD: patch-plugins_wordperfect_xp_ie__imp__WordPerfect.h,v 1.1 2015/09/13 21:32:13 nros Exp $
+* adapt wordperfect plugins to dependecies available in pkgsrc
+ from abiword svn date 2014-12-27
+--- plugins/wordperfect/xp/ie_imp_WordPerfect.h.orig 2013-04-07 13:53:03.000000000 +0000
++++ plugins/wordperfect/xp/ie_imp_WordPerfect.h
+@@ -30,7 +30,7 @@
+ #define IE_IMP_WP_H
+
+ #include <stdio.h>
+-#include <libwpd/libwpd.h>
++#include <librevenge/librevenge.h>
+ #include "ie_imp.h"
+ #include "ut_string.h"
+ #include "ut_string_class.h"
+@@ -92,7 +92,7 @@ public:
+ IE_Imp ** ppie);
+ };
+
+-class IE_Imp_WordPerfect : public IE_Imp, public WPXDocumentInterface
++class IE_Imp_WordPerfect : public IE_Imp, public librevenge::RVNGTextInterface
+ {
+ public:
+ IE_Imp_WordPerfect(PD_Document * pDocument);
+@@ -101,68 +101,82 @@ public:
+ virtual void pasteFromBuffer(PD_DocumentRange * pDocRange,
+ UT_uint8 * pData, UT_uint32 lenData, const char * szEncoding = 0);
+
+- virtual void setDocumentMetaData(const WPXPropertyList &propList);
++ virtual void setDocumentMetaData(const librevenge::RVNGPropertyList &propList);
+
+- virtual void startDocument();
+- virtual void endDocument();
++ virtual void startDocument(const librevenge::RVNGPropertyList &propList);
++ virtual void endDocument();
+
+- virtual void openPageSpan(const WPXPropertyList &propList);
+- virtual void closePageSpan() {}
+- virtual void openHeader(const WPXPropertyList &propList);
+- virtual void closeHeader();
+- virtual void openFooter(const WPXPropertyList &propList);
+- virtual void closeFooter();
+-
+- virtual void openParagraph(const WPXPropertyList &propList, const WPXPropertyListVector &tabStops);
+- virtual void closeParagraph() {}
+-
+- virtual void openSpan(const WPXPropertyList &propList);
+- virtual void closeSpan() {}
+-
+- virtual void openSection(const WPXPropertyList &propList, const WPXPropertyListVector &columns);
+- virtual void closeSection() {}
+-
+- virtual void insertTab();
+- virtual void insertText(const WPXString &text);
+- virtual void insertLineBreak();
+-
+- virtual void defineOrderedListLevel(const WPXPropertyList &propList);
+- virtual void defineUnorderedListLevel(const WPXPropertyList &propList);
+- virtual void openOrderedListLevel(const WPXPropertyList &propList);
+- virtual void openUnorderedListLevel(const WPXPropertyList &propList);
+- virtual void closeOrderedListLevel();
+- virtual void closeUnorderedListLevel();
+- virtual void openListElement(const WPXPropertyList &propList, const WPXPropertyListVector &tabStops);
+- virtual void closeListElement() {}
+-
+- virtual void openFootnote(const WPXPropertyList &propList);
+- virtual void closeFootnote();
+- virtual void openEndnote(const WPXPropertyList &propList);
+- virtual void closeEndnote();
+-
+- virtual void openTable(const WPXPropertyList &propList, const WPXPropertyListVector &columns);
+- virtual void openTableRow(const WPXPropertyList &propList);
+- virtual void closeTableRow() {}
+- virtual void openTableCell(const WPXPropertyList &propList);
+- virtual void closeTableCell() {}
+- 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&) {}
++ virtual void defineEmbeddedFont(const librevenge::RVNGPropertyList & /* propList */) {}
+
++ virtual void definePageStyle(const librevenge::RVNGPropertyList &) {}
++ virtual void openPageSpan(const librevenge::RVNGPropertyList &propList);
++ virtual void closePageSpan() {}
++ virtual void openHeader(const librevenge::RVNGPropertyList &propList);
++ virtual void closeHeader();
++ virtual void openFooter(const librevenge::RVNGPropertyList &propList);
++ virtual void closeFooter();
++
++ virtual void defineSectionStyle(const librevenge::RVNGPropertyList &) {}
++ virtual void openSection(const librevenge::RVNGPropertyList &propList);
++ virtual void closeSection() {}
++
++ virtual void defineParagraphStyle(const librevenge::RVNGPropertyList &) {}
++ virtual void openParagraph(const librevenge::RVNGPropertyList &propList);
++ virtual void closeParagraph() {}
++
++ virtual void defineCharacterStyle(const librevenge::RVNGPropertyList &) {}
++ virtual void openSpan(const librevenge::RVNGPropertyList &propList);
++ virtual void closeSpan() {}
++
++ virtual void openLink(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void closeLink() {}
++
++ virtual void insertTab();
++ virtual void insertText(const librevenge::RVNGString &text);
++ virtual void insertSpace();
++ virtual void insertLineBreak();
++ virtual void insertField(const librevenge::RVNGPropertyList & /* propList */) {}
++
++ virtual void openOrderedListLevel(const librevenge::RVNGPropertyList &propList);
++ virtual void openUnorderedListLevel(const librevenge::RVNGPropertyList &propList);
++ virtual void closeOrderedListLevel();
++ virtual void closeUnorderedListLevel();
++ virtual void openListElement(const librevenge::RVNGPropertyList &propList);
++ virtual void closeListElement() {}
++
++ virtual void openFootnote(const librevenge::RVNGPropertyList &propList);
++ virtual void closeFootnote();
++ virtual void openEndnote(const librevenge::RVNGPropertyList &propList);
++ virtual void closeEndnote();
++ virtual void openComment(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void closeComment() {}
++ virtual void openTextBox(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void closeTextBox() {}
++
++ virtual void openTable(const librevenge::RVNGPropertyList &propList);
++ virtual void openTableRow(const librevenge::RVNGPropertyList &propList);
++ virtual void closeTableRow() {}
++ virtual void openTableCell(const librevenge::RVNGPropertyList &propList);
++ virtual void closeTableCell() {}
++ virtual void insertCoveredTableCell(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void closeTable();
++
++ virtual void openFrame(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void closeFrame() {}
++
++ virtual void openGroup(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void closeGroup() {}
++
++ virtual void defineGraphicStyle(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void drawRectangle(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void drawEllipse(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void drawPolygon(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void drawPolyline(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void drawPath(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void drawConnector(const librevenge::RVNGPropertyList & /* propList */) {}
++
++ virtual void insertBinaryObject(const librevenge::RVNGPropertyList & /* propList */) {}
++ virtual void insertEquation(const librevenge::RVNGPropertyList & /* propList */) {}
+
+ protected:
+ virtual UT_Error _loadFile(GsfInput * input);
diff --git a/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.cpp b/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.cpp
new file mode 100644
index 00000000000..1e87a858f54
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.cpp
@@ -0,0 +1,55 @@
+$NetBSD: patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
+* adapt wordperfect plugins to dependecies available in pkgsrc
+ from abiword svn date 2014-12-27
+--- plugins/wordperfect/xp/ie_impexp_WordPerfect.cpp.orig 2013-04-07 13:53:03.000000000 +0000
++++ plugins/wordperfect/xp/ie_impexp_WordPerfect.cpp
+@@ -35,7 +35,6 @@
+ ABI_PLUGIN_DECLARE("WordPerfect")
+
+ static IE_Imp_WordPerfect_Sniffer * m_ImpSniffer = 0;
+-static IE_Exp_WordPerfect_Sniffer * m_ExpSniffer = 0;
+
+ #ifdef HAVE_LIBWPS
+ static IE_Imp_MSWorks_Sniffer * m_MSWorks_ImpSniffer = 0;
+@@ -49,13 +48,7 @@ int abi_plugin_register (XAP_ModuleInfo
+ m_ImpSniffer = new IE_Imp_WordPerfect_Sniffer ();
+ }
+
+- if (!m_ExpSniffer)
+- {
+- m_ExpSniffer = new IE_Exp_WordPerfect_Sniffer ();
+- }
+-
+ UT_ASSERT (m_ImpSniffer);
+- UT_ASSERT (m_ExpSniffer);
+
+ #ifdef HAVE_LIBWPS
+ if (!m_MSWorks_ImpSniffer)
+@@ -79,7 +72,7 @@ int abi_plugin_register (XAP_ModuleInfo
+ mi->usage = "No Usage";
+
+ IE_Imp::registerImporter (m_ImpSniffer);
+- //IE_Exp::registerExporter (m_ExpSniffer);
++
+ return 1;
+ }
+
+@@ -93,18 +86,11 @@ int abi_plugin_unregister (XAP_ModuleInf
+ mi->usage = 0;
+
+ UT_ASSERT (m_ImpSniffer);
+- UT_ASSERT (m_ExpSniffer);
+
+ IE_Imp::unregisterImporter (m_ImpSniffer);
+ delete m_ImpSniffer;
+ m_ImpSniffer = 0;
+
+- /*
+- IE_Exp::unregisterExporter (m_ExpSniffer);
+- delete m_ExpSniffer;
+- m_ExpSniffer = 0;
+- */
+-
+ #ifdef HAVE_LIBWPS
+ IE_Imp::unregisterImporter (m_MSWorks_ImpSniffer);
+ delete m_MSWorks_ImpSniffer;
diff --git a/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.h b/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.h
new file mode 100644
index 00000000000..056bd3ae21c
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.h
@@ -0,0 +1,13 @@
+$NetBSD: patch-plugins_wordperfect_xp_ie__impexp__WordPerfect.h,v 1.1 2015/09/13 21:32:13 nros Exp $
+* adapt wordperfect plugins to dependecies available in pkgsrc
+ from abiword svn date 2014-12-27
+--- plugins/wordperfect/xp/ie_impexp_WordPerfect.h.orig 2013-04-07 13:53:03.000000000 +0000
++++ plugins/wordperfect/xp/ie_impexp_WordPerfect.h
+@@ -24,7 +24,6 @@
+ */
+
+ #include "ie_imp_WordPerfect.h"
+-#include "ie_exp_WordPerfect.h"
+ #include "xap_Module.h"
+
+ #define IE_MIMETYPE_WP_51 "application/wordperfect5.1"
diff --git a/editors/abiword/patches/patch-plugins_wpg_Makefile.am b/editors/abiword/patches/patch-plugins_wpg_Makefile.am
new file mode 100644
index 00000000000..d623237390b
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wpg_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_wpg_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/wpg/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/wpg/Makefile.am
+@@ -11,7 +11,7 @@ wpg_la_LIBADD = \
+ wpg_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ wpg_la_SOURCES =
+ nodist_EXTRA_wpg_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-plugins_wpg_xp_ie__impGraphic__WPG.cpp b/editors/abiword/patches/patch-plugins_wpg_xp_ie__impGraphic__WPG.cpp
new file mode 100644
index 00000000000..1a065d11e44
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_wpg_xp_ie__impGraphic__WPG.cpp
@@ -0,0 +1,252 @@
+$NetBSD: patch-plugins_wpg_xp_ie__impGraphic__WPG.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
+* adapt wordperfect plugins to dependecies available in pkgsrc
+ from abiword svn date 2014-12-27
+--- plugins/wpg/xp/ie_impGraphic_WPG.cpp.orig 2013-04-07 13:53:03.000000000 +0000
++++ plugins/wpg/xp/ie_impGraphic_WPG.cpp
+@@ -31,37 +31,43 @@
+ #include <gsf/gsf-input-memory.h>
+ #include <gsf/gsf-input-stdio.h>
+ #include <gsf/gsf-infile-msole.h>
+-#include <libwpd-stream/libwpd-stream.h>
++#include <gsf/gsf-infile-zip.h>
++#include <librevenge-stream/librevenge-stream.h>
+ #include "xap_Module.h"
+
+ using libwpg::WPGraphics;
+
+ ABI_PLUGIN_DECLARE("WPG")
+
+-class AbiWordPerfectGraphicsInputStream : public WPXInputStream
++class AbiWordPerfectGraphicsInputStream : public librevenge::RVNGInputStream
+ {
+ public:
+ AbiWordPerfectGraphicsInputStream(GsfInput *input);
+ ~AbiWordPerfectGraphicsInputStream();
+
+- virtual bool isOLEStream();
+- virtual WPXInputStream * getDocumentOLEStream();
+- virtual WPXInputStream * getDocumentOLEStream(const char * name);
++ virtual bool isStructured();
++ virtual unsigned subStreamCount();
++ virtual const char* subStreamName(unsigned);
++ bool existsSubStream(const char*);
++ virtual librevenge::RVNGInputStream* getSubStreamByName(const char*);
++ virtual librevenge::RVNGInputStream* getSubStreamById(unsigned);
+ virtual const unsigned char *read(unsigned long numBytes, unsigned long &numBytesRead);
+- virtual int seek(long offset, WPX_SEEK_TYPE seekType);
++ virtual int seek(long offset, librevenge::RVNG_SEEK_TYPE seekType);
+ virtual long tell();
+- virtual bool atEOS();
++ virtual bool isEnd();
+
+ private:
+
+ GsfInput *m_input;
+ GsfInfile *m_ole;
++ std::map<unsigned, std::string> m_substreams;
+ };
+
+ AbiWordPerfectGraphicsInputStream::AbiWordPerfectGraphicsInputStream(GsfInput *input) :
+- WPXInputStream(),
++ librevenge::RVNGInputStream(),
+ m_input(input),
+- m_ole(NULL)
++ m_ole(NULL),
++ m_substreams()
+ {
+ g_object_ref(G_OBJECT(input));
+ }
+@@ -86,45 +92,115 @@ const unsigned char * AbiWordPerfectGrap
+ return buf;
+ }
+
+-int AbiWordPerfectGraphicsInputStream::seek(long offset, WPX_SEEK_TYPE seekType)
++int AbiWordPerfectGraphicsInputStream::seek(long offset, librevenge::RVNG_SEEK_TYPE seekType)
+ {
+ GSeekType gsfSeekType = G_SEEK_SET;
+ switch(seekType)
+ {
+- case WPX_SEEK_CUR:
++ case librevenge::RVNG_SEEK_CUR:
+ gsfSeekType = G_SEEK_CUR;
+ break;
+- case WPX_SEEK_SET:
++ case librevenge::RVNG_SEEK_SET:
+ gsfSeekType = G_SEEK_SET;
+ break;
++ case librevenge::RVNG_SEEK_END:
++ gsfSeekType = G_SEEK_END;
++ break;
+ }
+
+ return gsf_input_seek(m_input, offset, gsfSeekType);
+ }
+
+-bool AbiWordPerfectGraphicsInputStream::isOLEStream()
++bool AbiWordPerfectGraphicsInputStream::isStructured()
+ {
+ if (!m_ole)
+ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
+
+- if (m_ole != NULL)
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
++ if (m_ole)
+ return true;
+
+ return false;
+ }
+
+-WPXInputStream * AbiWordPerfectGraphicsInputStream::getDocumentOLEStream()
++unsigned AbiWordPerfectGraphicsInputStream::subStreamCount()
+ {
+- return getDocumentOLEStream("PerfectOffice_MAIN");
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
++ if (m_ole)
++ {
++ int numChildren = gsf_infile_num_children(m_ole);
++ if (numChildren > 0)
++ return numChildren;
++ return 0;
++ }
++
++ return 0;
+ }
+
+-WPXInputStream * AbiWordPerfectGraphicsInputStream::getDocumentOLEStream(const char * name)
++const char * AbiWordPerfectGraphicsInputStream::subStreamName(unsigned id)
+ {
+- WPXInputStream *documentStream = NULL;
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
+
++ if (m_ole)
++ {
++ if ((int)id >= gsf_infile_num_children(m_ole))
++ {
++ return 0;
++ }
++ std::map<unsigned, std::string>::iterator i = m_substreams.lower_bound(id);
++ if (i == m_substreams.end() || m_substreams.key_comp()(id, i->first))
++ {
++ std::string name = gsf_infile_name_by_index(m_ole, (int)id);
++ i = m_substreams.insert(i, std::map<unsigned, std::string>::value_type(id, name));
++ }
++ return i->second.c_str();
++ }
++
++ return 0;
++}
++
++bool AbiWordPerfectGraphicsInputStream::existsSubStream(const char * name)
++{
+ if (!m_ole)
+ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
+
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
++ if (m_ole)
++ {
++ GsfInput *document = gsf_infile_child_by_name(m_ole, name);
++ if (document)
++ {
++ g_object_unref(G_OBJECT (document));
++ return true;
++ }
++ }
++
++ return false;
++}
++
++librevenge::RVNGInputStream * AbiWordPerfectGraphicsInputStream::getSubStreamByName(const char * name)
++{
++ librevenge::RVNGInputStream *documentStream = NULL;
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
+ if (m_ole)
+ {
+ GsfInput *document = gsf_infile_child_by_name(m_ole, name);
+@@ -138,12 +214,35 @@ WPXInputStream * AbiWordPerfectGraphicsI
+ return documentStream;
+ }
+
++librevenge::RVNGInputStream * AbiWordPerfectGraphicsInputStream::getSubStreamById(unsigned id)
++{
++ librevenge::RVNGInputStream *documentStream = NULL;
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_msole_new (m_input, NULL));
++
++ if (!m_ole)
++ m_ole = GSF_INFILE(gsf_infile_zip_new (m_input, NULL));
++
++ if (m_ole)
++ {
++ GsfInput *document = gsf_infile_child_by_index(m_ole, (int)id);
++ if (document)
++ {
++ documentStream = new AbiWordPerfectGraphicsInputStream(document);
++ g_object_unref(G_OBJECT (document)); // the only reference should be encapsulated within the new stream
++ }
++ }
++
++ return documentStream;
++}
++
+ long AbiWordPerfectGraphicsInputStream::tell()
+ {
+ return gsf_input_tell(m_input);
+ }
+
+-bool AbiWordPerfectGraphicsInputStream::atEOS()
++bool AbiWordPerfectGraphicsInputStream::isEnd()
+ {
+ return gsf_input_eof(m_input);
+ }
+@@ -244,14 +343,24 @@ UT_Error IE_Imp_WordPerfectGraphics_Snif
+ UT_Error IE_Imp_WordPerfectGraphics::importGraphic(GsfInput *input, FG_Graphic **ppfg)
+ {
+ AbiWordPerfectGraphicsInputStream gsfInput(input);
+- WPXString svgOutput;
+- if (WPGraphics::generateSVG(&gsfInput, svgOutput))
++ librevenge::RVNGString svgOutput;
++ librevenge::RVNGStringVector vec;
++ librevenge::RVNGSVGDrawingGenerator generator(vec, "");
++
++ if (!libwpg::WPGraphics::parse(&gsfInput, &generator) || vec.empty() || vec[0].empty())
+ {
+- 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;
++ return UT_ERROR;
+ }
+- return UT_ERROR;
++
++ svgOutput.append("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n");
++ svgOutput.append("<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"");
++ svgOutput.append(" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n");
++ svgOutput.append(vec[0]);
++ svgOutput.append("\n");
++
++ 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;
+ }
+
diff --git a/editors/abiword/patches/patch-plugins_xslfo_Makefile.am b/editors/abiword/patches/patch-plugins_xslfo_Makefile.am
new file mode 100644
index 00000000000..ef093bfe289
--- /dev/null
+++ b/editors/abiword/patches/patch-plugins_xslfo_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-plugins_xslfo_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- plugins/xslfo/Makefile.am.orig 2011-11-15 21:25:46.000000000 +0000
++++ plugins/xslfo/Makefile.am
+@@ -18,7 +18,7 @@ xslfo_la_LIBADD = \
+ xslfo_la_LDFLAGS = \
+ -avoid-version \
+ -module \
+- -no-undefined
++ -Wl,-no-undefined
+
+ xslfo_la_SOURCES =
+ nodist_EXTRA_xslfo_la_SOURCES = dummy.cpp
diff --git a/editors/abiword/patches/patch-src_Makefile.am b/editors/abiword/patches/patch-src_Makefile.am
new file mode 100644
index 00000000000..d74964d32b1
--- /dev/null
+++ b/editors/abiword/patches/patch-src_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-src_Makefile.am,v 1.1 2015/09/13 21:32:13 nros Exp $
+GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall
+to the linker. Prefix with "-Wl," to fix build.
+--- src/Makefile.am.orig 2013-02-20 00:39:42.000000000 +0000
++++ src/Makefile.am
+@@ -58,7 +58,7 @@ libabiword_@ABIWORD_SERIES@_la_CPPFLAGS
+ libabiword_@ABIWORD_SERIES@_la_LDFLAGS = \
+ $(DEPS_LIBS) \
+ $(CHAMPLAIN_LIBS) \
+- -no-undefined \
++ -Wl,-no-undefined \
+ -avoid-version \
+ -export-dynamic
+
diff --git a/editors/abiword/patches/patch-src_Makefile.in b/editors/abiword/patches/patch-src_Makefile.in
deleted file mode 100644
index 644ab789df2..00000000000
--- a/editors/abiword/patches/patch-src_Makefile.in
+++ /dev/null
@@ -1,34 +0,0 @@
-$NetBSD: patch-src_Makefile.in,v 1.1 2012/10/09 19:57:02 marino Exp $
-
-GCC 4.6+ chokes on "--no-undefined" which older versions of GCC let fall to
-the linker. Prefix with "-Wl," to fix build.
-
---- src/Makefile.in.orig 2012-10-09 18:55:25.000000000 +0000
-+++ src/Makefile.in
-@@ -503,7 +503,7 @@ libabiword_2_8_la_CPPFLAGS = \
- $(WP_CPPFLAGS) \
- -DABIWORD_DATADIR="\"$(ABIWORD_DATADIR)\""
-
--libabiword_2_8_la_LDFLAGS = $(DEPS_LIBS) --no-undefined -avoid-version \
-+libabiword_2_8_la_LDFLAGS = $(DEPS_LIBS) -Wl,--no-undefined -avoid-version \
- -export-dynamic $(am__append_6)
- libabiword_2_8_la_LIBADD = $(opt_libs) plugins/libplugins.la \
- text/fmt/xp/libxp.la text/ptbl/xp/libxp.la \
-@@ -538,7 +538,7 @@ WINDRES_CPPFLAGS = -I$(top_srcdir)/src/a
-
- @TOOLKIT_COCOA_TRUE@AbiWord_LDFLAGS = \
- @TOOLKIT_COCOA_TRUE@ $(DEPS_LIBS) \
--@TOOLKIT_COCOA_TRUE@ --no-undefined \
-+@TOOLKIT_COCOA_TRUE@ -Wl,--no-undefined \
- @TOOLKIT_COCOA_TRUE@ -avoid-version \
- @TOOLKIT_COCOA_TRUE@ -export-dynamic \
- @TOOLKIT_COCOA_TRUE@ -headerpad_max_install_names
-@@ -554,7 +554,7 @@ WINDRES_CPPFLAGS = -I$(top_srcdir)/src/a
-
- @TOOLKIT_COCOA_FALSE@abiword_LDFLAGS = \
- @TOOLKIT_COCOA_FALSE@ $(platform_ldflags) \
--@TOOLKIT_COCOA_FALSE@ --no-undefined \
-+@TOOLKIT_COCOA_FALSE@ -Wl,--no-undefined \
- @TOOLKIT_COCOA_FALSE@ -avoid-version \
- @TOOLKIT_COCOA_FALSE@ -export-dynamic
-
diff --git a/editors/abiword/patches/patch-src_af_util_xp_ut__endian.h b/editors/abiword/patches/patch-src_af_util_xp_ut__endian.h
new file mode 100644
index 00000000000..954f30e8148
--- /dev/null
+++ b/editors/abiword/patches/patch-src_af_util_xp_ut__endian.h
@@ -0,0 +1,18 @@
+$NetBSD: patch-src_af_util_xp_ut__endian.h,v 1.1 2015/09/13 21:32:13 nros Exp $
+
+--- src/af/util/xp/ut_endian.h.orig 2013-04-07 13:53:03.000000000 +0000
++++ src/af/util/xp/ut_endian.h
+@@ -49,6 +49,13 @@
+ #else
+ #define UT_BIG_ENDIAN
+ #endif
++#elif defined(__DragonFly__)
++ #include <sys/endian.h>
++ #if _BYTE_ORDER == _LITTLE_ENDIAN
++ #define UT_LITTLE_ENDIAN
++ #else
++ #define UT_BIG_ENDIAN
++ #endif
+ #elif defined(__FreeBSD__)
+ #include <machine/endian.h>
+ #if __BYTE_ORDER == __LITTLE_ENDIAN
diff --git a/editors/abiword/patches/patch-src_af_util_xp_ut__go__file.h b/editors/abiword/patches/patch-src_af_util_xp_ut__go__file.h
deleted file mode 100644
index 1663572522d..00000000000
--- a/editors/abiword/patches/patch-src_af_util_xp_ut__go__file.h
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD: patch-src_af_util_xp_ut__go__file.h,v 1.1 2012/05/03 06:16:42 wiz Exp $
-
-Fix build with glib-2.32.
-
---- src/af/util/xp/ut_go_file.h.orig 2009-08-27 13:27:10.000000000 +0000
-+++ src/af/util/xp/ut_go_file.h
-@@ -31,7 +31,6 @@
-
- #include <glib.h>
- #include <gsf/gsf.h>
--#include <glib/gerror.h>
- #include <time.h>
-
- G_BEGIN_DECLS
diff --git a/editors/abiword/patches/patch-ab b/editors/abiword/patches/patch-src_af_util_xp_ut__iconv.cpp
index 0f5ecb9891d..49a3f973a9e 100644
--- a/editors/abiword/patches/patch-ab
+++ b/editors/abiword/patches/patch-src_af_util_xp_ut__iconv.cpp
@@ -1,6 +1,6 @@
-$NetBSD: patch-ab,v 1.17 2010/11/26 14:49:50 adam Exp $
-
---- src/af/util/xp/ut_iconv.cpp.orig 2009-06-25 00:52:27.000000000 +0000
+$NetBSD: patch-src_af_util_xp_ut__iconv.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
+* NetBSD uses citrus iconv that has UCS-4
+--- src/af/util/xp/ut_iconv.cpp.orig 2013-04-07 13:53:03.000000000 +0000
+++ src/af/util/xp/ut_iconv.cpp
@@ -267,9 +267,11 @@ const char * ucs4Internal ()
#elif defined(_LIBICONV_H)
diff --git a/editors/abiword/patches/patch-ad b/editors/abiword/patches/patch-src_af_util_xp_ut__iconv.h
index ae5fe156f36..3e32598c8d2 100644
--- a/editors/abiword/patches/patch-ad
+++ b/editors/abiword/patches/patch-src_af_util_xp_ut__iconv.h
@@ -1,9 +1,13 @@
-$NetBSD: patch-ad,v 1.15 2010/11/26 14:49:50 adam Exp $
+$NetBSD: patch-src_af_util_xp_ut__iconv.h,v 1.1 2015/09/13 21:32:13 nros Exp $
---- src/af/util/xp/ut_iconv.h.orig 2009-06-25 00:52:27.000000000 +0000
+--- src/af/util/xp/ut_iconv.h.orig 2013-04-07 13:53:03.000000000 +0000
+++ src/af/util/xp/ut_iconv.h
-@@ -32,8 +32,14 @@
+@@ -30,8 +30,14 @@
+ #include "ut_types.h"
+ #endif
++#include <sys/param.h>
++
typedef void * UT_iconv_t;
+#if defined(__NetBSD__) && __NetBSD_Version__ >= 200000000
@@ -12,8 +16,4 @@ $NetBSD: patch-ad,v 1.15 2010/11/26 14:49:50 adam Exp $
+
#define UT_ICONV_INVALID ((UT_iconv_t)(-1))
-+#include <sys/param.h>
-+
#ifdef __cplusplus
-
-
diff --git a/editors/abiword/patches/patch-src_af_util_xp_ut__mbtowc.cpp b/editors/abiword/patches/patch-src_af_util_xp_ut__mbtowc.cpp
new file mode 100644
index 00000000000..5d884912871
--- /dev/null
+++ b/editors/abiword/patches/patch-src_af_util_xp_ut__mbtowc.cpp
@@ -0,0 +1,31 @@
+$NetBSD: patch-src_af_util_xp_ut__mbtowc.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
+* remove bom if it comes with the conversion
+ makes the rulers look correct on startup
+--- src/af/util/xp/ut_mbtowc.cpp.orig 2013-04-07 13:53:03.000000000 +0000
++++ src/af/util/xp/ut_mbtowc.cpp
+@@ -192,7 +192,24 @@ int UT_UCS4_mbtowc::mbtowc (UT_UCS4Char
+ gsize bytes_read = 0;
+ gsize bytes_written = 0;
+ GError* error = NULL;
+- gchar* out = g_convert_with_iconv(inptr, inlen, (GIConv)cd, &bytes_read, &bytes_written, &error);
++ gchar* out = NULL;
++ unsigned char bom_le[4] = {0xFF,0xFE,0,0};
++ unsigned char bom_be[4] = {0,0,0xFE,0xFF};
++
++ out = g_convert_with_iconv(inptr, inlen, (GIConv)cd, &bytes_read, &bytes_written, &error);
++ // if we get a bom with the conversion redo it to get one without a bom
++ if (out && bytes_written == 8)
++ {
++ if (memcmp(out, bom_be, 4) == 0 || memcmp(out, bom_le, 4) == 0)
++ {
++ bytes_read = 0;
++ bytes_written = 0;
++ error = NULL;
++ FREEP(out);
++ out = g_convert_with_iconv(inptr, inlen, (GIConv)cd, &bytes_read, &bytes_written, &error);
++ }
++ }
++
+ if (out && bytes_written == 4)
+ {
+ memcpy(&wc, out, 4);
diff --git a/editors/abiword/patches/patch-sa b/editors/abiword/patches/patch-src_af_util_xp_ut__misc.cpp
index 4440c95b854..7ebdb5b480d 100644
--- a/editors/abiword/patches/patch-sa
+++ b/editors/abiword/patches/patch-src_af_util_xp_ut__misc.cpp
@@ -1,8 +1,8 @@
-$NetBSD: patch-sa,v 1.3 2010/11/26 14:49:50 adam Exp $
+$NetBSD: patch-src_af_util_xp_ut__misc.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
---- src/af/util/xp/ut_misc.cpp.orig 2009-06-28 22:09:08.000000000 +0000
+--- src/af/util/xp/ut_misc.cpp.orig 2013-04-07 13:53:03.000000000 +0000
+++ src/af/util/xp/ut_misc.cpp
-@@ -625,7 +625,7 @@ const gchar ** UT_splitPropsToArray(gcha
+@@ -589,7 +589,7 @@ const gchar ** UT_splitPropsToArray(gcha
}
char * semi = NULL;
@@ -11,7 +11,7 @@ $NetBSD: patch-sa,v 1.3 2010/11/26 14:49:50 adam Exp $
while((semi = (char *) strchr(p, ';')))
{
*semi = 0;
-@@ -639,7 +639,7 @@ const gchar ** UT_splitPropsToArray(gcha
+@@ -603,7 +603,7 @@ const gchar ** UT_splitPropsToArray(gcha
const gchar ** pPropsArray = new const gchar *[2 * iPropCount + 1];
UT_return_val_if_fail( pPropsArray, NULL );
diff --git a/editors/abiword/patches/patch-src_text_ptbl_xp_pd__DocumentRDF.cpp b/editors/abiword/patches/patch-src_text_ptbl_xp_pd__DocumentRDF.cpp
new file mode 100644
index 00000000000..e6d263547b4
--- /dev/null
+++ b/editors/abiword/patches/patch-src_text_ptbl_xp_pd__DocumentRDF.cpp
@@ -0,0 +1,32 @@
+$NetBSD: patch-src_text_ptbl_xp_pd__DocumentRDF.cpp,v 1.1 2015/09/13 21:32:13 nros Exp $
+
+* fixes build on FreeBSD 10 with clang. From FreeBSD ports mailing list.
+ Applied upstream.
+ https://lists.freebsd.org/pipermail/freebsd-ports/2015-March/098621.html
+
+--- src/text/ptbl/xp/pd_DocumentRDF.cpp.orig 2015-04-04 22:33:15.000000000 +0000
++++ src/text/ptbl/xp/pd_DocumentRDF.cpp
+@@ -570,6 +570,11 @@ bool PD_URI::operator==(const std::strin
+ return m_value == b;
+ }
+
++bool PD_URI::operator<(const PD_URI& b) const
++{
++return m_value < b.m_value;
++}
++
+ PD_URI
+ PD_URI::prefixedToURI( PD_RDFModelHandle model ) const
+ {
+@@ -611,11 +616,6 @@ bool PD_URI::write( std::ostream& ss ) c
+ return true;
+ }
+
+-bool operator<( PD_URI a, PD_URI b)
+-{
+- return a.toString() < b.toString();
+-}
+-
+ bool operator<( std::pair< PD_URI, PD_URI > a, PD_URI b)
+ {
+ return a.first.toString() < b.toString();
diff --git a/editors/abiword/patches/patch-src_text_ptbl_xp_pd__DocumentRDF.h b/editors/abiword/patches/patch-src_text_ptbl_xp_pd__DocumentRDF.h
new file mode 100644
index 00000000000..3b12d543664
--- /dev/null
+++ b/editors/abiword/patches/patch-src_text_ptbl_xp_pd__DocumentRDF.h
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_text_ptbl_xp_pd__DocumentRDF.h,v 1.1 2015/09/13 21:32:13 nros Exp $
+* Fixes build on FreeBSD 10 with clang. From freebsd-ports mailing list.
+ Applied upstream.
+ https://lists.freebsd.org/pipermail/freebsd-ports/2015-March/098621.html
+
+--- src/text/ptbl/xp/pd_DocumentRDF.h.orig 2015-04-04 22:38:01.000000000 +0000
++++ src/text/ptbl/xp/pd_DocumentRDF.h
+@@ -68,6 +68,7 @@ class ABI_EXPORT PD_URI
+ bool isValid() const;
+ bool operator==(const PD_URI& b) const;
+ bool operator==(const std::string& b) const;
++ bool operator<(const PD_URI& b) const;
+
+ virtual bool read( std::istream& ss );
+ virtual bool write( std::ostream& ss ) const;