summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2017-12-27 17:05:40 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2017-12-27 17:05:51 +0000
commit483763f15bfb860b4d6639548aec334a4c4e9a09 (patch)
treee7b87bf547624345542e320f85e29ae2bb64d9de
parentReleasing progress-linux version 0.9.5-2~dschinn1. (diff)
downloadwriterperfect-483763f15bfb860b4d6639548aec334a4c4e9a09.zip
writerperfect-483763f15bfb860b4d6639548aec334a4c4e9a09.tar.xz
Merging upstream version 0.9.6.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
-rw-r--r--ChangeLog334
-rw-r--r--Makefile.in38
-rw-r--r--NEWS19
-rw-r--r--aclocal.m4355
-rw-r--r--build/Makefile.in30
-rw-r--r--build/win32/Makefile.in30
-rwxr-xr-xcompile9
-rw-r--r--config.h.in18
-rwxr-xr-xconfigure1717
-rw-r--r--configure.ac177
-rwxr-xr-xdepcomp6
-rw-r--r--m4/ax_cxx_compile_stdcxx.m4982
-rw-r--r--m4/ax_cxx_compile_stdcxx_11.m439
-rw-r--r--m4/wpft_libs.m41
-rwxr-xr-xmissing6
-rw-r--r--src/Makefile.in30
-rw-r--r--src/conv/Makefile.am2
-rw-r--r--src/conv/Makefile.in34
-rw-r--r--src/conv/abw/ABWConverter.cxx164
-rw-r--r--src/conv/abw/ABWConverter.hxx87
-rw-r--r--src/conv/abw/ABWStringDocumentHandler.cxx17
-rw-r--r--src/conv/abw/ABWStringDocumentHandler.hxx20
-rw-r--r--src/conv/abw/ABWWrapper.cxx65
-rw-r--r--src/conv/abw/ABWWrapper.hxx60
-rw-r--r--src/conv/abw/ABWWrapperMWAW.cxx72
-rw-r--r--src/conv/abw/ABWWrapperMWAW.hxx47
-rw-r--r--src/conv/abw/ABWWrapperSTAROFFICE.cxx71
-rw-r--r--src/conv/abw/ABWWrapperSTAROFFICE.hxx45
-rw-r--r--src/conv/abw/ABWWrapperWPD.cxx65
-rw-r--r--src/conv/abw/ABWWrapperWPD.hxx47
-rw-r--r--src/conv/abw/ABWWrapperWPS.cxx53
-rw-r--r--src/conv/abw/ABWWrapperWPS.hxx47
-rw-r--r--src/conv/abw/Makefile.am187
-rw-r--r--src/conv/abw/Makefile.in380
-rw-r--r--src/conv/abw/abw2abw.cxx112
-rw-r--r--src/conv/abw/ebook2abw.cxx107
-rw-r--r--src/conv/abw/mwaw2abw.cxx174
-rw-r--r--src/conv/abw/pages2abw.cxx129
-rw-r--r--src/conv/abw/sd2abw.cxx40
-rw-r--r--src/conv/abw/sd2abw.rc.in31
-rw-r--r--src/conv/abw/wpd2abw.cxx162
-rw-r--r--src/conv/abw/wpft2abw.cxx111
-rw-r--r--src/conv/abw/wpft2abw.rc.in31
-rw-r--r--src/conv/abw/wps2abw.cxx152
-rw-r--r--src/conv/epub/EpubConverter.cxx149
-rw-r--r--src/conv/epub/EpubConverter.hxx79
-rw-r--r--src/conv/epub/EpubPackage.cxx2
-rw-r--r--src/conv/epub/Makefile.am327
-rw-r--r--src/conv/epub/Makefile.in537
-rw-r--r--src/conv/epub/abw2epub.cxx94
-rw-r--r--src/conv/epub/cdr2epub.cxx80
-rw-r--r--src/conv/epub/cmx2epub.cxx79
-rw-r--r--src/conv/epub/ebook2epub.cxx88
-rw-r--r--src/conv/epub/fh2epub.cxx80
-rw-r--r--src/conv/epub/key2epub.cxx108
-rw-r--r--src/conv/epub/mwaw2epub.cxx116
-rw-r--r--src/conv/epub/pages2epub.cxx107
-rw-r--r--src/conv/epub/pmd2epub.cxx78
-rw-r--r--src/conv/epub/pub2epub.cxx78
-rw-r--r--src/conv/epub/qxp2epub.cxx39
-rw-r--r--src/conv/epub/qxp2epub.rc.in31
-rw-r--r--src/conv/epub/sd2epub.cxx40
-rw-r--r--src/conv/epub/sd2epub.rc.in31
-rw-r--r--src/conv/epub/vsd2epub.cxx78
-rw-r--r--src/conv/epub/vss2epub.cxx79
-rw-r--r--src/conv/epub/wpd2epub.cxx109
-rw-r--r--src/conv/epub/wpft2epub.cxx154
-rw-r--r--src/conv/epub/wpft2epub.rc.in31
-rw-r--r--src/conv/epub/wpg2epub.cxx78
-rw-r--r--src/conv/epub/wps2epub.cxx133
-rw-r--r--src/conv/epub/zmf2epub.cxx39
-rw-r--r--src/conv/epub/zmf2epub.rc.in31
-rw-r--r--src/conv/odf/Makefile.am392
-rw-r--r--src/conv/odf/Makefile.in699
-rw-r--r--src/conv/odf/OdfConverter.cxx242
-rw-r--r--src/conv/odf/OdfConverter.hxx93
-rw-r--r--src/conv/odf/OdfPackage.cxx248
-rw-r--r--src/conv/odf/OdfPackage.hxx65
-rw-r--r--src/conv/odf/OdfWrapper.cxx85
-rw-r--r--src/conv/odf/OdfWrapper.hxx67
-rw-r--r--src/conv/odf/OdfWrapperMSPUB.cxx84
-rw-r--r--src/conv/odf/OdfWrapperMSPUB.hxx47
-rw-r--r--src/conv/odf/OdfWrapperMWAW.cxx77
-rw-r--r--src/conv/odf/OdfWrapperMWAW.hxx50
-rw-r--r--src/conv/odf/OdfWrapperSTAROFFICE.cxx81
-rw-r--r--src/conv/odf/OdfWrapperSTAROFFICE.hxx50
-rw-r--r--src/conv/odf/OdfWrapperWPD.cxx78
-rw-r--r--src/conv/odf/OdfWrapperWPD.hxx46
-rw-r--r--src/conv/odf/OdfWrapperWPS.cxx55
-rw-r--r--src/conv/odf/OdfWrapperWPS.hxx49
-rw-r--r--src/conv/odf/abw2odt.cxx132
-rw-r--r--src/conv/odf/cdr2odg.cxx120
-rw-r--r--src/conv/odf/cmx2odg.cxx121
-rw-r--r--src/conv/odf/ebook2odt.cxx127
-rw-r--r--src/conv/odf/fh2odg.cxx121
-rw-r--r--src/conv/odf/key2odp.cxx143
-rw-r--r--src/conv/odf/mwaw2odf.cxx317
-rw-r--r--src/conv/odf/numbers2ods.cxx151
-rw-r--r--src/conv/odf/pages2odt.cxx151
-rw-r--r--src/conv/odf/pmd2odg.cxx121
-rw-r--r--src/conv/odf/pub2odg.cxx158
-rw-r--r--src/conv/odf/qxp2odg.cxx40
-rw-r--r--src/conv/odf/qxp2odg.rc.in31
-rw-r--r--src/conv/odf/sd2odf.cxx217
-rw-r--r--src/conv/odf/vsd2odg.cxx121
-rw-r--r--src/conv/odf/vss2odg.cxx122
-rw-r--r--src/conv/odf/wks2ods.cxx167
-rw-r--r--src/conv/odf/wpd2odt.cxx196
-rw-r--r--src/conv/odf/wpft2odf.cxx172
-rw-r--r--src/conv/odf/wpft2odf.rc.in31
-rw-r--r--src/conv/odf/wpg2odg.cxx121
-rw-r--r--src/conv/odf/wps2odt.cxx175
-rw-r--r--src/conv/odf/zmf2odg.cxx40
-rw-r--r--src/conv/odf/zmf2odg.rc.in31
-rw-r--r--src/conv/wrapper/Makefile.am130
-rw-r--r--src/conv/wrapper/Makefile.in1046
-rw-r--r--src/conv/wrapper/WPWrapperABW.cxx (renamed from src/conv/odf/StringDocumentHandler.cxx)32
-rw-r--r--src/conv/wrapper/WPWrapperABW.hxx48
-rw-r--r--src/conv/wrapper/WPWrapperCDR.cxx57
-rw-r--r--src/conv/wrapper/WPWrapperCDR.hxx51
-rw-r--r--src/conv/wrapper/WPWrapperEBOOK.cxx44
-rw-r--r--src/conv/wrapper/WPWrapperEBOOK.hxx48
-rw-r--r--src/conv/wrapper/WPWrapperETONYEK.cxx122
-rw-r--r--src/conv/wrapper/WPWrapperETONYEK.hxx53
-rw-r--r--src/conv/wrapper/WPWrapperFREEHAND.cxx44
-rw-r--r--src/conv/wrapper/WPWrapperFREEHAND.hxx48
-rw-r--r--src/conv/wrapper/WPWrapperMSPUB.cxx45
-rw-r--r--src/conv/wrapper/WPWrapperMSPUB.hxx47
-rw-r--r--src/conv/wrapper/WPWrapperMWAW.cxx464
-rw-r--r--src/conv/wrapper/WPWrapperMWAW.hxx51
-rw-r--r--src/conv/wrapper/WPWrapperPAGEMAKER.cxx45
-rw-r--r--src/conv/wrapper/WPWrapperPAGEMAKER.hxx48
-rw-r--r--src/conv/wrapper/WPWrapperQXP.cxx45
-rw-r--r--src/conv/wrapper/WPWrapperQXP.hxx48
-rw-r--r--src/conv/wrapper/WPWrapperSTAROFFICE.cxx74
-rw-r--r--src/conv/wrapper/WPWrapperSTAROFFICE.hxx50
-rw-r--r--src/conv/wrapper/WPWrapperVISIO.cxx45
-rw-r--r--src/conv/wrapper/WPWrapperVISIO.hxx (renamed from src/conv/odf/StringDocumentHandler.hxx)38
-rw-r--r--src/conv/wrapper/WPWrapperWPD.cxx59
-rw-r--r--src/conv/wrapper/WPWrapperWPD.hxx47
-rw-r--r--src/conv/wrapper/WPWrapperWPG.cxx44
-rw-r--r--src/conv/wrapper/WPWrapperWPG.hxx48
-rw-r--r--src/conv/wrapper/WPWrapperWPS.cxx264
-rw-r--r--src/conv/wrapper/WPWrapperWPS.hxx51
-rw-r--r--src/conv/wrapper/WPWrapperZMF.cxx44
-rw-r--r--src/conv/wrapper/WPWrapperZMF.hxx48
-rw-r--r--src/lib/Makefile.am20
-rw-r--r--src/lib/Makefile.in55
-rw-r--r--src/lib/OutputFileHelper.cxx50
-rw-r--r--src/lib/OutputFileHelper.hxx5
-rw-r--r--src/lib/UsageHelper.cxx26
-rw-r--r--src/lib/UsageHelper.hxx7
-rw-r--r--src/lib/UserOptions.cxx187
-rw-r--r--src/lib/UserOptions.hxx112
-rw-r--r--src/lib/WPWrapper.cxx77
-rw-r--r--src/lib/WPWrapper.hxx67
-rw-r--r--src/lib/writerperfect_utils.hxx9
157 files changed, 12777 insertions, 5978 deletions
diff --git a/ChangeLog b/ChangeLog
index 654c83c..2a009fc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,337 @@
+2017-12-13 David Tardon <dtardon@redhat.com> [7a8f9d2ba113a09d096c076db1b0a62e6f126d38]
+
+ cid#169511 copy newly added members
+
+
+2017-12-13 David Tardon <dtardon@redhat.com> [ee7ad45a2547dcb91c3386cbc4f4b019244a5f61]
+
+ prepare for a release
+
+
+2017-12-13 David Tardon <dtardon@redhat.com> [4bce821684cabce218a6ef55c61bb2a554b9b769]
+
+ must pass REVENGE_CFLAGS too
+
+ This is typically already present when FOOGEN_CFLAGS is defined by
+ pkg-config, but not when it's specified via configure's command line.
+
+2017-12-13 David Tardon <dtardon@redhat.com> [8e25b573d67839f6148310a728a631869f85fb3d]
+
+ switch to libepubgen 0.1, but allow 0.0 as fallback
+
+
+2017-12-01 Miklos Vajna <vmiklos@collabora.co.uk> [1806cd786c45a63988d7b69f6ae076491b85b6b9]
+
+ adapt to devel libepubgen once more
+
+
+2017-12-01 Miklos Vajna <vmiklos@collabora.co.uk> [337129ab240fba1082b044a69f457be789b97eff]
+
+ adapt to devel libepubgen
+
+
+2017-11-30 Miklos Vajna <vmiklos@collabora.co.uk> [ae05ff2576b74e0d37af335625400656416961fc]
+
+ Remove leftover debug print
+
+
+2017-11-28 Miklos Vajna <vmiklos@collabora.co.uk> [6a6c3422f75c8a2a2aac05803b919457ed1e650e]
+
+ epub: support generating fixed layout (vs reflowable one)
+
+ Example usage:
+
+ ./abw2epub --version=30 --layout=fixed test.abw test.epub
+
+2017-10-31 Fridrich Štrba <fridrich.strba@bluewin.ch> [57b8991c7fd4ca22e89244ef363a552f947e6218]
+
+ src/conv/odf/Makefile.am:110: error: wpft2odf_CFLAGS must be set with '=' before using '+='
+
+
+2017-10-28 David Tardon <dtardon@redhat.com> [e871e1c8aa69046e12fe8c9740ab13abeb51a0a7]
+
+ use config.h to pass ENABLE_EOT
+
+
+2017-10-28 David Tardon <dtardon@redhat.com> [9928981f837907a72afce73ba0042495f25f59ae]
+
+ pass EOT_CFLAGS to wpft2odf build
+
+
+2017-10-28 David Tardon <dtardon@redhat.com> [63bf3e5070688b75468c44e12db85b8cd59eb48e]
+
+ save some vertical space
+
+
+2017-10-25 osnola <alonso@loria.fr> [c3317eb6e752d434440f6166de4e041adabe4e06]
+
+ odf/OdfPackage.cxx: add code to escapeXML a chart's attribute, ie. it seems better to escape such attribute in writerperfect than in libodfgen and it is a new attribute...
+
+
+2017-10-17 Miklos Vajna <vmiklos@collabora.co.uk> [974619c977035cdcd28ab1f0ca5c6262c2ae21b9]
+
+ fix compilation with devel libepubgen
+
+
+2017-09-18 Miklos Vajna <vmiklos@collabora.co.uk> [72c92f56199cf908a1a67e993fd4b5b37bd44bcb]
+
+ epub: support generating inline styles (vs in-CSS ones)
+
+ Example usage:
+
+ ./abw2epub --version=30 --split=heading --styles=inline test.abw test.epub
+
+2017-09-10 Miklos Vajna <vmiklos@collabora.co.uk> [5bf4268339b1ee8cb913488079b42de32a9254a7]
+
+ m4: MSVC defines __cplusplus as 199711L still
+
+ See e.g.
+ <https://stackoverflow.com/questions/37503029/cplusplus-is-equal-to-199711-in-msvc-does-it-support-c11>,
+ on MSVC we can't depend on the value of __cplusplus, since that one is a
+ too low value, even if everything else works fine.
+
+2017-08-21 David Tardon <dtardon@redhat.com> [327eafd827c6aaa9c423537e72776e49f846ebbf]
+
+ allow compilation with released libepubgen
+
+
+2017-08-21 David Tardon <dtardon@redhat.com> [46ca4d3087439c992145dcd36240c72ff844f7a0]
+
+ adapt to libqxp API change
+
+
+2017-08-15 Miklos Vajna <vmiklos@collabora.co.uk> [2441c7ee43f9d8ce0c0edf75b961f246a317633e]
+
+ epub: support generating with custom split method
+
+ Example usage:
+
+ ./abw2epub --version=30 --split=heading test.abw test.epub
+
+2017-08-09 Miklos Vajna <vmiklos@collabora.co.uk> [aacd709c7ea3649158f761b45436697ef4ceb7c1]
+
+ epub: support generating both EPUB2 and EPUB3
+
+ Example usage:
+
+ - ./abw2epub --version=20 sections.abw test.epub
+ - ./abw2epub --version=30 sections.abw test.epub
+
+2017-07-13 David Tardon <dtardon@redhat.com> [728868921e580faafa8261be43c0d289b5423306]
+
+ add support for libqxp
+
+
+2017-05-03 David Tardon <dtardon@redhat.com> [c4bee6a3ee8e09798c646861b7ec7e03828e59f0]
+
+ avoid manual memory management
+
+
+2017-05-03 David Tardon <dtardon@redhat.com> [14f13f3ccce902c458b345c4d84061e670383eff]
+
+ astyle
+
+
+2017-05-03 David Tardon <dtardon@redhat.com> [fa26d4dc639621225513096ff16cfbf4e3e33592]
+
+ switch to C++11
+
+
+2017-05-03 David Tardon <dtardon@redhat.com> [da97b5fa5b86c933329744ad432fde356d92bba7]
+
+ ignore autotools backup files
+
+
+2016-12-13 Fridrich Štrba <fridrich.strba@bluewin.ch> [86090f65618a41d9140619009565a50202eb211b]
+
+ Case sensitive
+
+
+2016-11-22 osnola <alonso@loria.fr> [a648d24a632541a9e1e7a461100b43f0730cb57b]
+
+ conv/wrapper/WPWrapperMWAW.cxx: try to simplify the code which creates a structured input when a resource fork is found...
+
+
+2016-10-05 osnola <alonso@loria.fr> [9d892d1e58977975d42e6759a8c69b3d5a652e50]
+
+ WPWrapperWPS.cxx: include cstdio for fprintf, src/conv/*/Makefile.am: add the helper libraries after the wrapper libraries...
+
+
+2016-10-04 osnola <alonso@loria.fr> [912bd38acab422ba04e385370fda838e5c740609]
+
+ conv/wrapper/WPWrapperWPS.cxx: check if a Lotus's file is associated with a format file ; if yes, create a structured input which contains these two files.
+
+
+2016-08-28 osnola <alonso@loria.fr> [b7cd342b98120c7c7ccf38c31a89e8b6ed5c0277]
+
+ mwaw2*: add code to check if a file has a resource fork, if yes, try to encapsule it in MacMIME, a format that libmwaw can read...
+
+
+2016-08-26 osnola <alonso@loria.fr> [1e51e00b66a7555c4fe75d15cdbebdd7b30ea514]
+
+ UserOptions: add a function to set the output filename by hand which can be used to create emscripten application...
+
+
+2016-08-24 osnola <alonso@loria.fr> [e3112c2e27129b02449b2af5bd974f2af1643e21]
+
+ Correct some cppcheck warnings...
+
+
+2016-08-24 osnola <alonso@loria.fr> [ff6ce4e00e254756d22b6fb3b73bce6719a9489d]
+
+ Try to simplify the wrappers' definitions in src/conv/odf/.
+
+
+2016-08-23 osnola <alonso@loria.fr> [e327e75eaa7e4e829f283c12352227edec21cc2f]
+
+ Try to simplify the Makefile.am and the wrappers' definitions in src/conv/abw/.
+
+
+2016-08-23 osnola <alonso@loria.fr> [1602dbc56aafda2ea9c49b5f0d31236c4689fe06]
+
+ Correct some mistakes...
+
+
+2016-08-23 osnola <alonso@loria.fr> [54c14f7e5e36aad21c495b156582db7fe83f3d95]
+
+ src/conv/odf: use the new wrapper classes...
+
+
+2016-08-22 osnola <alonso@loria.fr> [430e8e7297fe64bdbe4ab1e984375cd2ed4baeae]
+
+ src/conv/abw: use the new wrapper classes...
+
+
+2016-08-22 osnola <alonso@loria.fr> [2bd0464bca1d0bf96a8c6653ee88413d6945b87d]
+
+ src/lib: create an abstract wrapper class to wrap import libraries, src/conv/wrapper: create wrapper for each import libraries, src/conv/epub: use the new wrapper classes...
+
+
+2016-08-20 osnola <alonso@loria.fr> [e6710a7e082f43688175152d29db47e426b60d4b]
+
+ src/conv/epub/EpubConverterMSPUB.cxx: oops, no need to look for libeot...
+
+
+2016-08-20 osnola <alonso@loria.fr> [c26c75d89d1d5933dcf1523113a4dc8ec9e354a5]
+
+ Try to remove some duplicated code: - src/conv/epub/EpubConverterXXX.?xx: create a class by library to code the format's checking and the parsing.
+
+
+2016-08-20 osnola <alonso@loria.fr> [4279e9ab87164498581dec42eb06b22a06e38472]
+
+ Try to remove some duplicated code: - src/conv/abw/ABWConverterXXX.?xx: create a class by library to code the format's checking and the parsing.
+
+
+2016-08-19 osnola <alonso@loria.fr> [cbba72c74176f30e8aedc4da0a394495e5e3fc8a]
+
+ Try to remove some duplicated code: - src/conv/odf/OdfConverter.?xx: add a class OdfConverter to regroup the parsing of the arguments, ... - src/conv/odf/OdfConverterXXX.?xx: create a class by library to code the format's checking and the parsing.
+
+
+2016-08-18 osnola <alonso@loria.fr> [28d12338333e3a75cf6a9f9a04318e86f98cf226]
+
+ Try to remove some duplicated code: - src/conv/epub/*xx: add a class EpubConverter to regroup the parsing of the arguments, ...
+
+
+2016-08-18 osnola <alonso@loria.fr> [54bb894ff8d8dfac778fcc958dcb14baa9ee67b2]
+
+ Try to remove some duplicated code: - src/conv/abw/*xx: add a class ABWConverter to regroup the parsing of the arguments, ...
+
+
+2016-08-17 osnola <alonso@loria.fr> [430ebacb2350133bcda9c10c1a5b40ba2c9d9917]
+
+ src/conv/odf/wpft2odf: add an executable which tries to convert a file by calling all configured import libraries...
+
+
+2016-08-17 osnola <alonso@loria.fr> [47b6c349b74770f3526d564971a9167c15120169]
+
+ src/conv/epub/wpft2epub: add an executable which tries to convert a file by calling all configured import libraries... m4/wpft_libs.m4: define ENABLE_LIBXXX for each import library.
+
+
+2016-08-17 osnola <alonso@loria.fr> [2a94f36f034e98aa0b9aa5cbf2708ad3a441e004]
+
+ src/conv/abw/ABWStringDocumentHandler: add a function to convert a RVNGSVGDrawing result in a basic RVNGBinaryData src/conv/abw/wpd2abw.cxx: check if libwpg is enabled before using it...
+
+
+2016-08-17 osnola <alonso@loria.fr> [5466012856ae417bf287bcd27fef36e13b856ff0]
+
+ Basic merge...
+
+
+2016-08-17 osnola <alonso@loria.fr> [3a73d719a60ae94ff211ffb72ca687f71e35c5f2]
+
+ src/conv/abw/wpft2abw: add an executable which tries to convert a file by calling all configured import libraries...
+
+
+2016-08-16 osnola <alonso@loria.fr> [61325ffdeda3bd8a48dddf3fbcf9613d73aa3853]
+
+ configure.ac: seems more coherent to test for have_libeot if we want to enable libeot...
+
+
+2016-08-16 osnola <alonso@loria.fr> [5841ee6e04fe1d899eebc1f5f4ad2ea16e82eb3b]
+
+ correct some compilers' errors...
+
+
+2016-08-15 osnola <alonso@loria.fr> [cce29e1edb963b2575d6a9032bb50edb1874520b]
+
+ src/conv/odf/*: create a class to package odf files + update the different classes to use it
+
+
+2016-08-15 osnola <alonso@loria.fr> [4ac29f1dd2d993e1087b5cd813ee39242a38d92f]
+
+ UserOptions: protect some fields and add corresponding accessors + modify remaining files to use these accessors...
+
+
+2016-08-14 osnola <alonso@loria.fr> [ba7a8b1368f5d8554bf37287eca37bf01b4ce707]
+
+ src/conv/abw*: try to simplifly the creation of the final file...
+
+
+2016-08-14 osnola <alonso@loria.fr> [7bb06dcbac7348ed3ad58758e5a93c4a1ba74ac3]
+
+ Try to remove some duplicated code: - src/conv/abw/*xx: modify code to use the new class UserOptions
+
+
+2016-08-14 osnola <alonso@loria.fr> [906c1e9255c803fcb62bcded43fa93567c8e5a09]
+
+ Try to remove some duplicated code: - src/conv/odf/*xx: modify code to use the new class UserOptions to be continued...
+
+
+2016-08-14 osnola <alonso@loria.fr> [6f560282f58a46757ad54576445a60730e314945]
+
+ Try to remove some duplicated code: - UserOptions.*xx: create a class to read/parse the arguments, - src/conv/odf/*xx: modify code to use this new class - OutputFileHelper: store the UserOptions and add some accessor to be continued...
+
+
+2016-08-06 osnola <alonso@loria.fr> [4a9fb2fd62eedca0e5ff0ffd7761e4e4cae26e40]
+
+ Add support for sd2abw...
+
+
+2016-08-06 osnola <alonso@loria.fr> [30f73b6110038cfa6831d6ce89cef71fca9d473c]
+
+ add support for sd2epub...
+
+
+2016-08-06 osnola <alonso@loria.fr> [089b99f4307d360b93165f9bde88775ea36f3d7a]
+
+ sd2odf: allows to convert .sdw files...
+
+
+2016-05-21 David Tardon <dtardon@redhat.com> [c4c239f1482405e37a901b9f48b02d59d5770985]
+
+ add support for libzmf
+
+
+2016-03-03 David Tardon <dtardon@redhat.com> [cbd1331f47dabfebeb9e594334be6edaded2b553]
+
+ update help output for fh2epub too
+
+
+2016-03-03 David Tardon <dtardon@redhat.com> [3d64d6fe369bc3aa999b283c6cb747ea47db9c46]
+
+ bump version
+
+
2016-03-03 David Tardon <dtardon@redhat.com> [d4de5d3e245dc7256d3f75d5c39f7476972d6c47]
prepare for a release
diff --git a/Makefile.in b/Makefile.in
index af55d8e..86a7c5d 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -89,10 +89,12 @@ build_triplet = @build@
host_triplet = @host@
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/wpft_libs.m4 $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/wpft_libs.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
@@ -251,7 +253,6 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EOT_CFLAGS = @EOT_CFLAGS@
-EOT_CPPFLAGS = @EOT_CPPFLAGS@
EOT_LIBS = @EOT_LIBS@
EPUBGEN_CFLAGS = @EPUBGEN_CFLAGS@
EPUBGEN_LIBS = @EPUBGEN_LIBS@
@@ -266,6 +267,7 @@ FREEHAND_LIBS = @FREEHAND_LIBS@
GREP = @GREP@
GSF_CFLAGS = @GSF_CFLAGS@
GSF_LIBS = @GSF_LIBS@
+HAVE_CXX11 = @HAVE_CXX11@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -324,6 +326,10 @@ PMD2EPUB_WIN32_RESOURCE = @PMD2EPUB_WIN32_RESOURCE@
PMD2ODG_WIN32_RESOURCE = @PMD2ODG_WIN32_RESOURCE@
PUB2EPUB_WIN32_RESOURCE = @PUB2EPUB_WIN32_RESOURCE@
PUB2ODG_WIN32_RESOURCE = @PUB2ODG_WIN32_RESOURCE@
+QXP2EPUB_WIN32_RESOURCE = @QXP2EPUB_WIN32_RESOURCE@
+QXP2ODG_WIN32_RESOURCE = @QXP2ODG_WIN32_RESOURCE@
+QXP_CFLAGS = @QXP_CFLAGS@
+QXP_LIBS = @QXP_LIBS@
RANLIB = @RANLIB@
REVENGE_CFLAGS = @REVENGE_CFLAGS@
REVENGE_LIBS = @REVENGE_LIBS@
@@ -331,6 +337,8 @@ REVENGE_STREAM_CFLAGS = @REVENGE_STREAM_CFLAGS@
REVENGE_STREAM_LIBS = @REVENGE_STREAM_LIBS@
RVNGABW_CFLAGS = @RVNGABW_CFLAGS@
RVNGABW_LIBS = @RVNGABW_LIBS@
+SD2ABW_WIN32_RESOURCE = @SD2ABW_WIN32_RESOURCE@
+SD2EPUB_WIN32_RESOURCE = @SD2EPUB_WIN32_RESOURCE@
SD2ODF_WIN32_RESOURCE = @SD2ODF_WIN32_RESOURCE@
SED = @SED@
SET_MAKE = @SET_MAKE@
@@ -352,6 +360,9 @@ WPD2EPUB_WIN32_RESOURCE = @WPD2EPUB_WIN32_RESOURCE@
WPD2ODT_WIN32_RESOURCE = @WPD2ODT_WIN32_RESOURCE@
WPD_CFLAGS = @WPD_CFLAGS@
WPD_LIBS = @WPD_LIBS@
+WPFT2ABW_WIN32_RESOURCE = @WPFT2ABW_WIN32_RESOURCE@
+WPFT2EPUB_WIN32_RESOURCE = @WPFT2EPUB_WIN32_RESOURCE@
+WPFT2ODF_WIN32_RESOURCE = @WPFT2ODF_WIN32_RESOURCE@
WPG2EPUB_WIN32_RESOURCE = @WPG2EPUB_WIN32_RESOURCE@
WPG2ODG_WIN32_RESOURCE = @WPG2ODG_WIN32_RESOURCE@
WPG_CFLAGS = @WPG_CFLAGS@
@@ -365,6 +376,11 @@ WRITERPERFECT_MAJOR_VERSION = @WRITERPERFECT_MAJOR_VERSION@
WRITERPERFECT_MICRO_VERSION = @WRITERPERFECT_MICRO_VERSION@
WRITERPERFECT_MINOR_VERSION = @WRITERPERFECT_MINOR_VERSION@
WRITERPERFECT_VERSION = @WRITERPERFECT_VERSION@
+XATTR_CFLAGS = @XATTR_CFLAGS@
+ZMF2EPUB_WIN32_RESOURCE = @ZMF2EPUB_WIN32_RESOURCE@
+ZMF2ODG_WIN32_RESOURCE = @ZMF2ODG_WIN32_RESOURCE@
+ZMF_CFLAGS = @ZMF_CFLAGS@
+ZMF_LIBS = @ZMF_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
@@ -661,7 +677,7 @@ distdir: $(DISTFILES)
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
$(am__post_remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
@@ -685,7 +701,7 @@ dist-shar: distdir
@echo WARNING: "Support for shar distribution archives is" \
"deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+ shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
$(am__post_remove_distdir)
dist-zip: distdir
@@ -703,7 +719,7 @@ dist dist-all:
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
+ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lz*) \
@@ -713,7 +729,7 @@ distcheck: dist
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
+ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
diff --git a/NEWS b/NEWS
index b204239..4970f51 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,24 @@
NEWS:
+0.9.5 -> 0.9.6:
+- Add support for conversion of Zoner Draw documents using libzmf. The
+ new tools are called zmf2odg and zmf2epub.
+- Handle StarOffice Writer documents (.sdw).
+- Allow conversion of StarOffice documents to EPUB and Abiword too. The
+ new tools are called sd2epub and sd2abw.
+- Fix configure check for libeot.
+- Add universal conversion tools that handle any supported input format.
+ The new tools are called wpft2abw, wpft2ebub and wpfg2odf.
+- Fix some CppCheck warnings.
+- Let mwaw2* properly handle files with a resource fork.
+- Handle Lotus files with an associated format file.
+- Switch to C++11.
+- Add support for conversion of QuarkXPress documents using libqxp. The
+ new tools are called qxp2odg and qxp2epub.
+- Default to libepubgen 0.1 (0.0 is used as a fallback).
+- Add options for setting EPUB version, splitting method and layout type
+ (only for EPUB 3.0) to all EPUB-converting tools.
+
0.9.4 -> 0.9.5:
- Make numbers2ods actually work.
- Convert Pict images to SVG in mwaw2abw.
diff --git a/aclocal.m4 b/aclocal.m4
index 8c56c1a..6cd53e3 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.15 -*- Autoconf -*-
+# generated automatically by aclocal 1.15.1 -*- Autoconf -*-
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2017 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -20,32 +20,101 @@ You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
-# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
-# serial 1 (pkg-config-0.24)
-#
-# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_require_defined.html
+# ===========================================================================
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
+# SYNOPSIS
#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
+# AX_REQUIRE_DEFINED(MACRO)
#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# DESCRIPTION
#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# AX_REQUIRE_DEFINED is a simple helper for making sure other macros have
+# been defined and thus are available for use. This avoids random issues
+# where a macro isn't expanded. Instead the configure script emits a
+# non-fatal:
+#
+# ./configure: line 1673: AX_CFLAGS_WARN_ALL: command not found
+#
+# It's like AC_REQUIRE except it doesn't expand the required macro.
+#
+# Here's an example:
+#
+# AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG])
+#
+# LICENSE
+#
+# Copyright (c) 2014 Mike Frysinger <vapier@gentoo.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 2
+
+AC_DEFUN([AX_REQUIRE_DEFINED], [dnl
+ m4_ifndef([$1], [m4_fatal([macro ]$1[ is not defined; is a m4 file missing?])])
+])dnl AX_REQUIRE_DEFINED
-# PKG_PROG_PKG_CONFIG([MIN-VERSION])
-# ----------------------------------
+# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
+# serial 11 (pkg-config-0.29.1)
+
+dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
+dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
+dnl
+dnl This program is free software; you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation; either version 2 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful, but
+dnl WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+dnl General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program; if not, write to the Free Software
+dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+dnl 02111-1307, USA.
+dnl
+dnl As a special exception to the GNU General Public License, if you
+dnl distribute this file as part of a program that contains a
+dnl configuration script generated by Autoconf, you may include it under
+dnl the same distribution terms that you use for the rest of that
+dnl program.
+
+dnl PKG_PREREQ(MIN-VERSION)
+dnl -----------------------
+dnl Since: 0.29
+dnl
+dnl Verify that the version of the pkg-config macros are at least
+dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
+dnl installed version of pkg-config, this checks the developer's version
+dnl of pkg.m4 when generating configure.
+dnl
+dnl To ensure that this macro is defined, also add:
+dnl m4_ifndef([PKG_PREREQ],
+dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
+dnl
+dnl See the "Since" comment for each macro you use to see what version
+dnl of the macros you require.
+m4_defun([PKG_PREREQ],
+[m4_define([PKG_MACROS_VERSION], [0.29.1])
+m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
+ [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
+])dnl PKG_PREREQ
+
+dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
+dnl ----------------------------------
+dnl Since: 0.16
+dnl
+dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
+dnl first found in the path. Checks that the version of pkg-config found
+dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
+dnl used since that's the first version where most current features of
+dnl pkg-config existed.
AC_DEFUN([PKG_PROG_PKG_CONFIG],
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
@@ -67,18 +136,19 @@ if test -n "$PKG_CONFIG"; then
PKG_CONFIG=""
fi
fi[]dnl
-])# PKG_PROG_PKG_CONFIG
+])dnl PKG_PROG_PKG_CONFIG
-# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# Check to see whether a particular set of modules exists. Similar
-# to PKG_CHECK_MODULES(), but does not set variables or print errors.
-#
-# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-# only at the first occurence in configure.ac, so if the first place
-# it's called might be skipped (such as if it is within an "if", you
-# have to call PKG_CHECK_EXISTS manually
-# --------------------------------------------------------------
+dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl -------------------------------------------------------------------
+dnl Since: 0.18
+dnl
+dnl Check to see whether a particular set of modules exists. Similar to
+dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
+dnl
+dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+dnl only at the first occurence in configure.ac, so if the first place
+dnl it's called might be skipped (such as if it is within an "if", you
+dnl have to call PKG_CHECK_EXISTS manually
AC_DEFUN([PKG_CHECK_EXISTS],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
if test -n "$PKG_CONFIG" && \
@@ -88,8 +158,10 @@ m4_ifvaln([$3], [else
$3])dnl
fi])
-# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-# ---------------------------------------------
+dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
+dnl ---------------------------------------------
+dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
+dnl pkg_failed based on the result.
m4_define([_PKG_CONFIG],
[if test -n "$$1"; then
pkg_cv_[]$1="$$1"
@@ -101,10 +173,11 @@ m4_define([_PKG_CONFIG],
else
pkg_failed=untried
fi[]dnl
-])# _PKG_CONFIG
+])dnl _PKG_CONFIG
-# _PKG_SHORT_ERRORS_SUPPORTED
-# -----------------------------
+dnl _PKG_SHORT_ERRORS_SUPPORTED
+dnl ---------------------------
+dnl Internal check to see if pkg-config supports short errors.
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@@ -112,19 +185,17 @@ if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
else
_pkg_short_errors_supported=no
fi[]dnl
-])# _PKG_SHORT_ERRORS_SUPPORTED
+])dnl _PKG_SHORT_ERRORS_SUPPORTED
-# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND])
-#
-#
-# Note that if there is a possibility the first call to
-# PKG_CHECK_MODULES might not happen, you should be sure to include an
-# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
-#
-#
-# --------------------------------------------------------------
+dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+dnl [ACTION-IF-NOT-FOUND])
+dnl --------------------------------------------------------------
+dnl Since: 0.4.0
+dnl
+dnl Note that if there is a possibility the first call to
+dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
+dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
AC_DEFUN([PKG_CHECK_MODULES],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
@@ -178,16 +249,40 @@ else
AC_MSG_RESULT([yes])
$3
fi[]dnl
-])# PKG_CHECK_MODULES
+])dnl PKG_CHECK_MODULES
-# PKG_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable pkgconfigdir as the location where a module
-# should install pkg-config .pc files. By default the directory is
-# $libdir/pkgconfig, but the default can be changed by passing
-# DIRECTORY. The user can override through the --with-pkgconfigdir
-# parameter.
+dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+dnl [ACTION-IF-NOT-FOUND])
+dnl ---------------------------------------------------------------------
+dnl Since: 0.29
+dnl
+dnl Checks for existence of MODULES and gathers its build flags with
+dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
+dnl and VARIABLE-PREFIX_LIBS from --libs.
+dnl
+dnl Note that if there is a possibility the first call to
+dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
+dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
+dnl configure.ac.
+AC_DEFUN([PKG_CHECK_MODULES_STATIC],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+_save_PKG_CONFIG=$PKG_CONFIG
+PKG_CONFIG="$PKG_CONFIG --static"
+PKG_CHECK_MODULES($@)
+PKG_CONFIG=$_save_PKG_CONFIG[]dnl
+])dnl PKG_CHECK_MODULES_STATIC
+
+
+dnl PKG_INSTALLDIR([DIRECTORY])
+dnl -------------------------
+dnl Since: 0.27
+dnl
+dnl Substitutes the variable pkgconfigdir as the location where a module
+dnl should install pkg-config .pc files. By default the directory is
+dnl $libdir/pkgconfig, but the default can be changed by passing
+dnl DIRECTORY. The user can override through the --with-pkgconfigdir
+dnl parameter.
AC_DEFUN([PKG_INSTALLDIR],
[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
m4_pushdef([pkg_description],
@@ -198,16 +293,18 @@ AC_ARG_WITH([pkgconfigdir],
AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
m4_popdef([pkg_default])
m4_popdef([pkg_description])
-]) dnl PKG_INSTALLDIR
+])dnl PKG_INSTALLDIR
-# PKG_NOARCH_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable noarch_pkgconfigdir as the location where a
-# module should install arch-independent pkg-config .pc files. By
-# default the directory is $datadir/pkgconfig, but the default can be
-# changed by passing DIRECTORY. The user can override through the
-# --with-noarch-pkgconfigdir parameter.
+dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
+dnl --------------------------------
+dnl Since: 0.27
+dnl
+dnl Substitutes the variable noarch_pkgconfigdir as the location where a
+dnl module should install arch-independent pkg-config .pc files. By
+dnl default the directory is $datadir/pkgconfig, but the default can be
+dnl changed by passing DIRECTORY. The user can override through the
+dnl --with-noarch-pkgconfigdir parameter.
AC_DEFUN([PKG_NOARCH_INSTALLDIR],
[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
m4_pushdef([pkg_description],
@@ -218,13 +315,15 @@ AC_ARG_WITH([noarch-pkgconfigdir],
AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
m4_popdef([pkg_default])
m4_popdef([pkg_description])
-]) dnl PKG_NOARCH_INSTALLDIR
+])dnl PKG_NOARCH_INSTALLDIR
-# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
-# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-# -------------------------------------------
-# Retrieves the value of the pkg-config variable for the given module.
+dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl -------------------------------------------
+dnl Since: 0.28
+dnl
+dnl Retrieves the value of the pkg-config variable for the given module.
AC_DEFUN([PKG_CHECK_VAR],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
@@ -233,9 +332,77 @@ _PKG_CONFIG([$1], [variable="][$3]["], [$2])
AS_VAR_COPY([$1], [pkg_cv_][$1])
AS_VAR_IF([$1], [""], [$5], [$4])dnl
-])# PKG_CHECK_VAR
+])dnl PKG_CHECK_VAR
-# Copyright (C) 2002-2014 Free Software Foundation, Inc.
+dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES,
+dnl [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND],
+dnl [DESCRIPTION], [DEFAULT])
+dnl ------------------------------------------
+dnl
+dnl Prepare a "--with-" configure option using the lowercase
+dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and
+dnl PKG_CHECK_MODULES in a single macro.
+AC_DEFUN([PKG_WITH_MODULES],
+[
+m4_pushdef([with_arg], m4_tolower([$1]))
+
+m4_pushdef([description],
+ [m4_default([$5], [build with ]with_arg[ support])])
+
+m4_pushdef([def_arg], [m4_default([$6], [auto])])
+m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes])
+m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no])
+
+m4_case(def_arg,
+ [yes],[m4_pushdef([with_without], [--without-]with_arg)],
+ [m4_pushdef([with_without],[--with-]with_arg)])
+
+AC_ARG_WITH(with_arg,
+ AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),,
+ [AS_TR_SH([with_]with_arg)=def_arg])
+
+AS_CASE([$AS_TR_SH([with_]with_arg)],
+ [yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)],
+ [auto],[PKG_CHECK_MODULES([$1],[$2],
+ [m4_n([def_action_if_found]) $3],
+ [m4_n([def_action_if_not_found]) $4])])
+
+m4_popdef([with_arg])
+m4_popdef([description])
+m4_popdef([def_arg])
+
+])dnl PKG_WITH_MODULES
+
+dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES,
+dnl [DESCRIPTION], [DEFAULT])
+dnl -----------------------------------------------
+dnl
+dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES
+dnl check._[VARIABLE-PREFIX] is exported as make variable.
+AC_DEFUN([PKG_HAVE_WITH_MODULES],
+[
+PKG_WITH_MODULES([$1],[$2],,,[$3],[$4])
+
+AM_CONDITIONAL([HAVE_][$1],
+ [test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"])
+])dnl PKG_HAVE_WITH_MODULES
+
+dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES,
+dnl [DESCRIPTION], [DEFAULT])
+dnl ------------------------------------------------------
+dnl
+dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after
+dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make
+dnl and preprocessor variable.
+AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES],
+[
+PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4])
+
+AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"],
+ [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])])
+])dnl PKG_HAVE_DEFINE_WITH_MODULES
+
+# Copyright (C) 2002-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -250,7 +417,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION],
[am__api_version='1.15'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.15], [],
+m4_if([$1], [1.15.1], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
@@ -266,12 +433,12 @@ m4_define([_AM_AUTOCONF_VERSION], [])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.15])dnl
+[AM_AUTOMAKE_VERSION([1.15.1])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-# Copyright (C) 2011-2014 Free Software Foundation, Inc.
+# Copyright (C) 2011-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -333,7 +500,7 @@ AC_SUBST([AR])dnl
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -385,7 +552,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -416,7 +583,7 @@ AC_CONFIG_COMMANDS_PRE(
Usually this means the macro was only invoked conditionally.]])
fi])])
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -607,7 +774,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -683,7 +850,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
# Do all the work for Automake. -*- Autoconf -*-
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -880,7 +1047,7 @@ for _am_header in $config_headers :; do
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -901,7 +1068,7 @@ if test x"${install_sh+set}" != xset; then
fi
AC_SUBST([install_sh])])
-# Copyright (C) 2003-2014 Free Software Foundation, Inc.
+# Copyright (C) 2003-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -922,7 +1089,7 @@ AC_SUBST([am__leading_dot])])
# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -972,7 +1139,7 @@ rm -f confinc confmf
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1011,7 +1178,7 @@ fi
# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1040,7 +1207,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1087,7 +1254,7 @@ AC_LANG_POP([C])])
# For backward compatibility.
AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1106,7 +1273,7 @@ AC_DEFUN([AM_RUN_LOG],
# Check to make sure that the build environment is sane. -*- Autoconf -*-
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1187,7 +1354,7 @@ AC_CONFIG_COMMANDS_PRE(
rm -f conftest.file
])
-# Copyright (C) 2009-2014 Free Software Foundation, Inc.
+# Copyright (C) 2009-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1247,7 +1414,7 @@ AC_SUBST([AM_BACKSLASH])dnl
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
])
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1275,7 +1442,7 @@ fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
-# Copyright (C) 2006-2014 Free Software Foundation, Inc.
+# Copyright (C) 2006-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1294,7 +1461,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
# Check how to create a tarball. -*- Autoconf -*-
-# Copyright (C) 2004-2014 Free Software Foundation, Inc.
+# Copyright (C) 2004-2017 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1425,6 +1592,8 @@ AC_SUBST([am__tar])
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
+m4_include([m4/ax_cxx_compile_stdcxx.m4])
+m4_include([m4/ax_cxx_compile_stdcxx_11.m4])
m4_include([m4/libtool.m4])
m4_include([m4/ltoptions.m4])
m4_include([m4/ltsugar.m4])
diff --git a/build/Makefile.in b/build/Makefile.in
index be24ccb..068903c 100644
--- a/build/Makefile.in
+++ b/build/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -89,10 +89,12 @@ build_triplet = @build@
host_triplet = @host@
subdir = build
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/wpft_libs.m4 $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/wpft_libs.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -228,7 +230,6 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EOT_CFLAGS = @EOT_CFLAGS@
-EOT_CPPFLAGS = @EOT_CPPFLAGS@
EOT_LIBS = @EOT_LIBS@
EPUBGEN_CFLAGS = @EPUBGEN_CFLAGS@
EPUBGEN_LIBS = @EPUBGEN_LIBS@
@@ -243,6 +244,7 @@ FREEHAND_LIBS = @FREEHAND_LIBS@
GREP = @GREP@
GSF_CFLAGS = @GSF_CFLAGS@
GSF_LIBS = @GSF_LIBS@
+HAVE_CXX11 = @HAVE_CXX11@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -301,6 +303,10 @@ PMD2EPUB_WIN32_RESOURCE = @PMD2EPUB_WIN32_RESOURCE@
PMD2ODG_WIN32_RESOURCE = @PMD2ODG_WIN32_RESOURCE@
PUB2EPUB_WIN32_RESOURCE = @PUB2EPUB_WIN32_RESOURCE@
PUB2ODG_WIN32_RESOURCE = @PUB2ODG_WIN32_RESOURCE@
+QXP2EPUB_WIN32_RESOURCE = @QXP2EPUB_WIN32_RESOURCE@
+QXP2ODG_WIN32_RESOURCE = @QXP2ODG_WIN32_RESOURCE@
+QXP_CFLAGS = @QXP_CFLAGS@
+QXP_LIBS = @QXP_LIBS@
RANLIB = @RANLIB@
REVENGE_CFLAGS = @REVENGE_CFLAGS@
REVENGE_LIBS = @REVENGE_LIBS@
@@ -308,6 +314,8 @@ REVENGE_STREAM_CFLAGS = @REVENGE_STREAM_CFLAGS@
REVENGE_STREAM_LIBS = @REVENGE_STREAM_LIBS@
RVNGABW_CFLAGS = @RVNGABW_CFLAGS@
RVNGABW_LIBS = @RVNGABW_LIBS@
+SD2ABW_WIN32_RESOURCE = @SD2ABW_WIN32_RESOURCE@
+SD2EPUB_WIN32_RESOURCE = @SD2EPUB_WIN32_RESOURCE@
SD2ODF_WIN32_RESOURCE = @SD2ODF_WIN32_RESOURCE@
SED = @SED@
SET_MAKE = @SET_MAKE@
@@ -329,6 +337,9 @@ WPD2EPUB_WIN32_RESOURCE = @WPD2EPUB_WIN32_RESOURCE@
WPD2ODT_WIN32_RESOURCE = @WPD2ODT_WIN32_RESOURCE@
WPD_CFLAGS = @WPD_CFLAGS@
WPD_LIBS = @WPD_LIBS@
+WPFT2ABW_WIN32_RESOURCE = @WPFT2ABW_WIN32_RESOURCE@
+WPFT2EPUB_WIN32_RESOURCE = @WPFT2EPUB_WIN32_RESOURCE@
+WPFT2ODF_WIN32_RESOURCE = @WPFT2ODF_WIN32_RESOURCE@
WPG2EPUB_WIN32_RESOURCE = @WPG2EPUB_WIN32_RESOURCE@
WPG2ODG_WIN32_RESOURCE = @WPG2ODG_WIN32_RESOURCE@
WPG_CFLAGS = @WPG_CFLAGS@
@@ -342,6 +353,11 @@ WRITERPERFECT_MAJOR_VERSION = @WRITERPERFECT_MAJOR_VERSION@
WRITERPERFECT_MICRO_VERSION = @WRITERPERFECT_MICRO_VERSION@
WRITERPERFECT_MINOR_VERSION = @WRITERPERFECT_MINOR_VERSION@
WRITERPERFECT_VERSION = @WRITERPERFECT_VERSION@
+XATTR_CFLAGS = @XATTR_CFLAGS@
+ZMF2EPUB_WIN32_RESOURCE = @ZMF2EPUB_WIN32_RESOURCE@
+ZMF2ODG_WIN32_RESOURCE = @ZMF2ODG_WIN32_RESOURCE@
+ZMF_CFLAGS = @ZMF_CFLAGS@
+ZMF_LIBS = @ZMF_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
diff --git a/build/win32/Makefile.in b/build/win32/Makefile.in
index bf7146b..0f4d731 100644
--- a/build/win32/Makefile.in
+++ b/build/win32/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -89,10 +89,12 @@ build_triplet = @build@
host_triplet = @host@
subdir = build/win32
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/wpft_libs.m4 $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/wpft_libs.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -168,7 +170,6 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EOT_CFLAGS = @EOT_CFLAGS@
-EOT_CPPFLAGS = @EOT_CPPFLAGS@
EOT_LIBS = @EOT_LIBS@
EPUBGEN_CFLAGS = @EPUBGEN_CFLAGS@
EPUBGEN_LIBS = @EPUBGEN_LIBS@
@@ -183,6 +184,7 @@ FREEHAND_LIBS = @FREEHAND_LIBS@
GREP = @GREP@
GSF_CFLAGS = @GSF_CFLAGS@
GSF_LIBS = @GSF_LIBS@
+HAVE_CXX11 = @HAVE_CXX11@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -241,6 +243,10 @@ PMD2EPUB_WIN32_RESOURCE = @PMD2EPUB_WIN32_RESOURCE@
PMD2ODG_WIN32_RESOURCE = @PMD2ODG_WIN32_RESOURCE@
PUB2EPUB_WIN32_RESOURCE = @PUB2EPUB_WIN32_RESOURCE@
PUB2ODG_WIN32_RESOURCE = @PUB2ODG_WIN32_RESOURCE@
+QXP2EPUB_WIN32_RESOURCE = @QXP2EPUB_WIN32_RESOURCE@
+QXP2ODG_WIN32_RESOURCE = @QXP2ODG_WIN32_RESOURCE@
+QXP_CFLAGS = @QXP_CFLAGS@
+QXP_LIBS = @QXP_LIBS@
RANLIB = @RANLIB@
REVENGE_CFLAGS = @REVENGE_CFLAGS@
REVENGE_LIBS = @REVENGE_LIBS@
@@ -248,6 +254,8 @@ REVENGE_STREAM_CFLAGS = @REVENGE_STREAM_CFLAGS@
REVENGE_STREAM_LIBS = @REVENGE_STREAM_LIBS@
RVNGABW_CFLAGS = @RVNGABW_CFLAGS@
RVNGABW_LIBS = @RVNGABW_LIBS@
+SD2ABW_WIN32_RESOURCE = @SD2ABW_WIN32_RESOURCE@
+SD2EPUB_WIN32_RESOURCE = @SD2EPUB_WIN32_RESOURCE@
SD2ODF_WIN32_RESOURCE = @SD2ODF_WIN32_RESOURCE@
SED = @SED@
SET_MAKE = @SET_MAKE@
@@ -269,6 +277,9 @@ WPD2EPUB_WIN32_RESOURCE = @WPD2EPUB_WIN32_RESOURCE@
WPD2ODT_WIN32_RESOURCE = @WPD2ODT_WIN32_RESOURCE@
WPD_CFLAGS = @WPD_CFLAGS@
WPD_LIBS = @WPD_LIBS@
+WPFT2ABW_WIN32_RESOURCE = @WPFT2ABW_WIN32_RESOURCE@
+WPFT2EPUB_WIN32_RESOURCE = @WPFT2EPUB_WIN32_RESOURCE@
+WPFT2ODF_WIN32_RESOURCE = @WPFT2ODF_WIN32_RESOURCE@
WPG2EPUB_WIN32_RESOURCE = @WPG2EPUB_WIN32_RESOURCE@
WPG2ODG_WIN32_RESOURCE = @WPG2ODG_WIN32_RESOURCE@
WPG_CFLAGS = @WPG_CFLAGS@
@@ -282,6 +293,11 @@ WRITERPERFECT_MAJOR_VERSION = @WRITERPERFECT_MAJOR_VERSION@
WRITERPERFECT_MICRO_VERSION = @WRITERPERFECT_MICRO_VERSION@
WRITERPERFECT_MINOR_VERSION = @WRITERPERFECT_MINOR_VERSION@
WRITERPERFECT_VERSION = @WRITERPERFECT_VERSION@
+XATTR_CFLAGS = @XATTR_CFLAGS@
+ZMF2EPUB_WIN32_RESOURCE = @ZMF2EPUB_WIN32_RESOURCE@
+ZMF2ODG_WIN32_RESOURCE = @ZMF2ODG_WIN32_RESOURCE@
+ZMF_CFLAGS = @ZMF_CFLAGS@
+ZMF_LIBS = @ZMF_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
diff --git a/compile b/compile
index a85b723..2ab71e4 100755
--- a/compile
+++ b/compile
@@ -1,9 +1,9 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
-scriptversion=2012-10-14.11; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2017 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
@@ -255,7 +255,8 @@ EOF
echo "compile $scriptversion"
exit $?
;;
- cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+ cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
+ icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
@@ -342,6 +343,6 @@ exit $ret
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
diff --git a/config.h.in b/config.h.in
index 44ed31c..edcd17a 100644
--- a/config.h.in
+++ b/config.h.in
@@ -1,8 +1,17 @@
/* config.h.in. Generated from configure.ac by autoheader. */
+/* Enable EOT->TTF font conversion */
+#undef ENABLE_EOT
+
+/* define if the compiler supports basic C++11 syntax */
+#undef HAVE_CXX11
+
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
+/* Define if libepubgen 0.1 is available */
+#undef HAVE_EPUBGEN_0_1
+
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
@@ -54,15 +63,6 @@
/* Define to the version of this package. */
#undef PACKAGE_VERSION
-/* Use Boost implementation of shared_ptr */
-#undef SHAREDPTR_BOOST
-
-/* Use C++11 implementation of shared_ptr */
-#undef SHAREDPTR_STD
-
-/* Use TR1 implementation of shared_ptr */
-#undef SHAREDPTR_TR1
-
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
diff --git a/configure b/configure
index b441063..856820b 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for writerperfect 0.9.5.
+# Generated by GNU Autoconf 2.69 for writerperfect 0.9.6.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -587,8 +587,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='writerperfect'
PACKAGE_TARNAME='writerperfect'
-PACKAGE_VERSION='0.9.5'
-PACKAGE_STRING='writerperfect 0.9.5'
+PACKAGE_VERSION='0.9.6'
+PACKAGE_STRING='writerperfect 0.9.6'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -644,6 +644,10 @@ USE_LIBODFGEN_FALSE
USE_LIBODFGEN_TRUE
ODFGEN_LIBS
ODFGEN_CFLAGS
+USE_LIBZMF_FALSE
+USE_LIBZMF_TRUE
+ZMF_LIBS
+ZMF_CFLAGS
USE_LIBWPS_FALSE
USE_LIBWPS_TRUE
WPS_LIBS
@@ -664,6 +668,10 @@ USE_LIBSTAROFFICE_FALSE
USE_LIBSTAROFFICE_TRUE
STAROFFICE_LIBS
STAROFFICE_CFLAGS
+USE_LIBQXP_FALSE
+USE_LIBQXP_TRUE
+QXP_LIBS
+QXP_CFLAGS
USE_LIBPAGEMAKER_FALSE
USE_LIBPAGEMAKER_TRUE
PAGEMAKER_LIBS
@@ -696,7 +704,6 @@ USE_LIBABW_FALSE
USE_LIBABW_TRUE
ABW_LIBS
ABW_CFLAGS
-EOT_CPPFLAGS
USE_LIBEOT_FALSE
USE_LIBEOT_TRUE
EOT_LIBS
@@ -713,20 +720,27 @@ REVENGE_STREAM_LIBS
REVENGE_STREAM_CFLAGS
REVENGE_LIBS
REVENGE_CFLAGS
+XATTR_CFLAGS
DEBUG_CXXFLAGS
PLATFORM_WIN32_FALSE
PLATFORM_WIN32_TRUE
+WPFT2ABW_WIN32_RESOURCE
WPS2ABW_WIN32_RESOURCE
WPD2ABW_WIN32_RESOURCE
+SD2ABW_WIN32_RESOURCE
PAGES2ABW_WIN32_RESOURCE
MWAW2ABW_WIN32_RESOURCE
EBOOK2ABW_WIN32_RESOURCE
ABW2ABW_WIN32_RESOURCE
+WPFT2EPUB_WIN32_RESOURCE
+ZMF2EPUB_WIN32_RESOURCE
WPS2EPUB_WIN32_RESOURCE
WPG2EPUB_WIN32_RESOURCE
WPD2EPUB_WIN32_RESOURCE
VSS2EPUB_WIN32_RESOURCE
VSD2EPUB_WIN32_RESOURCE
+SD2EPUB_WIN32_RESOURCE
+QXP2EPUB_WIN32_RESOURCE
PUB2EPUB_WIN32_RESOURCE
PMD2EPUB_WIN32_RESOURCE
PAGES2EPUB_WIN32_RESOURCE
@@ -737,6 +751,8 @@ EBOOK2EPUB_WIN32_RESOURCE
CMX2EPUB_WIN32_RESOURCE
CDR2EPUB_WIN32_RESOURCE
ABW2EPUB_WIN32_RESOURCE
+WPFT2ODF_WIN32_RESOURCE
+ZMF2ODG_WIN32_RESOURCE
WPS2ODT_WIN32_RESOURCE
WPG2ODG_WIN32_RESOURCE
WPD2ODT_WIN32_RESOURCE
@@ -744,6 +760,7 @@ WKS2ODS_WIN32_RESOURCE
VSS2ODG_WIN32_RESOURCE
VSD2ODG_WIN32_RESOURCE
SD2ODF_WIN32_RESOURCE
+QXP2ODG_WIN32_RESOURCE
PUB2ODG_WIN32_RESOURCE
PMD2ODG_WIN32_RESOURCE
PAGES2ODT_WIN32_RESOURCE
@@ -765,6 +782,7 @@ WRITERPERFECT_VERSION
WRITERPERFECT_MICRO_VERSION
WRITERPERFECT_MINOR_VERSION
WRITERPERFECT_MAJOR_VERSION
+HAVE_CXX11
PKG_CONFIG_LIBDIR
PKG_CONFIG_PATH
PKG_CONFIG
@@ -904,7 +922,6 @@ with_sysroot
enable_libtool_lock
enable_werror
enable_debug
-with_sharedptr
with_import_libs
with_export_libs
with_libgsf
@@ -917,11 +934,13 @@ with_libfreehand
with_libmspub
with_libmwaw
with_libpagemaker
+with_libqxp
with_libstaroffice
with_libvisio
with_libwpd
with_libwpg
with_libwps
+with_libzmf
with_libodfgen
with_libepubgen
with_librvngabw
@@ -967,6 +986,8 @@ MWAW_CFLAGS
MWAW_LIBS
PAGEMAKER_CFLAGS
PAGEMAKER_LIBS
+QXP_CFLAGS
+QXP_LIBS
STAROFFICE_CFLAGS
STAROFFICE_LIBS
VISIO_CFLAGS
@@ -977,6 +998,8 @@ WPG_CFLAGS
WPG_LIBS
WPS_CFLAGS
WPS_LIBS
+ZMF_CFLAGS
+ZMF_LIBS
ODFGEN_CFLAGS
ODFGEN_LIBS
EPUBGEN_CFLAGS
@@ -1523,7 +1546,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures writerperfect 0.9.5 to adapt to many kinds of systems.
+\`configure' configures writerperfect 0.9.6 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1593,7 +1616,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of writerperfect 0.9.5:";;
+ short | recursive ) echo "Configuration of writerperfect 0.9.6:";;
esac
cat <<\_ACEOF
@@ -1627,9 +1650,6 @@ Optional Packages:
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
--with-sysroot[=DIR] Search for dependent libraries within DIR (or the
compiler's sysroot if not specified).
- --with-sharedptr=boost|c++11|tr1
- Use Boost|std::memory|std::tr1::memory for shared
- ptr implementation
--with-import-libs Allow to enable all import libraries at once
--with-export-libs Allow to enable all export libraries at once
--with-libgsf Use libgsf for output of structured files
@@ -1644,11 +1664,13 @@ Optional Packages:
--with-libmwaw Use for conversion from Mac Classic Text Documents
(MacWrite(tm), WriteNow(tm), ...)
--with-libpagemaker Use for conversion from Adobe Pagemaker Documents
+ --with-libqxp Use for conversion from QuarkXPress Documents
--with-libstaroffice Use for conversion from StarOffice Documents
--with-libvisio Use for conversion from Microsoft Visio Documents
--with-libwpd Use for conversion from Wordperfect Documents
--with-libwpg Use for conversion from Wordperfect Graphics
--with-libwps Use for conversion from Microsoft Works Documents
+ --with-libzmf Use for conversion from Zoner Draw Documents
--with-libodfgen Use for conversion to ODF
--with-libepubgen Use for conversion to ePub
--with-librvngabw Use for conversion to Abiword
@@ -1708,6 +1730,8 @@ Some influential environment variables:
C compiler flags for PAGEMAKER, overriding pkg-config
PAGEMAKER_LIBS
linker flags for PAGEMAKER, overriding pkg-config
+ QXP_CFLAGS C compiler flags for QXP, overriding pkg-config
+ QXP_LIBS linker flags for QXP, overriding pkg-config
STAROFFICE_CFLAGS
C compiler flags for STAROFFICE, overriding pkg-config
STAROFFICE_LIBS
@@ -1721,6 +1745,8 @@ Some influential environment variables:
WPG_LIBS linker flags for WPG, overriding pkg-config
WPS_CFLAGS C compiler flags for WPS, overriding pkg-config
WPS_LIBS linker flags for WPS, overriding pkg-config
+ ZMF_CFLAGS C compiler flags for ZMF, overriding pkg-config
+ ZMF_LIBS linker flags for ZMF, overriding pkg-config
ODFGEN_CFLAGS
C compiler flags for ODFGEN, overriding pkg-config
ODFGEN_LIBS linker flags for ODFGEN, overriding pkg-config
@@ -1799,7 +1825,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-writerperfect configure 0.9.5
+writerperfect configure 0.9.6
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2198,7 +2224,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by writerperfect $as_me 0.9.5, which was
+It was created by writerperfect $as_me 0.9.6, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3064,7 +3090,7 @@ fi
# Define the identity of the package.
PACKAGE='writerperfect'
- VERSION='0.9.5'
+ VERSION='0.9.6'
cat >>confdefs.h <<_ACEOF
@@ -17361,6 +17387,992 @@ $as_echo "no" >&6; }
fi
fi
+ ax_cxx_compile_alternatives="11 0x" ax_cxx_compile_cxx11_required=true
+ ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+ ac_success=no
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features by default" >&5
+$as_echo_n "checking whether $CXX supports C++11 features by default... " >&6; }
+if ${ax_cv_cxx_compile_cxx11+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+
+// If the compiler admits that it is not ready for C++11, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201103L && !(defined _MSC_VER)
+
+#error "This is not a C++11 compiler"
+
+#else
+
+namespace cxx11
+{
+
+ namespace test_static_assert
+ {
+
+ template <typename T>
+ struct check
+ {
+ static_assert(sizeof(int) <= sizeof(T), "not big enough");
+ };
+
+ }
+
+ namespace test_final_override
+ {
+
+ struct Base
+ {
+ virtual void f() {}
+ };
+
+ struct Derived : public Base
+ {
+ virtual void f() override {}
+ };
+
+ }
+
+ namespace test_double_right_angle_brackets
+ {
+
+ template < typename T >
+ struct check {};
+
+ typedef check<void> single_type;
+ typedef check<check<void>> double_type;
+ typedef check<check<check<void>>> triple_type;
+ typedef check<check<check<check<void>>>> quadruple_type;
+
+ }
+
+ namespace test_decltype
+ {
+
+ int
+ f()
+ {
+ int a = 1;
+ decltype(a) b = 2;
+ return a + b;
+ }
+
+ }
+
+ namespace test_type_deduction
+ {
+
+ template < typename T1, typename T2 >
+ struct is_same
+ {
+ static const bool value = false;
+ };
+
+ template < typename T >
+ struct is_same<T, T>
+ {
+ static const bool value = true;
+ };
+
+ template < typename T1, typename T2 >
+ auto
+ add(T1 a1, T2 a2) -> decltype(a1 + a2)
+ {
+ return a1 + a2;
+ }
+
+ int
+ test(const int c, volatile int v)
+ {
+ static_assert(is_same<int, decltype(0)>::value == true, "");
+ static_assert(is_same<int, decltype(c)>::value == false, "");
+ static_assert(is_same<int, decltype(v)>::value == false, "");
+ auto ac = c;
+ auto av = v;
+ auto sumi = ac + av + 'x';
+ auto sumf = ac + av + 1.0;
+ static_assert(is_same<int, decltype(ac)>::value == true, "");
+ static_assert(is_same<int, decltype(av)>::value == true, "");
+ static_assert(is_same<int, decltype(sumi)>::value == true, "");
+ static_assert(is_same<int, decltype(sumf)>::value == false, "");
+ static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
+ return (sumf > 0.0) ? sumi : add(c, v);
+ }
+
+ }
+
+ namespace test_noexcept
+ {
+
+ int f() { return 0; }
+ int g() noexcept { return 0; }
+
+ static_assert(noexcept(f()) == false, "");
+ static_assert(noexcept(g()) == true, "");
+
+ }
+
+ namespace test_constexpr
+ {
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
+ {
+ return *s ? strlen_c_r(s + 1, acc + 1) : acc;
+ }
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c(const CharT *const s) noexcept
+ {
+ return strlen_c_r(s, 0UL);
+ }
+
+ static_assert(strlen_c("") == 0UL, "");
+ static_assert(strlen_c("1") == 1UL, "");
+ static_assert(strlen_c("example") == 7UL, "");
+ static_assert(strlen_c("another\0example") == 7UL, "");
+
+ }
+
+ namespace test_rvalue_references
+ {
+
+ template < int N >
+ struct answer
+ {
+ static constexpr int value = N;
+ };
+
+ answer<1> f(int&) { return answer<1>(); }
+ answer<2> f(const int&) { return answer<2>(); }
+ answer<3> f(int&&) { return answer<3>(); }
+
+ void
+ test()
+ {
+ int i = 0;
+ const int c = 0;
+ static_assert(decltype(f(i))::value == 1, "");
+ static_assert(decltype(f(c))::value == 2, "");
+ static_assert(decltype(f(0))::value == 3, "");
+ }
+
+ }
+
+ namespace test_uniform_initialization
+ {
+
+ struct test
+ {
+ static const int zero {};
+ static const int one {1};
+ };
+
+ static_assert(test::zero == 0, "");
+ static_assert(test::one == 1, "");
+
+ }
+
+ namespace test_lambdas
+ {
+
+ void
+ test1()
+ {
+ auto lambda1 = [](){};
+ auto lambda2 = lambda1;
+ lambda1();
+ lambda2();
+ }
+
+ int
+ test2()
+ {
+ auto a = [](int i, int j){ return i + j; }(1, 2);
+ auto b = []() -> int { return '0'; }();
+ auto c = [=](){ return a + b; }();
+ auto d = [&](){ return c; }();
+ auto e = [a, &b](int x) mutable {
+ const auto identity = [](int y){ return y; };
+ for (auto i = 0; i < a; ++i)
+ a += b--;
+ return x + identity(a + b);
+ }(0);
+ return a + b + c + d + e;
+ }
+
+ int
+ test3()
+ {
+ const auto nullary = [](){ return 0; };
+ const auto unary = [](int x){ return x; };
+ using nullary_t = decltype(nullary);
+ using unary_t = decltype(unary);
+ const auto higher1st = [](nullary_t f){ return f(); };
+ const auto higher2nd = [unary](nullary_t f1){
+ return [unary, f1](unary_t f2){ return f2(unary(f1())); };
+ };
+ return higher1st(nullary) + higher2nd(nullary)(unary);
+ }
+
+ }
+
+ namespace test_variadic_templates
+ {
+
+ template <int...>
+ struct sum;
+
+ template <int N0, int... N1toN>
+ struct sum<N0, N1toN...>
+ {
+ static constexpr auto value = N0 + sum<N1toN...>::value;
+ };
+
+ template <>
+ struct sum<>
+ {
+ static constexpr auto value = 0;
+ };
+
+ static_assert(sum<>::value == 0, "");
+ static_assert(sum<1>::value == 1, "");
+ static_assert(sum<23>::value == 23, "");
+ static_assert(sum<1, 2>::value == 3, "");
+ static_assert(sum<5, 5, 11>::value == 21, "");
+ static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
+
+ }
+
+ // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
+ // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
+ // because of this.
+ namespace test_template_alias_sfinae
+ {
+
+ struct foo {};
+
+ template<typename T>
+ using member = typename T::member_type;
+
+ template<typename T>
+ void func(...) {}
+
+ template<typename T>
+ void func(member<T>*) {}
+
+ void test();
+
+ void test() { func<foo>(0); }
+
+ }
+
+} // namespace cxx11
+
+#endif // __cplusplus >= 201103L
+
+
+
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+ ax_cv_cxx_compile_cxx11=yes
+else
+ ax_cv_cxx_compile_cxx11=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_cxx_compile_cxx11" >&5
+$as_echo "$ax_cv_cxx_compile_cxx11" >&6; }
+ if test x$ax_cv_cxx_compile_cxx11 = xyes; then
+ ac_success=yes
+ fi
+
+ if test x$ac_success = xno; then
+ for alternative in ${ax_cxx_compile_alternatives}; do
+ switch="-std=gnu++${alternative}"
+ cachevar=`$as_echo "ax_cv_cxx_compile_cxx11_$switch" | $as_tr_sh`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features with $switch" >&5
+$as_echo_n "checking whether $CXX supports C++11 features with $switch... " >&6; }
+if eval \${$cachevar+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_save_CXX="$CXX"
+ CXX="$CXX $switch"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+
+// If the compiler admits that it is not ready for C++11, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201103L && !(defined _MSC_VER)
+
+#error "This is not a C++11 compiler"
+
+#else
+
+namespace cxx11
+{
+
+ namespace test_static_assert
+ {
+
+ template <typename T>
+ struct check
+ {
+ static_assert(sizeof(int) <= sizeof(T), "not big enough");
+ };
+
+ }
+
+ namespace test_final_override
+ {
+
+ struct Base
+ {
+ virtual void f() {}
+ };
+
+ struct Derived : public Base
+ {
+ virtual void f() override {}
+ };
+
+ }
+
+ namespace test_double_right_angle_brackets
+ {
+
+ template < typename T >
+ struct check {};
+
+ typedef check<void> single_type;
+ typedef check<check<void>> double_type;
+ typedef check<check<check<void>>> triple_type;
+ typedef check<check<check<check<void>>>> quadruple_type;
+
+ }
+
+ namespace test_decltype
+ {
+
+ int
+ f()
+ {
+ int a = 1;
+ decltype(a) b = 2;
+ return a + b;
+ }
+
+ }
+
+ namespace test_type_deduction
+ {
+
+ template < typename T1, typename T2 >
+ struct is_same
+ {
+ static const bool value = false;
+ };
+
+ template < typename T >
+ struct is_same<T, T>
+ {
+ static const bool value = true;
+ };
+
+ template < typename T1, typename T2 >
+ auto
+ add(T1 a1, T2 a2) -> decltype(a1 + a2)
+ {
+ return a1 + a2;
+ }
+
+ int
+ test(const int c, volatile int v)
+ {
+ static_assert(is_same<int, decltype(0)>::value == true, "");
+ static_assert(is_same<int, decltype(c)>::value == false, "");
+ static_assert(is_same<int, decltype(v)>::value == false, "");
+ auto ac = c;
+ auto av = v;
+ auto sumi = ac + av + 'x';
+ auto sumf = ac + av + 1.0;
+ static_assert(is_same<int, decltype(ac)>::value == true, "");
+ static_assert(is_same<int, decltype(av)>::value == true, "");
+ static_assert(is_same<int, decltype(sumi)>::value == true, "");
+ static_assert(is_same<int, decltype(sumf)>::value == false, "");
+ static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
+ return (sumf > 0.0) ? sumi : add(c, v);
+ }
+
+ }
+
+ namespace test_noexcept
+ {
+
+ int f() { return 0; }
+ int g() noexcept { return 0; }
+
+ static_assert(noexcept(f()) == false, "");
+ static_assert(noexcept(g()) == true, "");
+
+ }
+
+ namespace test_constexpr
+ {
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
+ {
+ return *s ? strlen_c_r(s + 1, acc + 1) : acc;
+ }
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c(const CharT *const s) noexcept
+ {
+ return strlen_c_r(s, 0UL);
+ }
+
+ static_assert(strlen_c("") == 0UL, "");
+ static_assert(strlen_c("1") == 1UL, "");
+ static_assert(strlen_c("example") == 7UL, "");
+ static_assert(strlen_c("another\0example") == 7UL, "");
+
+ }
+
+ namespace test_rvalue_references
+ {
+
+ template < int N >
+ struct answer
+ {
+ static constexpr int value = N;
+ };
+
+ answer<1> f(int&) { return answer<1>(); }
+ answer<2> f(const int&) { return answer<2>(); }
+ answer<3> f(int&&) { return answer<3>(); }
+
+ void
+ test()
+ {
+ int i = 0;
+ const int c = 0;
+ static_assert(decltype(f(i))::value == 1, "");
+ static_assert(decltype(f(c))::value == 2, "");
+ static_assert(decltype(f(0))::value == 3, "");
+ }
+
+ }
+
+ namespace test_uniform_initialization
+ {
+
+ struct test
+ {
+ static const int zero {};
+ static const int one {1};
+ };
+
+ static_assert(test::zero == 0, "");
+ static_assert(test::one == 1, "");
+
+ }
+
+ namespace test_lambdas
+ {
+
+ void
+ test1()
+ {
+ auto lambda1 = [](){};
+ auto lambda2 = lambda1;
+ lambda1();
+ lambda2();
+ }
+
+ int
+ test2()
+ {
+ auto a = [](int i, int j){ return i + j; }(1, 2);
+ auto b = []() -> int { return '0'; }();
+ auto c = [=](){ return a + b; }();
+ auto d = [&](){ return c; }();
+ auto e = [a, &b](int x) mutable {
+ const auto identity = [](int y){ return y; };
+ for (auto i = 0; i < a; ++i)
+ a += b--;
+ return x + identity(a + b);
+ }(0);
+ return a + b + c + d + e;
+ }
+
+ int
+ test3()
+ {
+ const auto nullary = [](){ return 0; };
+ const auto unary = [](int x){ return x; };
+ using nullary_t = decltype(nullary);
+ using unary_t = decltype(unary);
+ const auto higher1st = [](nullary_t f){ return f(); };
+ const auto higher2nd = [unary](nullary_t f1){
+ return [unary, f1](unary_t f2){ return f2(unary(f1())); };
+ };
+ return higher1st(nullary) + higher2nd(nullary)(unary);
+ }
+
+ }
+
+ namespace test_variadic_templates
+ {
+
+ template <int...>
+ struct sum;
+
+ template <int N0, int... N1toN>
+ struct sum<N0, N1toN...>
+ {
+ static constexpr auto value = N0 + sum<N1toN...>::value;
+ };
+
+ template <>
+ struct sum<>
+ {
+ static constexpr auto value = 0;
+ };
+
+ static_assert(sum<>::value == 0, "");
+ static_assert(sum<1>::value == 1, "");
+ static_assert(sum<23>::value == 23, "");
+ static_assert(sum<1, 2>::value == 3, "");
+ static_assert(sum<5, 5, 11>::value == 21, "");
+ static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
+
+ }
+
+ // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
+ // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
+ // because of this.
+ namespace test_template_alias_sfinae
+ {
+
+ struct foo {};
+
+ template<typename T>
+ using member = typename T::member_type;
+
+ template<typename T>
+ void func(...) {}
+
+ template<typename T>
+ void func(member<T>*) {}
+
+ void test();
+
+ void test() { func<foo>(0); }
+
+ }
+
+} // namespace cxx11
+
+#endif // __cplusplus >= 201103L
+
+
+
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+ eval $cachevar=yes
+else
+ eval $cachevar=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ CXX="$ac_save_CXX"
+fi
+eval ac_res=\$$cachevar
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ if eval test x\$$cachevar = xyes; then
+ CXX="$CXX $switch"
+ if test -n "$CXXCPP" ; then
+ CXXCPP="$CXXCPP $switch"
+ fi
+ ac_success=yes
+ break
+ fi
+ done
+ fi
+
+ if test x$ac_success = xno; then
+ for alternative in ${ax_cxx_compile_alternatives}; do
+ for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}"; do
+ cachevar=`$as_echo "ax_cv_cxx_compile_cxx11_$switch" | $as_tr_sh`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features with $switch" >&5
+$as_echo_n "checking whether $CXX supports C++11 features with $switch... " >&6; }
+if eval \${$cachevar+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_save_CXX="$CXX"
+ CXX="$CXX $switch"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+
+// If the compiler admits that it is not ready for C++11, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201103L && !(defined _MSC_VER)
+
+#error "This is not a C++11 compiler"
+
+#else
+
+namespace cxx11
+{
+
+ namespace test_static_assert
+ {
+
+ template <typename T>
+ struct check
+ {
+ static_assert(sizeof(int) <= sizeof(T), "not big enough");
+ };
+
+ }
+
+ namespace test_final_override
+ {
+
+ struct Base
+ {
+ virtual void f() {}
+ };
+
+ struct Derived : public Base
+ {
+ virtual void f() override {}
+ };
+
+ }
+
+ namespace test_double_right_angle_brackets
+ {
+
+ template < typename T >
+ struct check {};
+
+ typedef check<void> single_type;
+ typedef check<check<void>> double_type;
+ typedef check<check<check<void>>> triple_type;
+ typedef check<check<check<check<void>>>> quadruple_type;
+
+ }
+
+ namespace test_decltype
+ {
+
+ int
+ f()
+ {
+ int a = 1;
+ decltype(a) b = 2;
+ return a + b;
+ }
+
+ }
+
+ namespace test_type_deduction
+ {
+
+ template < typename T1, typename T2 >
+ struct is_same
+ {
+ static const bool value = false;
+ };
+
+ template < typename T >
+ struct is_same<T, T>
+ {
+ static const bool value = true;
+ };
+
+ template < typename T1, typename T2 >
+ auto
+ add(T1 a1, T2 a2) -> decltype(a1 + a2)
+ {
+ return a1 + a2;
+ }
+
+ int
+ test(const int c, volatile int v)
+ {
+ static_assert(is_same<int, decltype(0)>::value == true, "");
+ static_assert(is_same<int, decltype(c)>::value == false, "");
+ static_assert(is_same<int, decltype(v)>::value == false, "");
+ auto ac = c;
+ auto av = v;
+ auto sumi = ac + av + 'x';
+ auto sumf = ac + av + 1.0;
+ static_assert(is_same<int, decltype(ac)>::value == true, "");
+ static_assert(is_same<int, decltype(av)>::value == true, "");
+ static_assert(is_same<int, decltype(sumi)>::value == true, "");
+ static_assert(is_same<int, decltype(sumf)>::value == false, "");
+ static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
+ return (sumf > 0.0) ? sumi : add(c, v);
+ }
+
+ }
+
+ namespace test_noexcept
+ {
+
+ int f() { return 0; }
+ int g() noexcept { return 0; }
+
+ static_assert(noexcept(f()) == false, "");
+ static_assert(noexcept(g()) == true, "");
+
+ }
+
+ namespace test_constexpr
+ {
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
+ {
+ return *s ? strlen_c_r(s + 1, acc + 1) : acc;
+ }
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c(const CharT *const s) noexcept
+ {
+ return strlen_c_r(s, 0UL);
+ }
+
+ static_assert(strlen_c("") == 0UL, "");
+ static_assert(strlen_c("1") == 1UL, "");
+ static_assert(strlen_c("example") == 7UL, "");
+ static_assert(strlen_c("another\0example") == 7UL, "");
+
+ }
+
+ namespace test_rvalue_references
+ {
+
+ template < int N >
+ struct answer
+ {
+ static constexpr int value = N;
+ };
+
+ answer<1> f(int&) { return answer<1>(); }
+ answer<2> f(const int&) { return answer<2>(); }
+ answer<3> f(int&&) { return answer<3>(); }
+
+ void
+ test()
+ {
+ int i = 0;
+ const int c = 0;
+ static_assert(decltype(f(i))::value == 1, "");
+ static_assert(decltype(f(c))::value == 2, "");
+ static_assert(decltype(f(0))::value == 3, "");
+ }
+
+ }
+
+ namespace test_uniform_initialization
+ {
+
+ struct test
+ {
+ static const int zero {};
+ static const int one {1};
+ };
+
+ static_assert(test::zero == 0, "");
+ static_assert(test::one == 1, "");
+
+ }
+
+ namespace test_lambdas
+ {
+
+ void
+ test1()
+ {
+ auto lambda1 = [](){};
+ auto lambda2 = lambda1;
+ lambda1();
+ lambda2();
+ }
+
+ int
+ test2()
+ {
+ auto a = [](int i, int j){ return i + j; }(1, 2);
+ auto b = []() -> int { return '0'; }();
+ auto c = [=](){ return a + b; }();
+ auto d = [&](){ return c; }();
+ auto e = [a, &b](int x) mutable {
+ const auto identity = [](int y){ return y; };
+ for (auto i = 0; i < a; ++i)
+ a += b--;
+ return x + identity(a + b);
+ }(0);
+ return a + b + c + d + e;
+ }
+
+ int
+ test3()
+ {
+ const auto nullary = [](){ return 0; };
+ const auto unary = [](int x){ return x; };
+ using nullary_t = decltype(nullary);
+ using unary_t = decltype(unary);
+ const auto higher1st = [](nullary_t f){ return f(); };
+ const auto higher2nd = [unary](nullary_t f1){
+ return [unary, f1](unary_t f2){ return f2(unary(f1())); };
+ };
+ return higher1st(nullary) + higher2nd(nullary)(unary);
+ }
+
+ }
+
+ namespace test_variadic_templates
+ {
+
+ template <int...>
+ struct sum;
+
+ template <int N0, int... N1toN>
+ struct sum<N0, N1toN...>
+ {
+ static constexpr auto value = N0 + sum<N1toN...>::value;
+ };
+
+ template <>
+ struct sum<>
+ {
+ static constexpr auto value = 0;
+ };
+
+ static_assert(sum<>::value == 0, "");
+ static_assert(sum<1>::value == 1, "");
+ static_assert(sum<23>::value == 23, "");
+ static_assert(sum<1, 2>::value == 3, "");
+ static_assert(sum<5, 5, 11>::value == 21, "");
+ static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
+
+ }
+
+ // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
+ // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
+ // because of this.
+ namespace test_template_alias_sfinae
+ {
+
+ struct foo {};
+
+ template<typename T>
+ using member = typename T::member_type;
+
+ template<typename T>
+ void func(...) {}
+
+ template<typename T>
+ void func(member<T>*) {}
+
+ void test();
+
+ void test() { func<foo>(0); }
+
+ }
+
+} // namespace cxx11
+
+#endif // __cplusplus >= 201103L
+
+
+
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+ eval $cachevar=yes
+else
+ eval $cachevar=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ CXX="$ac_save_CXX"
+fi
+eval ac_res=\$$cachevar
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ if eval test x\$$cachevar = xyes; then
+ CXX="$CXX $switch"
+ if test -n "$CXXCPP" ; then
+ CXXCPP="$CXXCPP $switch"
+ fi
+ ac_success=yes
+ break
+ fi
+ done
+ if test x$ac_success = xyes; then
+ break
+ fi
+ done
+ fi
+ ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+ if test x$ax_cxx_compile_cxx11_required = xtrue; then
+ if test x$ac_success = xno; then
+ as_fn_error $? "*** A compiler with support for C++11 language features is required." "$LINENO" 5
+ fi
+ fi
+ if test x$ac_success = xno; then
+ HAVE_CXX11=0
+ { $as_echo "$as_me:${as_lineno-$LINENO}: No compiler with C++11 support was found" >&5
+$as_echo "$as_me: No compiler with C++11 support was found" >&6;}
+ else
+ HAVE_CXX11=1
+
+$as_echo "#define HAVE_CXX11 1" >>confdefs.h
+
+ fi
+
+
+
+
# =================================
# Libtool/Version Makefile settings
# =================================
@@ -17368,9 +18380,9 @@ WRITERPERFECT_MAJOR_VERSION=0
WRITERPERFECT_MINOR_VERSION=9
-WRITERPERFECT_MICRO_VERSION=5
+WRITERPERFECT_MICRO_VERSION=6
-WRITERPERFECT_VERSION=0.9.5
+WRITERPERFECT_VERSION=0.9.6
# AC_SUBST(LT_RELEASE, [writerperfect_version_major.writerperfect_version_minor])
LT_CURRENT=`expr 100 '*' 0 + 9`
@@ -17378,7 +18390,7 @@ LT_CURRENT=`expr 100 '*' 0 + 9`
LT_AGE=0
# LT_AGE=writerperfect_version_minor
-LT_REVISION=5
+LT_REVISION=6
@@ -17495,6 +18507,7 @@ fi
PAGES2ODT_WIN32_RESOURCE=pages2odt-win32res.lo
PMD2ODG_WIN32_RESOURCE=pmd2odg-win32res.lo
PUB2ODG_WIN32_RESOURCE=pub2odg-win32res.lo
+ QXP2ODG_WIN32_RESOURCE=qxp2odg-win32res.lo
SD2ODF_WIN32_RESOURCE=sd2odf-win32res.lo
VSD2ODG_WIN32_RESOURCE=vsd2odg-win32res.lo
VSS2ODG_WIN32_RESOURCE=vss2odg-win32res.lo
@@ -17502,6 +18515,8 @@ fi
WPD2ODT_WIN32_RESOURCE=wpd2odt-win32res.lo
WPG2ODG_WIN32_RESOURCE=wpg2odg-win32res.lo
WPS2ODT_WIN32_RESOURCE=wps2odt-win32res.lo
+ ZMF2ODG_WIN32_RESOURCE=zmf2odg-win32res.lo
+ WPFT2ODF_WIN32_RESOURCE=wpft2odf-win32res.lo
ABW2EPUB_WIN32_RESOURCE=abw2epub-win32res.lo
CDR2EPUB_WIN32_RESOURCE=cdr2epub-win32res.lo
@@ -17513,18 +18528,24 @@ fi
PAGES2EPUB_WIN32_RESOURCE=pages2epub-win32res.lo
PMD2EPUB_WIN32_RESOURCE=pmd2epub-win32res.lo
PUB2EPUB_WIN32_RESOURCE=pub2epub-win32res.lo
+ QXP2EPUB_WIN32_RESOURCE=qxp2epub-win32res.lo
+ SD2EPUB_WIN32_RESOURCE=sd2epub-win32res.lo
VSD2EPUB_WIN32_RESOURCE=vsd2epub-win32res.lo
VSS2EPUB_WIN32_RESOURCE=vss2epub-win32res.lo
WPD2EPUB_WIN32_RESOURCE=wpd2epub-win32res.lo
WPG2EPUB_WIN32_RESOURCE=wpg2epub-win32res.lo
WPS2EPUB_WIN32_RESOURCE=wps2epub-win32res.lo
+ ZMF2EPUB_WIN32_RESOURCE=zmf2epub-win32res.lo
+ WPFT2EPUB_WIN32_RESOURCE=wpft2epub-win32res.lo
ABW2ABW_WIN32_RESOURCE=abw2abw-win32res.lo
EBOOK2ABW_WIN32_RESOURCE=ebook2abw-win32res.lo
MWAW2ABW_WIN32_RESOURCE=mwaw2abw-win32res.lo
PAGES2ABW_WIN32_RESOURCE=pages2abw-win32res.lo
+ SD2ABW_WIN32_RESOURCE=sd2abw-win32res.lo
WPD2ABW_WIN32_RESOURCE=wpd2abw-win32res.lo
WPS2ABW_WIN32_RESOURCE=wps2abw-win32res.lo
+ WPFT2ABW_WIN32_RESOURCE=wpft2abw-win32res.lo
;; #(
*) :
@@ -17541,6 +18562,7 @@ fi
PAGES2ODT_WIN32_RESOURCE=
PMD2ODG_WIN32_RESOURCE=
PUB2ODG_WIN32_RESOURCE=
+ QXP2ODG_WIN32_RESOURCE=
SD2ODF_WIN32_RESOURCE=
VSD2ODG_WIN32_RESOURCE=
VSS2ODG_WIN32_RESOURCE=
@@ -17548,6 +18570,8 @@ fi
WPD2ODT_WIN32_RESOURCE=
WPG2ODG_WIN32_RESOURCE=
WPS2ODT_WIN32_RESOURCE=
+ ZMF2ODG_WIN32_RESOURCE=
+ WPFT2ODF_WIN32_RESOURCE=
ABW2EPUB_WIN32_RESOURCE=
CDR2EPUB_WIN32_RESOURCE=
@@ -17559,18 +18583,24 @@ fi
PAGES2EPUB_WIN32_RESOURCE=
PMD2EPUB_WIN32_RESOURCE=
PUB2EPUB_WIN32_RESOURCE=
+ QXP2EPUB_WIN32_RESOURCE=
+ SD2EPUB_WIN32_RESOURCE=
VSD2EPUB_WIN32_RESOURCE=
VSS2EPUB_WIN32_RESOURCE=
WPD2EPUB_WIN32_RESOURCE=
WPG2EPUB_WIN32_RESOURCE=
WPS2EPUB_WIN32_RESOURCE=
+ ZMF2EPUB_WIN32_RESOURCE=
+ WPFT2EPUB_WIN32_RESOURCE=
ABW2ABW_WIN32_RESOURCE=
EBOOK2ABW_WIN32_RESOURCE=
MWAW2ABW_WIN32_RESOURCE=
PAGES2ABW_WIN32_RESOURCE=
+ SD2ABW_WIN32_RESOURCE=
WPD2ABW_WIN32_RESOURCE=
WPS2ABW_WIN32_RESOURCE=
+ WPFT2ABW_WIN32_RESOURCE=
;;
esac
@@ -17627,6 +18657,15 @@ fi
+
+
+
+
+
+
+
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Win32 platform in general" >&5
$as_echo_n "checking for Win32 platform in general... " >&6; }
case $host in #(
@@ -17828,73 +18867,19 @@ else
fi
-# ========
-# shared_ptr implementation
-# ========
-
-# Check whether --with-sharedptr was given.
-if test "${with_sharedptr+set}" = set; then :
- withval=$with_sharedptr; with_sharedptr="$withval"
-else
- with_sharedptr=boost
-
-fi
-
-case $with_sharedptr in #(
- boost|c++11|tr1) :
- ;; #(
- *) :
- as_fn_error $? "Unknown value of shared_ptr provider: $with_sharedptr" "$LINENO" 5
- ;;
-esac
-
-if test "x$with_sharedptr" = "xc++11"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for c++11 shared ptr" >&5
-$as_echo_n "checking for c++11 shared ptr... " >&6; }
- save_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -std=c++11"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <memory>
-int
-main ()
-{
-std::shared_ptr<int> p;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define SHAREDPTR_STD 1" >>confdefs.h
-
-
-else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- as_fn_error $? "Could not find C++11 implementation of shared_ptr" "$LINENO" 5
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CXXFLAGS="$save_CXXFLAGS"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler needs -std=c++11" >&5
-$as_echo_n "checking whether the compiler needs -std=c++11... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+# =========
+# check for file extended attribute functions
+# =========
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for extended file system attributes" >&5
+$as_echo_n "checking for extended file system attributes... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #include <memory>
+ #include <sys/xattr.h>
int
main ()
{
-std::tr1::shared_ptr<int> p;
+getxattr("/tmp/toto", "com.apple.FinderInfo", 0, 0, 0, XATTR_SHOWCOMPRESSION);
;
return 0;
@@ -17903,31 +18888,21 @@ std::tr1::shared_ptr<int> p;
_ACEOF
if ac_fn_cxx_try_compile "$LINENO"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, find Darwin getxattr" >&5
+$as_echo "yes, find Darwin getxattr" >&6; }
+ XATTR_CFLAGS="-DWITH_EXTENDED_FS=1"
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- CXXFLAGS="$CXXFLAGS -std=c++11"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-if test "x$with_sharedptr" = "xtr1"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tr1 shared ptr" >&5
-$as_echo_n "checking for tr1 shared ptr... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #include <tr1/memory>
+ #include <sys/types.h>
+ #include <sys/xattr.h>
int
main ()
{
-std::tr1::shared_ptr<int> p;
+getxattr("/tmp/toto", "com.apple.FinderInfo", 0, 0);
;
return 0;
@@ -17936,58 +18911,22 @@ std::tr1::shared_ptr<int> p;
_ACEOF
if ac_fn_cxx_try_compile "$LINENO"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define SHAREDPTR_TR1 1" >>confdefs.h
-
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, find Linux getxattr" >&5
+$as_echo "yes, find Linux getxattr" >&6; }
+ XATTR_CFLAGS="-DWITH_EXTENDED_FS=2"
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
- as_fn_error $? "Could not find TR1 implementation of shared_ptr" "$LINENO" 5
+ XATTR_CFLAGS="-DWITH_EXTENDED_FS=0"
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-if test "x$with_sharedptr" = "xboost"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for boost shared ptr" >&5
-$as_echo_n "checking for boost shared ptr... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <boost/shared_ptr.hpp>
-int
-main ()
-{
-boost::shared_ptr<int> p;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define SHAREDPTR_BOOST 1" >>confdefs.h
-
-
-else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- as_fn_error $? "Could not find Boost implementation of shared_ptr" "$LINENO" 5
-
-fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
# ========================================================
# Shortcuts for enabling/disabling import/export libraries
@@ -18023,18 +18962,12 @@ if test -n "$REVENGE_CFLAGS"; then
pkg_cv_REVENGE_CFLAGS="$REVENGE_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"
- librevenge-0.0 >= 0.0.1
-\""; } >&5
- ($PKG_CONFIG --exists --print-errors "
- librevenge-0.0 >= 0.0.1
-") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librevenge-0.0 >= 0.0.1\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "librevenge-0.0 >= 0.0.1") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_REVENGE_CFLAGS=`$PKG_CONFIG --cflags "
- librevenge-0.0 >= 0.0.1
-" 2>/dev/null`
+ pkg_cv_REVENGE_CFLAGS=`$PKG_CONFIG --cflags "librevenge-0.0 >= 0.0.1" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -18046,18 +18979,12 @@ if test -n "$REVENGE_LIBS"; then
pkg_cv_REVENGE_LIBS="$REVENGE_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"
- librevenge-0.0 >= 0.0.1
-\""; } >&5
- ($PKG_CONFIG --exists --print-errors "
- librevenge-0.0 >= 0.0.1
-") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librevenge-0.0 >= 0.0.1\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "librevenge-0.0 >= 0.0.1") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_REVENGE_LIBS=`$PKG_CONFIG --libs "
- librevenge-0.0 >= 0.0.1
-" 2>/dev/null`
+ pkg_cv_REVENGE_LIBS=`$PKG_CONFIG --libs "librevenge-0.0 >= 0.0.1" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -18078,20 +19005,14 @@ else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- REVENGE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "
- librevenge-0.0 >= 0.0.1
-" 2>&1`
+ REVENGE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "librevenge-0.0 >= 0.0.1" 2>&1`
else
- REVENGE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "
- librevenge-0.0 >= 0.0.1
-" 2>&1`
+ REVENGE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "librevenge-0.0 >= 0.0.1" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$REVENGE_PKG_ERRORS" >&5
- as_fn_error $? "Package requirements (
- librevenge-0.0 >= 0.0.1
-) were not met:
+ as_fn_error $? "Package requirements (librevenge-0.0 >= 0.0.1) were not met:
$REVENGE_PKG_ERRORS
@@ -18133,18 +19054,12 @@ if test -n "$REVENGE_STREAM_CFLAGS"; then
pkg_cv_REVENGE_STREAM_CFLAGS="$REVENGE_STREAM_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"
- librevenge-stream-0.0
-\""; } >&5
- ($PKG_CONFIG --exists --print-errors "
- librevenge-stream-0.0
-") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librevenge-stream-0.0\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "librevenge-stream-0.0") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_REVENGE_STREAM_CFLAGS=`$PKG_CONFIG --cflags "
- librevenge-stream-0.0
-" 2>/dev/null`
+ pkg_cv_REVENGE_STREAM_CFLAGS=`$PKG_CONFIG --cflags "librevenge-stream-0.0" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -18156,18 +19071,12 @@ if test -n "$REVENGE_STREAM_LIBS"; then
pkg_cv_REVENGE_STREAM_LIBS="$REVENGE_STREAM_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"
- librevenge-stream-0.0
-\""; } >&5
- ($PKG_CONFIG --exists --print-errors "
- librevenge-stream-0.0
-") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librevenge-stream-0.0\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "librevenge-stream-0.0") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_REVENGE_STREAM_LIBS=`$PKG_CONFIG --libs "
- librevenge-stream-0.0
-" 2>/dev/null`
+ pkg_cv_REVENGE_STREAM_LIBS=`$PKG_CONFIG --libs "librevenge-stream-0.0" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -18188,20 +19097,14 @@ else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- REVENGE_STREAM_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "
- librevenge-stream-0.0
-" 2>&1`
+ REVENGE_STREAM_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "librevenge-stream-0.0" 2>&1`
else
- REVENGE_STREAM_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "
- librevenge-stream-0.0
-" 2>&1`
+ REVENGE_STREAM_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "librevenge-stream-0.0" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$REVENGE_STREAM_PKG_ERRORS" >&5
- as_fn_error $? "Package requirements (
- librevenge-stream-0.0
-) were not met:
+ as_fn_error $? "Package requirements (librevenge-stream-0.0) were not met:
$REVENGE_STREAM_PKG_ERRORS
@@ -18487,10 +19390,11 @@ if test "x$have_libeot" = "xno" -a "x$with_libeot" = "xyes"; then :
as_fn_error $? "libeot requested but not found" "$LINENO" 5
fi
-if test "x$have_libgsf" = "xyes"; then :
- EOT_CPPFLAGS=-DENABLE_EOT
-fi
+if test "x$have_libeot" = "xyes"; then :
+$as_echo "#define ENABLE_EOT 1" >>confdefs.h
+
+fi
# ================
# Import libraries
@@ -18598,6 +19502,9 @@ if test "x$have_libabw" = "xno" -a "x$with_libabw" = "xyes"; then :
as_fn_error $? "libabw requested but not found" "$LINENO" 5
fi
+if test "x$have_libabw" = "xyes"; then :
+ ABW_CFLAGS+=" -DENABLE_LIBABW"
+fi
# Check whether --with-libcdr was given.
@@ -18702,6 +19609,9 @@ if test "x$have_libcdr" = "xno" -a "x$with_libcdr" = "xyes"; then :
as_fn_error $? "libcdr requested but not found" "$LINENO" 5
fi
+if test "x$have_libcdr" = "xyes"; then :
+ CDR_CFLAGS+=" -DENABLE_LIBCDR"
+fi
# Check whether --with-libebook was given.
@@ -18806,6 +19716,9 @@ if test "x$have_libebook" = "xno" -a "x$with_libebook" = "xyes"; then :
as_fn_error $? "libebook requested but not found" "$LINENO" 5
fi
+if test "x$have_libebook" = "xyes"; then :
+ EBOOK_CFLAGS+=" -DENABLE_LIBEBOOK"
+fi
# Check whether --with-libetonyek was given.
@@ -18910,6 +19823,9 @@ if test "x$have_libetonyek" = "xno" -a "x$with_libetonyek" = "xyes"; then :
as_fn_error $? "libetonyek requested but not found" "$LINENO" 5
fi
+if test "x$have_libetonyek" = "xyes"; then :
+ ETONYEK_CFLAGS+=" -DENABLE_LIBETONYEK"
+fi
# Check whether --with-libfreehand was given.
@@ -19014,6 +19930,9 @@ if test "x$have_libfreehand" = "xno" -a "x$with_libfreehand" = "xyes"; then :
as_fn_error $? "libfreehand requested but not found" "$LINENO" 5
fi
+if test "x$have_libfreehand" = "xyes"; then :
+ FREEHAND_CFLAGS+=" -DENABLE_LIBFREEHAND"
+fi
# Check whether --with-libmspub was given.
@@ -19118,6 +20037,9 @@ if test "x$have_libmspub" = "xno" -a "x$with_libmspub" = "xyes"; then :
as_fn_error $? "libmspub requested but not found" "$LINENO" 5
fi
+if test "x$have_libmspub" = "xyes"; then :
+ MSPUB_CFLAGS+=" -DENABLE_LIBMSPUB"
+fi
# Check whether --with-libmwaw was given.
@@ -19222,6 +20144,9 @@ if test "x$have_libmwaw" = "xno" -a "x$with_libmwaw" = "xyes"; then :
as_fn_error $? "libmwaw requested but not found" "$LINENO" 5
fi
+if test "x$have_libmwaw" = "xyes"; then :
+ MWAW_CFLAGS+=" -DENABLE_LIBMWAW"
+fi
# Check whether --with-libpagemaker was given.
@@ -19326,6 +20251,116 @@ if test "x$have_libpagemaker" = "xno" -a "x$with_libpagemaker" = "xyes"; then :
as_fn_error $? "libpagemaker requested but not found" "$LINENO" 5
fi
+if test "x$have_libpagemaker" = "xyes"; then :
+ PAGEMAKER_CFLAGS+=" -DENABLE_LIBPAGEMAKER"
+fi
+
+
+# Check whether --with-libqxp was given.
+if test "${with_libqxp+set}" = set; then :
+ withval=$with_libqxp; with_libqxp="$withval"
+else
+ with_libqxp=$with_import_libs
+
+fi
+
+if test "x$with_libqxp" != "xno"; then :
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for QXP" >&5
+$as_echo_n "checking for QXP... " >&6; }
+
+if test -n "$QXP_CFLAGS"; then
+ pkg_cv_QXP_CFLAGS="$QXP_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libqxp-0.0\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libqxp-0.0") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_QXP_CFLAGS=`$PKG_CONFIG --cflags "libqxp-0.0" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$QXP_LIBS"; then
+ pkg_cv_QXP_LIBS="$QXP_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libqxp-0.0\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libqxp-0.0") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_QXP_LIBS=`$PKG_CONFIG --libs "libqxp-0.0" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi
+ if test $_pkg_short_errors_supported = yes; then
+ QXP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libqxp-0.0" 2>&1`
+ else
+ QXP_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libqxp-0.0" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$QXP_PKG_ERRORS" >&5
+
+ have_libqxp=no
+elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ have_libqxp=no
+else
+ QXP_CFLAGS=$pkg_cv_QXP_CFLAGS
+ QXP_LIBS=$pkg_cv_QXP_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+ have_libqxp=yes
+ have_import_lib=yes
+
+fi
+
+else
+ have_libqxp=no
+fi
+
+ if test "x$have_libqxp" = "xyes"; then
+ USE_LIBQXP_TRUE=
+ USE_LIBQXP_FALSE='#'
+else
+ USE_LIBQXP_TRUE='#'
+ USE_LIBQXP_FALSE=
+fi
+
+if test "x$have_libqxp" = "xno" -a "x$with_libqxp" = "xyes"; then :
+
+ as_fn_error $? "libqxp requested but not found" "$LINENO" 5
+
+fi
+if test "x$have_libqxp" = "xyes"; then :
+ QXP_CFLAGS+=" -DENABLE_LIBQXP"
+fi
# Check whether --with-libstaroffice was given.
@@ -19430,6 +20465,9 @@ if test "x$have_libstaroffice" = "xno" -a "x$with_libstaroffice" = "xyes"; then
as_fn_error $? "libstaroffice requested but not found" "$LINENO" 5
fi
+if test "x$have_libstaroffice" = "xyes"; then :
+ STAROFFICE_CFLAGS+=" -DENABLE_LIBSTAROFFICE"
+fi
# Check whether --with-libvisio was given.
@@ -19534,6 +20572,9 @@ if test "x$have_libvisio" = "xno" -a "x$with_libvisio" = "xyes"; then :
as_fn_error $? "libvisio requested but not found" "$LINENO" 5
fi
+if test "x$have_libvisio" = "xyes"; then :
+ VISIO_CFLAGS+=" -DENABLE_LIBVISIO"
+fi
# Check whether --with-libwpd was given.
@@ -19638,6 +20679,9 @@ if test "x$have_libwpd" = "xno" -a "x$with_libwpd" = "xyes"; then :
as_fn_error $? "libwpd requested but not found" "$LINENO" 5
fi
+if test "x$have_libwpd" = "xyes"; then :
+ WPD_CFLAGS+=" -DENABLE_LIBWPD"
+fi
# Check whether --with-libwpg was given.
@@ -19742,6 +20786,9 @@ if test "x$have_libwpg" = "xno" -a "x$with_libwpg" = "xyes"; then :
as_fn_error $? "libwpg requested but not found" "$LINENO" 5
fi
+if test "x$have_libwpg" = "xyes"; then :
+ WPG_CFLAGS+=" -DENABLE_LIBWPG"
+fi
# Check whether --with-libwps was given.
@@ -19846,6 +20893,116 @@ if test "x$have_libwps" = "xno" -a "x$with_libwps" = "xyes"; then :
as_fn_error $? "libwps requested but not found" "$LINENO" 5
fi
+if test "x$have_libwps" = "xyes"; then :
+ WPS_CFLAGS+=" -DENABLE_LIBWPS"
+fi
+
+
+# Check whether --with-libzmf was given.
+if test "${with_libzmf+set}" = set; then :
+ withval=$with_libzmf; with_libzmf="$withval"
+else
+ with_libzmf=$with_import_libs
+
+fi
+
+if test "x$with_libzmf" != "xno"; then :
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ZMF" >&5
+$as_echo_n "checking for ZMF... " >&6; }
+
+if test -n "$ZMF_CFLAGS"; then
+ pkg_cv_ZMF_CFLAGS="$ZMF_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzmf-0.0\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libzmf-0.0") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ZMF_CFLAGS=`$PKG_CONFIG --cflags "libzmf-0.0" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$ZMF_LIBS"; then
+ pkg_cv_ZMF_LIBS="$ZMF_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzmf-0.0\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libzmf-0.0") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ZMF_LIBS=`$PKG_CONFIG --libs "libzmf-0.0" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi
+ if test $_pkg_short_errors_supported = yes; then
+ ZMF_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libzmf-0.0" 2>&1`
+ else
+ ZMF_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libzmf-0.0" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$ZMF_PKG_ERRORS" >&5
+
+ have_libzmf=no
+elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ have_libzmf=no
+else
+ ZMF_CFLAGS=$pkg_cv_ZMF_CFLAGS
+ ZMF_LIBS=$pkg_cv_ZMF_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+ have_libzmf=yes
+ have_import_lib=yes
+
+fi
+
+else
+ have_libzmf=no
+fi
+
+ if test "x$have_libzmf" = "xyes"; then
+ USE_LIBZMF_TRUE=
+ USE_LIBZMF_FALSE='#'
+else
+ USE_LIBZMF_TRUE='#'
+ USE_LIBZMF_FALSE=
+fi
+
+if test "x$have_libzmf" = "xno" -a "x$with_libzmf" = "xyes"; then :
+
+ as_fn_error $? "libzmf requested but not found" "$LINENO" 5
+
+fi
+if test "x$have_libzmf" = "xyes"; then :
+ ZMF_CFLAGS+=" -DENABLE_LIBZMF"
+fi
# ================
@@ -19955,6 +21112,140 @@ if test "x$have_libodfgen" = "xno" -a "x$with_libodfgen" = "xyes"; then :
fi
+# we prefer libepubgen 0.1 but fall back to 0.0 if 0.1 is not available
+if test "x$EPUBGEN_CFLAGS" = "x" && test "x$EPUBGEN_LIBS" = "x"; then :
+
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libepubgen-0.1\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libepubgen-0.1") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ check_libepubgen_0_1=yes
+fi
+
+else
+
+ check_libepubgen_0_1=yes
+
+fi
+if test "$check_libepubgen_0_1" = "yes"; then :
+
+
+# Check whether --with-libepubgen was given.
+if test "${with_libepubgen+set}" = set; then :
+ withval=$with_libepubgen; with_libepubgen="$withval"
+else
+ with_libepubgen=$with_export_libs
+
+fi
+
+if test "x$with_libepubgen" != "xno"; then :
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for EPUBGEN" >&5
+$as_echo_n "checking for EPUBGEN... " >&6; }
+
+if test -n "$EPUBGEN_CFLAGS"; then
+ pkg_cv_EPUBGEN_CFLAGS="$EPUBGEN_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libepubgen-0.1\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libepubgen-0.1") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_EPUBGEN_CFLAGS=`$PKG_CONFIG --cflags "libepubgen-0.1" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$EPUBGEN_LIBS"; then
+ pkg_cv_EPUBGEN_LIBS="$EPUBGEN_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libepubgen-0.1\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libepubgen-0.1") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_EPUBGEN_LIBS=`$PKG_CONFIG --libs "libepubgen-0.1" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi
+ if test $_pkg_short_errors_supported = yes; then
+ EPUBGEN_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libepubgen-0.1" 2>&1`
+ else
+ EPUBGEN_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libepubgen-0.1" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$EPUBGEN_PKG_ERRORS" >&5
+
+ have_libepubgen=no
+elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ have_libepubgen=no
+else
+ EPUBGEN_CFLAGS=$pkg_cv_EPUBGEN_CFLAGS
+ EPUBGEN_LIBS=$pkg_cv_EPUBGEN_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+ have_libepubgen=yes
+ have_export_lib=yes
+
+fi
+
+else
+ have_libepubgen=no
+fi
+
+ if test "x$have_libepubgen" = "xyes"; then
+ USE_LIBEPUBGEN_TRUE=
+ USE_LIBEPUBGEN_FALSE='#'
+else
+ USE_LIBEPUBGEN_TRUE='#'
+ USE_LIBEPUBGEN_FALSE=
+fi
+
+if test "x$have_libepubgen" = "xno" -a "x$with_libepubgen" = "xyes"; then :
+
+ as_fn_error $? "libepubgen requested but not found" "$LINENO" 5
+
+fi
+
+ if test "$have_libepubgen" = "yes"; then :
+
+
+$as_echo "#define HAVE_EPUBGEN_0_1 /**/" >>confdefs.h
+
+
+fi
+ libepubgen_version=0.1
+
+else
+
# Check whether --with-libepubgen was given.
if test "${with_libepubgen+set}" = set; then :
@@ -20059,6 +21350,9 @@ if test "x$have_libepubgen" = "xno" -a "x$with_libepubgen" = "xyes"; then :
fi
+ libepubgen_version=0.0
+
+fi
# Check whether --with-librvngabw was given.
if test "${with_librvngabw+set}" = set; then :
@@ -20177,7 +21471,7 @@ fi
# =====================
# Prepare all .in files
# =====================
-ac_config_files="$ac_config_files Makefile build/Makefile build/win32/Makefile src/Makefile src/conv/Makefile src/conv/abw/Makefile src/conv/abw/abw2abw.rc src/conv/abw/ebook2abw.rc src/conv/abw/mwaw2abw.rc src/conv/abw/pages2abw.rc src/conv/abw/wpd2abw.rc src/conv/abw/wps2abw.rc src/conv/epub/Makefile src/conv/epub/abw2epub.rc src/conv/epub/cdr2epub.rc src/conv/epub/cmx2epub.rc src/conv/epub/ebook2epub.rc src/conv/epub/fh2epub.rc src/conv/epub/key2epub.rc src/conv/epub/mwaw2epub.rc src/conv/epub/pages2epub.rc src/conv/epub/pub2epub.rc src/conv/epub/pmd2epub.rc src/conv/epub/vsd2epub.rc src/conv/epub/vss2epub.rc src/conv/epub/wpd2epub.rc src/conv/epub/wpg2epub.rc src/conv/epub/wps2epub.rc src/conv/odf/Makefile src/conv/odf/abw2odt.rc src/conv/odf/cdr2odg.rc src/conv/odf/cmx2odg.rc src/conv/odf/ebook2odt.rc src/conv/odf/fh2odg.rc src/conv/odf/key2odp.rc src/conv/odf/mwaw2odf.rc src/conv/odf/numbers2ods.rc src/conv/odf/pages2odt.rc src/conv/odf/pub2odg.rc src/conv/odf/pmd2odg.rc src/conv/odf/sd2odf.rc src/conv/odf/vsd2odg.rc src/conv/odf/vss2odg.rc src/conv/odf/wks2ods.rc src/conv/odf/wpd2odt.rc src/conv/odf/wpg2odg.rc src/conv/odf/wps2odt.rc src/lib/Makefile"
+ac_config_files="$ac_config_files Makefile build/Makefile build/win32/Makefile src/Makefile src/conv/Makefile src/conv/abw/Makefile src/conv/abw/abw2abw.rc src/conv/abw/ebook2abw.rc src/conv/abw/mwaw2abw.rc src/conv/abw/pages2abw.rc src/conv/abw/sd2abw.rc src/conv/abw/wpd2abw.rc src/conv/abw/wps2abw.rc src/conv/abw/wpft2abw.rc src/conv/epub/Makefile src/conv/epub/abw2epub.rc src/conv/epub/cdr2epub.rc src/conv/epub/cmx2epub.rc src/conv/epub/ebook2epub.rc src/conv/epub/fh2epub.rc src/conv/epub/key2epub.rc src/conv/epub/mwaw2epub.rc src/conv/epub/pages2epub.rc src/conv/epub/pub2epub.rc src/conv/epub/pmd2epub.rc src/conv/epub/qxp2epub.rc src/conv/epub/sd2epub.rc src/conv/epub/vsd2epub.rc src/conv/epub/vss2epub.rc src/conv/epub/wpd2epub.rc src/conv/epub/wpg2epub.rc src/conv/epub/wps2epub.rc src/conv/epub/zmf2epub.rc src/conv/epub/wpft2epub.rc src/conv/odf/Makefile src/conv/odf/abw2odt.rc src/conv/odf/cdr2odg.rc src/conv/odf/cmx2odg.rc src/conv/odf/ebook2odt.rc src/conv/odf/fh2odg.rc src/conv/odf/key2odp.rc src/conv/odf/mwaw2odf.rc src/conv/odf/numbers2ods.rc src/conv/odf/pages2odt.rc src/conv/odf/pub2odg.rc src/conv/odf/pmd2odg.rc src/conv/odf/qxp2odg.rc src/conv/odf/sd2odf.rc src/conv/odf/vsd2odg.rc src/conv/odf/vss2odg.rc src/conv/odf/wks2ods.rc src/conv/odf/wpd2odt.rc src/conv/odf/wpg2odg.rc src/conv/odf/wps2odt.rc src/conv/odf/zmf2odg.rc src/conv/odf/wpft2odf.rc src/conv/wrapper/Makefile src/lib/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -20376,6 +21670,10 @@ if test -z "${USE_LIBPAGEMAKER_TRUE}" && test -z "${USE_LIBPAGEMAKER_FALSE}"; th
as_fn_error $? "conditional \"USE_LIBPAGEMAKER\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${USE_LIBQXP_TRUE}" && test -z "${USE_LIBQXP_FALSE}"; then
+ as_fn_error $? "conditional \"USE_LIBQXP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
if test -z "${USE_LIBSTAROFFICE_TRUE}" && test -z "${USE_LIBSTAROFFICE_FALSE}"; then
as_fn_error $? "conditional \"USE_LIBSTAROFFICE\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -20396,6 +21694,10 @@ if test -z "${USE_LIBWPS_TRUE}" && test -z "${USE_LIBWPS_FALSE}"; then
as_fn_error $? "conditional \"USE_LIBWPS\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${USE_LIBZMF_TRUE}" && test -z "${USE_LIBZMF_FALSE}"; then
+ as_fn_error $? "conditional \"USE_LIBZMF\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
if test -z "${USE_LIBODFGEN_TRUE}" && test -z "${USE_LIBODFGEN_FALSE}"; then
as_fn_error $? "conditional \"USE_LIBODFGEN\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -20404,6 +21706,10 @@ if test -z "${USE_LIBEPUBGEN_TRUE}" && test -z "${USE_LIBEPUBGEN_FALSE}"; then
as_fn_error $? "conditional \"USE_LIBEPUBGEN\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${USE_LIBEPUBGEN_TRUE}" && test -z "${USE_LIBEPUBGEN_FALSE}"; then
+ as_fn_error $? "conditional \"USE_LIBEPUBGEN\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
if test -z "${USE_LIBRVNGABW_TRUE}" && test -z "${USE_LIBRVNGABW_FALSE}"; then
as_fn_error $? "conditional \"USE_LIBRVNGABW\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -20805,7 +22111,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by writerperfect $as_me 0.9.5, which was
+This file was extended by writerperfect $as_me 0.9.6, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -20871,7 +22177,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-writerperfect config.status 0.9.5
+writerperfect config.status 0.9.6
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
@@ -21396,8 +22702,10 @@ do
"src/conv/abw/ebook2abw.rc") CONFIG_FILES="$CONFIG_FILES src/conv/abw/ebook2abw.rc" ;;
"src/conv/abw/mwaw2abw.rc") CONFIG_FILES="$CONFIG_FILES src/conv/abw/mwaw2abw.rc" ;;
"src/conv/abw/pages2abw.rc") CONFIG_FILES="$CONFIG_FILES src/conv/abw/pages2abw.rc" ;;
+ "src/conv/abw/sd2abw.rc") CONFIG_FILES="$CONFIG_FILES src/conv/abw/sd2abw.rc" ;;
"src/conv/abw/wpd2abw.rc") CONFIG_FILES="$CONFIG_FILES src/conv/abw/wpd2abw.rc" ;;
"src/conv/abw/wps2abw.rc") CONFIG_FILES="$CONFIG_FILES src/conv/abw/wps2abw.rc" ;;
+ "src/conv/abw/wpft2abw.rc") CONFIG_FILES="$CONFIG_FILES src/conv/abw/wpft2abw.rc" ;;
"src/conv/epub/Makefile") CONFIG_FILES="$CONFIG_FILES src/conv/epub/Makefile" ;;
"src/conv/epub/abw2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/abw2epub.rc" ;;
"src/conv/epub/cdr2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/cdr2epub.rc" ;;
@@ -21409,11 +22717,15 @@ do
"src/conv/epub/pages2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/pages2epub.rc" ;;
"src/conv/epub/pub2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/pub2epub.rc" ;;
"src/conv/epub/pmd2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/pmd2epub.rc" ;;
+ "src/conv/epub/qxp2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/qxp2epub.rc" ;;
+ "src/conv/epub/sd2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/sd2epub.rc" ;;
"src/conv/epub/vsd2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/vsd2epub.rc" ;;
"src/conv/epub/vss2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/vss2epub.rc" ;;
"src/conv/epub/wpd2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/wpd2epub.rc" ;;
"src/conv/epub/wpg2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/wpg2epub.rc" ;;
"src/conv/epub/wps2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/wps2epub.rc" ;;
+ "src/conv/epub/zmf2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/zmf2epub.rc" ;;
+ "src/conv/epub/wpft2epub.rc") CONFIG_FILES="$CONFIG_FILES src/conv/epub/wpft2epub.rc" ;;
"src/conv/odf/Makefile") CONFIG_FILES="$CONFIG_FILES src/conv/odf/Makefile" ;;
"src/conv/odf/abw2odt.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/abw2odt.rc" ;;
"src/conv/odf/cdr2odg.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/cdr2odg.rc" ;;
@@ -21426,6 +22738,7 @@ do
"src/conv/odf/pages2odt.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/pages2odt.rc" ;;
"src/conv/odf/pub2odg.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/pub2odg.rc" ;;
"src/conv/odf/pmd2odg.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/pmd2odg.rc" ;;
+ "src/conv/odf/qxp2odg.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/qxp2odg.rc" ;;
"src/conv/odf/sd2odf.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/sd2odf.rc" ;;
"src/conv/odf/vsd2odg.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/vsd2odg.rc" ;;
"src/conv/odf/vss2odg.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/vss2odg.rc" ;;
@@ -21433,6 +22746,9 @@ do
"src/conv/odf/wpd2odt.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/wpd2odt.rc" ;;
"src/conv/odf/wpg2odg.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/wpg2odg.rc" ;;
"src/conv/odf/wps2odt.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/wps2odt.rc" ;;
+ "src/conv/odf/zmf2odg.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/zmf2odg.rc" ;;
+ "src/conv/odf/wpft2odf.rc") CONFIG_FILES="$CONFIG_FILES src/conv/odf/wpft2odf.rc" ;;
+ "src/conv/wrapper/Makefile") CONFIG_FILES="$CONFIG_FILES src/conv/wrapper/Makefile" ;;
"src/lib/Makefile") CONFIG_FILES="$CONFIG_FILES src/lib/Makefile" ;;
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
@@ -22877,6 +24193,11 @@ fi
# ==============================================
# Display final informations about configuration
# ==============================================
+if test "$have_libepubgen" = "yes"; then :
+
+ have_libepubgen="$libepubgen_version"
+
+fi
{ $as_echo "$as_me:${as_lineno-$LINENO}:
==============================================================================
Build configuration:
@@ -22892,11 +24213,13 @@ Import:
libmspub: ${have_libmspub}
libmwaw: ${have_libmwaw}
libpagemaker: ${have_libpagemaker}
+ libqxp: ${have_libqxp}
libstaroffice: ${have_libstaroffice}
libvisio: ${have_libvisio}
libwpd: ${have_libwpd}
libwpg: ${have_libwpg}
libwps: ${have_libwps}
+ libzmf: ${have_libzmf}
Export:
libepubgen: ${have_libepubgen}
@@ -22923,11 +24246,13 @@ Import:
libmspub: ${have_libmspub}
libmwaw: ${have_libmwaw}
libpagemaker: ${have_libpagemaker}
+ libqxp: ${have_libqxp}
libstaroffice: ${have_libstaroffice}
libvisio: ${have_libvisio}
libwpd: ${have_libwpd}
libwpg: ${have_libwpg}
libwps: ${have_libwps}
+ libzmf: ${have_libzmf}
Export:
libepubgen: ${have_libepubgen}
diff --git a/configure.ac b/configure.ac
index 07b76e2..0d6a8ce 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,7 +9,7 @@ AC_PREREQ([2.65])
# ====================
m4_define([writerperfect_version_major],[0])
m4_define([writerperfect_version_minor],[9])
-m4_define([writerperfect_version_micro],[5])
+m4_define([writerperfect_version_micro],[6])
m4_define([writerperfect_version],[writerperfect_version_major.writerperfect_version_minor.writerperfect_version_micro])
# =============
@@ -36,6 +36,8 @@ LT_INIT([win32-dll disable-static pic-only])
AC_CANONICAL_HOST
PKG_PROG_PKG_CONFIG([0.20])
+AX_CXX_COMPILE_STDCXX_11
+
# =================================
# Libtool/Version Makefile settings
# =================================
@@ -72,6 +74,7 @@ AS_CASE([$host],
PAGES2ODT_WIN32_RESOURCE=pages2odt-win32res.lo
PMD2ODG_WIN32_RESOURCE=pmd2odg-win32res.lo
PUB2ODG_WIN32_RESOURCE=pub2odg-win32res.lo
+ QXP2ODG_WIN32_RESOURCE=qxp2odg-win32res.lo
SD2ODF_WIN32_RESOURCE=sd2odf-win32res.lo
VSD2ODG_WIN32_RESOURCE=vsd2odg-win32res.lo
VSS2ODG_WIN32_RESOURCE=vss2odg-win32res.lo
@@ -79,6 +82,8 @@ AS_CASE([$host],
WPD2ODT_WIN32_RESOURCE=wpd2odt-win32res.lo
WPG2ODG_WIN32_RESOURCE=wpg2odg-win32res.lo
WPS2ODT_WIN32_RESOURCE=wps2odt-win32res.lo
+ ZMF2ODG_WIN32_RESOURCE=zmf2odg-win32res.lo
+ WPFT2ODF_WIN32_RESOURCE=wpft2odf-win32res.lo
ABW2EPUB_WIN32_RESOURCE=abw2epub-win32res.lo
CDR2EPUB_WIN32_RESOURCE=cdr2epub-win32res.lo
@@ -90,18 +95,24 @@ AS_CASE([$host],
PAGES2EPUB_WIN32_RESOURCE=pages2epub-win32res.lo
PMD2EPUB_WIN32_RESOURCE=pmd2epub-win32res.lo
PUB2EPUB_WIN32_RESOURCE=pub2epub-win32res.lo
+ QXP2EPUB_WIN32_RESOURCE=qxp2epub-win32res.lo
+ SD2EPUB_WIN32_RESOURCE=sd2epub-win32res.lo
VSD2EPUB_WIN32_RESOURCE=vsd2epub-win32res.lo
VSS2EPUB_WIN32_RESOURCE=vss2epub-win32res.lo
WPD2EPUB_WIN32_RESOURCE=wpd2epub-win32res.lo
WPG2EPUB_WIN32_RESOURCE=wpg2epub-win32res.lo
WPS2EPUB_WIN32_RESOURCE=wps2epub-win32res.lo
+ ZMF2EPUB_WIN32_RESOURCE=zmf2epub-win32res.lo
+ WPFT2EPUB_WIN32_RESOURCE=wpft2epub-win32res.lo
ABW2ABW_WIN32_RESOURCE=abw2abw-win32res.lo
EBOOK2ABW_WIN32_RESOURCE=ebook2abw-win32res.lo
MWAW2ABW_WIN32_RESOURCE=mwaw2abw-win32res.lo
PAGES2ABW_WIN32_RESOURCE=pages2abw-win32res.lo
+ SD2ABW_WIN32_RESOURCE=sd2abw-win32res.lo
WPD2ABW_WIN32_RESOURCE=wpd2abw-win32res.lo
WPS2ABW_WIN32_RESOURCE=wps2abw-win32res.lo
+ WPFT2ABW_WIN32_RESOURCE=wpft2abw-win32res.lo
], [
native_win32=no
@@ -116,6 +127,7 @@ AS_CASE([$host],
PAGES2ODT_WIN32_RESOURCE=
PMD2ODG_WIN32_RESOURCE=
PUB2ODG_WIN32_RESOURCE=
+ QXP2ODG_WIN32_RESOURCE=
SD2ODF_WIN32_RESOURCE=
VSD2ODG_WIN32_RESOURCE=
VSS2ODG_WIN32_RESOURCE=
@@ -123,6 +135,8 @@ AS_CASE([$host],
WPD2ODT_WIN32_RESOURCE=
WPG2ODG_WIN32_RESOURCE=
WPS2ODT_WIN32_RESOURCE=
+ ZMF2ODG_WIN32_RESOURCE=
+ WPFT2ODF_WIN32_RESOURCE=
ABW2EPUB_WIN32_RESOURCE=
CDR2EPUB_WIN32_RESOURCE=
@@ -134,18 +148,24 @@ AS_CASE([$host],
PAGES2EPUB_WIN32_RESOURCE=
PMD2EPUB_WIN32_RESOURCE=
PUB2EPUB_WIN32_RESOURCE=
+ QXP2EPUB_WIN32_RESOURCE=
+ SD2EPUB_WIN32_RESOURCE=
VSD2EPUB_WIN32_RESOURCE=
VSS2EPUB_WIN32_RESOURCE=
WPD2EPUB_WIN32_RESOURCE=
WPG2EPUB_WIN32_RESOURCE=
WPS2EPUB_WIN32_RESOURCE=
+ ZMF2EPUB_WIN32_RESOURCE=
+ WPFT2EPUB_WIN32_RESOURCE=
ABW2ABW_WIN32_RESOURCE=
EBOOK2ABW_WIN32_RESOURCE=
MWAW2ABW_WIN32_RESOURCE=
PAGES2ABW_WIN32_RESOURCE=
+ SD2ABW_WIN32_RESOURCE=
WPD2ABW_WIN32_RESOURCE=
WPS2ABW_WIN32_RESOURCE=
+ WPFT2ABW_WIN32_RESOURCE=
]
)
AC_MSG_RESULT([$native_win32])
@@ -162,6 +182,7 @@ AC_SUBST(NUMBERS2ODS_WIN32_RESOURCE)
AC_SUBST(PAGES2ODT_WIN32_RESOURCE)
AC_SUBST(PMD2ODG_WIN32_RESOURCE)
AC_SUBST(PUB2ODG_WIN32_RESOURCE)
+AC_SUBST(QXP2ODG_WIN32_RESOURCE)
AC_SUBST(SD2ODF_WIN32_RESOURCE)
AC_SUBST(VSD2ODG_WIN32_RESOURCE)
AC_SUBST(VSS2ODG_WIN32_RESOURCE)
@@ -169,6 +190,8 @@ AC_SUBST(WKS2ODS_WIN32_RESOURCE)
AC_SUBST(WPD2ODT_WIN32_RESOURCE)
AC_SUBST(WPG2ODG_WIN32_RESOURCE)
AC_SUBST(WPS2ODT_WIN32_RESOURCE)
+AC_SUBST(ZMF2ODG_WIN32_RESOURCE)
+AC_SUBST(WPFT2ODF_WIN32_RESOURCE)
AC_SUBST(ABW2EPUB_WIN32_RESOURCE)
AC_SUBST(CDR2EPUB_WIN32_RESOURCE)
@@ -180,18 +203,24 @@ AC_SUBST(MWAW2EPUB_WIN32_RESOURCE)
AC_SUBST(PAGES2EPUB_WIN32_RESOURCE)
AC_SUBST(PMD2EPUB_WIN32_RESOURCE)
AC_SUBST(PUB2EPUB_WIN32_RESOURCE)
+AC_SUBST(QXP2EPUB_WIN32_RESOURCE)
+AC_SUBST(SD2EPUB_WIN32_RESOURCE)
AC_SUBST(VSD2EPUB_WIN32_RESOURCE)
AC_SUBST(VSS2EPUB_WIN32_RESOURCE)
AC_SUBST(WPD2EPUB_WIN32_RESOURCE)
AC_SUBST(WPG2EPUB_WIN32_RESOURCE)
AC_SUBST(WPS2EPUB_WIN32_RESOURCE)
+AC_SUBST(ZMF2EPUB_WIN32_RESOURCE)
+AC_SUBST(WPFT2EPUB_WIN32_RESOURCE)
AC_SUBST(ABW2ABW_WIN32_RESOURCE)
AC_SUBST(EBOOK2ABW_WIN32_RESOURCE)
AC_SUBST(MWAW2ABW_WIN32_RESOURCE)
AC_SUBST(PAGES2ABW_WIN32_RESOURCE)
+AC_SUBST(SD2ABW_WIN32_RESOURCE)
AC_SUBST(WPD2ABW_WIN32_RESOURCE)
AC_SUBST(WPS2ABW_WIN32_RESOURCE)
+AC_SUBST(WPFT2ABW_WIN32_RESOURCE)
AC_MSG_CHECKING([for Win32 platform in general])
AS_CASE([$host],
@@ -259,80 +288,34 @@ AS_IF([test "x$enable_debug" = "xyes"], [
])
AC_SUBST(DEBUG_CXXFLAGS)
-# ========
-# shared_ptr implementation
-# ========
-AC_ARG_WITH(sharedptr,
- [AS_HELP_STRING([--with-sharedptr=boost|c++11|tr1],
- [Use Boost|std::memory|std::tr1::memory for shared ptr implementation])],
- [with_sharedptr="$withval"],
- [with_sharedptr=boost]
-)
-AS_CASE([$with_sharedptr],
- [boost|c++11|tr1], [],
- [AC_MSG_ERROR([Unknown value of shared_ptr provider: $with_sharedptr])]
-)
-
-AS_IF([test "x$with_sharedptr" = "xc++11"], [
- AC_MSG_CHECKING([for c++11 shared ptr])
- save_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -std=c++11"
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM(
- [[#include <memory>]],
- [[std::shared_ptr<int> p;]]
- )
- ], [
- AC_MSG_RESULT([yes])
- AC_DEFINE([SHAREDPTR_STD],[1],[Use C++11 implementation of shared_ptr])
- ], [
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([Could not find C++11 implementation of shared_ptr])
- ])
- CXXFLAGS="$save_CXXFLAGS"
- AC_MSG_CHECKING([whether the compiler needs -std=c++11])
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM(
- [[#include <memory>]],
- [[std::tr1::shared_ptr<int> p;]]
- )
- ], [
- AC_MSG_RESULT([no])
- ], [
- AC_MSG_RESULT([yes])
- CXXFLAGS="$CXXFLAGS -std=c++11"
- ])
-])
-AS_IF([test "x$with_sharedptr" = "xtr1"], [
- AC_MSG_CHECKING([for tr1 shared ptr])
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM(
- [[#include <tr1/memory>]],
- [[std::tr1::shared_ptr<int> p;]]
- )
- ], [
- AC_MSG_RESULT([yes])
- AC_DEFINE([SHAREDPTR_TR1],[1],[Use TR1 implementation of shared_ptr])
- ], [
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([Could not find TR1 implementation of shared_ptr])
- ])
-])
-AS_IF([test "x$with_sharedptr" = "xboost"], [
- AC_MSG_CHECKING([for boost shared ptr])
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM(
- [[#include <boost/shared_ptr.hpp>]],
- [[boost::shared_ptr<int> p;]]
- )
- ], [
- AC_MSG_RESULT([yes])
- AC_DEFINE([SHAREDPTR_BOOST],[1],[Use Boost implementation of shared_ptr])
- ], [
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([Could not find Boost implementation of shared_ptr])
- ])
+# =========
+# check for file extended attribute functions
+# =========
+AC_MSG_CHECKING([for extended file system attributes])
+AC_COMPILE_IFELSE([
+ AC_LANG_PROGRAM(
+ [[#include <sys/xattr.h>]],
+ [[getxattr("/tmp/toto", "com.apple.FinderInfo", 0, 0, 0, XATTR_SHOWCOMPRESSION);]]
+ )
+], [
+ AC_MSG_RESULT([yes, find Darwin getxattr])
+ [XATTR_CFLAGS="-DWITH_EXTENDED_FS=1"]
+], [
+ AC_COMPILE_IFELSE([
+ AC_LANG_PROGRAM(
+ [[#include <sys/types.h>]
+ [#include <sys/xattr.h>]],
+ [[getxattr("/tmp/toto", "com.apple.FinderInfo", 0, 0);]]
+ )
+ ], [
+ AC_MSG_RESULT([yes, find Linux getxattr])
+ [XATTR_CFLAGS="-DWITH_EXTENDED_FS=2"]
+ ], [
+ AC_MSG_RESULT([no])
+ [XATTR_CFLAGS="-DWITH_EXTENDED_FS=0"]
+ ])
])
+AC_SUBST(XATTR_CFLAGS)
# ========================================================
# Shortcuts for enabling/disabling import/export libraries
@@ -353,13 +336,9 @@ AC_ARG_WITH([export-libs],
# ==========
# librevenge
# ==========
-PKG_CHECK_MODULES([REVENGE],[
- librevenge-0.0 >= 0.0.1
-])
+PKG_CHECK_MODULES([REVENGE],[librevenge-0.0 >= 0.0.1])
-PKG_CHECK_MODULES([REVENGE_STREAM],[
- librevenge-stream-0.0
-])
+PKG_CHECK_MODULES([REVENGE_STREAM],[librevenge-stream-0.0])
# ======
# libgsf
@@ -377,8 +356,7 @@ AM_CONDITIONAL([GSF_HAS_COMPRESSION_LEVEL], [test "x$have_libgsf" = "xyes"])
# libeot
# ======
wpft_CHECK_LIB([EOT], [libeot], [libeot], [Allow EOT->truetype conversion of embedded fonts])
-AS_IF([test "x$have_libgsf" = "xyes"], [EOT_CPPFLAGS=-DENABLE_EOT])
-AC_SUBST([EOT_CPPFLAGS])
+AS_IF([test "x$have_libeot" = "xyes"], [AC_DEFINE([ENABLE_EOT], [1], [Enable EOT->TTF font conversion])])
# ================
# Import libraries
@@ -391,17 +369,34 @@ wpft_CHECK_IMPORT_LIB([FREEHAND], [libfreehand], [libfreehand-0.1], [Use for con
wpft_CHECK_IMPORT_LIB([MSPUB], [libmspub], [libmspub-0.1], [Use for conversion from Microsoft Publisher Documents])
wpft_CHECK_IMPORT_LIB([MWAW], [libmwaw], [libmwaw-0.3], [Use for conversion from Mac Classic Text Documents (MacWrite(tm), WriteNow(tm), ...)])
wpft_CHECK_IMPORT_LIB([PAGEMAKER], [libpagemaker], [libpagemaker-0.0], [Use for conversion from Adobe Pagemaker Documents])
+wpft_CHECK_IMPORT_LIB([QXP], [libqxp], [libqxp-0.0], [Use for conversion from QuarkXPress Documents])
wpft_CHECK_IMPORT_LIB([STAROFFICE], [libstaroffice], [libstaroffice-0.0], [Use for conversion from StarOffice Documents])
wpft_CHECK_IMPORT_LIB([VISIO], [libvisio], [libvisio-0.1], [Use for conversion from Microsoft Visio Documents])
wpft_CHECK_IMPORT_LIB([WPD], [libwpd], [libwpd-0.10], [Use for conversion from Wordperfect Documents])
wpft_CHECK_IMPORT_LIB([WPG], [libwpg], [libwpg-0.3], [Use for conversion from Wordperfect Graphics])
wpft_CHECK_IMPORT_LIB([WPS], [libwps], [libwps-0.4], [Use for conversion from Microsoft Works Documents])
+wpft_CHECK_IMPORT_LIB([ZMF], [libzmf], [libzmf-0.0], [Use for conversion from Zoner Draw Documents])
# ================
# Export libraries
# ================
wpft_CHECK_EXPORT_LIB([ODFGEN], [libodfgen], [libodfgen-0.1], [Use for conversion to ODF])
-wpft_CHECK_EXPORT_LIB([EPUBGEN], [libepubgen], [libepubgen-0.0], [Use for conversion to ePub])
+# we prefer libepubgen 0.1 but fall back to 0.0 if 0.1 is not available
+AS_IF([test "x$EPUBGEN_CFLAGS" = "x" && test "x$EPUBGEN_LIBS" = "x"], [
+ PKG_CHECK_EXISTS([libepubgen-0.1], [check_libepubgen_0_1=yes])
+ ], [
+ check_libepubgen_0_1=yes
+])
+AS_IF([test "$check_libepubgen_0_1" = "yes"], [
+ wpft_CHECK_EXPORT_LIB([EPUBGEN], [libepubgen], [libepubgen-0.1], [Use for conversion to ePub])
+ AS_IF([test "$have_libepubgen" = "yes"], [
+ AC_DEFINE([HAVE_EPUBGEN_0_1], [], [Define if libepubgen 0.1 is available])
+ ])
+ libepubgen_version=0.1
+ ], [
+ wpft_CHECK_EXPORT_LIB([EPUBGEN], [libepubgen], [libepubgen-0.0], [Use for conversion to ePub])
+ libepubgen_version=0.0
+])
wpft_CHECK_EXPORT_LIB([RVNGABW], [librvngabw], [librvngabw-0.0], [Use for conversion to Abiword])
# =============================================================
@@ -426,8 +421,10 @@ src/conv/abw/abw2abw.rc
src/conv/abw/ebook2abw.rc
src/conv/abw/mwaw2abw.rc
src/conv/abw/pages2abw.rc
+src/conv/abw/sd2abw.rc
src/conv/abw/wpd2abw.rc
src/conv/abw/wps2abw.rc
+src/conv/abw/wpft2abw.rc
src/conv/epub/Makefile
src/conv/epub/abw2epub.rc
@@ -440,11 +437,15 @@ src/conv/epub/mwaw2epub.rc
src/conv/epub/pages2epub.rc
src/conv/epub/pub2epub.rc
src/conv/epub/pmd2epub.rc
+src/conv/epub/qxp2epub.rc
+src/conv/epub/sd2epub.rc
src/conv/epub/vsd2epub.rc
src/conv/epub/vss2epub.rc
src/conv/epub/wpd2epub.rc
src/conv/epub/wpg2epub.rc
src/conv/epub/wps2epub.rc
+src/conv/epub/zmf2epub.rc
+src/conv/epub/wpft2epub.rc
src/conv/odf/Makefile
src/conv/odf/abw2odt.rc
@@ -458,6 +459,7 @@ src/conv/odf/numbers2ods.rc
src/conv/odf/pages2odt.rc
src/conv/odf/pub2odg.rc
src/conv/odf/pmd2odg.rc
+src/conv/odf/qxp2odg.rc
src/conv/odf/sd2odf.rc
src/conv/odf/vsd2odg.rc
src/conv/odf/vss2odg.rc
@@ -465,6 +467,10 @@ src/conv/odf/wks2ods.rc
src/conv/odf/wpd2odt.rc
src/conv/odf/wpg2odg.rc
src/conv/odf/wps2odt.rc
+src/conv/odf/zmf2odg.rc
+src/conv/odf/wpft2odf.rc
+
+src/conv/wrapper/Makefile
src/lib/Makefile
])
@@ -473,6 +479,9 @@ AC_OUTPUT
# ==============================================
# Display final informations about configuration
# ==============================================
+AS_IF([test "$have_libepubgen" = "yes"], [
+ have_libepubgen="$libepubgen_version"
+])
AC_MSG_NOTICE([
==============================================================================
Build configuration:
@@ -488,11 +497,13 @@ Import:
libmspub: ${have_libmspub}
libmwaw: ${have_libmwaw}
libpagemaker: ${have_libpagemaker}
+ libqxp: ${have_libqxp}
libstaroffice: ${have_libstaroffice}
libvisio: ${have_libvisio}
libwpd: ${have_libwpd}
libwpg: ${have_libwpg}
libwps: ${have_libwps}
+ libzmf: ${have_libzmf}
Export:
libepubgen: ${have_libepubgen}
diff --git a/depcomp b/depcomp
index fc98710..b39f98f 100755
--- a/depcomp
+++ b/depcomp
@@ -1,9 +1,9 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2013-05-30.07; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2017 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -786,6 +786,6 @@ exit 0
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
diff --git a/m4/ax_cxx_compile_stdcxx.m4 b/m4/ax_cxx_compile_stdcxx.m4
new file mode 100644
index 0000000..acc0db2
--- /dev/null
+++ b/m4/ax_cxx_compile_stdcxx.m4
@@ -0,0 +1,982 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_CXX_COMPILE_STDCXX(VERSION, [ext|noext], [mandatory|optional])
+#
+# DESCRIPTION
+#
+# Check for baseline language coverage in the compiler for the specified
+# version of the C++ standard. If necessary, add switches to CXX and
+# CXXCPP to enable support. VERSION may be '11' (for the C++11 standard)
+# or '14' (for the C++14 standard).
+#
+# The second argument, if specified, indicates whether you insist on an
+# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
+# -std=c++11). If neither is specified, you get whatever works, with
+# preference for an extended mode.
+#
+# The third argument, if specified 'mandatory' or if left unspecified,
+# indicates that baseline support for the specified C++ standard is
+# required and that the macro should error out if no mode with that
+# support is found. If specified 'optional', then configuration proceeds
+# regardless, after defining HAVE_CXX${VERSION} if and only if a
+# supporting mode is found.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
+# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
+# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
+# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>
+# Copyright (c) 2015 Paul Norman <penorman@mac.com>
+# Copyright (c) 2015 Moritz Klammler <moritz@klammler.eu>
+# Copyright (c) 2016 Krzesimir Nowak <qdlacz@gmail.com>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 7
+
+dnl This macro is based on the code from the AX_CXX_COMPILE_STDCXX_11 macro
+dnl (serial version number 13).
+
+AX_REQUIRE_DEFINED([AC_MSG_WARN])
+AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl
+ m4_if([$1], [11], [ax_cxx_compile_alternatives="11 0x"],
+ [$1], [14], [ax_cxx_compile_alternatives="14 1y"],
+ [$1], [17], [ax_cxx_compile_alternatives="17 1z"],
+ [m4_fatal([invalid first argument `$1' to AX_CXX_COMPILE_STDCXX])])dnl
+ m4_if([$2], [], [],
+ [$2], [ext], [],
+ [$2], [noext], [],
+ [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX])])dnl
+ m4_if([$3], [], [ax_cxx_compile_cxx$1_required=true],
+ [$3], [mandatory], [ax_cxx_compile_cxx$1_required=true],
+ [$3], [optional], [ax_cxx_compile_cxx$1_required=false],
+ [m4_fatal([invalid third argument `$3' to AX_CXX_COMPILE_STDCXX])])
+ AC_LANG_PUSH([C++])dnl
+ ac_success=no
+ AC_CACHE_CHECK(whether $CXX supports C++$1 features by default,
+ ax_cv_cxx_compile_cxx$1,
+ [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
+ [ax_cv_cxx_compile_cxx$1=yes],
+ [ax_cv_cxx_compile_cxx$1=no])])
+ if test x$ax_cv_cxx_compile_cxx$1 = xyes; then
+ ac_success=yes
+ fi
+
+ m4_if([$2], [noext], [], [dnl
+ if test x$ac_success = xno; then
+ for alternative in ${ax_cxx_compile_alternatives}; do
+ switch="-std=gnu++${alternative}"
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
+ $cachevar,
+ [ac_save_CXX="$CXX"
+ CXX="$CXX $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXX="$ac_save_CXX"])
+ if eval test x\$$cachevar = xyes; then
+ CXX="$CXX $switch"
+ if test -n "$CXXCPP" ; then
+ CXXCPP="$CXXCPP $switch"
+ fi
+ ac_success=yes
+ break
+ fi
+ done
+ fi])
+
+ m4_if([$2], [ext], [], [dnl
+ if test x$ac_success = xno; then
+ dnl HP's aCC needs +std=c++11 according to:
+ dnl http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/PDF_Release_Notes/769149-001.pdf
+ dnl Cray's crayCC needs "-h std=c++11"
+ for alternative in ${ax_cxx_compile_alternatives}; do
+ for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}"; do
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
+ $cachevar,
+ [ac_save_CXX="$CXX"
+ CXX="$CXX $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXX="$ac_save_CXX"])
+ if eval test x\$$cachevar = xyes; then
+ CXX="$CXX $switch"
+ if test -n "$CXXCPP" ; then
+ CXXCPP="$CXXCPP $switch"
+ fi
+ ac_success=yes
+ break
+ fi
+ done
+ if test x$ac_success = xyes; then
+ break
+ fi
+ done
+ fi])
+ AC_LANG_POP([C++])
+ if test x$ax_cxx_compile_cxx$1_required = xtrue; then
+ if test x$ac_success = xno; then
+ AC_MSG_ERROR([*** A compiler with support for C++$1 language features is required.])
+ fi
+ fi
+ if test x$ac_success = xno; then
+ HAVE_CXX$1=0
+ AC_MSG_NOTICE([No compiler with C++$1 support was found])
+ else
+ HAVE_CXX$1=1
+ AC_DEFINE(HAVE_CXX$1,1,
+ [define if the compiler supports basic C++$1 syntax])
+ fi
+ AC_SUBST(HAVE_CXX$1)
+ m4_if([$1], [17], [AC_MSG_WARN([C++17 is not yet standardized, so the checks may change in incompatible ways anytime])])
+])
+
+
+dnl Test body for checking C++11 support
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_11],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+)
+
+
+dnl Test body for checking C++14 support
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_14],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
+)
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_17],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_17
+)
+
+dnl Tests for new features in C++11
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_11], [[
+
+// If the compiler admits that it is not ready for C++11, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201103L && !(defined _MSC_VER)
+
+#error "This is not a C++11 compiler"
+
+#else
+
+namespace cxx11
+{
+
+ namespace test_static_assert
+ {
+
+ template <typename T>
+ struct check
+ {
+ static_assert(sizeof(int) <= sizeof(T), "not big enough");
+ };
+
+ }
+
+ namespace test_final_override
+ {
+
+ struct Base
+ {
+ virtual void f() {}
+ };
+
+ struct Derived : public Base
+ {
+ virtual void f() override {}
+ };
+
+ }
+
+ namespace test_double_right_angle_brackets
+ {
+
+ template < typename T >
+ struct check {};
+
+ typedef check<void> single_type;
+ typedef check<check<void>> double_type;
+ typedef check<check<check<void>>> triple_type;
+ typedef check<check<check<check<void>>>> quadruple_type;
+
+ }
+
+ namespace test_decltype
+ {
+
+ int
+ f()
+ {
+ int a = 1;
+ decltype(a) b = 2;
+ return a + b;
+ }
+
+ }
+
+ namespace test_type_deduction
+ {
+
+ template < typename T1, typename T2 >
+ struct is_same
+ {
+ static const bool value = false;
+ };
+
+ template < typename T >
+ struct is_same<T, T>
+ {
+ static const bool value = true;
+ };
+
+ template < typename T1, typename T2 >
+ auto
+ add(T1 a1, T2 a2) -> decltype(a1 + a2)
+ {
+ return a1 + a2;
+ }
+
+ int
+ test(const int c, volatile int v)
+ {
+ static_assert(is_same<int, decltype(0)>::value == true, "");
+ static_assert(is_same<int, decltype(c)>::value == false, "");
+ static_assert(is_same<int, decltype(v)>::value == false, "");
+ auto ac = c;
+ auto av = v;
+ auto sumi = ac + av + 'x';
+ auto sumf = ac + av + 1.0;
+ static_assert(is_same<int, decltype(ac)>::value == true, "");
+ static_assert(is_same<int, decltype(av)>::value == true, "");
+ static_assert(is_same<int, decltype(sumi)>::value == true, "");
+ static_assert(is_same<int, decltype(sumf)>::value == false, "");
+ static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
+ return (sumf > 0.0) ? sumi : add(c, v);
+ }
+
+ }
+
+ namespace test_noexcept
+ {
+
+ int f() { return 0; }
+ int g() noexcept { return 0; }
+
+ static_assert(noexcept(f()) == false, "");
+ static_assert(noexcept(g()) == true, "");
+
+ }
+
+ namespace test_constexpr
+ {
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
+ {
+ return *s ? strlen_c_r(s + 1, acc + 1) : acc;
+ }
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c(const CharT *const s) noexcept
+ {
+ return strlen_c_r(s, 0UL);
+ }
+
+ static_assert(strlen_c("") == 0UL, "");
+ static_assert(strlen_c("1") == 1UL, "");
+ static_assert(strlen_c("example") == 7UL, "");
+ static_assert(strlen_c("another\0example") == 7UL, "");
+
+ }
+
+ namespace test_rvalue_references
+ {
+
+ template < int N >
+ struct answer
+ {
+ static constexpr int value = N;
+ };
+
+ answer<1> f(int&) { return answer<1>(); }
+ answer<2> f(const int&) { return answer<2>(); }
+ answer<3> f(int&&) { return answer<3>(); }
+
+ void
+ test()
+ {
+ int i = 0;
+ const int c = 0;
+ static_assert(decltype(f(i))::value == 1, "");
+ static_assert(decltype(f(c))::value == 2, "");
+ static_assert(decltype(f(0))::value == 3, "");
+ }
+
+ }
+
+ namespace test_uniform_initialization
+ {
+
+ struct test
+ {
+ static const int zero {};
+ static const int one {1};
+ };
+
+ static_assert(test::zero == 0, "");
+ static_assert(test::one == 1, "");
+
+ }
+
+ namespace test_lambdas
+ {
+
+ void
+ test1()
+ {
+ auto lambda1 = [](){};
+ auto lambda2 = lambda1;
+ lambda1();
+ lambda2();
+ }
+
+ int
+ test2()
+ {
+ auto a = [](int i, int j){ return i + j; }(1, 2);
+ auto b = []() -> int { return '0'; }();
+ auto c = [=](){ return a + b; }();
+ auto d = [&](){ return c; }();
+ auto e = [a, &b](int x) mutable {
+ const auto identity = [](int y){ return y; };
+ for (auto i = 0; i < a; ++i)
+ a += b--;
+ return x + identity(a + b);
+ }(0);
+ return a + b + c + d + e;
+ }
+
+ int
+ test3()
+ {
+ const auto nullary = [](){ return 0; };
+ const auto unary = [](int x){ return x; };
+ using nullary_t = decltype(nullary);
+ using unary_t = decltype(unary);
+ const auto higher1st = [](nullary_t f){ return f(); };
+ const auto higher2nd = [unary](nullary_t f1){
+ return [unary, f1](unary_t f2){ return f2(unary(f1())); };
+ };
+ return higher1st(nullary) + higher2nd(nullary)(unary);
+ }
+
+ }
+
+ namespace test_variadic_templates
+ {
+
+ template <int...>
+ struct sum;
+
+ template <int N0, int... N1toN>
+ struct sum<N0, N1toN...>
+ {
+ static constexpr auto value = N0 + sum<N1toN...>::value;
+ };
+
+ template <>
+ struct sum<>
+ {
+ static constexpr auto value = 0;
+ };
+
+ static_assert(sum<>::value == 0, "");
+ static_assert(sum<1>::value == 1, "");
+ static_assert(sum<23>::value == 23, "");
+ static_assert(sum<1, 2>::value == 3, "");
+ static_assert(sum<5, 5, 11>::value == 21, "");
+ static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
+
+ }
+
+ // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
+ // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
+ // because of this.
+ namespace test_template_alias_sfinae
+ {
+
+ struct foo {};
+
+ template<typename T>
+ using member = typename T::member_type;
+
+ template<typename T>
+ void func(...) {}
+
+ template<typename T>
+ void func(member<T>*) {}
+
+ void test();
+
+ void test() { func<foo>(0); }
+
+ }
+
+} // namespace cxx11
+
+#endif // __cplusplus >= 201103L
+
+]])
+
+
+dnl Tests for new features in C++14
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_14], [[
+
+// If the compiler admits that it is not ready for C++14, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201402L
+
+#error "This is not a C++14 compiler"
+
+#else
+
+namespace cxx14
+{
+
+ namespace test_polymorphic_lambdas
+ {
+
+ int
+ test()
+ {
+ const auto lambda = [](auto&&... args){
+ const auto istiny = [](auto x){
+ return (sizeof(x) == 1UL) ? 1 : 0;
+ };
+ const int aretiny[] = { istiny(args)... };
+ return aretiny[0];
+ };
+ return lambda(1, 1L, 1.0f, '1');
+ }
+
+ }
+
+ namespace test_binary_literals
+ {
+
+ constexpr auto ivii = 0b0000000000101010;
+ static_assert(ivii == 42, "wrong value");
+
+ }
+
+ namespace test_generalized_constexpr
+ {
+
+ template < typename CharT >
+ constexpr unsigned long
+ strlen_c(const CharT *const s) noexcept
+ {
+ auto length = 0UL;
+ for (auto p = s; *p; ++p)
+ ++length;
+ return length;
+ }
+
+ static_assert(strlen_c("") == 0UL, "");
+ static_assert(strlen_c("x") == 1UL, "");
+ static_assert(strlen_c("test") == 4UL, "");
+ static_assert(strlen_c("another\0test") == 7UL, "");
+
+ }
+
+ namespace test_lambda_init_capture
+ {
+
+ int
+ test()
+ {
+ auto x = 0;
+ const auto lambda1 = [a = x](int b){ return a + b; };
+ const auto lambda2 = [a = lambda1(x)](){ return a; };
+ return lambda2();
+ }
+
+ }
+
+ namespace test_digit_separators
+ {
+
+ constexpr auto ten_million = 100'000'000;
+ static_assert(ten_million == 100000000, "");
+
+ }
+
+ namespace test_return_type_deduction
+ {
+
+ auto f(int& x) { return x; }
+ decltype(auto) g(int& x) { return x; }
+
+ template < typename T1, typename T2 >
+ struct is_same
+ {
+ static constexpr auto value = false;
+ };
+
+ template < typename T >
+ struct is_same<T, T>
+ {
+ static constexpr auto value = true;
+ };
+
+ int
+ test()
+ {
+ auto x = 0;
+ static_assert(is_same<int, decltype(f(x))>::value, "");
+ static_assert(is_same<int&, decltype(g(x))>::value, "");
+ return x;
+ }
+
+ }
+
+} // namespace cxx14
+
+#endif // __cplusplus >= 201402L
+
+]])
+
+
+dnl Tests for new features in C++17
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_17], [[
+
+// If the compiler admits that it is not ready for C++17, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus <= 201402L
+
+#error "This is not a C++17 compiler"
+
+#else
+
+#if defined(__clang__)
+ #define REALLY_CLANG
+#else
+ #if defined(__GNUC__)
+ #define REALLY_GCC
+ #endif
+#endif
+
+#include <initializer_list>
+#include <utility>
+#include <type_traits>
+
+namespace cxx17
+{
+
+#if !defined(REALLY_CLANG)
+ namespace test_constexpr_lambdas
+ {
+
+ // TODO: test it with clang++ from git
+
+ constexpr int foo = [](){return 42;}();
+
+ }
+#endif // !defined(REALLY_CLANG)
+
+ namespace test::nested_namespace::definitions
+ {
+
+ }
+
+ namespace test_fold_expression
+ {
+
+ template<typename... Args>
+ int multiply(Args... args)
+ {
+ return (args * ... * 1);
+ }
+
+ template<typename... Args>
+ bool all(Args... args)
+ {
+ return (args && ...);
+ }
+
+ }
+
+ namespace test_extended_static_assert
+ {
+
+ static_assert (true);
+
+ }
+
+ namespace test_auto_brace_init_list
+ {
+
+ auto foo = {5};
+ auto bar {5};
+
+ static_assert(std::is_same<std::initializer_list<int>, decltype(foo)>::value);
+ static_assert(std::is_same<int, decltype(bar)>::value);
+ }
+
+ namespace test_typename_in_template_template_parameter
+ {
+
+ template<template<typename> typename X> struct D;
+
+ }
+
+ namespace test_fallthrough_nodiscard_maybe_unused_attributes
+ {
+
+ int f1()
+ {
+ return 42;
+ }
+
+ [[nodiscard]] int f2()
+ {
+ [[maybe_unused]] auto unused = f1();
+
+ switch (f1())
+ {
+ case 17:
+ f1();
+ [[fallthrough]];
+ case 42:
+ f1();
+ }
+ return f1();
+ }
+
+ }
+
+ namespace test_extended_aggregate_initialization
+ {
+
+ struct base1
+ {
+ int b1, b2 = 42;
+ };
+
+ struct base2
+ {
+ base2() {
+ b3 = 42;
+ }
+ int b3;
+ };
+
+ struct derived : base1, base2
+ {
+ int d;
+ };
+
+ derived d1 {{1, 2}, {}, 4}; // full initialization
+ derived d2 {{}, {}, 4}; // value-initialized bases
+
+ }
+
+ namespace test_general_range_based_for_loop
+ {
+
+ struct iter
+ {
+ int i;
+
+ int& operator* ()
+ {
+ return i;
+ }
+
+ const int& operator* () const
+ {
+ return i;
+ }
+
+ iter& operator++()
+ {
+ ++i;
+ return *this;
+ }
+ };
+
+ struct sentinel
+ {
+ int i;
+ };
+
+ bool operator== (const iter& i, const sentinel& s)
+ {
+ return i.i == s.i;
+ }
+
+ bool operator!= (const iter& i, const sentinel& s)
+ {
+ return !(i == s);
+ }
+
+ struct range
+ {
+ iter begin() const
+ {
+ return {0};
+ }
+
+ sentinel end() const
+ {
+ return {5};
+ }
+ };
+
+ void f()
+ {
+ range r {};
+
+ for (auto i : r)
+ {
+ [[maybe_unused]] auto v = i;
+ }
+ }
+
+ }
+
+ namespace test_lambda_capture_asterisk_this_by_value
+ {
+
+ struct t
+ {
+ int i;
+ int foo()
+ {
+ return [*this]()
+ {
+ return i;
+ }();
+ }
+ };
+
+ }
+
+ namespace test_enum_class_construction
+ {
+
+ enum class byte : unsigned char
+ {};
+
+ byte foo {42};
+
+ }
+
+ namespace test_constexpr_if
+ {
+
+ template <bool cond>
+ int f ()
+ {
+ if constexpr(cond)
+ {
+ return 13;
+ }
+ else
+ {
+ return 42;
+ }
+ }
+
+ }
+
+ namespace test_selection_statement_with_initializer
+ {
+
+ int f()
+ {
+ return 13;
+ }
+
+ int f2()
+ {
+ if (auto i = f(); i > 0)
+ {
+ return 3;
+ }
+
+ switch (auto i = f(); i + 4)
+ {
+ case 17:
+ return 2;
+
+ default:
+ return 1;
+ }
+ }
+
+ }
+
+#if !defined(REALLY_CLANG)
+ namespace test_template_argument_deduction_for_class_templates
+ {
+
+ // TODO: test it with clang++ from git
+
+ template <typename T1, typename T2>
+ struct pair
+ {
+ pair (T1 p1, T2 p2)
+ : m1 {p1},
+ m2 {p2}
+ {}
+
+ T1 m1;
+ T2 m2;
+ };
+
+ void f()
+ {
+ [[maybe_unused]] auto p = pair{13, 42u};
+ }
+
+ }
+#endif // !defined(REALLY_CLANG)
+
+ namespace test_non_type_auto_template_parameters
+ {
+
+ template <auto n>
+ struct B
+ {};
+
+ B<5> b1;
+ B<'a'> b2;
+
+ }
+
+#if !defined(REALLY_CLANG)
+ namespace test_structured_bindings
+ {
+
+ // TODO: test it with clang++ from git
+
+ int arr[2] = { 1, 2 };
+ std::pair<int, int> pr = { 1, 2 };
+
+ auto f1() -> int(&)[2]
+ {
+ return arr;
+ }
+
+ auto f2() -> std::pair<int, int>&
+ {
+ return pr;
+ }
+
+ struct S
+ {
+ int x1 : 2;
+ volatile double y1;
+ };
+
+ S f3()
+ {
+ return {};
+ }
+
+ auto [ x1, y1 ] = f1();
+ auto& [ xr1, yr1 ] = f1();
+ auto [ x2, y2 ] = f2();
+ auto& [ xr2, yr2 ] = f2();
+ const auto [ x3, y3 ] = f3();
+
+ }
+#endif // !defined(REALLY_CLANG)
+
+#if !defined(REALLY_CLANG)
+ namespace test_exception_spec_type_system
+ {
+
+ // TODO: test it with clang++ from git
+
+ struct Good {};
+ struct Bad {};
+
+ void g1() noexcept;
+ void g2();
+
+ template<typename T>
+ Bad
+ f(T*, T*);
+
+ template<typename T1, typename T2>
+ Good
+ f(T1*, T2*);
+
+ static_assert (std::is_same_v<Good, decltype(f(g1, g2))>);
+
+ }
+#endif // !defined(REALLY_CLANG)
+
+ namespace test_inline_variables
+ {
+
+ template<class T> void f(T)
+ {}
+
+ template<class T> inline T g(T)
+ {
+ return T{};
+ }
+
+ template<> inline void f<>(int)
+ {}
+
+ template<> int g<>(int)
+ {
+ return 5;
+ }
+
+ }
+
+} // namespace cxx17
+
+#endif // __cplusplus <= 201402L
+
+]])
diff --git a/m4/ax_cxx_compile_stdcxx_11.m4 b/m4/ax_cxx_compile_stdcxx_11.m4
new file mode 100644
index 0000000..1733fd8
--- /dev/null
+++ b/m4/ax_cxx_compile_stdcxx_11.m4
@@ -0,0 +1,39 @@
+# =============================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
+# =============================================================================
+#
+# SYNOPSIS
+#
+# AX_CXX_COMPILE_STDCXX_11([ext|noext], [mandatory|optional])
+#
+# DESCRIPTION
+#
+# Check for baseline language coverage in the compiler for the C++11
+# standard; if necessary, add switches to CXX and CXXCPP to enable
+# support.
+#
+# This macro is a convenience alias for calling the AX_CXX_COMPILE_STDCXX
+# macro with the version set to C++11. The two optional arguments are
+# forwarded literally as the second and third argument respectively.
+# Please see the documentation for the AX_CXX_COMPILE_STDCXX macro for
+# more information. If you want to use this macro, you also need to
+# download the ax_cxx_compile_stdcxx.m4 file.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
+# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
+# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
+# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>
+# Copyright (c) 2015 Paul Norman <penorman@mac.com>
+# Copyright (c) 2015 Moritz Klammler <moritz@klammler.eu>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 18
+
+AX_REQUIRE_DEFINED([AX_CXX_COMPILE_STDCXX])
+AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [AX_CXX_COMPILE_STDCXX([11], [$1], [$2])])
diff --git a/m4/wpft_libs.m4 b/m4/wpft_libs.m4
index eb85bd9..d0f158d 100644
--- a/m4/wpft_libs.m4
+++ b/m4/wpft_libs.m4
@@ -37,6 +37,7 @@ AS_IF([test "x$have_$2" = "xno" -a "x$with_$2" = "xyes"], [
AC_DEFUN([wpft_CHECK_IMPORT_LIB],
[dnl
wpft_CHECK_LIB([$1],[$2],[$3],[$4],[$with_import_libs],[have_import_lib])
+AS_IF([test "x$have_$2" = "xyes"], [ $1_CFLAGS+=" -DENABLE_LIB$1" ])
]) # wpft_CHECK_IMPORT_LIB
# wpft_CHECK_EXPORT_LIB(name,lib-name,lib-version,help-str)
diff --git a/missing b/missing
index f62bbae..c6e3795 100755
--- a/missing
+++ b/missing
@@ -1,9 +1,9 @@
#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
-scriptversion=2013-10-28.13; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2017 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
@@ -210,6 +210,6 @@ exit $st
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
diff --git a/src/Makefile.in b/src/Makefile.in
index 37385fa..bf39091 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -89,10 +89,12 @@ build_triplet = @build@
host_triplet = @host@
subdir = src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/wpft_libs.m4 $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/wpft_libs.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -228,7 +230,6 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EOT_CFLAGS = @EOT_CFLAGS@
-EOT_CPPFLAGS = @EOT_CPPFLAGS@
EOT_LIBS = @EOT_LIBS@
EPUBGEN_CFLAGS = @EPUBGEN_CFLAGS@
EPUBGEN_LIBS = @EPUBGEN_LIBS@
@@ -243,6 +244,7 @@ FREEHAND_LIBS = @FREEHAND_LIBS@
GREP = @GREP@
GSF_CFLAGS = @GSF_CFLAGS@
GSF_LIBS = @GSF_LIBS@
+HAVE_CXX11 = @HAVE_CXX11@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -301,6 +303,10 @@ PMD2EPUB_WIN32_RESOURCE = @PMD2EPUB_WIN32_RESOURCE@
PMD2ODG_WIN32_RESOURCE = @PMD2ODG_WIN32_RESOURCE@
PUB2EPUB_WIN32_RESOURCE = @PUB2EPUB_WIN32_RESOURCE@
PUB2ODG_WIN32_RESOURCE = @PUB2ODG_WIN32_RESOURCE@
+QXP2EPUB_WIN32_RESOURCE = @QXP2EPUB_WIN32_RESOURCE@
+QXP2ODG_WIN32_RESOURCE = @QXP2ODG_WIN32_RESOURCE@
+QXP_CFLAGS = @QXP_CFLAGS@
+QXP_LIBS = @QXP_LIBS@
RANLIB = @RANLIB@
REVENGE_CFLAGS = @REVENGE_CFLAGS@
REVENGE_LIBS = @REVENGE_LIBS@
@@ -308,6 +314,8 @@ REVENGE_STREAM_CFLAGS = @REVENGE_STREAM_CFLAGS@
REVENGE_STREAM_LIBS = @REVENGE_STREAM_LIBS@
RVNGABW_CFLAGS = @RVNGABW_CFLAGS@
RVNGABW_LIBS = @RVNGABW_LIBS@
+SD2ABW_WIN32_RESOURCE = @SD2ABW_WIN32_RESOURCE@
+SD2EPUB_WIN32_RESOURCE = @SD2EPUB_WIN32_RESOURCE@
SD2ODF_WIN32_RESOURCE = @SD2ODF_WIN32_RESOURCE@
SED = @SED@
SET_MAKE = @SET_MAKE@
@@ -329,6 +337,9 @@ WPD2EPUB_WIN32_RESOURCE = @WPD2EPUB_WIN32_RESOURCE@
WPD2ODT_WIN32_RESOURCE = @WPD2ODT_WIN32_RESOURCE@
WPD_CFLAGS = @WPD_CFLAGS@
WPD_LIBS = @WPD_LIBS@
+WPFT2ABW_WIN32_RESOURCE = @WPFT2ABW_WIN32_RESOURCE@
+WPFT2EPUB_WIN32_RESOURCE = @WPFT2EPUB_WIN32_RESOURCE@
+WPFT2ODF_WIN32_RESOURCE = @WPFT2ODF_WIN32_RESOURCE@
WPG2EPUB_WIN32_RESOURCE = @WPG2EPUB_WIN32_RESOURCE@
WPG2ODG_WIN32_RESOURCE = @WPG2ODG_WIN32_RESOURCE@
WPG_CFLAGS = @WPG_CFLAGS@
@@ -342,6 +353,11 @@ WRITERPERFECT_MAJOR_VERSION = @WRITERPERFECT_MAJOR_VERSION@
WRITERPERFECT_MICRO_VERSION = @WRITERPERFECT_MICRO_VERSION@
WRITERPERFECT_MINOR_VERSION = @WRITERPERFECT_MINOR_VERSION@
WRITERPERFECT_VERSION = @WRITERPERFECT_VERSION@
+XATTR_CFLAGS = @XATTR_CFLAGS@
+ZMF2EPUB_WIN32_RESOURCE = @ZMF2EPUB_WIN32_RESOURCE@
+ZMF2ODG_WIN32_RESOURCE = @ZMF2ODG_WIN32_RESOURCE@
+ZMF_CFLAGS = @ZMF_CFLAGS@
+ZMF_LIBS = @ZMF_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
diff --git a/src/conv/Makefile.am b/src/conv/Makefile.am
index f07b2cb..a11ae27 100644
--- a/src/conv/Makefile.am
+++ b/src/conv/Makefile.am
@@ -1,6 +1,6 @@
## -*- Mode: make; tab-width: 4; indent-tabs-mode: tabs -*-
-SUBDIRS =
+SUBDIRS = wrapper
if USE_LIBRVNGABW
SUBDIRS += abw
diff --git a/src/conv/Makefile.in b/src/conv/Makefile.in
index 9dad380..2f1ed2e 100644
--- a/src/conv/Makefile.in
+++ b/src/conv/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -92,10 +92,12 @@ host_triplet = @host@
@USE_LIBODFGEN_TRUE@am__append_3 = odf
subdir = src/conv
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/wpft_libs.m4 $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/wpft_libs.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -157,7 +159,7 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-DIST_SUBDIRS = abw epub odf
+DIST_SUBDIRS = wrapper abw epub odf
am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
@@ -231,7 +233,6 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EOT_CFLAGS = @EOT_CFLAGS@
-EOT_CPPFLAGS = @EOT_CPPFLAGS@
EOT_LIBS = @EOT_LIBS@
EPUBGEN_CFLAGS = @EPUBGEN_CFLAGS@
EPUBGEN_LIBS = @EPUBGEN_LIBS@
@@ -246,6 +247,7 @@ FREEHAND_LIBS = @FREEHAND_LIBS@
GREP = @GREP@
GSF_CFLAGS = @GSF_CFLAGS@
GSF_LIBS = @GSF_LIBS@
+HAVE_CXX11 = @HAVE_CXX11@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -304,6 +306,10 @@ PMD2EPUB_WIN32_RESOURCE = @PMD2EPUB_WIN32_RESOURCE@
PMD2ODG_WIN32_RESOURCE = @PMD2ODG_WIN32_RESOURCE@
PUB2EPUB_WIN32_RESOURCE = @PUB2EPUB_WIN32_RESOURCE@
PUB2ODG_WIN32_RESOURCE = @PUB2ODG_WIN32_RESOURCE@
+QXP2EPUB_WIN32_RESOURCE = @QXP2EPUB_WIN32_RESOURCE@
+QXP2ODG_WIN32_RESOURCE = @QXP2ODG_WIN32_RESOURCE@
+QXP_CFLAGS = @QXP_CFLAGS@
+QXP_LIBS = @QXP_LIBS@
RANLIB = @RANLIB@
REVENGE_CFLAGS = @REVENGE_CFLAGS@
REVENGE_LIBS = @REVENGE_LIBS@
@@ -311,6 +317,8 @@ REVENGE_STREAM_CFLAGS = @REVENGE_STREAM_CFLAGS@
REVENGE_STREAM_LIBS = @REVENGE_STREAM_LIBS@
RVNGABW_CFLAGS = @RVNGABW_CFLAGS@
RVNGABW_LIBS = @RVNGABW_LIBS@
+SD2ABW_WIN32_RESOURCE = @SD2ABW_WIN32_RESOURCE@
+SD2EPUB_WIN32_RESOURCE = @SD2EPUB_WIN32_RESOURCE@
SD2ODF_WIN32_RESOURCE = @SD2ODF_WIN32_RESOURCE@
SED = @SED@
SET_MAKE = @SET_MAKE@
@@ -332,6 +340,9 @@ WPD2EPUB_WIN32_RESOURCE = @WPD2EPUB_WIN32_RESOURCE@
WPD2ODT_WIN32_RESOURCE = @WPD2ODT_WIN32_RESOURCE@
WPD_CFLAGS = @WPD_CFLAGS@
WPD_LIBS = @WPD_LIBS@
+WPFT2ABW_WIN32_RESOURCE = @WPFT2ABW_WIN32_RESOURCE@
+WPFT2EPUB_WIN32_RESOURCE = @WPFT2EPUB_WIN32_RESOURCE@
+WPFT2ODF_WIN32_RESOURCE = @WPFT2ODF_WIN32_RESOURCE@
WPG2EPUB_WIN32_RESOURCE = @WPG2EPUB_WIN32_RESOURCE@
WPG2ODG_WIN32_RESOURCE = @WPG2ODG_WIN32_RESOURCE@
WPG_CFLAGS = @WPG_CFLAGS@
@@ -345,6 +356,11 @@ WRITERPERFECT_MAJOR_VERSION = @WRITERPERFECT_MAJOR_VERSION@
WRITERPERFECT_MICRO_VERSION = @WRITERPERFECT_MICRO_VERSION@
WRITERPERFECT_MINOR_VERSION = @WRITERPERFECT_MINOR_VERSION@
WRITERPERFECT_VERSION = @WRITERPERFECT_VERSION@
+XATTR_CFLAGS = @XATTR_CFLAGS@
+ZMF2EPUB_WIN32_RESOURCE = @ZMF2EPUB_WIN32_RESOURCE@
+ZMF2ODG_WIN32_RESOURCE = @ZMF2ODG_WIN32_RESOURCE@
+ZMF_CFLAGS = @ZMF_CFLAGS@
+ZMF_LIBS = @ZMF_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
@@ -398,7 +414,7 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-SUBDIRS = $(am__append_1) $(am__append_2) $(am__append_3)
+SUBDIRS = wrapper $(am__append_1) $(am__append_2) $(am__append_3)
all: all-recursive
.SUFFIXES:
diff --git a/src/conv/abw/ABWConverter.cxx b/src/conv/abw/ABWConverter.cxx
new file mode 100644
index 0000000..899f45a
--- /dev/null
+++ b/src/conv/abw/ABWConverter.cxx
@@ -0,0 +1,164 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include <stdio.h>
+#include <string.h>
+
+#include "ABWConverter.hxx"
+
+#include "ABWWrapper.hxx"
+
+#include "ABWStringDocumentHandler.hxx"
+#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
+#include "WPWrapper.hxx"
+
+namespace writerperfectrvngabw
+{
+ABWConverter::ABWConverter(shared_ptr<UserOptions> options, std::string const &toolName, std::string const &usageMessage) :
+ m_options(options), m_toolName(toolName), m_usageMessage(usageMessage)
+{
+}
+
+ABWConverter::~ABWConverter()
+{
+}
+
+int ABWConverter::printUsage() const
+{
+ if (m_toolName.empty() || m_usageMessage.empty())
+ {
+ fprintf(stderr, "INTERNAL ERROR: not enough data to show help.\n");
+ return 1;
+ }
+ UsageHelper usage(m_toolName.c_str(), m_usageMessage.c_str());
+ usage.addToDescription("If OUTPUT is missing, the result is printed to standard output.\n");
+ if (m_options) m_options->addOptionsToUsageHelper(usage);
+ return usage.printUsage();
+}
+
+bool ABWConverter::parseAndTreatOptions(int argc, char const *const *argv, int &exitCode) const
+{
+ if (!m_options)
+ {
+ fprintf(stderr, "INTERNAL ERROR: can not find the options.\n");
+ exitCode=1;
+ }
+ else if (!m_options->parseOptions(argc, argv) || m_options->m_showHelp)
+ exitCode=printUsage();
+ else if (m_options->m_showListEncoding)
+ exitCode=UsageHelper::printEncodings();
+ else if (m_options->m_showVersion)
+ exitCode=UsageHelper::printVersion(m_toolName.c_str());
+ else if (!m_options->getInput())
+ exitCode=printUsage();
+ else
+ return false;
+ return true;
+}
+
+// basic wrapper
+bool ABWConverter::convertDocument(writerperfect::WPWrapper &wrapper, librevenge::RVNGInputStream &input)
+{
+ if (!m_options)
+ return false;
+ writerperfectrvngabw::ABWStringDocumentHandler contentHandler;
+ librvngabw::ABWTextGenerator collector(&contentHandler);
+ if (!wrapper.parseDocument(input, collector)) return false;
+ return contentHandler.write(m_options->getOutput());
+}
+
+bool ABWConverter::isSupportedFormat(writerperfect::WPWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input)
+{
+ if (!input)
+ return false;
+ return input.get() && wrapper.checkInput(input) && wrapper.m_type==writerperfect::WPWrapper::Text;
+}
+
+int ABWConverter::convert(writerperfect::WPWrapper &wrapper, int argc, char const *const *argv)
+{
+ int exitCode;
+ if (parseAndTreatOptions(argc, argv, exitCode))
+ return exitCode;
+
+ shared_ptr<librevenge::RVNGInputStream> input(new librevenge::RVNGFileStream(m_options->getInput()));
+ if (!isSupportedFormat(wrapper, input))
+ {
+ if (!wrapper.m_errorSent)
+ fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid document.\n");
+ return 1;
+ }
+
+ if (!input || !convertDocument(wrapper, *input))
+ {
+ if (!wrapper.m_errorSent)
+ fprintf(stderr, "ERROR : Couldn't convert the document\n");
+ return 1;
+ }
+
+ return 0;
+}
+
+// ABWWrapper
+bool ABWConverter::convertDocument(ABWWrapper &wrapper, librevenge::RVNGInputStream &input)
+{
+ if (!m_options)
+ return false;
+ writerperfectrvngabw::ABWStringDocumentHandler contentHandler;
+ librvngabw::ABWTextGenerator collector(&contentHandler);
+ if (!wrapper.parseDocument(input, collector)) return false;
+ return contentHandler.write(m_options->getOutput());
+}
+
+bool ABWConverter::isSupportedFormat(ABWWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input)
+{
+ if (!input)
+ return false;
+ return input.get() && wrapper.checkInput(input) && wrapper.getType()==writerperfect::WPWrapper::Text;
+}
+
+int ABWConverter::convert(ABWWrapper &wrapper, int argc, char const *const *argv)
+{
+ int exitCode;
+ if (parseAndTreatOptions(argc, argv, exitCode))
+ return exitCode;
+
+ shared_ptr<librevenge::RVNGInputStream> input(new librevenge::RVNGFileStream(m_options->getInput()));
+ if (!isSupportedFormat(wrapper, input))
+ {
+ if (!wrapper.isErrorSent())
+ fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid document.\n");
+ return 1;
+ }
+
+ if (!input || !convertDocument(wrapper, *input))
+ {
+ if (!wrapper.isErrorSent())
+ fprintf(stderr, "ERROR : Couldn't convert the document\n");
+ return 1;
+ }
+
+ return 0;
+}
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWConverter.hxx b/src/conv/abw/ABWConverter.hxx
new file mode 100644
index 0000000..50a3963
--- /dev/null
+++ b/src/conv/abw/ABWConverter.hxx
@@ -0,0 +1,87 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ABW_CONVERTER_H
+#define ABW_CONVERTER_H
+
+#include <string>
+
+#include <librevenge/librevenge.h>
+#include <librvngabw/librvngabw.hxx>
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfect
+{
+class WPWrapper;
+}
+namespace writerperfectrvngabw
+{
+class ABWWrapper;
+/** a abstract class to help convert file
+ */
+class ABWConverter
+{
+public:
+ //! constructor
+ ABWConverter(shared_ptr<UserOptions> options, std::string const &toolName, std::string const &usageMessage);
+ //! destructor
+ ~ABWConverter();
+
+ /** try to parse/treat the argument, to do the conversion, ... using a basic wrapper. Returns the exit code */
+ int convert(writerperfect::WPWrapper &wrapper, int argc, char const *const *argv);
+ /** try to parse/treat the argument, to do the conversion, ... Returns the exit code */
+ int convert(ABWWrapper &wrapper, int argc, char const *const *argv);
+
+ // low level function
+
+ /** print the options and try to call basic functions:
+ - printVersion, printUsage: if toolName and usage message is set
+ - printEncoding
+ Return true and set the exit code if the program can exit
+ */
+ bool parseAndTreatOptions(int argc, char const *const *argv, int &exitCode) const;
+ /// check if a file is supported using a basic wrapper
+ bool isSupportedFormat(writerperfect::WPWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input);
+ /// check if a file is supported
+ bool isSupportedFormat(ABWWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input);
+ /// try to convert a file using a basic wrapper
+ bool convertDocument(writerperfect::WPWrapper &wrapper, librevenge::RVNGInputStream &input);
+ /// try to convert a file
+ bool convertDocument(ABWWrapper &wrapper, librevenge::RVNGInputStream &input);
+ /// print usage: toolName and usage message must be set
+ int printUsage() const;
+
+protected:
+ //! the option
+ shared_ptr<UserOptions> m_options;
+ //! the tool name
+ std::string m_toolName;
+ //! the usage message
+ std::string m_usageMessage;
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWStringDocumentHandler.cxx b/src/conv/abw/ABWStringDocumentHandler.cxx
index d9f8f0f..0be47a1 100644
--- a/src/conv/abw/ABWStringDocumentHandler.cxx
+++ b/src/conv/abw/ABWStringDocumentHandler.cxx
@@ -20,6 +20,7 @@
* For further information visit http://libwpd.sourceforge.net
*/
+#include <stdio.h>
#include <string.h>
#include "ABWStringDocumentHandler.hxx"
@@ -45,7 +46,6 @@ ABWStringDocumentHandler::ABWStringDocumentHandler() : m_data(new ABWStringDocum
ABWStringDocumentHandler::~ABWStringDocumentHandler()
{
- delete m_data;
}
librevenge::RVNGString const &ABWStringDocumentHandler::getData() const
@@ -53,6 +53,21 @@ librevenge::RVNGString const &ABWStringDocumentHandler::getData() const
return m_data->m_serializer.getData();
}
+bool ABWStringDocumentHandler::write(char const *output) const
+{
+ if (output && strlen(output))
+ {
+ FILE *fhandle = fopen(output, "wb");
+ if (!fhandle)
+ return false;
+ fprintf(fhandle, "%s\n", getData().cstr());
+ fclose(fhandle);
+ }
+ else
+ printf("%s\n", getData().cstr());
+ return true;
+}
+
void ABWStringDocumentHandler::startDocument()
{
m_data->m_serializer.startDocument();
diff --git a/src/conv/abw/ABWStringDocumentHandler.hxx b/src/conv/abw/ABWStringDocumentHandler.hxx
index 830ea44..d9e7004 100644
--- a/src/conv/abw/ABWStringDocumentHandler.hxx
+++ b/src/conv/abw/ABWStringDocumentHandler.hxx
@@ -1,5 +1,5 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
-/* librvngabw
+/* writerperfect
* Version: MPL 2.0 / LGPLv2.1+
*
* This Source Code Form is subject to the terms of the Mozilla Public
@@ -17,12 +17,16 @@
* (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
* applicable instead of those above.
*
- * For further information visit http://librvngabw.sourceforge.net
+ * For further information visit http://libwpd.sourceforge.net
*/
#ifndef ABW_STRING_DOCUMENT_HANDLER_H
#define ABW_STRING_DOCUMENT_HANDLER_H
+#include <memory>
+
+#include <librevenge/librevenge.h>
+
#include <librvngabw/librvngabw.hxx>
namespace writerperfectrvngabw
@@ -39,9 +43,6 @@ public:
//! destructor
virtual ~ABWStringDocumentHandler();
- //! returns the final string
- librevenge::RVNGString const &getData() const;
-
//! start document
virtual void startDocument();
//! end document
@@ -52,9 +53,16 @@ public:
virtual void endElement(const char *psName);
//! add a list of character
virtual void characters(const librevenge::RVNGString &sCharacters);
+
+ //! write the result in a file or in the output
+ bool write(char const *output) const;
+
private:
+ //! returns the final string
+ librevenge::RVNGString const &getData() const;
+
//! the class data
- ABWStringDocumentHandlerPrivate *m_data;
+ std::unique_ptr<ABWStringDocumentHandlerPrivate> m_data;
ABWStringDocumentHandler(ABWStringDocumentHandler const &);
ABWStringDocumentHandler operator=(ABWStringDocumentHandler const &);
diff --git a/src/conv/abw/ABWWrapper.cxx b/src/conv/abw/ABWWrapper.cxx
new file mode 100644
index 0000000..6d71eb7
--- /dev/null
+++ b/src/conv/abw/ABWWrapper.cxx
@@ -0,0 +1,65 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include <string.h>
+
+#include "ABWWrapper.hxx"
+
+namespace writerperfectrvngabw
+{
+writerperfect::WPWrapper::Type ABWWrapper::getType() const
+{
+ if (!m_wrapper) return writerperfect::WPWrapper::Unknown;
+ return m_wrapper->m_type;
+}
+bool ABWWrapper::isErrorSent() const
+{
+ if (!m_wrapper) return false;
+ return m_wrapper->m_errorSent;
+}
+bool ABWWrapper::checkInput(shared_ptr<librevenge::RVNGInputStream> &input)
+{
+ if (m_wrapper)
+ return m_wrapper->checkInput(input);
+ return false;
+}
+bool ABWWrapper::parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector)
+{
+ if (m_wrapper)
+ return m_wrapper->parseDocument(input, collector);
+ return false;
+}
+bool ABWWrapper::convertSVGImage(librevenge::RVNGStringVector const &svgOutput, librevenge::RVNGBinaryData &output)
+{
+ if (svgOutput.empty() || svgOutput[0].empty())
+ return false;
+ output.clear();
+ const char *svgHeader = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n"
+ "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\""
+ " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n";
+ output.append((unsigned char *)svgHeader, strlen(svgHeader));
+ output.append((unsigned char *)svgOutput[0].cstr(), strlen(svgOutput[0].cstr()));
+ return true;
+}
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWWrapper.hxx b/src/conv/abw/ABWWrapper.hxx
new file mode 100644
index 0000000..0b14c7c
--- /dev/null
+++ b/src/conv/abw/ABWWrapper.hxx
@@ -0,0 +1,60 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ABW_WRAPPER_H
+#define ABW_WRAPPER_H
+
+#include <string>
+
+#include <librevenge/librevenge.h>
+#include <librvngabw/librvngabw.hxx>
+
+#include "writerperfect_utils.hxx"
+
+#include "WPWrapper.hxx"
+
+namespace writerperfectrvngabw
+{
+/** a abstract wrapper to help convert file
+ */
+class ABWWrapper
+{
+public:
+ //! constructor
+ explicit ABWWrapper(shared_ptr<writerperfect::WPWrapper> wrapper) : m_wrapper(wrapper) {}
+ //! destructor
+ virtual ~ABWWrapper() {}
+ //! return the wrapper type
+ writerperfect::WPWrapper::Type getType() const;
+ //! return true if an error is send
+ bool isErrorSent() const;
+ virtual bool checkInput(shared_ptr<librevenge::RVNGInputStream> &input);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector);
+ //! helper function which can be use to convert a output of svgdrawing to a svg image
+ static bool convertSVGImage(librevenge::RVNGStringVector const &svgOutput, librevenge::RVNGBinaryData &output);
+ //! the basic wrapper
+ shared_ptr<writerperfect::WPWrapper> m_wrapper;
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWWrapperMWAW.cxx b/src/conv/abw/ABWWrapperMWAW.cxx
new file mode 100644
index 0000000..3266548
--- /dev/null
+++ b/src/conv/abw/ABWWrapperMWAW.cxx
@@ -0,0 +1,72 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "ABWWrapperMWAW.hxx"
+#include "WPWrapperMWAW.hxx"
+
+#include <librevenge/librevenge.h>
+#include <librvngabw/librvngabw.hxx>
+#include <libmwaw/libmwaw.hxx>
+
+#include "UserOptions.hxx"
+
+namespace writerperfectrvngabw
+{
+/// try to convert embedded picture in svg.
+static bool handleEmbeddedBasicGraphicImage(const librevenge::RVNGBinaryData &data, librevenge::RVNGBinaryData &output)
+{
+ librevenge::RVNGStringVector svgOutput;
+ librevenge::RVNGSVGDrawingGenerator generator(svgOutput, "");
+ return MWAWDocument::MWAW_R_OK == MWAWDocument::parse(data.getDataStream(), &generator) &&
+ ABWWrapper::convertSVGImage(svgOutput, output);
+}
+//! try to convert MWAW created picture in svg
+static bool handleEmbeddedMWAWGraphicImage(const librevenge::RVNGBinaryData &data, librevenge::RVNGBinaryData &output)
+{
+ librevenge::RVNGStringVector svgOutput;
+ librevenge::RVNGSVGDrawingGenerator generator(svgOutput, "");
+ return MWAWDocument::decodeGraphic(data, &generator) &&
+ ABWWrapper::convertSVGImage(svgOutput, output);
+}
+//! try to convert MWAW created spreadsheet in a table
+static bool handleEmbeddedMWAWSpreadsheetObject(const librevenge::RVNGBinaryData &data, librvngabw::ABWGenerator &generator)
+{
+ librvngabw::ABWSpreadsheetToTableGenerator exporter(generator);
+ return MWAWDocument::decodeSpreadsheet(data, &exporter);
+}
+
+ABWWrapperMWAW::ABWWrapperMWAW(shared_ptr<UserOptions> options) :
+ ABWWrapper(shared_ptr<writerperfect::WPWrapper>(new writerperfect::WPWrapperMWAW(options)))
+{
+}
+bool ABWWrapperMWAW::parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector)
+{
+ // embedded document created by libmwaw
+ collector.registerEmbeddedImageHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicImage);
+ collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
+ // basic image
+ collector.registerEmbeddedImageHandler("image/pict", &handleEmbeddedBasicGraphicImage);
+ collector.registerEmbeddedImageHandler("image/x-pict", &handleEmbeddedBasicGraphicImage);
+ return ABWWrapper::parseDocument(input, collector);
+}
+}
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWWrapperMWAW.hxx b/src/conv/abw/ABWWrapperMWAW.hxx
new file mode 100644
index 0000000..bfa9337
--- /dev/null
+++ b/src/conv/abw/ABWWrapperMWAW.hxx
@@ -0,0 +1,47 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ABW_WRAPPER_MWAW_H
+#define ABW_WRAPPER_MWAW_H
+
+#include <string>
+
+#include "ABWWrapper.hxx"
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfectrvngabw
+{
+class ABWWrapperMWAW : public ABWWrapper
+{
+public:
+ //! constructor
+ explicit ABWWrapperMWAW(shared_ptr<UserOptions> options);
+protected:
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector);
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWWrapperSTAROFFICE.cxx b/src/conv/abw/ABWWrapperSTAROFFICE.cxx
new file mode 100644
index 0000000..7694532
--- /dev/null
+++ b/src/conv/abw/ABWWrapperSTAROFFICE.cxx
@@ -0,0 +1,71 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "ABWWrapperSTAROFFICE.hxx"
+
+#include "WPWrapperSTAROFFICE.hxx"
+
+#include <librevenge/librevenge.h>
+#include <librvngabw/librvngabw.hxx>
+#include <libstaroffice/libstaroffice.hxx>
+
+#include "UserOptions.hxx"
+
+namespace writerperfectrvngabw
+{
+//! try to convert embedded picture in svg.
+static bool handleEmbeddedBasicGraphicImage(const librevenge::RVNGBinaryData &data, librevenge::RVNGBinaryData &output)
+{
+ librevenge::RVNGStringVector svgOutput;
+ librevenge::RVNGSVGDrawingGenerator generator(svgOutput, "");
+ return STOFFDocument::STOFF_R_OK == STOFFDocument::parse(data.getDataStream(), &generator) &&
+ ABWWrapper::convertSVGImage(svgOutput, output);
+}
+//! try to convert STOFF created picture in svg
+static bool handleEmbeddedSTOFFGraphicImage(const librevenge::RVNGBinaryData &data, librevenge::RVNGBinaryData &output)
+{
+ librevenge::RVNGStringVector svgOutput;
+ librevenge::RVNGSVGDrawingGenerator generator(svgOutput, "");
+ return STOFFDocument::decodeGraphic(data, &generator) &&
+ ABWWrapper::convertSVGImage(svgOutput, output);
+}
+//! try to convert STOFF created spreadsheet in a table
+static bool handleEmbeddedSTOFFSpreadsheetObject(const librevenge::RVNGBinaryData &data, librvngabw::ABWGenerator &generator)
+{
+ librvngabw::ABWSpreadsheetToTableGenerator exporter(generator);
+ return STOFFDocument::decodeSpreadsheet(data, &exporter);
+}
+
+ABWWrapperSTAROFFICE::ABWWrapperSTAROFFICE(shared_ptr<UserOptions> options) :
+ ABWWrapper(shared_ptr<writerperfect::WPWrapper>(new writerperfect::WPWrapperSTAROFFICE(options)))
+{
+}
+bool ABWWrapperSTAROFFICE::parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector)
+{
+ collector.registerEmbeddedImageHandler("image/stoff-odg", &handleEmbeddedSTOFFGraphicImage);
+ collector.registerEmbeddedObjectHandler("image/stoff-ods", &handleEmbeddedSTOFFSpreadsheetObject);
+ // basic image
+ collector.registerEmbeddedImageHandler("image/pict", &handleEmbeddedBasicGraphicImage);
+ return ABWWrapper::parseDocument(input, collector);
+}
+}
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWWrapperSTAROFFICE.hxx b/src/conv/abw/ABWWrapperSTAROFFICE.hxx
new file mode 100644
index 0000000..0124244
--- /dev/null
+++ b/src/conv/abw/ABWWrapperSTAROFFICE.hxx
@@ -0,0 +1,45 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ABW_WRAPPER_STAROFFICE_H
+#define ABW_WRAPPER_STAROFFICE_H
+
+#include "ABWWrapper.hxx"
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfectrvngabw
+{
+class ABWWrapperSTAROFFICE : public ABWWrapper
+{
+public:
+ //! constructor
+ explicit ABWWrapperSTAROFFICE(shared_ptr<UserOptions> options);
+protected:
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector);
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWWrapperWPD.cxx b/src/conv/abw/ABWWrapperWPD.cxx
new file mode 100644
index 0000000..a7fcc09
--- /dev/null
+++ b/src/conv/abw/ABWWrapperWPD.cxx
@@ -0,0 +1,65 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+#include <stdio.h>
+
+#include "ABWWrapperWPD.hxx"
+
+#include "WPWrapperWPD.hxx"
+
+#include <librevenge/librevenge.h>
+#include <librvngabw/librvngabw.hxx>
+#include <libwpd/libwpd.h>
+#ifdef ENABLE_LIBWPG
+# include <libwpg/libwpg.h>
+#endif
+#include "UserOptions.hxx"
+
+namespace writerperfectrvngabw
+{
+# ifdef ENABLE_LIBWPG
+static bool handleEmbeddedWPGImage(const librevenge::RVNGBinaryData &input, librevenge::RVNGBinaryData &output)
+{
+ libwpg::WPGFileFormat fileFormat = libwpg::WPG_AUTODETECT;
+
+ if (!libwpg::WPGraphics::isSupported(input.getDataStream()))
+ fileFormat = libwpg::WPG_WPG1;
+
+ librevenge::RVNGStringVector svgOutput;
+ librevenge::RVNGSVGDrawingGenerator generator(svgOutput, "");
+ return libwpg::WPGraphics::parse(input.getDataStream(), &generator, fileFormat) &&
+ ABWWrapper::convertSVGImage(svgOutput, output);
+}
+# endif
+
+ABWWrapperWPD::ABWWrapperWPD(shared_ptr<UserOptions> options) :
+ ABWWrapper(shared_ptr<writerperfect::WPWrapper>(new writerperfect::WPWrapperWPD(options)))
+{
+}
+bool ABWWrapperWPD::parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector)
+{
+# ifdef ENABLE_LIBWPG
+ collector.registerEmbeddedImageHandler("image/x-wpg", &handleEmbeddedWPGImage);
+# endif
+ return ABWWrapper::parseDocument(input, collector);
+}
+}
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWWrapperWPD.hxx b/src/conv/abw/ABWWrapperWPD.hxx
new file mode 100644
index 0000000..bdc1149
--- /dev/null
+++ b/src/conv/abw/ABWWrapperWPD.hxx
@@ -0,0 +1,47 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ABW_WRAPPER_WPD_H
+#define ABW_WRAPPER_WPD_H
+
+#include <string>
+
+#include "ABWWrapper.hxx"
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfectrvngabw
+{
+class ABWWrapperWPD : public ABWWrapper
+{
+public:
+ //! constructor
+ explicit ABWWrapperWPD(shared_ptr<UserOptions> options);
+protected:
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector);
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWWrapperWPS.cxx b/src/conv/abw/ABWWrapperWPS.cxx
new file mode 100644
index 0000000..c25ded7
--- /dev/null
+++ b/src/conv/abw/ABWWrapperWPS.cxx
@@ -0,0 +1,53 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "ABWWrapperWPS.hxx"
+
+#include "WPWrapperWPS.hxx"
+
+#include <librevenge/librevenge.h>
+#include <librvngabw/librvngabw.hxx>
+#include <libwps/libwps.h>
+
+#include "UserOptions.hxx"
+
+namespace writerperfectrvngabw
+{
+static bool handleEmbeddedWKSObject(const librevenge::RVNGBinaryData &data, librvngabw::ABWGenerator &generator)
+{
+ if (!data.size()) return false;
+ librvngabw::ABWSpreadsheetToTableGenerator exporter(generator);
+ return libwps::WPSDocument::parse(data.getDataStream(), &exporter)==libwps::WPS_OK;
+}
+
+ABWWrapperWPS::ABWWrapperWPS(shared_ptr<UserOptions> options) :
+ ABWWrapper(shared_ptr<writerperfect::WPWrapper>(new writerperfect::WPWrapperWPS(options)))
+{
+}
+bool ABWWrapperWPS::parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/wks-ods", &handleEmbeddedWKSObject);
+ return ABWWrapper::parseDocument(input, collector);
+}
+
+}
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ABWWrapperWPS.hxx b/src/conv/abw/ABWWrapperWPS.hxx
new file mode 100644
index 0000000..0768a36
--- /dev/null
+++ b/src/conv/abw/ABWWrapperWPS.hxx
@@ -0,0 +1,47 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ABW_WRAPPER_WPS_H
+#define ABW_WRAPPER_WPS_H
+
+#include <string>
+
+#include "ABWWrapper.hxx"
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfectrvngabw
+{
+class ABWWrapperWPS : public ABWWrapper
+{
+public:
+ //! constructor
+ explicit ABWWrapperWPS(shared_ptr<UserOptions> options);
+protected:
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, librvngabw::ABWTextGenerator &collector);
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/Makefile.am b/src/conv/abw/Makefile.am
index f8e0d43..b52d060 100644
--- a/src/conv/abw/Makefile.am
+++ b/src/conv/abw/Makefile.am
@@ -1,77 +1,140 @@
## -*- Mode: make; tab-width: 4; indent-tabs-mode: tabs -*-
-bin_PROGRAMS =
+wrapper_dir = $(top_builddir)/src/conv/wrapper
-if USE_LIBWPD
-bin_PROGRAMS += wpd2abw
-endif
+bin_PROGRAMS = wpft2abw
-if USE_LIBWPS
-bin_PROGRAMS += wps2abw
+AM_CXXFLAGS = \
+ -I$(top_srcdir)/src/lib \
+ -I$(top_srcdir)/src/conv/wrapper \
+ $(REVENGE_CFLAGS) \
+ $(RVNGABW_CFLAGS) \
+ $(DEBUG_CXXFLAGS)
+
+noinst_LTLIBRARIES = libhelperRVNGABW.la
+libhelperRVNGABW_la_LIBADD = $(top_builddir)/src/lib/libwriterperfect_internal.la $(RVNGABW_LIBS)
+libhelperRVNGABW_la_SOURCES = \
+ ABWConverter.hxx \
+ ABWConverter.cxx \
+ ABWStringDocumentHandler.hxx \
+ ABWStringDocumentHandler.cxx \
+ ABWWrapper.hxx \
+ ABWWrapper.cxx
+
+wpft2abw_DEPENDENCIES = @WPFT2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
+wpft2abw_CPPFLAGS = $(REVENGE_STREAM_CFLAGS)
+wpft2abw_LDADD = $(REVENGE_STREAM_LIBS)
+wpft2abw_SOURCES = wpft2abw.cxx
+
+if USE_LIBABW
+ bin_PROGRAMS += abw2abw
+
+ abw2abw_DEPENDENCIES = @ABW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
+ abw2abw_CPPFLAGS = $(ABW_CFLAGS)
+ abw2abw_LDADD = @ABW2ABW_WIN32_RESOURCE@ $(wrapper_dir)/libwpabw.la libhelperRVNGABW.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
+ abw2abw_SOURCES = abw2abw.cxx
endif
-if USE_LIBMWAW
-bin_PROGRAMS += mwaw2abw
+if USE_LIBEBOOK
+ wpft2abw_CPPFLAGS += $(EBOOK_CFLAGS)
+ wpft2abw_LDADD += $(EBOOK_LIBS) $(wrapper_dir)/libwpebook.la
+
+ bin_PROGRAMS += ebook2abw
+
+ ebook2abw_DEPENDENCIES = @EBOOK2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
+ ebook2abw_CPPFLAGS = $(EBOOK_CFLAGS)
+ ebook2abw_LDADD = @EBOOK2ABW_WIN32_RESOURCE@ $(wrapper_dir)/libwpebook.la libhelperRVNGABW.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
+ ebook2abw_SOURCES = ebook2abw.cxx
endif
if USE_LIBETONYEK
-bin_PROGRAMS += pages2abw
+ wpft2abw_CPPFLAGS += $(ETONYEK_CFLAGS)
+ wpft2abw_LDADD += $(ETONYEK_LIBS) $(wrapper_dir)/libwpetonyek.la
+
+ bin_PROGRAMS += pages2abw
+
+ pages2abw_DEPENDENCIES = @PAGES2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
+ pages2abw_CPPFLAGS = $(ETONYEK_CFLAGS)
+ pages2abw_LDADD = @PAGES2ABW_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libhelperRVNGABW.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+ pages2abw_SOURCES = pages2abw.cxx
endif
-if USE_LIBEBOOK
-bin_PROGRAMS += ebook2abw
+if USE_LIBMWAW
+ noinst_LTLIBRARIES += libabwmwaw.la
+
+ libabwmwaw_la_LIBADD = $(wrapper_dir)/libwpmwaw.la
+ libabwmwaw_la_CPPFLAGS = $(MWAW_CFLAGS)
+ libabwmwaw_la_SOURCES = ABWWrapperMWAW.hxx ABWWrapperMWAW.cxx
+
+ wpft2abw_DEPENDENCIES += libabwmwaw.la
+ wpft2abw_CPPFLAGS += $(MWAW_CFLAGS)
+ wpft2abw_LDADD += $(MWAW_LIBS) libabwmwaw.la
+
+ bin_PROGRAMS += mwaw2abw
+
+ mwaw2abw_DEPENDENCIES = @MWAW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la libabwmwaw.la
+ mwaw2abw_CPPFLAGS = $(MWAW_CFLAGS)
+ mwaw2abw_LDADD = @MWAW2ABW_WIN32_RESOURCE@ libabwmwaw.la libhelperRVNGABW.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
+ mwaw2abw_SOURCES = mwaw2abw.cxx
endif
-if USE_LIBABW
-bin_PROGRAMS += abw2abw
+if USE_LIBSTAROFFICE
+ noinst_LTLIBRARIES += libabwstaroffice.la
+
+ libabwstaroffice_la_LIBADD = $(wrapper_dir)/libwpstaroffice.la
+ libabwstaroffice_la_CPPFLAGS = $(STAROFFICE_CFLAGS)
+ libabwstaroffice_la_SOURCES = ABWWrapperSTAROFFICE.hxx ABWWrapperSTAROFFICE.cxx
+
+ wpft2abw_DEPENDENCIES += libabwstaroffice.la
+ wpft2abw_CPPFLAGS += $(STAROFFICE_CFLAGS)
+ wpft2abw_LDADD += $(STAROFFICE_LIBS) libabwstaroffice.la
+
+ bin_PROGRAMS += sd2abw
+
+ sd2abw_DEPENDENCIES = @SD2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la libabwstaroffice.la
+ sd2abw_CPPFLAGS = $(STAROFFICE_CFLAGS)
+ sd2abw_LDADD = @SD2ABW_WIN32_RESOURCE@ libabwstaroffice.la libhelperRVNGABW.la $(STAROFFICE_LIBS) $(REVENGE_STREAM_LIBS)
+ sd2abw_SOURCES = sd2abw.cxx
endif
-AM_CXXFLAGS = \
- -I$(top_srcdir)/src/lib \
- $(RVNGABW_CFLAGS) \
- $(DEBUG_CXXFLAGS)
+if USE_LIBWPD
+ noinst_LTLIBRARIES += libabwwpd.la
-noinst_LTLIBRARIES = libhelperRVNGABW.la
-libhelperRVNGABW_la_LIBADD = $(top_builddir)/src/lib/libwriterperfect_internal.la $(RVNGABW_LIBS)
-libhelperRVNGABW_la_SOURCES = \
- ABWStringDocumentHandler.hxx \
- ABWStringDocumentHandler.cxx
-
-abw2abw_DEPENDENCIES = @ABW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-abw2abw_CPPFLAGS = $(ABW_CFLAGS)
-abw2abw_LDADD = @ABW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
-abw2abw_SOURCES = \
- abw2abw.cxx
-
-ebook2abw_DEPENDENCIES = @EBOOK2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-ebook2abw_CPPFLAGS = $(EBOOK_CFLAGS)
-ebook2abw_LDADD = @EBOOK2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
-ebook2abw_SOURCES = \
- ebook2abw.cxx
-
-mwaw2abw_DEPENDENCIES = @MWAW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-mwaw2abw_CPPFLAGS = $(MWAW_CFLAGS)
-mwaw2abw_LDADD = @MWAW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
-mwaw2abw_SOURCES = \
- mwaw2abw.cxx
-
-pages2abw_DEPENDENCIES = @PAGES2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-pages2abw_CPPFLAGS = $(ETONYEK_CFLAGS)
-pages2abw_LDADD = @PAGES2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-pages2abw_SOURCES = \
- pages2abw.cxx
-
-wpd2abw_DEPENDENCIES = @WPD2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-wpd2abw_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
-wpd2abw_LDADD = @WPD2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpd2abw_SOURCES = \
- wpd2abw.cxx
-
-wps2abw_DEPENDENCIES = @WPS2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-wps2abw_CPPFLAGS = $(WPS_CFLAGS)
-wps2abw_LDADD = @WPS2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
-wps2abw_SOURCES = \
- wps2abw.cxx
+ libabwwpd_la_LIBADD = $(wrapper_dir)/libwpwpd.la
+ libabwwpd_la_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
+ libabwwpd_la_SOURCES = ABWWrapperWPD.hxx ABWWrapperWPD.cxx
+
+ wpft2abw_DEPENDENCIES += libabwwpd.la
+ wpft2abw_CPPFLAGS += $(WPD_CFLAGS) $(WPG_CFLAGS)
+ wpft2abw_LDADD += $(WPD_LIBS) $(WPG_LIBS) libabwwpd.la
+
+ bin_PROGRAMS += wpd2abw
+ wpd2abw_DEPENDENCIES = @WPD2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la libabwwpd.la
+ wpd2abw_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
+ wpd2abw_LDADD = @WPD2ABW_WIN32_RESOURCE@ libabwwpd.la libhelperRVNGABW.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
+ wpd2abw_SOURCES = wpd2abw.cxx
+endif
+
+if USE_LIBWPS
+ noinst_LTLIBRARIES += libabwwps.la
+
+ libabwwps_la_LIBADD = $(wrapper_dir)/libwpwps.la
+ libabwwps_la_CPPFLAGS = $(WPS_CFLAGS)
+ libabwwps_la_SOURCES = ABWWrapperWPS.hxx ABWWrapperWPS.cxx
+
+ wpft2abw_DEPENDENCIES += libabwwps.la
+ wpft2abw_CPPFLAGS += $(WPS_CFLAGS)
+ wpft2abw_LDADD += $(WPS_LIBS) libabwwps.la
+
+ bin_PROGRAMS += wps2abw
+
+ wps2abw_DEPENDENCIES = @WPS2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la libabwwps.la
+ wps2abw_CPPFLAGS = $(WPS_CFLAGS)
+ wps2abw_LDADD = @WPS2ABW_WIN32_RESOURCE@ libabwwps.la libhelperRVNGABW.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
+ wps2abw_SOURCES = wps2abw.cxx
+endif
+
+wpft2abw_LDADD += @WPFT2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
if OS_WIN32
@@ -91,6 +154,10 @@ if OS_WIN32
chmod +x $(top_srcdir)/build/win32/*compile-resource
WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource pages2abw.rc @PAGES2ABW_WIN32_RESOURCE@
+@SD2ABW_WIN32_RESOURCE@ : sd2abw.rc $(sd2abw_OBJECTS)
+ chmod +x $(top_srcdir)/build/win32/*compile-resource
+ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource sd2abw.rc @SD2ABW_WIN32_RESOURCE@
+
@WPD2ABW_WIN32_RESOURCE@ : wpd2abw.rc $(wpd2abw_OBJECTS)
chmod +x $(top_srcdir)/build/win32/*compile-resource
WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wpd2abw.rc @WPD2ABW_WIN32_RESOURCE@
@@ -99,6 +166,10 @@ if OS_WIN32
chmod +x $(top_srcdir)/build/win32/*compile-resource
WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wps2abw.rc @WPS2ABW_WIN32_RESOURCE@
+@WPFT2ABW_WIN32_RESOURCE@ : wpft2abw.rc $(wpft2abw_OBJECTS)
+ chmod +x $(top_srcdir)/build/win32/*compile-resource
+ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wpft2abw.rc @WPFT2ABW_WIN32_RESOURCE@
+
endif
## vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/src/conv/abw/Makefile.in b/src/conv/abw/Makefile.in
index 333ead1..fb4c123 100644
--- a/src/conv/abw/Makefile.in
+++ b/src/conv/abw/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -89,58 +89,137 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-bin_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3) \
- $(am__EXEEXT_4) $(am__EXEEXT_5) $(am__EXEEXT_6)
-@USE_LIBWPD_TRUE@am__append_1 = wpd2abw
-@USE_LIBWPS_TRUE@am__append_2 = wps2abw
-@USE_LIBMWAW_TRUE@am__append_3 = mwaw2abw
-@USE_LIBETONYEK_TRUE@am__append_4 = pages2abw
-@USE_LIBEBOOK_TRUE@am__append_5 = ebook2abw
-@USE_LIBABW_TRUE@am__append_6 = abw2abw
+bin_PROGRAMS = wpft2abw$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
+ $(am__EXEEXT_3) $(am__EXEEXT_4) $(am__EXEEXT_5) \
+ $(am__EXEEXT_6) $(am__EXEEXT_7)
+@USE_LIBABW_TRUE@am__append_1 = abw2abw
+@USE_LIBEBOOK_TRUE@am__append_2 = $(EBOOK_CFLAGS)
+@USE_LIBEBOOK_TRUE@am__append_3 = $(EBOOK_LIBS) $(wrapper_dir)/libwpebook.la
+@USE_LIBEBOOK_TRUE@am__append_4 = ebook2abw
+@USE_LIBETONYEK_TRUE@am__append_5 = $(ETONYEK_CFLAGS)
+@USE_LIBETONYEK_TRUE@am__append_6 = $(ETONYEK_LIBS) $(wrapper_dir)/libwpetonyek.la
+@USE_LIBETONYEK_TRUE@am__append_7 = pages2abw
+@USE_LIBMWAW_TRUE@am__append_8 = libabwmwaw.la
+@USE_LIBMWAW_TRUE@am__append_9 = libabwmwaw.la
+@USE_LIBMWAW_TRUE@am__append_10 = $(MWAW_CFLAGS)
+@USE_LIBMWAW_TRUE@am__append_11 = $(MWAW_LIBS) libabwmwaw.la
+@USE_LIBMWAW_TRUE@am__append_12 = mwaw2abw
+@USE_LIBSTAROFFICE_TRUE@am__append_13 = libabwstaroffice.la
+@USE_LIBSTAROFFICE_TRUE@am__append_14 = libabwstaroffice.la
+@USE_LIBSTAROFFICE_TRUE@am__append_15 = $(STAROFFICE_CFLAGS)
+@USE_LIBSTAROFFICE_TRUE@am__append_16 = $(STAROFFICE_LIBS) libabwstaroffice.la
+@USE_LIBSTAROFFICE_TRUE@am__append_17 = sd2abw
+@USE_LIBWPD_TRUE@am__append_18 = libabwwpd.la
+@USE_LIBWPD_TRUE@am__append_19 = libabwwpd.la
+@USE_LIBWPD_TRUE@am__append_20 = $(WPD_CFLAGS) $(WPG_CFLAGS)
+@USE_LIBWPD_TRUE@am__append_21 = $(WPD_LIBS) $(WPG_LIBS) libabwwpd.la
+@USE_LIBWPD_TRUE@am__append_22 = wpd2abw
+@USE_LIBWPS_TRUE@am__append_23 = libabwwps.la
+@USE_LIBWPS_TRUE@am__append_24 = libabwwps.la
+@USE_LIBWPS_TRUE@am__append_25 = $(WPS_CFLAGS)
+@USE_LIBWPS_TRUE@am__append_26 = $(WPS_LIBS) libabwwps.la
+@USE_LIBWPS_TRUE@am__append_27 = wps2abw
subdir = src/conv/abw
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/wpft_libs.m4 $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/wpft_libs.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = abw2abw.rc ebook2abw.rc mwaw2abw.rc pages2abw.rc \
- wpd2abw.rc wps2abw.rc
+ sd2abw.rc wpd2abw.rc wps2abw.rc wpft2abw.rc
CONFIG_CLEAN_VPATH_FILES =
LTLIBRARIES = $(noinst_LTLIBRARIES)
+@USE_LIBMWAW_TRUE@libabwmwaw_la_DEPENDENCIES = \
+@USE_LIBMWAW_TRUE@ $(wrapper_dir)/libwpmwaw.la
+am__libabwmwaw_la_SOURCES_DIST = ABWWrapperMWAW.hxx ABWWrapperMWAW.cxx
+@USE_LIBMWAW_TRUE@am_libabwmwaw_la_OBJECTS = \
+@USE_LIBMWAW_TRUE@ libabwmwaw_la-ABWWrapperMWAW.lo
+libabwmwaw_la_OBJECTS = $(am_libabwmwaw_la_OBJECTS)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
+@USE_LIBMWAW_TRUE@am_libabwmwaw_la_rpath =
+@USE_LIBSTAROFFICE_TRUE@libabwstaroffice_la_DEPENDENCIES = \
+@USE_LIBSTAROFFICE_TRUE@ $(wrapper_dir)/libwpstaroffice.la
+am__libabwstaroffice_la_SOURCES_DIST = ABWWrapperSTAROFFICE.hxx \
+ ABWWrapperSTAROFFICE.cxx
+@USE_LIBSTAROFFICE_TRUE@am_libabwstaroffice_la_OBJECTS = libabwstaroffice_la-ABWWrapperSTAROFFICE.lo
+libabwstaroffice_la_OBJECTS = $(am_libabwstaroffice_la_OBJECTS)
+@USE_LIBSTAROFFICE_TRUE@am_libabwstaroffice_la_rpath =
+@USE_LIBWPD_TRUE@libabwwpd_la_DEPENDENCIES = \
+@USE_LIBWPD_TRUE@ $(wrapper_dir)/libwpwpd.la
+am__libabwwpd_la_SOURCES_DIST = ABWWrapperWPD.hxx ABWWrapperWPD.cxx
+@USE_LIBWPD_TRUE@am_libabwwpd_la_OBJECTS = \
+@USE_LIBWPD_TRUE@ libabwwpd_la-ABWWrapperWPD.lo
+libabwwpd_la_OBJECTS = $(am_libabwwpd_la_OBJECTS)
+@USE_LIBWPD_TRUE@am_libabwwpd_la_rpath =
+@USE_LIBWPS_TRUE@libabwwps_la_DEPENDENCIES = \
+@USE_LIBWPS_TRUE@ $(wrapper_dir)/libwpwps.la
+am__libabwwps_la_SOURCES_DIST = ABWWrapperWPS.hxx ABWWrapperWPS.cxx
+@USE_LIBWPS_TRUE@am_libabwwps_la_OBJECTS = \
+@USE_LIBWPS_TRUE@ libabwwps_la-ABWWrapperWPS.lo
+libabwwps_la_OBJECTS = $(am_libabwwps_la_OBJECTS)
+@USE_LIBWPS_TRUE@am_libabwwps_la_rpath =
am__DEPENDENCIES_1 =
libhelperRVNGABW_la_DEPENDENCIES = \
$(top_builddir)/src/lib/libwriterperfect_internal.la \
$(am__DEPENDENCIES_1)
-am_libhelperRVNGABW_la_OBJECTS = ABWStringDocumentHandler.lo
+am_libhelperRVNGABW_la_OBJECTS = ABWConverter.lo \
+ ABWStringDocumentHandler.lo ABWWrapper.lo
libhelperRVNGABW_la_OBJECTS = $(am_libhelperRVNGABW_la_OBJECTS)
-AM_V_lt = $(am__v_lt_@AM_V@)
-am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
-am__v_lt_0 = --silent
-am__v_lt_1 =
-@USE_LIBWPD_TRUE@am__EXEEXT_1 = wpd2abw$(EXEEXT)
-@USE_LIBWPS_TRUE@am__EXEEXT_2 = wps2abw$(EXEEXT)
-@USE_LIBMWAW_TRUE@am__EXEEXT_3 = mwaw2abw$(EXEEXT)
-@USE_LIBETONYEK_TRUE@am__EXEEXT_4 = pages2abw$(EXEEXT)
-@USE_LIBEBOOK_TRUE@am__EXEEXT_5 = ebook2abw$(EXEEXT)
-@USE_LIBABW_TRUE@am__EXEEXT_6 = abw2abw$(EXEEXT)
+@USE_LIBABW_TRUE@am__EXEEXT_1 = abw2abw$(EXEEXT)
+@USE_LIBEBOOK_TRUE@am__EXEEXT_2 = ebook2abw$(EXEEXT)
+@USE_LIBETONYEK_TRUE@am__EXEEXT_3 = pages2abw$(EXEEXT)
+@USE_LIBMWAW_TRUE@am__EXEEXT_4 = mwaw2abw$(EXEEXT)
+@USE_LIBSTAROFFICE_TRUE@am__EXEEXT_5 = sd2abw$(EXEEXT)
+@USE_LIBWPD_TRUE@am__EXEEXT_6 = wpd2abw$(EXEEXT)
+@USE_LIBWPS_TRUE@am__EXEEXT_7 = wps2abw$(EXEEXT)
am__installdirs = "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS)
-am_abw2abw_OBJECTS = abw2abw-abw2abw.$(OBJEXT)
+am__abw2abw_SOURCES_DIST = abw2abw.cxx
+@USE_LIBABW_TRUE@am_abw2abw_OBJECTS = abw2abw-abw2abw.$(OBJEXT)
abw2abw_OBJECTS = $(am_abw2abw_OBJECTS)
-am_ebook2abw_OBJECTS = ebook2abw-ebook2abw.$(OBJEXT)
+am__ebook2abw_SOURCES_DIST = ebook2abw.cxx
+@USE_LIBEBOOK_TRUE@am_ebook2abw_OBJECTS = \
+@USE_LIBEBOOK_TRUE@ ebook2abw-ebook2abw.$(OBJEXT)
ebook2abw_OBJECTS = $(am_ebook2abw_OBJECTS)
-am_mwaw2abw_OBJECTS = mwaw2abw-mwaw2abw.$(OBJEXT)
+am__mwaw2abw_SOURCES_DIST = mwaw2abw.cxx
+@USE_LIBMWAW_TRUE@am_mwaw2abw_OBJECTS = mwaw2abw-mwaw2abw.$(OBJEXT)
mwaw2abw_OBJECTS = $(am_mwaw2abw_OBJECTS)
-am_pages2abw_OBJECTS = pages2abw-pages2abw.$(OBJEXT)
+am__pages2abw_SOURCES_DIST = pages2abw.cxx
+@USE_LIBETONYEK_TRUE@am_pages2abw_OBJECTS = \
+@USE_LIBETONYEK_TRUE@ pages2abw-pages2abw.$(OBJEXT)
pages2abw_OBJECTS = $(am_pages2abw_OBJECTS)
-am_wpd2abw_OBJECTS = wpd2abw-wpd2abw.$(OBJEXT)
+am__sd2abw_SOURCES_DIST = sd2abw.cxx
+@USE_LIBSTAROFFICE_TRUE@am_sd2abw_OBJECTS = sd2abw-sd2abw.$(OBJEXT)
+sd2abw_OBJECTS = $(am_sd2abw_OBJECTS)
+am__wpd2abw_SOURCES_DIST = wpd2abw.cxx
+@USE_LIBWPD_TRUE@am_wpd2abw_OBJECTS = wpd2abw-wpd2abw.$(OBJEXT)
wpd2abw_OBJECTS = $(am_wpd2abw_OBJECTS)
-am_wps2abw_OBJECTS = wps2abw-wps2abw.$(OBJEXT)
+am_wpft2abw_OBJECTS = wpft2abw-wpft2abw.$(OBJEXT)
+wpft2abw_OBJECTS = $(am_wpft2abw_OBJECTS)
+@USE_LIBEBOOK_TRUE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) \
+@USE_LIBEBOOK_TRUE@ $(wrapper_dir)/libwpebook.la
+@USE_LIBETONYEK_TRUE@am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1) \
+@USE_LIBETONYEK_TRUE@ $(wrapper_dir)/libwpetonyek.la
+@USE_LIBMWAW_TRUE@am__DEPENDENCIES_4 = $(am__DEPENDENCIES_1) \
+@USE_LIBMWAW_TRUE@ libabwmwaw.la
+@USE_LIBSTAROFFICE_TRUE@am__DEPENDENCIES_5 = $(am__DEPENDENCIES_1) \
+@USE_LIBSTAROFFICE_TRUE@ libabwstaroffice.la
+@USE_LIBWPD_TRUE@am__DEPENDENCIES_6 = $(am__DEPENDENCIES_1) \
+@USE_LIBWPD_TRUE@ $(am__DEPENDENCIES_1) libabwwpd.la
+@USE_LIBWPS_TRUE@am__DEPENDENCIES_7 = $(am__DEPENDENCIES_1) \
+@USE_LIBWPS_TRUE@ libabwwps.la
+am__wps2abw_SOURCES_DIST = wps2abw.cxx
+@USE_LIBWPS_TRUE@am_wps2abw_OBJECTS = wps2abw-wps2abw.$(OBJEXT)
wps2abw_OBJECTS = $(am_wps2abw_OBJECTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@@ -194,12 +273,21 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
-SOURCES = $(libhelperRVNGABW_la_SOURCES) $(abw2abw_SOURCES) \
+SOURCES = $(libabwmwaw_la_SOURCES) $(libabwstaroffice_la_SOURCES) \
+ $(libabwwpd_la_SOURCES) $(libabwwps_la_SOURCES) \
+ $(libhelperRVNGABW_la_SOURCES) $(abw2abw_SOURCES) \
$(ebook2abw_SOURCES) $(mwaw2abw_SOURCES) $(pages2abw_SOURCES) \
- $(wpd2abw_SOURCES) $(wps2abw_SOURCES)
-DIST_SOURCES = $(libhelperRVNGABW_la_SOURCES) $(abw2abw_SOURCES) \
- $(ebook2abw_SOURCES) $(mwaw2abw_SOURCES) $(pages2abw_SOURCES) \
- $(wpd2abw_SOURCES) $(wps2abw_SOURCES)
+ $(sd2abw_SOURCES) $(wpd2abw_SOURCES) $(wpft2abw_SOURCES) \
+ $(wps2abw_SOURCES)
+DIST_SOURCES = $(am__libabwmwaw_la_SOURCES_DIST) \
+ $(am__libabwstaroffice_la_SOURCES_DIST) \
+ $(am__libabwwpd_la_SOURCES_DIST) \
+ $(am__libabwwps_la_SOURCES_DIST) \
+ $(libhelperRVNGABW_la_SOURCES) $(am__abw2abw_SOURCES_DIST) \
+ $(am__ebook2abw_SOURCES_DIST) $(am__mwaw2abw_SOURCES_DIST) \
+ $(am__pages2abw_SOURCES_DIST) $(am__sd2abw_SOURCES_DIST) \
+ $(am__wpd2abw_SOURCES_DIST) $(wpft2abw_SOURCES) \
+ $(am__wps2abw_SOURCES_DIST)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -226,7 +314,8 @@ ETAGS = etags
CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/abw2abw.rc.in \
$(srcdir)/ebook2abw.rc.in $(srcdir)/mwaw2abw.rc.in \
- $(srcdir)/pages2abw.rc.in $(srcdir)/wpd2abw.rc.in \
+ $(srcdir)/pages2abw.rc.in $(srcdir)/sd2abw.rc.in \
+ $(srcdir)/wpd2abw.rc.in $(srcdir)/wpft2abw.rc.in \
$(srcdir)/wps2abw.rc.in $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ABW2ABW_WIN32_RESOURCE = @ABW2ABW_WIN32_RESOURCE@
@@ -275,7 +364,6 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EOT_CFLAGS = @EOT_CFLAGS@
-EOT_CPPFLAGS = @EOT_CPPFLAGS@
EOT_LIBS = @EOT_LIBS@
EPUBGEN_CFLAGS = @EPUBGEN_CFLAGS@
EPUBGEN_LIBS = @EPUBGEN_LIBS@
@@ -290,6 +378,7 @@ FREEHAND_LIBS = @FREEHAND_LIBS@
GREP = @GREP@
GSF_CFLAGS = @GSF_CFLAGS@
GSF_LIBS = @GSF_LIBS@
+HAVE_CXX11 = @HAVE_CXX11@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -348,6 +437,10 @@ PMD2EPUB_WIN32_RESOURCE = @PMD2EPUB_WIN32_RESOURCE@
PMD2ODG_WIN32_RESOURCE = @PMD2ODG_WIN32_RESOURCE@
PUB2EPUB_WIN32_RESOURCE = @PUB2EPUB_WIN32_RESOURCE@
PUB2ODG_WIN32_RESOURCE = @PUB2ODG_WIN32_RESOURCE@
+QXP2EPUB_WIN32_RESOURCE = @QXP2EPUB_WIN32_RESOURCE@
+QXP2ODG_WIN32_RESOURCE = @QXP2ODG_WIN32_RESOURCE@
+QXP_CFLAGS = @QXP_CFLAGS@
+QXP_LIBS = @QXP_LIBS@
RANLIB = @RANLIB@
REVENGE_CFLAGS = @REVENGE_CFLAGS@
REVENGE_LIBS = @REVENGE_LIBS@
@@ -355,6 +448,8 @@ REVENGE_STREAM_CFLAGS = @REVENGE_STREAM_CFLAGS@
REVENGE_STREAM_LIBS = @REVENGE_STREAM_LIBS@
RVNGABW_CFLAGS = @RVNGABW_CFLAGS@
RVNGABW_LIBS = @RVNGABW_LIBS@
+SD2ABW_WIN32_RESOURCE = @SD2ABW_WIN32_RESOURCE@
+SD2EPUB_WIN32_RESOURCE = @SD2EPUB_WIN32_RESOURCE@
SD2ODF_WIN32_RESOURCE = @SD2ODF_WIN32_RESOURCE@
SED = @SED@
SET_MAKE = @SET_MAKE@
@@ -376,6 +471,9 @@ WPD2EPUB_WIN32_RESOURCE = @WPD2EPUB_WIN32_RESOURCE@
WPD2ODT_WIN32_RESOURCE = @WPD2ODT_WIN32_RESOURCE@
WPD_CFLAGS = @WPD_CFLAGS@
WPD_LIBS = @WPD_LIBS@
+WPFT2ABW_WIN32_RESOURCE = @WPFT2ABW_WIN32_RESOURCE@
+WPFT2EPUB_WIN32_RESOURCE = @WPFT2EPUB_WIN32_RESOURCE@
+WPFT2ODF_WIN32_RESOURCE = @WPFT2ODF_WIN32_RESOURCE@
WPG2EPUB_WIN32_RESOURCE = @WPG2EPUB_WIN32_RESOURCE@
WPG2ODG_WIN32_RESOURCE = @WPG2ODG_WIN32_RESOURCE@
WPG_CFLAGS = @WPG_CFLAGS@
@@ -389,6 +487,11 @@ WRITERPERFECT_MAJOR_VERSION = @WRITERPERFECT_MAJOR_VERSION@
WRITERPERFECT_MICRO_VERSION = @WRITERPERFECT_MICRO_VERSION@
WRITERPERFECT_MINOR_VERSION = @WRITERPERFECT_MINOR_VERSION@
WRITERPERFECT_VERSION = @WRITERPERFECT_VERSION@
+XATTR_CFLAGS = @XATTR_CFLAGS@
+ZMF2EPUB_WIN32_RESOURCE = @ZMF2EPUB_WIN32_RESOURCE@
+ZMF2ODG_WIN32_RESOURCE = @ZMF2ODG_WIN32_RESOURCE@
+ZMF_CFLAGS = @ZMF_CFLAGS@
+ZMF_LIBS = @ZMF_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
@@ -442,53 +545,76 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
+wrapper_dir = $(top_builddir)/src/conv/wrapper
AM_CXXFLAGS = \
-I$(top_srcdir)/src/lib \
+ -I$(top_srcdir)/src/conv/wrapper \
+ $(REVENGE_CFLAGS) \
$(RVNGABW_CFLAGS) \
$(DEBUG_CXXFLAGS)
-noinst_LTLIBRARIES = libhelperRVNGABW.la
+noinst_LTLIBRARIES = libhelperRVNGABW.la $(am__append_8) \
+ $(am__append_13) $(am__append_18) $(am__append_23)
libhelperRVNGABW_la_LIBADD = $(top_builddir)/src/lib/libwriterperfect_internal.la $(RVNGABW_LIBS)
libhelperRVNGABW_la_SOURCES = \
- ABWStringDocumentHandler.hxx \
- ABWStringDocumentHandler.cxx
-
-abw2abw_DEPENDENCIES = @ABW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-abw2abw_CPPFLAGS = $(ABW_CFLAGS)
-abw2abw_LDADD = @ABW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
-abw2abw_SOURCES = \
- abw2abw.cxx
-
-ebook2abw_DEPENDENCIES = @EBOOK2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-ebook2abw_CPPFLAGS = $(EBOOK_CFLAGS)
-ebook2abw_LDADD = @EBOOK2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
-ebook2abw_SOURCES = \
- ebook2abw.cxx
-
-mwaw2abw_DEPENDENCIES = @MWAW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-mwaw2abw_CPPFLAGS = $(MWAW_CFLAGS)
-mwaw2abw_LDADD = @MWAW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
-mwaw2abw_SOURCES = \
- mwaw2abw.cxx
-
-pages2abw_DEPENDENCIES = @PAGES2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-pages2abw_CPPFLAGS = $(ETONYEK_CFLAGS)
-pages2abw_LDADD = @PAGES2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-pages2abw_SOURCES = \
- pages2abw.cxx
-
-wpd2abw_DEPENDENCIES = @WPD2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-wpd2abw_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
-wpd2abw_LDADD = @WPD2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpd2abw_SOURCES = \
- wpd2abw.cxx
-
-wps2abw_DEPENDENCIES = @WPS2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
-wps2abw_CPPFLAGS = $(WPS_CFLAGS)
-wps2abw_LDADD = @WPS2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
-wps2abw_SOURCES = \
- wps2abw.cxx
-
+ ABWConverter.hxx \
+ ABWConverter.cxx \
+ ABWStringDocumentHandler.hxx \
+ ABWStringDocumentHandler.cxx \
+ ABWWrapper.hxx \
+ ABWWrapper.cxx
+
+wpft2abw_DEPENDENCIES = @WPFT2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la \
+ $(am__append_9) $(am__append_14) $(am__append_19) \
+ $(am__append_24)
+wpft2abw_CPPFLAGS = $(REVENGE_STREAM_CFLAGS) $(am__append_2) \
+ $(am__append_5) $(am__append_10) $(am__append_15) \
+ $(am__append_20) $(am__append_25)
+wpft2abw_LDADD = $(REVENGE_STREAM_LIBS) $(am__append_3) \
+ $(am__append_6) $(am__append_11) $(am__append_16) \
+ $(am__append_21) $(am__append_26) @WPFT2ABW_WIN32_RESOURCE@ \
+ libhelperRVNGABW.la
+wpft2abw_SOURCES = wpft2abw.cxx
+@USE_LIBABW_TRUE@abw2abw_DEPENDENCIES = @ABW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
+@USE_LIBABW_TRUE@abw2abw_CPPFLAGS = $(ABW_CFLAGS)
+@USE_LIBABW_TRUE@abw2abw_LDADD = @ABW2ABW_WIN32_RESOURCE@ $(wrapper_dir)/libwpabw.la libhelperRVNGABW.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBABW_TRUE@abw2abw_SOURCES = abw2abw.cxx
+@USE_LIBEBOOK_TRUE@ebook2abw_DEPENDENCIES = @EBOOK2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
+@USE_LIBEBOOK_TRUE@ebook2abw_CPPFLAGS = $(EBOOK_CFLAGS)
+@USE_LIBEBOOK_TRUE@ebook2abw_LDADD = @EBOOK2ABW_WIN32_RESOURCE@ $(wrapper_dir)/libwpebook.la libhelperRVNGABW.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBEBOOK_TRUE@ebook2abw_SOURCES = ebook2abw.cxx
+@USE_LIBETONYEK_TRUE@pages2abw_DEPENDENCIES = @PAGES2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la
+@USE_LIBETONYEK_TRUE@pages2abw_CPPFLAGS = $(ETONYEK_CFLAGS)
+@USE_LIBETONYEK_TRUE@pages2abw_LDADD = @PAGES2ABW_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libhelperRVNGABW.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBETONYEK_TRUE@pages2abw_SOURCES = pages2abw.cxx
+@USE_LIBMWAW_TRUE@libabwmwaw_la_LIBADD = $(wrapper_dir)/libwpmwaw.la
+@USE_LIBMWAW_TRUE@libabwmwaw_la_CPPFLAGS = $(MWAW_CFLAGS)
+@USE_LIBMWAW_TRUE@libabwmwaw_la_SOURCES = ABWWrapperMWAW.hxx ABWWrapperMWAW.cxx
+@USE_LIBMWAW_TRUE@mwaw2abw_DEPENDENCIES = @MWAW2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la libabwmwaw.la
+@USE_LIBMWAW_TRUE@mwaw2abw_CPPFLAGS = $(MWAW_CFLAGS)
+@USE_LIBMWAW_TRUE@mwaw2abw_LDADD = @MWAW2ABW_WIN32_RESOURCE@ libabwmwaw.la libhelperRVNGABW.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBMWAW_TRUE@mwaw2abw_SOURCES = mwaw2abw.cxx
+@USE_LIBSTAROFFICE_TRUE@libabwstaroffice_la_LIBADD = $(wrapper_dir)/libwpstaroffice.la
+@USE_LIBSTAROFFICE_TRUE@libabwstaroffice_la_CPPFLAGS = $(STAROFFICE_CFLAGS)
+@USE_LIBSTAROFFICE_TRUE@libabwstaroffice_la_SOURCES = ABWWrapperSTAROFFICE.hxx ABWWrapperSTAROFFICE.cxx
+@USE_LIBSTAROFFICE_TRUE@sd2abw_DEPENDENCIES = @SD2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la libabwstaroffice.la
+@USE_LIBSTAROFFICE_TRUE@sd2abw_CPPFLAGS = $(STAROFFICE_CFLAGS)
+@USE_LIBSTAROFFICE_TRUE@sd2abw_LDADD = @SD2ABW_WIN32_RESOURCE@ libabwstaroffice.la libhelperRVNGABW.la $(STAROFFICE_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBSTAROFFICE_TRUE@sd2abw_SOURCES = sd2abw.cxx
+@USE_LIBWPD_TRUE@libabwwpd_la_LIBADD = $(wrapper_dir)/libwpwpd.la
+@USE_LIBWPD_TRUE@libabwwpd_la_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
+@USE_LIBWPD_TRUE@libabwwpd_la_SOURCES = ABWWrapperWPD.hxx ABWWrapperWPD.cxx
+@USE_LIBWPD_TRUE@wpd2abw_DEPENDENCIES = @WPD2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la libabwwpd.la
+@USE_LIBWPD_TRUE@wpd2abw_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
+@USE_LIBWPD_TRUE@wpd2abw_LDADD = @WPD2ABW_WIN32_RESOURCE@ libabwwpd.la libhelperRVNGABW.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBWPD_TRUE@wpd2abw_SOURCES = wpd2abw.cxx
+@USE_LIBWPS_TRUE@libabwwps_la_LIBADD = $(wrapper_dir)/libwpwps.la
+@USE_LIBWPS_TRUE@libabwwps_la_CPPFLAGS = $(WPS_CFLAGS)
+@USE_LIBWPS_TRUE@libabwwps_la_SOURCES = ABWWrapperWPS.hxx ABWWrapperWPS.cxx
+@USE_LIBWPS_TRUE@wps2abw_DEPENDENCIES = @WPS2ABW_WIN32_RESOURCE@ libhelperRVNGABW.la libabwwps.la
+@USE_LIBWPS_TRUE@wps2abw_CPPFLAGS = $(WPS_CFLAGS)
+@USE_LIBWPS_TRUE@wps2abw_LDADD = @WPS2ABW_WIN32_RESOURCE@ libabwwps.la libhelperRVNGABW.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBWPS_TRUE@wps2abw_SOURCES = wps2abw.cxx
all: all-am
.SUFFIXES:
@@ -530,10 +656,14 @@ mwaw2abw.rc: $(top_builddir)/config.status $(srcdir)/mwaw2abw.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
pages2abw.rc: $(top_builddir)/config.status $(srcdir)/pages2abw.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+sd2abw.rc: $(top_builddir)/config.status $(srcdir)/sd2abw.rc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
wpd2abw.rc: $(top_builddir)/config.status $(srcdir)/wpd2abw.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
wps2abw.rc: $(top_builddir)/config.status $(srcdir)/wps2abw.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+wpft2abw.rc: $(top_builddir)/config.status $(srcdir)/wpft2abw.rc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
clean-noinstLTLIBRARIES:
-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
@@ -546,6 +676,18 @@ clean-noinstLTLIBRARIES:
rm -f $${locs}; \
}
+libabwmwaw.la: $(libabwmwaw_la_OBJECTS) $(libabwmwaw_la_DEPENDENCIES) $(EXTRA_libabwmwaw_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(am_libabwmwaw_la_rpath) $(libabwmwaw_la_OBJECTS) $(libabwmwaw_la_LIBADD) $(LIBS)
+
+libabwstaroffice.la: $(libabwstaroffice_la_OBJECTS) $(libabwstaroffice_la_DEPENDENCIES) $(EXTRA_libabwstaroffice_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(am_libabwstaroffice_la_rpath) $(libabwstaroffice_la_OBJECTS) $(libabwstaroffice_la_LIBADD) $(LIBS)
+
+libabwwpd.la: $(libabwwpd_la_OBJECTS) $(libabwwpd_la_DEPENDENCIES) $(EXTRA_libabwwpd_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(am_libabwwpd_la_rpath) $(libabwwpd_la_OBJECTS) $(libabwwpd_la_LIBADD) $(LIBS)
+
+libabwwps.la: $(libabwwps_la_OBJECTS) $(libabwwps_la_DEPENDENCIES) $(EXTRA_libabwwps_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(am_libabwwps_la_rpath) $(libabwwps_la_OBJECTS) $(libabwwps_la_LIBADD) $(LIBS)
+
libhelperRVNGABW.la: $(libhelperRVNGABW_la_OBJECTS) $(libhelperRVNGABW_la_DEPENDENCIES) $(EXTRA_libhelperRVNGABW_la_DEPENDENCIES)
$(AM_V_CXXLD)$(CXXLINK) $(libhelperRVNGABW_la_OBJECTS) $(libhelperRVNGABW_la_LIBADD) $(LIBS)
install-binPROGRAMS: $(bin_PROGRAMS)
@@ -614,10 +756,18 @@ pages2abw$(EXEEXT): $(pages2abw_OBJECTS) $(pages2abw_DEPENDENCIES) $(EXTRA_pages
@rm -f pages2abw$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(pages2abw_OBJECTS) $(pages2abw_LDADD) $(LIBS)
+sd2abw$(EXEEXT): $(sd2abw_OBJECTS) $(sd2abw_DEPENDENCIES) $(EXTRA_sd2abw_DEPENDENCIES)
+ @rm -f sd2abw$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(sd2abw_OBJECTS) $(sd2abw_LDADD) $(LIBS)
+
wpd2abw$(EXEEXT): $(wpd2abw_OBJECTS) $(wpd2abw_DEPENDENCIES) $(EXTRA_wpd2abw_DEPENDENCIES)
@rm -f wpd2abw$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(wpd2abw_OBJECTS) $(wpd2abw_LDADD) $(LIBS)
+wpft2abw$(EXEEXT): $(wpft2abw_OBJECTS) $(wpft2abw_DEPENDENCIES) $(EXTRA_wpft2abw_DEPENDENCIES)
+ @rm -f wpft2abw$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(wpft2abw_OBJECTS) $(wpft2abw_LDADD) $(LIBS)
+
wps2abw$(EXEEXT): $(wps2abw_OBJECTS) $(wps2abw_DEPENDENCIES) $(EXTRA_wps2abw_DEPENDENCIES)
@rm -f wps2abw$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(wps2abw_OBJECTS) $(wps2abw_LDADD) $(LIBS)
@@ -628,12 +778,20 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ABWConverter.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ABWStringDocumentHandler.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ABWWrapper.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/abw2abw-abw2abw.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ebook2abw-ebook2abw.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libabwmwaw_la-ABWWrapperMWAW.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libabwstaroffice_la-ABWWrapperSTAROFFICE.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libabwwpd_la-ABWWrapperWPD.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libabwwps_la-ABWWrapperWPS.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mwaw2abw-mwaw2abw.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pages2abw-pages2abw.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sd2abw-sd2abw.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wpd2abw-wpd2abw.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wpft2abw-wpft2abw.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wps2abw-wps2abw.Po@am__quote@
.cxx.o:
@@ -657,6 +815,34 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<
+libabwmwaw_la-ABWWrapperMWAW.lo: ABWWrapperMWAW.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libabwmwaw_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libabwmwaw_la-ABWWrapperMWAW.lo -MD -MP -MF $(DEPDIR)/libabwmwaw_la-ABWWrapperMWAW.Tpo -c -o libabwmwaw_la-ABWWrapperMWAW.lo `test -f 'ABWWrapperMWAW.cxx' || echo '$(srcdir)/'`ABWWrapperMWAW.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libabwmwaw_la-ABWWrapperMWAW.Tpo $(DEPDIR)/libabwmwaw_la-ABWWrapperMWAW.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='ABWWrapperMWAW.cxx' object='libabwmwaw_la-ABWWrapperMWAW.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libabwmwaw_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libabwmwaw_la-ABWWrapperMWAW.lo `test -f 'ABWWrapperMWAW.cxx' || echo '$(srcdir)/'`ABWWrapperMWAW.cxx
+
+libabwstaroffice_la-ABWWrapperSTAROFFICE.lo: ABWWrapperSTAROFFICE.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libabwstaroffice_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libabwstaroffice_la-ABWWrapperSTAROFFICE.lo -MD -MP -MF $(DEPDIR)/libabwstaroffice_la-ABWWrapperSTAROFFICE.Tpo -c -o libabwstaroffice_la-ABWWrapperSTAROFFICE.lo `test -f 'ABWWrapperSTAROFFICE.cxx' || echo '$(srcdir)/'`ABWWrapperSTAROFFICE.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libabwstaroffice_la-ABWWrapperSTAROFFICE.Tpo $(DEPDIR)/libabwstaroffice_la-ABWWrapperSTAROFFICE.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='ABWWrapperSTAROFFICE.cxx' object='libabwstaroffice_la-ABWWrapperSTAROFFICE.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libabwstaroffice_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libabwstaroffice_la-ABWWrapperSTAROFFICE.lo `test -f 'ABWWrapperSTAROFFICE.cxx' || echo '$(srcdir)/'`ABWWrapperSTAROFFICE.cxx
+
+libabwwpd_la-ABWWrapperWPD.lo: ABWWrapperWPD.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libabwwpd_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libabwwpd_la-ABWWrapperWPD.lo -MD -MP -MF $(DEPDIR)/libabwwpd_la-ABWWrapperWPD.Tpo -c -o libabwwpd_la-ABWWrapperWPD.lo `test -f 'ABWWrapperWPD.cxx' || echo '$(srcdir)/'`ABWWrapperWPD.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libabwwpd_la-ABWWrapperWPD.Tpo $(DEPDIR)/libabwwpd_la-ABWWrapperWPD.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='ABWWrapperWPD.cxx' object='libabwwpd_la-ABWWrapperWPD.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libabwwpd_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libabwwpd_la-ABWWrapperWPD.lo `test -f 'ABWWrapperWPD.cxx' || echo '$(srcdir)/'`ABWWrapperWPD.cxx
+
+libabwwps_la-ABWWrapperWPS.lo: ABWWrapperWPS.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libabwwps_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libabwwps_la-ABWWrapperWPS.lo -MD -MP -MF $(DEPDIR)/libabwwps_la-ABWWrapperWPS.Tpo -c -o libabwwps_la-ABWWrapperWPS.lo `test -f 'ABWWrapperWPS.cxx' || echo '$(srcdir)/'`ABWWrapperWPS.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libabwwps_la-ABWWrapperWPS.Tpo $(DEPDIR)/libabwwps_la-ABWWrapperWPS.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='ABWWrapperWPS.cxx' object='libabwwps_la-ABWWrapperWPS.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libabwwps_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libabwwps_la-ABWWrapperWPS.lo `test -f 'ABWWrapperWPS.cxx' || echo '$(srcdir)/'`ABWWrapperWPS.cxx
+
abw2abw-abw2abw.o: abw2abw.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(abw2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT abw2abw-abw2abw.o -MD -MP -MF $(DEPDIR)/abw2abw-abw2abw.Tpo -c -o abw2abw-abw2abw.o `test -f 'abw2abw.cxx' || echo '$(srcdir)/'`abw2abw.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/abw2abw-abw2abw.Tpo $(DEPDIR)/abw2abw-abw2abw.Po
@@ -713,6 +899,20 @@ pages2abw-pages2abw.obj: pages2abw.cxx
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pages2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o pages2abw-pages2abw.obj `if test -f 'pages2abw.cxx'; then $(CYGPATH_W) 'pages2abw.cxx'; else $(CYGPATH_W) '$(srcdir)/pages2abw.cxx'; fi`
+sd2abw-sd2abw.o: sd2abw.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sd2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sd2abw-sd2abw.o -MD -MP -MF $(DEPDIR)/sd2abw-sd2abw.Tpo -c -o sd2abw-sd2abw.o `test -f 'sd2abw.cxx' || echo '$(srcdir)/'`sd2abw.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/sd2abw-sd2abw.Tpo $(DEPDIR)/sd2abw-sd2abw.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='sd2abw.cxx' object='sd2abw-sd2abw.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sd2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sd2abw-sd2abw.o `test -f 'sd2abw.cxx' || echo '$(srcdir)/'`sd2abw.cxx
+
+sd2abw-sd2abw.obj: sd2abw.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sd2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sd2abw-sd2abw.obj -MD -MP -MF $(DEPDIR)/sd2abw-sd2abw.Tpo -c -o sd2abw-sd2abw.obj `if test -f 'sd2abw.cxx'; then $(CYGPATH_W) 'sd2abw.cxx'; else $(CYGPATH_W) '$(srcdir)/sd2abw.cxx'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/sd2abw-sd2abw.Tpo $(DEPDIR)/sd2abw-sd2abw.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='sd2abw.cxx' object='sd2abw-sd2abw.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sd2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sd2abw-sd2abw.obj `if test -f 'sd2abw.cxx'; then $(CYGPATH_W) 'sd2abw.cxx'; else $(CYGPATH_W) '$(srcdir)/sd2abw.cxx'; fi`
+
wpd2abw-wpd2abw.o: wpd2abw.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpd2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wpd2abw-wpd2abw.o -MD -MP -MF $(DEPDIR)/wpd2abw-wpd2abw.Tpo -c -o wpd2abw-wpd2abw.o `test -f 'wpd2abw.cxx' || echo '$(srcdir)/'`wpd2abw.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wpd2abw-wpd2abw.Tpo $(DEPDIR)/wpd2abw-wpd2abw.Po
@@ -727,6 +927,20 @@ wpd2abw-wpd2abw.obj: wpd2abw.cxx
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpd2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wpd2abw-wpd2abw.obj `if test -f 'wpd2abw.cxx'; then $(CYGPATH_W) 'wpd2abw.cxx'; else $(CYGPATH_W) '$(srcdir)/wpd2abw.cxx'; fi`
+wpft2abw-wpft2abw.o: wpft2abw.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wpft2abw-wpft2abw.o -MD -MP -MF $(DEPDIR)/wpft2abw-wpft2abw.Tpo -c -o wpft2abw-wpft2abw.o `test -f 'wpft2abw.cxx' || echo '$(srcdir)/'`wpft2abw.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wpft2abw-wpft2abw.Tpo $(DEPDIR)/wpft2abw-wpft2abw.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='wpft2abw.cxx' object='wpft2abw-wpft2abw.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wpft2abw-wpft2abw.o `test -f 'wpft2abw.cxx' || echo '$(srcdir)/'`wpft2abw.cxx
+
+wpft2abw-wpft2abw.obj: wpft2abw.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wpft2abw-wpft2abw.obj -MD -MP -MF $(DEPDIR)/wpft2abw-wpft2abw.Tpo -c -o wpft2abw-wpft2abw.obj `if test -f 'wpft2abw.cxx'; then $(CYGPATH_W) 'wpft2abw.cxx'; else $(CYGPATH_W) '$(srcdir)/wpft2abw.cxx'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wpft2abw-wpft2abw.Tpo $(DEPDIR)/wpft2abw-wpft2abw.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='wpft2abw.cxx' object='wpft2abw-wpft2abw.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wpft2abw-wpft2abw.obj `if test -f 'wpft2abw.cxx'; then $(CYGPATH_W) 'wpft2abw.cxx'; else $(CYGPATH_W) '$(srcdir)/wpft2abw.cxx'; fi`
+
wps2abw-wps2abw.o: wps2abw.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wps2abw_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wps2abw-wps2abw.o -MD -MP -MF $(DEPDIR)/wps2abw-wps2abw.Tpo -c -o wps2abw-wps2abw.o `test -f 'wps2abw.cxx' || echo '$(srcdir)/'`wps2abw.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wps2abw-wps2abw.Tpo $(DEPDIR)/wps2abw-wps2abw.Po
@@ -973,6 +1187,10 @@ uninstall-am: uninstall-binPROGRAMS
@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource pages2abw.rc @PAGES2ABW_WIN32_RESOURCE@
+@OS_WIN32_TRUE@@SD2ABW_WIN32_RESOURCE@ : sd2abw.rc $(sd2abw_OBJECTS)
+@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
+@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource sd2abw.rc @SD2ABW_WIN32_RESOURCE@
+
@OS_WIN32_TRUE@@WPD2ABW_WIN32_RESOURCE@ : wpd2abw.rc $(wpd2abw_OBJECTS)
@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wpd2abw.rc @WPD2ABW_WIN32_RESOURCE@
@@ -981,6 +1199,10 @@ uninstall-am: uninstall-binPROGRAMS
@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wps2abw.rc @WPS2ABW_WIN32_RESOURCE@
+@OS_WIN32_TRUE@@WPFT2ABW_WIN32_RESOURCE@ : wpft2abw.rc $(wpft2abw_OBJECTS)
+@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
+@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wpft2abw.rc @WPFT2ABW_WIN32_RESOURCE@
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/src/conv/abw/abw2abw.cxx b/src/conv/abw/abw2abw.cxx
index 2f45ff2..0db99dd 100644
--- a/src/conv/abw/abw2abw.cxx
+++ b/src/conv/abw/abw2abw.cxx
@@ -20,115 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "WPWrapperABW.hxx"
+#include "ABWConverter.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libabw/libabw.h>
-#include <librvngabw/librvngabw.hxx>
-
-#include "ABWStringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "abw2abw"
-class ABWOutputFileHelper
-{
-public:
- ABWOutputFileHelper(const char *outFileName) : mOutFileName(outFileName) {}
- ~ABWOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- writerperfectrvngabw::ABWStringDocumentHandler contentHandler;
- librvngabw::ABWTextGenerator collector(&contentHandler);
- if (!libabw::AbiDocument::parse(&input, &collector))
- return false;
- if (mOutFileName)
- {
- FILE *fhandle = fopen(mOutFileName, "wb");
- if (!fhandle)
- return false;
- fprintf(fhandle, "%s\n", contentHandler.getData().cstr());
- fclose(fhandle);
- }
- else
- printf("%s\n", contentHandler.getData().cstr());
- return true;
- }
-
-
- static bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- if (!libabw::AbiDocument::isFileFormatSupported(&input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid AbiWord document.\n");
- return false;
- }
-
- return true;
- }
-protected:
- //! the ouput file name
- char const *mOutFileName;
-};
-
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts AbiWord documents back to AbiWord.");
- usage.addToDescription("If OUTPUT is missing, the result is printed to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
-
+using namespace writerperfectrvngabw;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- ABWOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- return 1;
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperABW wrapper(options);
+ ABWConverter converter(options, TOOLNAME, "converts AbiWord documents back to AbiWord.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/ebook2abw.cxx b/src/conv/abw/ebook2abw.cxx
index 8d9158c..011c482 100644
--- a/src/conv/abw/ebook2abw.cxx
+++ b/src/conv/abw/ebook2abw.cxx
@@ -20,110 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "WPWrapperEBOOK.hxx"
+#include "ABWConverter.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <librevenge-stream/librevenge-stream.h>
-#include <libe-book/libe-book.h>
-#include <librvngabw/librvngabw.hxx>
-
-#include "ABWStringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "ebook2abw"
-class ABWOutputFileHelper
-{
-public:
- ABWOutputFileHelper(const char *outFileName) : mOutFileName(outFileName) {}
- ~ABWOutputFileHelper() {}
-
- bool convertTextDocument(librevenge::RVNGInputStream &input)
- {
- writerperfectrvngabw::ABWStringDocumentHandler contentHandler;
- librvngabw::ABWTextGenerator collector(&contentHandler);
- if (libebook::EBOOKDocument::RESULT_OK != libebook::EBOOKDocument::parse(&input, &collector))
- return false;
- if (mOutFileName)
- {
- FILE *fhandle = fopen(mOutFileName, "wb");
- if (!fhandle)
- return false;
- fprintf(fhandle, "%s\n", contentHandler.getData().cstr());
- fclose(fhandle);
- }
- else
- printf("%s\n", contentHandler.getData().cstr());
- return true;
- }
-
- static bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libebook::EBOOKDocument::CONFIDENCE_EXCELLENT == libebook::EBOOKDocument::isSupported(&input);
- }
-private:
- //! the ouput file name
- char const *mOutFileName;
-};
-
-int printUsage(char const *name)
-{
- UsageHelper usage(name, "converts an e-book to AbiWord.");
- usage.addToDescription("If OUTPUT is missing, the result is printed to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngabw;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- librevenge::RVNGFileStream input(szInputFile);
- if (!ABWOutputFileHelper::isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: the document is not in any supported format.\n");
- return 1;
- }
- ABWOutputFileHelper helper(szOutFile);
- bool ok=helper.convertTextDocument(input);
- if (!ok)
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperEBOOK wrapper(options);
+ ABWConverter converter(options, TOOLNAME, "converts e-books to AbiWord.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/mwaw2abw.cxx b/src/conv/abw/mwaw2abw.cxx
index ba4301c..f31aba4 100644
--- a/src/conv/abw/mwaw2abw.cxx
+++ b/src/conv/abw/mwaw2abw.cxx
@@ -20,177 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "ABWConverter.hxx"
+#include "ABWWrapperMWAW.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <librevenge-stream/librevenge-stream.h>
-#include <libmwaw/libmwaw.hxx>
-#include <librvngabw/librvngabw.hxx>
-
-#include "ABWStringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "mwaw2abw"
-class ABWOutputFileHelper
-{
-public:
- //! constructor
- ABWOutputFileHelper(const char *outFileName) : mOutFileName(outFileName) {}
- //! destructor
- ~ABWOutputFileHelper() {}
- //! try to convert a document
- bool convertTextDocument(librevenge::RVNGInputStream &input)
- {
- writerperfectrvngabw::ABWStringDocumentHandler contentHandler;
- librvngabw::ABWTextGenerator collector(&contentHandler);
- // embedded document created by libmwaw
- collector.registerEmbeddedImageHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicImage);
- collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
- // basic picture
- collector.registerEmbeddedImageHandler("image/pict", &handleEmbeddedBasicGraphicImage);
- collector.registerEmbeddedImageHandler("image/x-pict", &handleEmbeddedBasicGraphicImage);
- if (MWAWDocument::MWAW_R_OK != MWAWDocument::parse(&input, &collector))
- return false;
- if (mOutFileName)
- {
- FILE *fhandle = fopen(mOutFileName, "wb");
- if (!fhandle)
- return false;
- fprintf(fhandle, "%s\n", contentHandler.getData().cstr());
- fclose(fhandle);
- }
- else
- printf("%s\n", contentHandler.getData().cstr());
- return true;
- }
- //! returns true if the input corresponds to a text document
- static bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- MWAWDocument::Type type;
- MWAWDocument::Kind kind;
- MWAWDocument::Confidence confidence = MWAWDocument::isFileFormatSupported(&input, type, kind);
- if (confidence != MWAWDocument::MWAW_C_EXCELLENT)
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Mac Classic document.\n");
- return false;
- }
- if (kind != MWAWDocument::MWAW_K_TEXT)
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Mac Classic text document.\n");
- return false;
- }
-
- return true;
- }
-private:
- //! try to convert MWAW created picture in svg
- static bool handleEmbeddedMWAWGraphicImage(const librevenge::RVNGBinaryData &data, librevenge::RVNGBinaryData &output)
- {
- librevenge::RVNGStringVector svgOutput;
- librevenge::RVNGSVGDrawingGenerator generator(svgOutput, "");
- bool result = MWAWDocument::decodeGraphic(data, &generator);
- if (!result || svgOutput.empty() || svgOutput[0].empty())
- return false;
-
- output.clear();
- const char *svgHeader = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n"
- "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\""
- " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n";
- output.append((unsigned char *)svgHeader, strlen(svgHeader));
- output.append((unsigned char *)svgOutput[0].cstr(), strlen(svgOutput[0].cstr()));
- return true;
- }
- /** try to convert embedded picture in svg.
-
- \note if possible, we convert them. If not, we returns the current picture...
- */
- static bool handleEmbeddedBasicGraphicImage(const librevenge::RVNGBinaryData &data, librevenge::RVNGBinaryData &output)
- {
- librevenge::RVNGStringVector svgOutput;
- librevenge::RVNGSVGDrawingGenerator generator(svgOutput, "");
- if (MWAWDocument::MWAW_R_OK != MWAWDocument::parse(data.getDataStream(), &generator) ||
- svgOutput.empty() || svgOutput[0].empty())
- {
- output=data;
- return true;
- }
- output.clear();
- const char *svgHeader = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n"
- "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\""
- " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n";
- output.append((unsigned char *)svgHeader, strlen(svgHeader));
- output.append((unsigned char *)svgOutput[0].cstr(), strlen(svgOutput[0].cstr()));
- return true;
- }
- //! try to convert MWAW created spreadsheet in a table
- static bool handleEmbeddedMWAWSpreadsheetObject(const librevenge::RVNGBinaryData &data, librvngabw::ABWGenerator &generator)
- {
- librvngabw::ABWSpreadsheetToTableGenerator exporter(generator);
- return MWAWDocument::decodeSpreadsheet(data, &exporter);
- }
- //! the ouput file name
- char const *mOutFileName;
-};
-
-int printUsage(char const *name)
-{
- UsageHelper usage(name, "converts a Mac document to AbiWord.");
- usage.addToDescription("If OUTPUT is missing, the result is printed to standard output.\n");
- usage.addToDescription("The list of recognized formats can be found at\n");
- usage.addToDescription("http://sourceforge.net/p/libmwaw/wiki/Home/\n");
- usage.addToDescription("(at least the list of formats recognized by the lattest version of libmwaw).\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngabw;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- librevenge::RVNGFileStream input(szInputFile);
- if (!ABWOutputFileHelper::isSupportedFormat(input))
- return 1;
- ABWOutputFileHelper helper(szOutFile);
- bool ok=helper.convertTextDocument(input);
- if (!ok)
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ ABWWrapperMWAW wrapper(options);
+ ABWConverter converter(options, TOOLNAME, "converts legacy Mac Documents to AbiWord.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/pages2abw.cxx b/src/conv/abw/pages2abw.cxx
index 379c10f..2fa22be 100644
--- a/src/conv/abw/pages2abw.cxx
+++ b/src/conv/abw/pages2abw.cxx
@@ -20,132 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "WPWrapperETONYEK.hxx"
+#include "ABWConverter.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <librevenge-stream/librevenge-stream.h>
-#include <libetonyek/libetonyek.h>
-#include <librvngabw/librvngabw.hxx>
-
-#include "writerperfect_utils.hxx"
-#include "ABWStringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "pages2abw"
-using libetonyek::EtonyekDocument;
-
-class ABWOutputFileHelper
-{
-public:
- ABWOutputFileHelper(const char *outFileName) : mOutFileName(outFileName) {}
- ~ABWOutputFileHelper() {}
-
- bool convertTextDocument(librevenge::RVNGInputStream &input)
- {
- writerperfectrvngabw::ABWStringDocumentHandler contentHandler;
- librvngabw::ABWTextGenerator collector(&contentHandler);
- if (!EtonyekDocument::parse(&input, &collector))
- return false;
- if (mOutFileName)
- {
- FILE *fhandle = fopen(mOutFileName, "wb");
- if (!fhandle)
- return false;
- fprintf(fhandle, "%s\n", contentHandler.getData().cstr());
- fclose(fhandle);
- }
- else
- printf("%s\n", contentHandler.getData().cstr());
- return true;
- }
-
- static EtonyekDocument::Confidence isSupportedFormat(librevenge::RVNGInputStream &input, EtonyekDocument::Type &type)
- {
- return EtonyekDocument::isSupported(&input, &type);
- }
-private:
- //! the ouput file name
- char const *mOutFileName;
-};
-
-int printUsage(char const *name)
-{
- UsageHelper usage(name, "converts Apple Pages documents to AbiWord.");
- usage.addToDescription("If OUTPUT is missing, the result is printed to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngabw;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- ABWOutputFileHelper helper(szOutFile);
-
- shared_ptr<librevenge::RVNGInputStream> input;
- if (librevenge::RVNGDirectoryStream::isDirectory(szInputFile))
- input.reset(new librevenge::RVNGDirectoryStream(szInputFile));
- else
- input.reset(new librevenge::RVNGFileStream(szInputFile));
-
- EtonyekDocument::Type type = EtonyekDocument::TYPE_UNKNOWN;
- const EtonyekDocument::Confidence confidence = helper.isSupportedFormat(*input, type);
- if ((EtonyekDocument::CONFIDENCE_NONE == confidence) || (EtonyekDocument::TYPE_PAGES != type))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Page Document.\n");
- return 1;
- }
-
- if (EtonyekDocument::CONFIDENCE_SUPPORTED_PART == confidence)
- {
- input.reset(librevenge::RVNGDirectoryStream::createForParent(szInputFile));
-
- if (EtonyekDocument::CONFIDENCE_EXCELLENT != helper.isSupportedFormat(*input, type) || (EtonyekDocument::TYPE_PAGES != type))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Page Document.\n");
- return 1;
- }
- }
-
- if (!helper.convertTextDocument(*input))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperETONYEK wrapper(options);
+ ABWConverter converter(options, TOOLNAME, "converts Apple Pages Documents to AbiWord.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/sd2abw.cxx b/src/conv/abw/sd2abw.cxx
new file mode 100644
index 0000000..c364c76
--- /dev/null
+++ b/src/conv/abw/sd2abw.cxx
@@ -0,0 +1,40 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "ABWConverter.hxx"
+#include "ABWWrapperSTAROFFICE.hxx"
+
+#include "UserOptions.hxx"
+
+#define TOOLNAME "sd2abw"
+
+using namespace writerperfectrvngabw;
+int main(int argc, char *argv[])
+{
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_passwordOption=options->m_standartOuputOption=true;
+ ABWWrapperSTAROFFICE wrapper(options);
+ ABWConverter converter(options, TOOLNAME, "converts StarOffice Documents(.sdw) to AbiWord.");
+ return converter.convert(wrapper, argc, argv);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/sd2abw.rc.in b/src/conv/abw/sd2abw.rc.in
new file mode 100644
index 0000000..1b0eca1
--- /dev/null
+++ b/src/conv/abw/sd2abw.rc.in
@@ -0,0 +1,31 @@
+#include <winver.h>
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,BUILDNUMBER
+ PRODUCTVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,0
+ FILEFLAGSMASK 0
+ FILEFLAGS 0
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_DLL
+ FILESUBTYPE VFT2_UNKNOWN
+ BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904B0"
+ BEGIN
+ VALUE "CompanyName", "The libwpd developer community"
+ VALUE "FileDescription", "sd2abw"
+ VALUE "FileVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@.BUILDNUMBER"
+ VALUE "InternalName", "sd2abw"
+ VALUE "LegalCopyright", "Copyright (C) 2002-2004 William Lachance, Marc Maurer, Fridrich Strba, Andrew Ziem, other contributers"
+ VALUE "OriginalFilename", "sd2abw.exe"
+ VALUE "ProductName", "writerperfect"
+ VALUE "ProductVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+ END
+
diff --git a/src/conv/abw/wpd2abw.cxx b/src/conv/abw/wpd2abw.cxx
index 5090dd1..930e039 100644
--- a/src/conv/abw/wpd2abw.cxx
+++ b/src/conv/abw/wpd2abw.cxx
@@ -20,165 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "ABWConverter.hxx"
+#include "ABWWrapperWPD.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libwpd/libwpd.h>
-#include <libwpg/libwpg.h>
-#include <librvngabw/librvngabw.hxx>
-
-#include "ABWStringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "wpd2abw"
-using namespace libwpd;
-
-class ABWOutputFileHelper
-{
-public:
- ABWOutputFileHelper(const char *outFileName) : mOutFileName(outFileName) {};
- ~ABWOutputFileHelper() {};
-
- bool convertDocument(librevenge::RVNGInputStream &input, const char *password)
- {
- writerperfectrvngabw::ABWStringDocumentHandler contentHandler;
- librvngabw::ABWTextGenerator collector(&contentHandler);
- collector.registerEmbeddedImageHandler("image/x-wpg", &handleEmbeddedWPGImage);
- if (WPD_OK != WPDocument::parse(&input, &collector, password))
- return false;
- if (mOutFileName)
- {
- FILE *fhandle = fopen(mOutFileName, "wb");
- if (!fhandle)
- return false;
- fprintf(fhandle, "%s\n", contentHandler.getData().cstr());
- fclose(fhandle);
- }
- else
- printf("%s\n", contentHandler.getData().cstr());
- return true;
- }
-
-
- bool isSupportedFormat(librevenge::RVNGInputStream &input, const char *password)
- {
- WPDConfidence confidence = WPDocument::isFileFormatSupported(&input);
- if (WPD_CONFIDENCE_EXCELLENT != confidence && WPD_CONFIDENCE_SUPPORTED_ENCRYPTION != confidence)
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid WordPerfect document.\n");
- return false;
- }
- if (WPD_CONFIDENCE_SUPPORTED_ENCRYPTION == confidence && !password)
- {
- fprintf(stderr, "ERROR: The WordPerfect document is encrypted and you did not give us a password.\n");
- return false;
- }
- if (confidence == WPD_CONFIDENCE_SUPPORTED_ENCRYPTION && password &&
- (WPD_PASSWORD_MATCH_OK != WPDocument::verifyPassword(&input, password)))
- {
- fprintf(stderr, "ERROR: The WordPerfect document is encrypted and we either\n");
- fprintf(stderr, "ERROR: don't know how to decrypt it or the given password is wrong.\n");
- return false;
- }
-
- return true;
- }
-
-private:
-
- static bool handleEmbeddedWPGImage(const librevenge::RVNGBinaryData &input, librevenge::RVNGBinaryData &output)
- {
- libwpg::WPGFileFormat fileFormat = libwpg::WPG_AUTODETECT;
-
- if (!libwpg::WPGraphics::isSupported(input.getDataStream()))
- fileFormat = libwpg::WPG_WPG1;
-
- librevenge::RVNGStringVector svgOutput;
- librevenge::RVNGSVGDrawingGenerator generator(svgOutput, "");
- bool result = libwpg::WPGraphics::parse(input.getDataStream(), &generator, fileFormat);
- if (!result || svgOutput.empty() || svgOutput[0].empty())
- return false;
-
- output.clear();
- const char *svgHeader = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n"
- "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\""
- " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n";
- output.append((unsigned char *)svgHeader, strlen(svgHeader));
- output.append((unsigned char *)svgOutput[0].cstr(), strlen(svgOutput[0].cstr()));
-
- return true;
- }
- //! the ouput file name
- char const *mOutFileName;
-};
-
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts WordPerfect documents to AbiWord.");
- usage.addToDescription("If OUTPUT is missing, the result is printed to standard output.\n");
- usage.addStdoutOption();
- usage.addPasswordOption();
- return usage.printUsage();
-}
-
-
+using namespace writerperfectrvngabw;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
- char *password = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--password"))
- {
- if (i < argc - 1)
- password = argv[++i];
- }
- else if (!strncmp(argv[i], "--password=", 11))
- password = &argv[i][11];
- else if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- ABWOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input, password))
- return 1;
-
- if (!helper.convertDocument(input, password))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_passwordOption=options->m_standartOuputOption=true;
+ ABWWrapperWPD wrapper(options);
+ ABWConverter converter(options, TOOLNAME, "converts WordPerfect Documents to AbiWord.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/wpft2abw.cxx b/src/conv/abw/wpft2abw.cxx
new file mode 100644
index 0000000..49077ad
--- /dev/null
+++ b/src/conv/abw/wpft2abw.cxx
@@ -0,0 +1,111 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdio.h>
+
+#include "ABWConverter.hxx"
+#include "ABWWrapper.hxx"
+#include "UserOptions.hxx"
+
+#define TOOLNAME "wpft2abw"
+
+#ifdef ENABLE_LIBEBOOK
+# include "WPWrapperEBOOK.hxx"
+#endif
+#ifdef ENABLE_LIBETONYEK
+# include "WPWrapperETONYEK.hxx"
+#endif
+#ifdef ENABLE_LIBMWAW
+# include "ABWWrapperMWAW.hxx"
+#endif
+#ifdef ENABLE_LIBSTAROFFICE
+# include "ABWWrapperSTAROFFICE.hxx"
+#endif
+#ifdef ENABLE_LIBWPD
+# include "ABWWrapperWPD.hxx"
+#endif
+#ifdef ENABLE_LIBWPS
+# include "ABWWrapperWPS.hxx"
+#endif
+
+#define CHECK_CONVERTER_LIB(x) \
+ do { \
+ if (!wpWrapper && !wrapper) { \
+ shared_ptr<writerperfect::WPWrapper> testWrapper(new writerperfect::WPWrapper##x(options)); \
+ if (converter.isSupportedFormat(*testWrapper,input)) \
+ wpWrapper=testWrapper; \
+ } \
+ } while(0)
+
+#define CHECK_CONVERTER_LIB2(x) \
+ do { \
+ if (!wpWrapper && !wrapper) { \
+ shared_ptr<ABWWrapper> testWrapper(new ABWWrapper##x(options)); \
+ if (converter.isSupportedFormat(*testWrapper,input)) \
+ wrapper=testWrapper; \
+ } \
+ } while(0)
+
+using namespace writerperfectrvngabw;
+int main(int argc, char *argv[])
+{
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_encodingOption=options->m_passwordOption=options->m_standartOuputOption=true;
+ int exitCode;
+ ABWConverter converter(options, TOOLNAME, "converts documents to AbiWord.");
+ if (converter.parseAndTreatOptions(argc, argv, exitCode))
+ return exitCode;
+
+ shared_ptr<librevenge::RVNGInputStream> input(new librevenge::RVNGFileStream(options->getInput()));
+ shared_ptr<writerperfect::WPWrapper> wpWrapper;
+ shared_ptr<ABWWrapper> wrapper;
+#ifdef ENABLE_LIBEBOOK
+ CHECK_CONVERTER_LIB(EBOOK);
+#endif
+#ifdef ENABLE_LIBETONYEK
+ CHECK_CONVERTER_LIB(ETONYEK);
+#endif
+#ifdef ENABLE_LIBMWAW
+ CHECK_CONVERTER_LIB2(MWAW);
+#endif
+#ifdef ENABLE_LIBSTAROFFICE
+ CHECK_CONVERTER_LIB2(STAROFFICE);
+#endif
+#ifdef ENABLE_LIBWPD
+ CHECK_CONVERTER_LIB2(WPD);
+#endif
+#ifdef ENABLE_LIBWPS
+ CHECK_CONVERTER_LIB2(WPS);
+#endif
+ if (wpWrapper && converter.convertDocument(*wpWrapper, *input))
+ return 0;
+ if (wrapper && converter.convertDocument(*wrapper, *input))
+ return 0;
+ fprintf(stderr, "ERROR : Couldn't convert the document\n");
+ return 1;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/abw/wpft2abw.rc.in b/src/conv/abw/wpft2abw.rc.in
new file mode 100644
index 0000000..2231dfd
--- /dev/null
+++ b/src/conv/abw/wpft2abw.rc.in
@@ -0,0 +1,31 @@
+#include <winver.h>
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,BUILDNUMBER
+ PRODUCTVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,0
+ FILEFLAGSMASK 0
+ FILEFLAGS 0
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_DLL
+ FILESUBTYPE VFT2_UNKNOWN
+ BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904B0"
+ BEGIN
+ VALUE "CompanyName", "The libwpd developer community"
+ VALUE "FileDescription", "wpft2abw"
+ VALUE "FileVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@.BUILDNUMBER"
+ VALUE "InternalName", "wpft2abw"
+ VALUE "LegalCopyright", "Copyright (C) 2002-2004 William Lachance, Marc Maurer, Fridrich Strba, Andrew Ziem, other contributers"
+ VALUE "OriginalFilename", "wpft2abw.exe"
+ VALUE "ProductName", "writerperfect"
+ VALUE "ProductVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+ END
+
diff --git a/src/conv/abw/wps2abw.cxx b/src/conv/abw/wps2abw.cxx
index 3647462..4b7fa9c 100644
--- a/src/conv/abw/wps2abw.cxx
+++ b/src/conv/abw/wps2abw.cxx
@@ -20,155 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "ABWConverter.hxx"
+#include "ABWWrapperWPS.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libwps/libwps.h>
-#include <librvngabw/librvngabw.hxx>
-
-#include "ABWStringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "wps2abw"
-using namespace libwps;
-
-class ABWOutputFileHelper
-{
-public:
- ABWOutputFileHelper(const char *outFileName, const char *password, const char *encoding) :
- mOutFileName(outFileName), mPassword(password), mEncoding(encoding) {};
- ~ABWOutputFileHelper() {};
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- writerperfectrvngabw::ABWStringDocumentHandler contentHandler;
- librvngabw::ABWTextGenerator collector(&contentHandler);
- collector.registerEmbeddedObjectHandler("image/wks-ods", &handleEmbeddedWKSObject);
- libwps::WPSResult result=WPSDocument::parse(&input, &collector, mPassword, mEncoding);
- if (result == WPS_ENCRYPTION_ERROR)
- {
- fprintf(stderr, "ERROR : encrypted file, problem with password\n");
- return false;
- }
- else if (result != WPS_OK)
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return false;
- }
-
- if (mOutFileName)
- {
- FILE *fhandle = fopen(mOutFileName, "wb");
- if (!fhandle)
- return false;
- fprintf(fhandle, "%s\n", contentHandler.getData().cstr());
- fclose(fhandle);
- }
- else
- printf("%s\n", contentHandler.getData().cstr());
- return true;
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- WPSCreator creator;
- WPSKind kind = WPS_TEXT;
- bool needEncoding;
- WPSConfidence confidence = WPSDocument::isFileFormatSupported(&input, kind, creator, needEncoding);
- if (confidence == WPS_CONFIDENCE_NONE || kind != WPS_TEXT)
- return false;
- if (!mEncoding && needEncoding)
- fprintf(stderr, "WARNING: called without encoding, try to decode with basic character set encoding.\n");
- return true;
- }
-
-private:
- static bool handleEmbeddedWKSObject(const librevenge::RVNGBinaryData &data, librvngabw::ABWGenerator &generator)
- {
- if (!data.size()) return false;
- librvngabw::ABWSpreadsheetToTableGenerator exporter(generator);
- return WPSDocument::parse(data.getDataStream(), &exporter)==WPS_OK;
- }
- //! the ouput file name
- char const *mOutFileName;
- //! the password
- char const *mPassword;
- //! the encoding
- char const *mEncoding;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts MS Works documents to AbiWord.");
- usage.addToDescription("If OUTPUT is missing, the result is printed to standard output.\n");
- usage.addStdoutOption();
- usage.addPasswordOption();
- usage.addEncodingOption();
- usage.addListEncodingsOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngabw;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
- char *encoding = 0;
- char *password = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--stdout")==0)
- stdOutput = true;
- else if (strcmp(argv[i], "--encoding")==0)
- {
- if (i+1>=argc)
- return printUsage(TOOLNAME);
- encoding=argv[++i];
- continue;
- }
- else if (strcmp(argv[i], "--password")==0)
- {
- if (i+1>=argc)
- return printUsage(TOOLNAME);
- password=argv[++i];
- continue;
- }
- else if (strcmp(argv[i], "--list-encodings")==0)
- return UsageHelper::printEncodings();
- else if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- ABWOutputFileHelper helper(szOutFile, password, encoding);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Microsoft Works document.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- return 1;
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_encodingOption=options->m_passwordOption=options->m_standartOuputOption=true;
+ ABWWrapperWPS wrapper(options);
+ ABWConverter converter(options, TOOLNAME, "converts MS Works Documents to AbiWord.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/EpubConverter.cxx b/src/conv/epub/EpubConverter.cxx
new file mode 100644
index 0000000..f0de165
--- /dev/null
+++ b/src/conv/epub/EpubConverter.cxx
@@ -0,0 +1,149 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include <stdio.h>
+#include <iostream>
+
+#include "EpubConverter.hxx"
+
+#include "EpubPackage.hxx"
+#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
+#include "WPWrapper.hxx"
+
+namespace writerperfectrvngepub
+{
+EpubConverter::EpubConverter(shared_ptr<UserOptions> options, std::string const &toolName, std::string const &usageMessage) :
+ m_options(options), m_toolName(toolName), m_usageMessage(usageMessage)
+{
+#if defined HAVE_EPUBGEN_0_1
+ options->m_versionOption = true;
+#endif
+ options->m_splitOption = true;
+ options->m_stylesOption = true;
+ options->m_layoutOption = true;
+}
+
+EpubConverter::~EpubConverter()
+{
+}
+
+int EpubConverter::printUsage() const
+{
+ if (m_toolName.empty() || m_usageMessage.empty())
+ {
+ fprintf(stderr, "INTERNAL ERROR: not enough data to show help.\n");
+ return 1;
+ }
+ UsageHelper usage(m_toolName.c_str(), m_usageMessage.c_str(), "[OPTIONS] INPUT OUTPUT");
+ if (m_options) m_options->addOptionsToUsageHelper(usage);
+ return usage.printUsage();
+}
+
+bool EpubConverter::parseAndTreatOptions(int argc, char const *const *argv, int &exitCode) const
+{
+ if (!m_options)
+ {
+ fprintf(stderr, "INTERNAL ERROR: can not find the options.\n");
+ exitCode=1;
+ }
+ else if (!m_options->parseOptions(argc, argv) || m_options->m_showHelp)
+ exitCode=printUsage();
+ else if (m_options->m_showListEncoding)
+ exitCode=UsageHelper::printEncodings();
+ else if (m_options->m_showVersion)
+ exitCode=UsageHelper::printVersion(m_toolName.c_str());
+ else if (!m_options->getInput() || !m_options->getOutput())
+ exitCode=printUsage();
+ else
+ return false;
+ return true;
+}
+
+bool EpubConverter::convertDocument(writerperfect::WPWrapper &wrapper, librevenge::RVNGInputStream &input)
+{
+ if (!m_options || !m_options->getOutput())
+ return false;
+ if (wrapper.m_type==writerperfect::WPWrapper::Drawing)
+ {
+ EpubPackage package(m_options->getOutput());
+ libepubgen::EPUBDrawingGenerator collector(&package);
+ return wrapper.parseDocument(input, collector);
+ }
+ if (wrapper.m_type==writerperfect::WPWrapper::Presentation)
+ {
+ EpubPackage package(m_options->getOutput());
+ libepubgen::EPUBPresentationGenerator collector(&package);
+ return wrapper.parseDocument(input, collector);
+ }
+ if (wrapper.m_type==writerperfect::WPWrapper::Text)
+ {
+ EpubPackage package(m_options->getOutput());
+#if defined HAVE_EPUBGEN_0_1
+ libepubgen::EPUBTextGenerator collector(&package, m_options->getVersion());
+ collector.setOption(libepubgen::EPUB_GENERATOR_OPTION_SPLIT, m_options->getSplit());
+ collector.setOption(libepubgen::EPUB_GENERATOR_OPTION_STYLES, m_options->getStyles());
+ collector.setOption(libepubgen::EPUB_GENERATOR_OPTION_LAYOUT, m_options->getLayout());
+#else
+ libepubgen::EPUBTextGenerator collector(&package, static_cast<libepubgen::EPUBSplitMethod>(m_options->getSplit()));
+#endif
+ return wrapper.parseDocument(input, collector);
+ }
+ return false;
+}
+
+bool EpubConverter::isSupportedFormat(writerperfect::WPWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input)
+{
+ if (!m_options)
+ return false;
+ if (!wrapper.checkInput(input))
+ return false;
+ return wrapper.m_type==writerperfect::WPWrapper::Drawing || wrapper.m_type==writerperfect::WPWrapper::Presentation ||
+ wrapper.m_type==writerperfect::WPWrapper::Text;
+}
+
+int EpubConverter::convert(writerperfect::WPWrapper &wrapper, int argc, char const *const *argv)
+{
+ int exitCode;
+ if (parseAndTreatOptions(argc, argv, exitCode))
+ return exitCode;
+
+ shared_ptr<librevenge::RVNGInputStream> input(new librevenge::RVNGFileStream(m_options->getInput()));
+ if (!isSupportedFormat(wrapper, input))
+ {
+ if (!wrapper.m_errorSent)
+ fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid document.\n");
+ return 1;
+ }
+
+ if (!input || !convertDocument(wrapper, *input))
+ {
+ if (!wrapper.m_errorSent)
+ fprintf(stderr, "ERROR : Couldn't convert the document\n");
+ return 1;
+ }
+
+ return 0;
+}
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/EpubConverter.hxx b/src/conv/epub/EpubConverter.hxx
new file mode 100644
index 0000000..08ad7d4
--- /dev/null
+++ b/src/conv/epub/EpubConverter.hxx
@@ -0,0 +1,79 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef EPUB_CONVERTER_H
+#define EPUB_CONVERTER_H
+
+#include <string>
+
+#include <librevenge/librevenge.h>
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfect
+{
+class WPWrapper;
+}
+
+namespace writerperfectrvngepub
+{
+/** a abstract class to help convert file
+ */
+class EpubConverter
+{
+public:
+ //! constructor
+ EpubConverter(shared_ptr<UserOptions> options, std::string const &toolName, std::string const &usageMessage);
+ //! destructor
+ ~EpubConverter();
+
+ /** try to parse/treat the argument, to do the conversion, ... Returns the exit code */
+ int convert(writerperfect::WPWrapper &wrapper, int argc, char const *const *argv);
+
+ // low level function
+
+ /** print the options and try to call basic functions:
+ - printVersion, printUsage: if toolName and usage message is set
+ - printEncoding
+ Return true and set the exit code if the program can exit
+ */
+ bool parseAndTreatOptions(int argc, char const *const *argv, int &exitCode) const;
+ /// check if a file is supported
+ bool isSupportedFormat(writerperfect::WPWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input);
+ /// try to convert a file
+ bool convertDocument(writerperfect::WPWrapper &wrapper, librevenge::RVNGInputStream &input);
+ /// print usage: toolName and usage message must be set
+ int printUsage() const;
+protected:
+ //! the option
+ shared_ptr<UserOptions> m_options;
+ //! the tool name
+ std::string m_toolName;
+ //! the usage message
+ std::string m_usageMessage;
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/EpubPackage.cxx b/src/conv/epub/EpubPackage.cxx
index 7680101..cb296fb 100644
--- a/src/conv/epub/EpubPackage.cxx
+++ b/src/conv/epub/EpubPackage.cxx
@@ -21,7 +21,7 @@
#include "StringXMLSerializer.hxx"
EpubPackage::EpubPackage(const std::string &fileName)
- : m_output(fileName.c_str(), "")
+ : m_output(fileName.c_str())
, m_currentFileName()
, m_currentBinaryContent()
, m_currentXMLContent()
diff --git a/src/conv/epub/Makefile.am b/src/conv/epub/Makefile.am
index 31f349c..5519490 100644
--- a/src/conv/epub/Makefile.am
+++ b/src/conv/epub/Makefile.am
@@ -1,155 +1,225 @@
## -*- Mode: make; tab-width: 4; indent-tabs-mode: tabs -*-
-bin_PROGRAMS =
+wrapper_dir = $(top_builddir)/src/conv/wrapper
-if USE_LIBVISIO
-bin_PROGRAMS += vsd2epub vss2epub
+bin_PROGRAMS = wpft2epub
+
+AM_CXXFLAGS = \
+ -I$(top_srcdir)/src/lib \
+ -I$(top_srcdir)/src/conv/wrapper \
+ $(REVENGE_CFLAGS) \
+ $(EPUBGEN_CFLAGS) \
+ $(DEBUG_CXXFLAGS)
+
+noinst_LTLIBRARIES = libepubhelper.la
+libepubhelper_la_LIBADD = $(top_builddir)/src/lib/libwriterperfect_internal.la $(EPUBGEN_LIBS)
+libepubhelper_la_SOURCES = \
+ EpubConverter.cxx \
+ EpubConverter.hxx \
+ EpubPackage.cxx \
+ EpubPackage.hxx
+
+wpft2epub_DEPENDENCIES = @WPFT2EPUB_WIN32_RESOURCE@ libepubhelper.la
+wpft2epub_CPPFLAGS = $(REVENGE_STREAM_CFLAGS)
+wpft2epub_LDADD = $(REVENGE_STREAM_LIBS)
+wpft2epub_SOURCES = wpft2epub.cxx
+
+if USE_LIBABW
+ wpft2epub_CPPFLAGS += $(ABW_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpabw.la $(ABW_LIBS)
+
+ bin_PROGRAMS += abw2epub
+
+ abw2epub_DEPENDENCIES = @ABW2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ abw2epub_CPPFLAGS = $(ABW_CFLAGS)
+ abw2epub_LDADD = @ABW2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpabw.la libepubhelper.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
+ abw2epub_SOURCES = abw2epub.cxx
endif
-if USE_LIBWPD
-bin_PROGRAMS += wpd2epub
+if USE_LIBCDR
+ wpft2epub_CPPFLAGS += $(CDR_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpcdr.la $(CDR_LIBS)
+
+ bin_PROGRAMS += cdr2epub cmx2epub
+
+ cdr2epub_DEPENDENCIES = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ cdr2epub_CPPFLAGS = $(CDR_CFLAGS)
+ cdr2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpcdr.la libepubhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
+ cdr2epub_SOURCES = cdr2epub.cxx
+
+ cmx2epub_DEPENDENCIES = @CMX2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ cmx2epub_CPPFLAGS = $(CDR_CFLAGS)
+ cmx2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpcdr.la libepubhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
+ cmx2epub_SOURCES = cmx2epub.cxx
endif
-if USE_LIBWPG
-bin_PROGRAMS += wpg2epub
+if USE_LIBEBOOK
+ wpft2epub_CPPFLAGS += $(EBOOK_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpebook.la $(EBOOK_LIBS)
+
+ bin_PROGRAMS += ebook2epub
+
+ ebook2epub_DEPENDENCIES = @EBOOK2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ ebook2epub_CPPFLAGS = $(EBOOK_CFLAGS)
+ ebook2epub_LDADD = @EBOOK2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpebook.la libepubhelper.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
+ ebook2epub_SOURCES = ebook2epub.cxx
endif
-if USE_LIBWPS
-bin_PROGRAMS += wps2epub
+if USE_LIBETONYEK
+ wpft2epub_CPPFLAGS += $(ETONYEK_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpetonyek.la $(ETONYEK_LIBS)
+
+ bin_PROGRAMS += key2epub pages2epub
+
+ pages2epub_DEPENDENCIES = @PAGES2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ pages2epub_CPPFLAGS = $(ETONYEK_CFLAGS)
+ pages2epub_LDADD = @PAGES2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libepubhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+ pages2epub_SOURCES = pages2epub.cxx
+
+ key2epub_DEPENDENCIES = @KEY2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ key2epub_CPPFLAGS = $(ETONYEK_CFLAGS)
+ key2epub_LDADD = @KEY2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libepubhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+ key2epub_SOURCES =key2epub.cxx
endif
-if USE_LIBCDR
-bin_PROGRAMS += cdr2epub cmx2epub
+if USE_LIBFREEHAND
+ wpft2epub_CPPFLAGS += $(FREEHAND_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpfreehand.la $(FREEHAND_LIBS)
+
+ bin_PROGRAMS += fh2epub
+
+ fh2epub_DEPENDENCIES = @FH2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ fh2epub_CPPFLAGS = $(FREEHAND_CFLAGS)
+ fh2epub_LDADD = @FH2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpfreehand.la libepubhelper.la $(FREEHAND_LIBS) $(REVENGE_STREAM_LIBS)
+ fh2epub_SOURCES = fh2epub.cxx
endif
if USE_LIBMSPUB
-bin_PROGRAMS += pub2epub
+ wpft2epub_CPPFLAGS += $(MSPUB_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpmspub.la $(MSPUB_LIBS)
+
+ bin_PROGRAMS += pub2epub
+
+ pub2epub_DEPENDENCIES = @PUB2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ pub2epub_CPPFLAGS = $(MSPUB_CFLAGS)
+ pub2epub_LDADD = @PUB2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpmspub.la libepubhelper.la $(MSPUB_LIBS) $(REVENGE_STREAM_LIBS)
+ pub2epub_SOURCES = pub2epub.cxx
endif
if USE_LIBMWAW
-bin_PROGRAMS += mwaw2epub
+ wpft2epub_CPPFLAGS += $(MWAW_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpmwaw.la $(MWAW_LIBS)
+
+ bin_PROGRAMS += mwaw2epub
+
+ mwaw2epub_DEPENDENCIES = @MWAW2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ mwaw2epub_CPPFLAGS = $(MWAW_CFLAGS)
+ mwaw2epub_LDADD = @MWAW2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpmwaw.la libepubhelper.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
+ mwaw2epub_SOURCES = mwaw2epub.cxx
endif
-if USE_LIBFREEHAND
-bin_PROGRAMS += fh2epub
+if USE_LIBPAGEMAKER
+ wpft2epub_CPPFLAGS += $(PAGEMAKER_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwppagemaker.la $(PAGEMAKER_LIBS)
+
+ bin_PROGRAMS += pmd2epub
+
+ pmd2epub_DEPENDENCIES = @PMD2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ pmd2epub_CPPFLAGS = $(PAGEMAKER_CFLAGS)
+ pmd2epub_LDADD = @PMD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwppagemaker.la libepubhelper.la $(PAGEMAKER_LIBS) $(REVENGE_STREAM_LIBS)
+ pmd2epub_SOURCES = pmd2epub.cxx
endif
-if USE_LIBETONYEK
-bin_PROGRAMS += key2epub pages2epub
+if USE_LIBQXP
+ wpft2epub_CPPFLAGS += $(QXP_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpqxp.la $(QXP_LIBS)
+
+ bin_PROGRAMS += qxp2epub
+
+ qxp2epub_DEPENDENCIES = @QXP2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ qxp2epub_CPPFLAGS = $(QXP_CFLAGS)
+ qxp2epub_LDADD = @QXP2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpqxp.la libepubhelper.la $(QXP_LIBS) $(REVENGE_STREAM_LIBS)
+ qxp2epub_SOURCES = qxp2epub.cxx
endif
-if USE_LIBEBOOK
-bin_PROGRAMS += ebook2epub
+if USE_LIBSTAROFFICE
+ wpft2epub_CPPFLAGS += $(STAROFFICE_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpstaroffice.la $(STAROFFICE_LIBS)
+
+ bin_PROGRAMS += sd2epub
+
+ sd2epub_DEPENDENCIES = @SD2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ sd2epub_CPPFLAGS = $(STAROFFICE_CFLAGS)
+ sd2epub_LDADD = @SD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpstaroffice.la libepubhelper.la $(STAROFFICE_LIBS) $(REVENGE_STREAM_LIBS)
+ sd2epub_SOURCES = sd2epub.cxx
endif
-if USE_LIBABW
-bin_PROGRAMS += abw2epub
+if USE_LIBVISIO
+ wpft2epub_CPPFLAGS += $(VISIO_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpvisio.la $(VISIO_LIBS)
+
+ bin_PROGRAMS += vsd2epub vss2epub
+
+ vsd2epub_DEPENDENCIES = @VSD2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ vsd2epub_CPPFLAGS = $(VISIO_CFLAGS)
+ vsd2epub_LDADD = @VSD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpvisio.la libepubhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
+ vsd2epub_SOURCES = vsd2epub.cxx
+
+ vss2epub_DEPENDENCIES = @VSS2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ vss2epub_CPPFLAGS = $(VISIO_CFLAGS)
+ vss2epub_LDADD = @VSD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpvisio.la libepubhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
+ vss2epub_SOURCES = vss2epub.cxx
endif
-if USE_LIBPAGEMAKER
-bin_PROGRAMS += pmd2epub
+if USE_LIBWPD
+ wpft2epub_CPPFLAGS += $(WPD_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpwpd.la $(WPD_LIBS)
+
+ bin_PROGRAMS += wpd2epub
+
+ wpd2epub_DEPENDENCIES = @WPD2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ wpd2epub_CPPFLAGS = $(WPD_CFLAGS)
+ wpd2epub_LDADD = @WPD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpwpd.la libepubhelper.la $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
+ wpd2epub_SOURCES = wpd2epub.cxx
endif
-AM_CXXFLAGS = \
- -I$(top_srcdir)/src/lib \
- $(EPUBGEN_CFLAGS) \
- $(DEBUG_CXXFLAGS)
+if USE_LIBWPG
+ wpft2epub_CPPFLAGS += $(WPG_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpwpg.la $(WPG_LIBS)
-noinst_LTLIBRARIES = libepubhelper.la
-libepubhelper_la_LIBADD = $(top_builddir)/src/lib/libwriterperfect_internal.la $(EPUBGEN_LIBS)
-libepubhelper_la_SOURCES = \
- EpubPackage.cxx \
- EpubPackage.hxx
+ bin_PROGRAMS += wpg2epub
+
+ wpg2epub_DEPENDENCIES = @WPG2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ wpg2epub_CPPFLAGS = $(WPG_CFLAGS)
+ wpg2epub_LDADD = @WPG2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpwpg.la libepubhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
+ wpg2epub_SOURCES = wpg2epub.cxx
+endif
+
+if USE_LIBWPS
+ wpft2epub_CPPFLAGS += $(WPS_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpwps.la $(WPS_LIBS)
+
+ bin_PROGRAMS += wps2epub
+
+ wps2epub_DEPENDENCIES = @WPS2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ wps2epub_CPPFLAGS = $(WPS_CFLAGS)
+ wps2epub_LDADD = @WPS2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpwps.la libepubhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
+ wps2epub_SOURCES = wps2epub.cxx
+endif
+
+if USE_LIBZMF
+ wpft2epub_CPPFLAGS += $(ZMF_CFLAGS)
+ wpft2epub_LDADD += $(wrapper_dir)/libwpzmf.la $(ZMF_LIBS)
-ebook2epub_DEPENDENCIES = @EBOOK2EPUB_WIN32_RESOURCE@ libepubhelper.la
-ebook2epub_CPPFLAGS = $(EBOOK_CFLAGS)
-ebook2epub_LDADD = @EBOOK2EPUB_WIN32_RESOURCE@ libepubhelper.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
-ebook2epub_SOURCES = \
- ebook2epub.cxx
-
-wpd2epub_DEPENDENCIES = @WPD2EPUB_WIN32_RESOURCE@ libepubhelper.la
-wpd2epub_CPPFLAGS = $(WPD_CFLAGS)
-wpd2epub_LDADD = @WPD2EPUB_WIN32_RESOURCE@ libepubhelper.la $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpd2epub_SOURCES = \
- wpd2epub.cxx
-
-wps2epub_DEPENDENCIES = @WPS2EPUB_WIN32_RESOURCE@ libepubhelper.la
-wps2epub_CPPFLAGS = $(WPS_CFLAGS)
-wps2epub_LDADD = @WPS2EPUB_WIN32_RESOURCE@ libepubhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
-wps2epub_SOURCES = \
- wps2epub.cxx
-
-mwaw2epub_DEPENDENCIES = @MWAW2EPUB_WIN32_RESOURCE@ libepubhelper.la
-mwaw2epub_CPPFLAGS = $(MWAW_CFLAGS)
-mwaw2epub_LDADD = @MWAW2EPUB_WIN32_RESOURCE@ libepubhelper.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
-mwaw2epub_SOURCES = \
- mwaw2epub.cxx
-
-pages2epub_DEPENDENCIES = @PAGES2EPUB_WIN32_RESOURCE@ libepubhelper.la
-pages2epub_CPPFLAGS = $(ETONYEK_CFLAGS)
-pages2epub_LDADD = @PAGES2EPUB_WIN32_RESOURCE@ libepubhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-pages2epub_SOURCES = \
- pages2epub.cxx
-
-abw2epub_DEPENDENCIES = @ABW2EPUB_WIN32_RESOURCE@ libepubhelper.la
-abw2epub_CPPFLAGS = $(ABW_CFLAGS)
-abw2epub_LDADD = @ABW2EPUB_WIN32_RESOURCE@ libepubhelper.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
-abw2epub_SOURCES = \
- abw2epub.cxx
-
-key2epub_DEPENDENCIES = @KEY2EPUB_WIN32_RESOURCE@ libepubhelper.la
-key2epub_CPPFLAGS = $(ETONYEK_CFLAGS)
-key2epub_LDADD = @KEY2EPUB_WIN32_RESOURCE@ libepubhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-key2epub_SOURCES = \
- key2epub.cxx
-
-wpg2epub_DEPENDENCIES = @WPG2EPUB_WIN32_RESOURCE@ libepubhelper.la
-wpg2epub_CPPFLAGS = $(WPG_CFLAGS)
-wpg2epub_LDADD = @WPG2EPUB_WIN32_RESOURCE@ libepubhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpg2epub_SOURCES = \
- wpg2epub.cxx
-
-vsd2epub_DEPENDENCIES = @VSD2EPUB_WIN32_RESOURCE@ libepubhelper.la
-vsd2epub_CPPFLAGS = $(VISIO_CFLAGS)
-vsd2epub_LDADD = @VSD2EPUB_WIN32_RESOURCE@ libepubhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
-vsd2epub_SOURCES = \
- vsd2epub.cxx
-
-vss2epub_DEPENDENCIES = @VSS2EPUB_WIN32_RESOURCE@ libepubhelper.la
-vss2epub_CPPFLAGS = $(VISIO_CFLAGS)
-vss2epub_LDADD = @VSD2EPUB_WIN32_RESOURCE@ libepubhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
-vss2epub_SOURCES = \
- vss2epub.cxx
-
-cdr2epub_DEPENDENCIES = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la
-cdr2epub_CPPFLAGS = $(CDR_CFLAGS)
-cdr2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
-cdr2epub_SOURCES = \
- cdr2epub.cxx
-
-cmx2epub_DEPENDENCIES = @CMX2EPUB_WIN32_RESOURCE@ libepubhelper.la
-cmx2epub_CPPFLAGS = $(CDR_CFLAGS)
-cmx2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
-cmx2epub_SOURCES = \
- cmx2epub.cxx
-
-pub2epub_DEPENDENCIES = @PUB2EPUB_WIN32_RESOURCE@ libepubhelper.la
-pub2epub_CPPFLAGS = $(MSPUB_CFLAGS)
-pub2epub_LDADD = @PUB2EPUB_WIN32_RESOURCE@ libepubhelper.la $(MSPUB_LIBS) $(REVENGE_STREAM_LIBS)
-pub2epub_SOURCES = \
- pub2epub.cxx
-
-pmd2epub_DEPENDENCIES = @PMD2EPUB_WIN32_RESOURCE@ libepubhelper.la
-pmd2epub_CPPFLAGS = $(PAGEMAKER_CFLAGS)
-pmd2epub_LDADD = @PMD2EPUB_WIN32_RESOURCE@ libepubhelper.la $(PAGEMAKER_LIBS) $(REVENGE_STREAM_LIBS)
-pmd2epub_SOURCES = \
- pmd2epub.cxx
-
-fh2epub_DEPENDENCIES = @FH2EPUB_WIN32_RESOURCE@ libepubhelper.la
-fh2epub_CPPFLAGS = $(FREEHAND_CFLAGS)
-fh2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la $(FREEHAND_LIBS) $(REVENGE_STREAM_LIBS)
-fh2epub_SOURCES = \
- fh2epub.cxx
+ bin_PROGRAMS += zmf2epub
+
+ zmf2epub_DEPENDENCIES = @ZMF2EPUB_WIN32_RESOURCE@ libepubhelper.la
+ zmf2epub_CPPFLAGS = $(ZMF_CFLAGS)
+ zmf2epub_LDADD = @ZMF2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpzmf.la libepubhelper.la $(ZMF_LIBS) $(REVENGE_STREAM_LIBS)
+ zmf2epub_SOURCES = zmf2epub.cxx
+endif
+
+wpft2epub_LDADD += @WPFT2EPUB_WIN32_RESOURCE@ libepubhelper.la
if OS_WIN32
@@ -209,10 +279,25 @@ if OS_WIN32
chmod +x $(top_srcdir)/build/win32/*compile-resource
WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource pmd2epub.rc @PMD2EPUB_WIN32_RESOURCE@
+@QXP2EPUB_WIN32_RESOURCE@ : qxp2epub.rc $(qxp2epub_OBJECTS)
+ chmod +x $(top_srcdir)/build/win32/*compile-resource
+ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource qxp2epub.rc @QXP2EPUB_WIN32_RESOURCE@
+
@FH2EPUB_WIN32_RESOURCE@ : fh2epub.rc $(fh2epub_OBJECTS)
chmod +x $(top_srcdir)/build/win32/*compile-resource
WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource fh2epub.rc @FH2EPUB_WIN32_RESOURCE@
+@ZMF2EPUB_WIN32_RESOURCE@ : zmf2epub.rc $(zmf2epub_OBJECTS)
+ chmod +x $(top_srcdir)/build/win32/*compile-resource
+ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource zmf2epub.rc @ZMF2EPUB_WIN32_RESOURCE@
+
+@SD2EPUB_WIN32_RESOURCE@ : sd2epub.rc $(sd2epub_OBJECTS)
+ chmod +x $(top_srcdir)/build/win32/*compile-resource
+ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource sd2epub.rc @SD2EPUB_WIN32_RESOURCE@
+
+@WPFT2EPUB_WIN32_RESOURCE@ : wpft2epub.rc $(wpft2epub_OBJECTS)
+ chmod +x $(top_srcdir)/build/win32/*compile-resource
+ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wpft2epub.rc @WPFT2EPUB_WIN32_RESOURCE@
endif
## vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/src/conv/epub/Makefile.in b/src/conv/epub/Makefile.in
index 3901f2f..2c4a6c1 100644
--- a/src/conv/epub/Makefile.in
+++ b/src/conv/epub/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -89,28 +89,65 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-bin_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3) \
- $(am__EXEEXT_4) $(am__EXEEXT_5) $(am__EXEEXT_6) \
- $(am__EXEEXT_7) $(am__EXEEXT_8) $(am__EXEEXT_9) \
- $(am__EXEEXT_10) $(am__EXEEXT_11) $(am__EXEEXT_12)
-@USE_LIBVISIO_TRUE@am__append_1 = vsd2epub vss2epub
-@USE_LIBWPD_TRUE@am__append_2 = wpd2epub
-@USE_LIBWPG_TRUE@am__append_3 = wpg2epub
-@USE_LIBWPS_TRUE@am__append_4 = wps2epub
-@USE_LIBCDR_TRUE@am__append_5 = cdr2epub cmx2epub
-@USE_LIBMSPUB_TRUE@am__append_6 = pub2epub
-@USE_LIBMWAW_TRUE@am__append_7 = mwaw2epub
-@USE_LIBFREEHAND_TRUE@am__append_8 = fh2epub
-@USE_LIBETONYEK_TRUE@am__append_9 = key2epub pages2epub
-@USE_LIBEBOOK_TRUE@am__append_10 = ebook2epub
-@USE_LIBABW_TRUE@am__append_11 = abw2epub
-@USE_LIBPAGEMAKER_TRUE@am__append_12 = pmd2epub
+bin_PROGRAMS = wpft2epub$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
+ $(am__EXEEXT_3) $(am__EXEEXT_4) $(am__EXEEXT_5) \
+ $(am__EXEEXT_6) $(am__EXEEXT_7) $(am__EXEEXT_8) \
+ $(am__EXEEXT_9) $(am__EXEEXT_10) $(am__EXEEXT_11) \
+ $(am__EXEEXT_12) $(am__EXEEXT_13) $(am__EXEEXT_14) \
+ $(am__EXEEXT_15)
+@USE_LIBABW_TRUE@am__append_1 = $(ABW_CFLAGS)
+@USE_LIBABW_TRUE@am__append_2 = $(wrapper_dir)/libwpabw.la $(ABW_LIBS)
+@USE_LIBABW_TRUE@am__append_3 = abw2epub
+@USE_LIBCDR_TRUE@am__append_4 = $(CDR_CFLAGS)
+@USE_LIBCDR_TRUE@am__append_5 = $(wrapper_dir)/libwpcdr.la $(CDR_LIBS)
+@USE_LIBCDR_TRUE@am__append_6 = cdr2epub cmx2epub
+@USE_LIBEBOOK_TRUE@am__append_7 = $(EBOOK_CFLAGS)
+@USE_LIBEBOOK_TRUE@am__append_8 = $(wrapper_dir)/libwpebook.la $(EBOOK_LIBS)
+@USE_LIBEBOOK_TRUE@am__append_9 = ebook2epub
+@USE_LIBETONYEK_TRUE@am__append_10 = $(ETONYEK_CFLAGS)
+@USE_LIBETONYEK_TRUE@am__append_11 = $(wrapper_dir)/libwpetonyek.la $(ETONYEK_LIBS)
+@USE_LIBETONYEK_TRUE@am__append_12 = key2epub pages2epub
+@USE_LIBFREEHAND_TRUE@am__append_13 = $(FREEHAND_CFLAGS)
+@USE_LIBFREEHAND_TRUE@am__append_14 = $(wrapper_dir)/libwpfreehand.la $(FREEHAND_LIBS)
+@USE_LIBFREEHAND_TRUE@am__append_15 = fh2epub
+@USE_LIBMSPUB_TRUE@am__append_16 = $(MSPUB_CFLAGS)
+@USE_LIBMSPUB_TRUE@am__append_17 = $(wrapper_dir)/libwpmspub.la $(MSPUB_LIBS)
+@USE_LIBMSPUB_TRUE@am__append_18 = pub2epub
+@USE_LIBMWAW_TRUE@am__append_19 = $(MWAW_CFLAGS)
+@USE_LIBMWAW_TRUE@am__append_20 = $(wrapper_dir)/libwpmwaw.la $(MWAW_LIBS)
+@USE_LIBMWAW_TRUE@am__append_21 = mwaw2epub
+@USE_LIBPAGEMAKER_TRUE@am__append_22 = $(PAGEMAKER_CFLAGS)
+@USE_LIBPAGEMAKER_TRUE@am__append_23 = $(wrapper_dir)/libwppagemaker.la $(PAGEMAKER_LIBS)
+@USE_LIBPAGEMAKER_TRUE@am__append_24 = pmd2epub
+@USE_LIBQXP_TRUE@am__append_25 = $(QXP_CFLAGS)
+@USE_LIBQXP_TRUE@am__append_26 = $(wrapper_dir)/libwpqxp.la $(QXP_LIBS)
+@USE_LIBQXP_TRUE@am__append_27 = qxp2epub
+@USE_LIBSTAROFFICE_TRUE@am__append_28 = $(STAROFFICE_CFLAGS)
+@USE_LIBSTAROFFICE_TRUE@am__append_29 = $(wrapper_dir)/libwpstaroffice.la $(STAROFFICE_LIBS)
+@USE_LIBSTAROFFICE_TRUE@am__append_30 = sd2epub
+@USE_LIBVISIO_TRUE@am__append_31 = $(VISIO_CFLAGS)
+@USE_LIBVISIO_TRUE@am__append_32 = $(wrapper_dir)/libwpvisio.la $(VISIO_LIBS)
+@USE_LIBVISIO_TRUE@am__append_33 = vsd2epub vss2epub
+@USE_LIBWPD_TRUE@am__append_34 = $(WPD_CFLAGS)
+@USE_LIBWPD_TRUE@am__append_35 = $(wrapper_dir)/libwpwpd.la $(WPD_LIBS)
+@USE_LIBWPD_TRUE@am__append_36 = wpd2epub
+@USE_LIBWPG_TRUE@am__append_37 = $(WPG_CFLAGS)
+@USE_LIBWPG_TRUE@am__append_38 = $(wrapper_dir)/libwpwpg.la $(WPG_LIBS)
+@USE_LIBWPG_TRUE@am__append_39 = wpg2epub
+@USE_LIBWPS_TRUE@am__append_40 = $(WPS_CFLAGS)
+@USE_LIBWPS_TRUE@am__append_41 = $(wrapper_dir)/libwpwps.la $(WPS_LIBS)
+@USE_LIBWPS_TRUE@am__append_42 = wps2epub
+@USE_LIBZMF_TRUE@am__append_43 = $(ZMF_CFLAGS)
+@USE_LIBZMF_TRUE@am__append_44 = $(wrapper_dir)/libwpzmf.la $(ZMF_LIBS)
+@USE_LIBZMF_TRUE@am__append_45 = zmf2epub
subdir = src/conv/epub
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/wpft_libs.m4 $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/wpft_libs.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -118,65 +155,134 @@ mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = abw2epub.rc cdr2epub.rc cmx2epub.rc ebook2epub.rc \
fh2epub.rc key2epub.rc mwaw2epub.rc pages2epub.rc pub2epub.rc \
- pmd2epub.rc vsd2epub.rc vss2epub.rc wpd2epub.rc wpg2epub.rc \
- wps2epub.rc
+ pmd2epub.rc qxp2epub.rc sd2epub.rc vsd2epub.rc vss2epub.rc \
+ wpd2epub.rc wpg2epub.rc wps2epub.rc zmf2epub.rc wpft2epub.rc
CONFIG_CLEAN_VPATH_FILES =
LTLIBRARIES = $(noinst_LTLIBRARIES)
am__DEPENDENCIES_1 =
libepubhelper_la_DEPENDENCIES = \
$(top_builddir)/src/lib/libwriterperfect_internal.la \
$(am__DEPENDENCIES_1)
-am_libepubhelper_la_OBJECTS = EpubPackage.lo
+am_libepubhelper_la_OBJECTS = EpubConverter.lo EpubPackage.lo
libepubhelper_la_OBJECTS = $(am_libepubhelper_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 =
-@USE_LIBVISIO_TRUE@am__EXEEXT_1 = vsd2epub$(EXEEXT) vss2epub$(EXEEXT)
-@USE_LIBWPD_TRUE@am__EXEEXT_2 = wpd2epub$(EXEEXT)
-@USE_LIBWPG_TRUE@am__EXEEXT_3 = wpg2epub$(EXEEXT)
-@USE_LIBWPS_TRUE@am__EXEEXT_4 = wps2epub$(EXEEXT)
-@USE_LIBCDR_TRUE@am__EXEEXT_5 = cdr2epub$(EXEEXT) cmx2epub$(EXEEXT)
+@USE_LIBABW_TRUE@am__EXEEXT_1 = abw2epub$(EXEEXT)
+@USE_LIBCDR_TRUE@am__EXEEXT_2 = cdr2epub$(EXEEXT) cmx2epub$(EXEEXT)
+@USE_LIBEBOOK_TRUE@am__EXEEXT_3 = ebook2epub$(EXEEXT)
+@USE_LIBETONYEK_TRUE@am__EXEEXT_4 = key2epub$(EXEEXT) \
+@USE_LIBETONYEK_TRUE@ pages2epub$(EXEEXT)
+@USE_LIBFREEHAND_TRUE@am__EXEEXT_5 = fh2epub$(EXEEXT)
@USE_LIBMSPUB_TRUE@am__EXEEXT_6 = pub2epub$(EXEEXT)
@USE_LIBMWAW_TRUE@am__EXEEXT_7 = mwaw2epub$(EXEEXT)
-@USE_LIBFREEHAND_TRUE@am__EXEEXT_8 = fh2epub$(EXEEXT)
-@USE_LIBETONYEK_TRUE@am__EXEEXT_9 = key2epub$(EXEEXT) \
-@USE_LIBETONYEK_TRUE@ pages2epub$(EXEEXT)
-@USE_LIBEBOOK_TRUE@am__EXEEXT_10 = ebook2epub$(EXEEXT)
-@USE_LIBABW_TRUE@am__EXEEXT_11 = abw2epub$(EXEEXT)
-@USE_LIBPAGEMAKER_TRUE@am__EXEEXT_12 = pmd2epub$(EXEEXT)
+@USE_LIBPAGEMAKER_TRUE@am__EXEEXT_8 = pmd2epub$(EXEEXT)
+@USE_LIBQXP_TRUE@am__EXEEXT_9 = qxp2epub$(EXEEXT)
+@USE_LIBSTAROFFICE_TRUE@am__EXEEXT_10 = sd2epub$(EXEEXT)
+@USE_LIBVISIO_TRUE@am__EXEEXT_11 = vsd2epub$(EXEEXT) vss2epub$(EXEEXT)
+@USE_LIBWPD_TRUE@am__EXEEXT_12 = wpd2epub$(EXEEXT)
+@USE_LIBWPG_TRUE@am__EXEEXT_13 = wpg2epub$(EXEEXT)
+@USE_LIBWPS_TRUE@am__EXEEXT_14 = wps2epub$(EXEEXT)
+@USE_LIBZMF_TRUE@am__EXEEXT_15 = zmf2epub$(EXEEXT)
am__installdirs = "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS)
-am_abw2epub_OBJECTS = abw2epub-abw2epub.$(OBJEXT)
+am__abw2epub_SOURCES_DIST = abw2epub.cxx
+@USE_LIBABW_TRUE@am_abw2epub_OBJECTS = abw2epub-abw2epub.$(OBJEXT)
abw2epub_OBJECTS = $(am_abw2epub_OBJECTS)
-am_cdr2epub_OBJECTS = cdr2epub-cdr2epub.$(OBJEXT)
+am__cdr2epub_SOURCES_DIST = cdr2epub.cxx
+@USE_LIBCDR_TRUE@am_cdr2epub_OBJECTS = cdr2epub-cdr2epub.$(OBJEXT)
cdr2epub_OBJECTS = $(am_cdr2epub_OBJECTS)
-am_cmx2epub_OBJECTS = cmx2epub-cmx2epub.$(OBJEXT)
+am__cmx2epub_SOURCES_DIST = cmx2epub.cxx
+@USE_LIBCDR_TRUE@am_cmx2epub_OBJECTS = cmx2epub-cmx2epub.$(OBJEXT)
cmx2epub_OBJECTS = $(am_cmx2epub_OBJECTS)
-am_ebook2epub_OBJECTS = ebook2epub-ebook2epub.$(OBJEXT)
+am__ebook2epub_SOURCES_DIST = ebook2epub.cxx
+@USE_LIBEBOOK_TRUE@am_ebook2epub_OBJECTS = \
+@USE_LIBEBOOK_TRUE@ ebook2epub-ebook2epub.$(OBJEXT)
ebook2epub_OBJECTS = $(am_ebook2epub_OBJECTS)
-am_fh2epub_OBJECTS = fh2epub-fh2epub.$(OBJEXT)
+am__fh2epub_SOURCES_DIST = fh2epub.cxx
+@USE_LIBFREEHAND_TRUE@am_fh2epub_OBJECTS = fh2epub-fh2epub.$(OBJEXT)
fh2epub_OBJECTS = $(am_fh2epub_OBJECTS)
-am_key2epub_OBJECTS = key2epub-key2epub.$(OBJEXT)
+am__key2epub_SOURCES_DIST = key2epub.cxx
+@USE_LIBETONYEK_TRUE@am_key2epub_OBJECTS = \
+@USE_LIBETONYEK_TRUE@ key2epub-key2epub.$(OBJEXT)
key2epub_OBJECTS = $(am_key2epub_OBJECTS)
-am_mwaw2epub_OBJECTS = mwaw2epub-mwaw2epub.$(OBJEXT)
+am__mwaw2epub_SOURCES_DIST = mwaw2epub.cxx
+@USE_LIBMWAW_TRUE@am_mwaw2epub_OBJECTS = \
+@USE_LIBMWAW_TRUE@ mwaw2epub-mwaw2epub.$(OBJEXT)
mwaw2epub_OBJECTS = $(am_mwaw2epub_OBJECTS)
-am_pages2epub_OBJECTS = pages2epub-pages2epub.$(OBJEXT)
+am__pages2epub_SOURCES_DIST = pages2epub.cxx
+@USE_LIBETONYEK_TRUE@am_pages2epub_OBJECTS = \
+@USE_LIBETONYEK_TRUE@ pages2epub-pages2epub.$(OBJEXT)
pages2epub_OBJECTS = $(am_pages2epub_OBJECTS)
-am_pmd2epub_OBJECTS = pmd2epub-pmd2epub.$(OBJEXT)
+am__pmd2epub_SOURCES_DIST = pmd2epub.cxx
+@USE_LIBPAGEMAKER_TRUE@am_pmd2epub_OBJECTS = \
+@USE_LIBPAGEMAKER_TRUE@ pmd2epub-pmd2epub.$(OBJEXT)
pmd2epub_OBJECTS = $(am_pmd2epub_OBJECTS)
-am_pub2epub_OBJECTS = pub2epub-pub2epub.$(OBJEXT)
+am__pub2epub_SOURCES_DIST = pub2epub.cxx
+@USE_LIBMSPUB_TRUE@am_pub2epub_OBJECTS = pub2epub-pub2epub.$(OBJEXT)
pub2epub_OBJECTS = $(am_pub2epub_OBJECTS)
-am_vsd2epub_OBJECTS = vsd2epub-vsd2epub.$(OBJEXT)
+am__qxp2epub_SOURCES_DIST = qxp2epub.cxx
+@USE_LIBQXP_TRUE@am_qxp2epub_OBJECTS = qxp2epub-qxp2epub.$(OBJEXT)
+qxp2epub_OBJECTS = $(am_qxp2epub_OBJECTS)
+am__sd2epub_SOURCES_DIST = sd2epub.cxx
+@USE_LIBSTAROFFICE_TRUE@am_sd2epub_OBJECTS = \
+@USE_LIBSTAROFFICE_TRUE@ sd2epub-sd2epub.$(OBJEXT)
+sd2epub_OBJECTS = $(am_sd2epub_OBJECTS)
+am__vsd2epub_SOURCES_DIST = vsd2epub.cxx
+@USE_LIBVISIO_TRUE@am_vsd2epub_OBJECTS = vsd2epub-vsd2epub.$(OBJEXT)
vsd2epub_OBJECTS = $(am_vsd2epub_OBJECTS)
-am_vss2epub_OBJECTS = vss2epub-vss2epub.$(OBJEXT)
+am__vss2epub_SOURCES_DIST = vss2epub.cxx
+@USE_LIBVISIO_TRUE@am_vss2epub_OBJECTS = vss2epub-vss2epub.$(OBJEXT)
vss2epub_OBJECTS = $(am_vss2epub_OBJECTS)
-am_wpd2epub_OBJECTS = wpd2epub-wpd2epub.$(OBJEXT)
+am__wpd2epub_SOURCES_DIST = wpd2epub.cxx
+@USE_LIBWPD_TRUE@am_wpd2epub_OBJECTS = wpd2epub-wpd2epub.$(OBJEXT)
wpd2epub_OBJECTS = $(am_wpd2epub_OBJECTS)
-am_wpg2epub_OBJECTS = wpg2epub-wpg2epub.$(OBJEXT)
+am_wpft2epub_OBJECTS = wpft2epub-wpft2epub.$(OBJEXT)
+wpft2epub_OBJECTS = $(am_wpft2epub_OBJECTS)
+@USE_LIBABW_TRUE@am__DEPENDENCIES_2 = $(wrapper_dir)/libwpabw.la \
+@USE_LIBABW_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBCDR_TRUE@am__DEPENDENCIES_3 = $(wrapper_dir)/libwpcdr.la \
+@USE_LIBCDR_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBEBOOK_TRUE@am__DEPENDENCIES_4 = $(wrapper_dir)/libwpebook.la \
+@USE_LIBEBOOK_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBETONYEK_TRUE@am__DEPENDENCIES_5 = \
+@USE_LIBETONYEK_TRUE@ $(wrapper_dir)/libwpetonyek.la \
+@USE_LIBETONYEK_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBFREEHAND_TRUE@am__DEPENDENCIES_6 = \
+@USE_LIBFREEHAND_TRUE@ $(wrapper_dir)/libwpfreehand.la \
+@USE_LIBFREEHAND_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBMSPUB_TRUE@am__DEPENDENCIES_7 = $(wrapper_dir)/libwpmspub.la \
+@USE_LIBMSPUB_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBMWAW_TRUE@am__DEPENDENCIES_8 = $(wrapper_dir)/libwpmwaw.la \
+@USE_LIBMWAW_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBPAGEMAKER_TRUE@am__DEPENDENCIES_9 = \
+@USE_LIBPAGEMAKER_TRUE@ $(wrapper_dir)/libwppagemaker.la \
+@USE_LIBPAGEMAKER_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBQXP_TRUE@am__DEPENDENCIES_10 = $(wrapper_dir)/libwpqxp.la \
+@USE_LIBQXP_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBSTAROFFICE_TRUE@am__DEPENDENCIES_11 = \
+@USE_LIBSTAROFFICE_TRUE@ $(wrapper_dir)/libwpstaroffice.la \
+@USE_LIBSTAROFFICE_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBVISIO_TRUE@am__DEPENDENCIES_12 = $(wrapper_dir)/libwpvisio.la \
+@USE_LIBVISIO_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBWPD_TRUE@am__DEPENDENCIES_13 = $(wrapper_dir)/libwpwpd.la \
+@USE_LIBWPD_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBWPG_TRUE@am__DEPENDENCIES_14 = $(wrapper_dir)/libwpwpg.la \
+@USE_LIBWPG_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBWPS_TRUE@am__DEPENDENCIES_15 = $(wrapper_dir)/libwpwps.la \
+@USE_LIBWPS_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBZMF_TRUE@am__DEPENDENCIES_16 = $(wrapper_dir)/libwpzmf.la \
+@USE_LIBZMF_TRUE@ $(am__DEPENDENCIES_1)
+am__wpg2epub_SOURCES_DIST = wpg2epub.cxx
+@USE_LIBWPG_TRUE@am_wpg2epub_OBJECTS = wpg2epub-wpg2epub.$(OBJEXT)
wpg2epub_OBJECTS = $(am_wpg2epub_OBJECTS)
-am_wps2epub_OBJECTS = wps2epub-wps2epub.$(OBJEXT)
+am__wps2epub_SOURCES_DIST = wps2epub.cxx
+@USE_LIBWPS_TRUE@am_wps2epub_OBJECTS = wps2epub-wps2epub.$(OBJEXT)
wps2epub_OBJECTS = $(am_wps2epub_OBJECTS)
+am__zmf2epub_SOURCES_DIST = zmf2epub.cxx
+@USE_LIBZMF_TRUE@am_zmf2epub_OBJECTS = zmf2epub-zmf2epub.$(OBJEXT)
+zmf2epub_OBJECTS = $(am_zmf2epub_OBJECTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
@@ -233,14 +339,20 @@ SOURCES = $(libepubhelper_la_SOURCES) $(abw2epub_SOURCES) \
$(cdr2epub_SOURCES) $(cmx2epub_SOURCES) $(ebook2epub_SOURCES) \
$(fh2epub_SOURCES) $(key2epub_SOURCES) $(mwaw2epub_SOURCES) \
$(pages2epub_SOURCES) $(pmd2epub_SOURCES) $(pub2epub_SOURCES) \
- $(vsd2epub_SOURCES) $(vss2epub_SOURCES) $(wpd2epub_SOURCES) \
- $(wpg2epub_SOURCES) $(wps2epub_SOURCES)
-DIST_SOURCES = $(libepubhelper_la_SOURCES) $(abw2epub_SOURCES) \
- $(cdr2epub_SOURCES) $(cmx2epub_SOURCES) $(ebook2epub_SOURCES) \
- $(fh2epub_SOURCES) $(key2epub_SOURCES) $(mwaw2epub_SOURCES) \
- $(pages2epub_SOURCES) $(pmd2epub_SOURCES) $(pub2epub_SOURCES) \
- $(vsd2epub_SOURCES) $(vss2epub_SOURCES) $(wpd2epub_SOURCES) \
- $(wpg2epub_SOURCES) $(wps2epub_SOURCES)
+ $(qxp2epub_SOURCES) $(sd2epub_SOURCES) $(vsd2epub_SOURCES) \
+ $(vss2epub_SOURCES) $(wpd2epub_SOURCES) $(wpft2epub_SOURCES) \
+ $(wpg2epub_SOURCES) $(wps2epub_SOURCES) $(zmf2epub_SOURCES)
+DIST_SOURCES = $(libepubhelper_la_SOURCES) \
+ $(am__abw2epub_SOURCES_DIST) $(am__cdr2epub_SOURCES_DIST) \
+ $(am__cmx2epub_SOURCES_DIST) $(am__ebook2epub_SOURCES_DIST) \
+ $(am__fh2epub_SOURCES_DIST) $(am__key2epub_SOURCES_DIST) \
+ $(am__mwaw2epub_SOURCES_DIST) $(am__pages2epub_SOURCES_DIST) \
+ $(am__pmd2epub_SOURCES_DIST) $(am__pub2epub_SOURCES_DIST) \
+ $(am__qxp2epub_SOURCES_DIST) $(am__sd2epub_SOURCES_DIST) \
+ $(am__vsd2epub_SOURCES_DIST) $(am__vss2epub_SOURCES_DIST) \
+ $(am__wpd2epub_SOURCES_DIST) $(wpft2epub_SOURCES) \
+ $(am__wpg2epub_SOURCES_DIST) $(am__wps2epub_SOURCES_DIST) \
+ $(am__zmf2epub_SOURCES_DIST)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -270,9 +382,11 @@ am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/abw2epub.rc.in \
$(srcdir)/ebook2epub.rc.in $(srcdir)/fh2epub.rc.in \
$(srcdir)/key2epub.rc.in $(srcdir)/mwaw2epub.rc.in \
$(srcdir)/pages2epub.rc.in $(srcdir)/pmd2epub.rc.in \
- $(srcdir)/pub2epub.rc.in $(srcdir)/vsd2epub.rc.in \
+ $(srcdir)/pub2epub.rc.in $(srcdir)/qxp2epub.rc.in \
+ $(srcdir)/sd2epub.rc.in $(srcdir)/vsd2epub.rc.in \
$(srcdir)/vss2epub.rc.in $(srcdir)/wpd2epub.rc.in \
- $(srcdir)/wpg2epub.rc.in $(srcdir)/wps2epub.rc.in \
+ $(srcdir)/wpft2epub.rc.in $(srcdir)/wpg2epub.rc.in \
+ $(srcdir)/wps2epub.rc.in $(srcdir)/zmf2epub.rc.in \
$(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ABW2ABW_WIN32_RESOURCE = @ABW2ABW_WIN32_RESOURCE@
@@ -321,7 +435,6 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EOT_CFLAGS = @EOT_CFLAGS@
-EOT_CPPFLAGS = @EOT_CPPFLAGS@
EOT_LIBS = @EOT_LIBS@
EPUBGEN_CFLAGS = @EPUBGEN_CFLAGS@
EPUBGEN_LIBS = @EPUBGEN_LIBS@
@@ -336,6 +449,7 @@ FREEHAND_LIBS = @FREEHAND_LIBS@
GREP = @GREP@
GSF_CFLAGS = @GSF_CFLAGS@
GSF_LIBS = @GSF_LIBS@
+HAVE_CXX11 = @HAVE_CXX11@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -394,6 +508,10 @@ PMD2EPUB_WIN32_RESOURCE = @PMD2EPUB_WIN32_RESOURCE@
PMD2ODG_WIN32_RESOURCE = @PMD2ODG_WIN32_RESOURCE@
PUB2EPUB_WIN32_RESOURCE = @PUB2EPUB_WIN32_RESOURCE@
PUB2ODG_WIN32_RESOURCE = @PUB2ODG_WIN32_RESOURCE@
+QXP2EPUB_WIN32_RESOURCE = @QXP2EPUB_WIN32_RESOURCE@
+QXP2ODG_WIN32_RESOURCE = @QXP2ODG_WIN32_RESOURCE@
+QXP_CFLAGS = @QXP_CFLAGS@
+QXP_LIBS = @QXP_LIBS@
RANLIB = @RANLIB@
REVENGE_CFLAGS = @REVENGE_CFLAGS@
REVENGE_LIBS = @REVENGE_LIBS@
@@ -401,6 +519,8 @@ REVENGE_STREAM_CFLAGS = @REVENGE_STREAM_CFLAGS@
REVENGE_STREAM_LIBS = @REVENGE_STREAM_LIBS@
RVNGABW_CFLAGS = @RVNGABW_CFLAGS@
RVNGABW_LIBS = @RVNGABW_LIBS@
+SD2ABW_WIN32_RESOURCE = @SD2ABW_WIN32_RESOURCE@
+SD2EPUB_WIN32_RESOURCE = @SD2EPUB_WIN32_RESOURCE@
SD2ODF_WIN32_RESOURCE = @SD2ODF_WIN32_RESOURCE@
SED = @SED@
SET_MAKE = @SET_MAKE@
@@ -422,6 +542,9 @@ WPD2EPUB_WIN32_RESOURCE = @WPD2EPUB_WIN32_RESOURCE@
WPD2ODT_WIN32_RESOURCE = @WPD2ODT_WIN32_RESOURCE@
WPD_CFLAGS = @WPD_CFLAGS@
WPD_LIBS = @WPD_LIBS@
+WPFT2ABW_WIN32_RESOURCE = @WPFT2ABW_WIN32_RESOURCE@
+WPFT2EPUB_WIN32_RESOURCE = @WPFT2EPUB_WIN32_RESOURCE@
+WPFT2ODF_WIN32_RESOURCE = @WPFT2ODF_WIN32_RESOURCE@
WPG2EPUB_WIN32_RESOURCE = @WPG2EPUB_WIN32_RESOURCE@
WPG2ODG_WIN32_RESOURCE = @WPG2ODG_WIN32_RESOURCE@
WPG_CFLAGS = @WPG_CFLAGS@
@@ -435,6 +558,11 @@ WRITERPERFECT_MAJOR_VERSION = @WRITERPERFECT_MAJOR_VERSION@
WRITERPERFECT_MICRO_VERSION = @WRITERPERFECT_MICRO_VERSION@
WRITERPERFECT_MINOR_VERSION = @WRITERPERFECT_MINOR_VERSION@
WRITERPERFECT_VERSION = @WRITERPERFECT_VERSION@
+XATTR_CFLAGS = @XATTR_CFLAGS@
+ZMF2EPUB_WIN32_RESOURCE = @ZMF2EPUB_WIN32_RESOURCE@
+ZMF2ODG_WIN32_RESOURCE = @ZMF2ODG_WIN32_RESOURCE@
+ZMF_CFLAGS = @ZMF_CFLAGS@
+ZMF_LIBS = @ZMF_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
@@ -488,107 +616,109 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
+wrapper_dir = $(top_builddir)/src/conv/wrapper
AM_CXXFLAGS = \
-I$(top_srcdir)/src/lib \
+ -I$(top_srcdir)/src/conv/wrapper \
+ $(REVENGE_CFLAGS) \
$(EPUBGEN_CFLAGS) \
$(DEBUG_CXXFLAGS)
noinst_LTLIBRARIES = libepubhelper.la
libepubhelper_la_LIBADD = $(top_builddir)/src/lib/libwriterperfect_internal.la $(EPUBGEN_LIBS)
libepubhelper_la_SOURCES = \
- EpubPackage.cxx \
+ EpubConverter.cxx \
+ EpubConverter.hxx \
+ EpubPackage.cxx \
EpubPackage.hxx
-ebook2epub_DEPENDENCIES = @EBOOK2EPUB_WIN32_RESOURCE@ libepubhelper.la
-ebook2epub_CPPFLAGS = $(EBOOK_CFLAGS)
-ebook2epub_LDADD = @EBOOK2EPUB_WIN32_RESOURCE@ libepubhelper.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
-ebook2epub_SOURCES = \
- ebook2epub.cxx
-
-wpd2epub_DEPENDENCIES = @WPD2EPUB_WIN32_RESOURCE@ libepubhelper.la
-wpd2epub_CPPFLAGS = $(WPD_CFLAGS)
-wpd2epub_LDADD = @WPD2EPUB_WIN32_RESOURCE@ libepubhelper.la $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpd2epub_SOURCES = \
- wpd2epub.cxx
-
-wps2epub_DEPENDENCIES = @WPS2EPUB_WIN32_RESOURCE@ libepubhelper.la
-wps2epub_CPPFLAGS = $(WPS_CFLAGS)
-wps2epub_LDADD = @WPS2EPUB_WIN32_RESOURCE@ libepubhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
-wps2epub_SOURCES = \
- wps2epub.cxx
-
-mwaw2epub_DEPENDENCIES = @MWAW2EPUB_WIN32_RESOURCE@ libepubhelper.la
-mwaw2epub_CPPFLAGS = $(MWAW_CFLAGS)
-mwaw2epub_LDADD = @MWAW2EPUB_WIN32_RESOURCE@ libepubhelper.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
-mwaw2epub_SOURCES = \
- mwaw2epub.cxx
-
-pages2epub_DEPENDENCIES = @PAGES2EPUB_WIN32_RESOURCE@ libepubhelper.la
-pages2epub_CPPFLAGS = $(ETONYEK_CFLAGS)
-pages2epub_LDADD = @PAGES2EPUB_WIN32_RESOURCE@ libepubhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-pages2epub_SOURCES = \
- pages2epub.cxx
-
-abw2epub_DEPENDENCIES = @ABW2EPUB_WIN32_RESOURCE@ libepubhelper.la
-abw2epub_CPPFLAGS = $(ABW_CFLAGS)
-abw2epub_LDADD = @ABW2EPUB_WIN32_RESOURCE@ libepubhelper.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
-abw2epub_SOURCES = \
- abw2epub.cxx
-
-key2epub_DEPENDENCIES = @KEY2EPUB_WIN32_RESOURCE@ libepubhelper.la
-key2epub_CPPFLAGS = $(ETONYEK_CFLAGS)
-key2epub_LDADD = @KEY2EPUB_WIN32_RESOURCE@ libepubhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-key2epub_SOURCES = \
- key2epub.cxx
-
-wpg2epub_DEPENDENCIES = @WPG2EPUB_WIN32_RESOURCE@ libepubhelper.la
-wpg2epub_CPPFLAGS = $(WPG_CFLAGS)
-wpg2epub_LDADD = @WPG2EPUB_WIN32_RESOURCE@ libepubhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpg2epub_SOURCES = \
- wpg2epub.cxx
-
-vsd2epub_DEPENDENCIES = @VSD2EPUB_WIN32_RESOURCE@ libepubhelper.la
-vsd2epub_CPPFLAGS = $(VISIO_CFLAGS)
-vsd2epub_LDADD = @VSD2EPUB_WIN32_RESOURCE@ libepubhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
-vsd2epub_SOURCES = \
- vsd2epub.cxx
-
-vss2epub_DEPENDENCIES = @VSS2EPUB_WIN32_RESOURCE@ libepubhelper.la
-vss2epub_CPPFLAGS = $(VISIO_CFLAGS)
-vss2epub_LDADD = @VSD2EPUB_WIN32_RESOURCE@ libepubhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
-vss2epub_SOURCES = \
- vss2epub.cxx
-
-cdr2epub_DEPENDENCIES = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la
-cdr2epub_CPPFLAGS = $(CDR_CFLAGS)
-cdr2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
-cdr2epub_SOURCES = \
- cdr2epub.cxx
-
-cmx2epub_DEPENDENCIES = @CMX2EPUB_WIN32_RESOURCE@ libepubhelper.la
-cmx2epub_CPPFLAGS = $(CDR_CFLAGS)
-cmx2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
-cmx2epub_SOURCES = \
- cmx2epub.cxx
-
-pub2epub_DEPENDENCIES = @PUB2EPUB_WIN32_RESOURCE@ libepubhelper.la
-pub2epub_CPPFLAGS = $(MSPUB_CFLAGS)
-pub2epub_LDADD = @PUB2EPUB_WIN32_RESOURCE@ libepubhelper.la $(MSPUB_LIBS) $(REVENGE_STREAM_LIBS)
-pub2epub_SOURCES = \
- pub2epub.cxx
-
-pmd2epub_DEPENDENCIES = @PMD2EPUB_WIN32_RESOURCE@ libepubhelper.la
-pmd2epub_CPPFLAGS = $(PAGEMAKER_CFLAGS)
-pmd2epub_LDADD = @PMD2EPUB_WIN32_RESOURCE@ libepubhelper.la $(PAGEMAKER_LIBS) $(REVENGE_STREAM_LIBS)
-pmd2epub_SOURCES = \
- pmd2epub.cxx
-
-fh2epub_DEPENDENCIES = @FH2EPUB_WIN32_RESOURCE@ libepubhelper.la
-fh2epub_CPPFLAGS = $(FREEHAND_CFLAGS)
-fh2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la $(FREEHAND_LIBS) $(REVENGE_STREAM_LIBS)
-fh2epub_SOURCES = \
- fh2epub.cxx
-
+wpft2epub_DEPENDENCIES = @WPFT2EPUB_WIN32_RESOURCE@ libepubhelper.la
+wpft2epub_CPPFLAGS = $(REVENGE_STREAM_CFLAGS) $(am__append_1) \
+ $(am__append_4) $(am__append_7) $(am__append_10) \
+ $(am__append_13) $(am__append_16) $(am__append_19) \
+ $(am__append_22) $(am__append_25) $(am__append_28) \
+ $(am__append_31) $(am__append_34) $(am__append_37) \
+ $(am__append_40) $(am__append_43)
+wpft2epub_LDADD = $(REVENGE_STREAM_LIBS) $(am__append_2) \
+ $(am__append_5) $(am__append_8) $(am__append_11) \
+ $(am__append_14) $(am__append_17) $(am__append_20) \
+ $(am__append_23) $(am__append_26) $(am__append_29) \
+ $(am__append_32) $(am__append_35) $(am__append_38) \
+ $(am__append_41) $(am__append_44) @WPFT2EPUB_WIN32_RESOURCE@ \
+ libepubhelper.la
+wpft2epub_SOURCES = wpft2epub.cxx
+@USE_LIBABW_TRUE@abw2epub_DEPENDENCIES = @ABW2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBABW_TRUE@abw2epub_CPPFLAGS = $(ABW_CFLAGS)
+@USE_LIBABW_TRUE@abw2epub_LDADD = @ABW2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpabw.la libepubhelper.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBABW_TRUE@abw2epub_SOURCES = abw2epub.cxx
+@USE_LIBCDR_TRUE@cdr2epub_DEPENDENCIES = @CDR2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBCDR_TRUE@cdr2epub_CPPFLAGS = $(CDR_CFLAGS)
+@USE_LIBCDR_TRUE@cdr2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpcdr.la libepubhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBCDR_TRUE@cdr2epub_SOURCES = cdr2epub.cxx
+@USE_LIBCDR_TRUE@cmx2epub_DEPENDENCIES = @CMX2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBCDR_TRUE@cmx2epub_CPPFLAGS = $(CDR_CFLAGS)
+@USE_LIBCDR_TRUE@cmx2epub_LDADD = @CDR2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpcdr.la libepubhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBCDR_TRUE@cmx2epub_SOURCES = cmx2epub.cxx
+@USE_LIBEBOOK_TRUE@ebook2epub_DEPENDENCIES = @EBOOK2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBEBOOK_TRUE@ebook2epub_CPPFLAGS = $(EBOOK_CFLAGS)
+@USE_LIBEBOOK_TRUE@ebook2epub_LDADD = @EBOOK2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpebook.la libepubhelper.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBEBOOK_TRUE@ebook2epub_SOURCES = ebook2epub.cxx
+@USE_LIBETONYEK_TRUE@pages2epub_DEPENDENCIES = @PAGES2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBETONYEK_TRUE@pages2epub_CPPFLAGS = $(ETONYEK_CFLAGS)
+@USE_LIBETONYEK_TRUE@pages2epub_LDADD = @PAGES2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libepubhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBETONYEK_TRUE@pages2epub_SOURCES = pages2epub.cxx
+@USE_LIBETONYEK_TRUE@key2epub_DEPENDENCIES = @KEY2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBETONYEK_TRUE@key2epub_CPPFLAGS = $(ETONYEK_CFLAGS)
+@USE_LIBETONYEK_TRUE@key2epub_LDADD = @KEY2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libepubhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBETONYEK_TRUE@key2epub_SOURCES = key2epub.cxx
+@USE_LIBFREEHAND_TRUE@fh2epub_DEPENDENCIES = @FH2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBFREEHAND_TRUE@fh2epub_CPPFLAGS = $(FREEHAND_CFLAGS)
+@USE_LIBFREEHAND_TRUE@fh2epub_LDADD = @FH2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpfreehand.la libepubhelper.la $(FREEHAND_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBFREEHAND_TRUE@fh2epub_SOURCES = fh2epub.cxx
+@USE_LIBMSPUB_TRUE@pub2epub_DEPENDENCIES = @PUB2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBMSPUB_TRUE@pub2epub_CPPFLAGS = $(MSPUB_CFLAGS)
+@USE_LIBMSPUB_TRUE@pub2epub_LDADD = @PUB2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpmspub.la libepubhelper.la $(MSPUB_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBMSPUB_TRUE@pub2epub_SOURCES = pub2epub.cxx
+@USE_LIBMWAW_TRUE@mwaw2epub_DEPENDENCIES = @MWAW2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBMWAW_TRUE@mwaw2epub_CPPFLAGS = $(MWAW_CFLAGS)
+@USE_LIBMWAW_TRUE@mwaw2epub_LDADD = @MWAW2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpmwaw.la libepubhelper.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBMWAW_TRUE@mwaw2epub_SOURCES = mwaw2epub.cxx
+@USE_LIBPAGEMAKER_TRUE@pmd2epub_DEPENDENCIES = @PMD2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBPAGEMAKER_TRUE@pmd2epub_CPPFLAGS = $(PAGEMAKER_CFLAGS)
+@USE_LIBPAGEMAKER_TRUE@pmd2epub_LDADD = @PMD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwppagemaker.la libepubhelper.la $(PAGEMAKER_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBPAGEMAKER_TRUE@pmd2epub_SOURCES = pmd2epub.cxx
+@USE_LIBQXP_TRUE@qxp2epub_DEPENDENCIES = @QXP2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBQXP_TRUE@qxp2epub_CPPFLAGS = $(QXP_CFLAGS)
+@USE_LIBQXP_TRUE@qxp2epub_LDADD = @QXP2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpqxp.la libepubhelper.la $(QXP_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBQXP_TRUE@qxp2epub_SOURCES = qxp2epub.cxx
+@USE_LIBSTAROFFICE_TRUE@sd2epub_DEPENDENCIES = @SD2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBSTAROFFICE_TRUE@sd2epub_CPPFLAGS = $(STAROFFICE_CFLAGS)
+@USE_LIBSTAROFFICE_TRUE@sd2epub_LDADD = @SD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpstaroffice.la libepubhelper.la $(STAROFFICE_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBSTAROFFICE_TRUE@sd2epub_SOURCES = sd2epub.cxx
+@USE_LIBVISIO_TRUE@vsd2epub_DEPENDENCIES = @VSD2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBVISIO_TRUE@vsd2epub_CPPFLAGS = $(VISIO_CFLAGS)
+@USE_LIBVISIO_TRUE@vsd2epub_LDADD = @VSD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpvisio.la libepubhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBVISIO_TRUE@vsd2epub_SOURCES = vsd2epub.cxx
+@USE_LIBVISIO_TRUE@vss2epub_DEPENDENCIES = @VSS2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBVISIO_TRUE@vss2epub_CPPFLAGS = $(VISIO_CFLAGS)
+@USE_LIBVISIO_TRUE@vss2epub_LDADD = @VSD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpvisio.la libepubhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBVISIO_TRUE@vss2epub_SOURCES = vss2epub.cxx
+@USE_LIBWPD_TRUE@wpd2epub_DEPENDENCIES = @WPD2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBWPD_TRUE@wpd2epub_CPPFLAGS = $(WPD_CFLAGS)
+@USE_LIBWPD_TRUE@wpd2epub_LDADD = @WPD2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpwpd.la libepubhelper.la $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBWPD_TRUE@wpd2epub_SOURCES = wpd2epub.cxx
+@USE_LIBWPG_TRUE@wpg2epub_DEPENDENCIES = @WPG2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBWPG_TRUE@wpg2epub_CPPFLAGS = $(WPG_CFLAGS)
+@USE_LIBWPG_TRUE@wpg2epub_LDADD = @WPG2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpwpg.la libepubhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBWPG_TRUE@wpg2epub_SOURCES = wpg2epub.cxx
+@USE_LIBWPS_TRUE@wps2epub_DEPENDENCIES = @WPS2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBWPS_TRUE@wps2epub_CPPFLAGS = $(WPS_CFLAGS)
+@USE_LIBWPS_TRUE@wps2epub_LDADD = @WPS2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpwps.la libepubhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBWPS_TRUE@wps2epub_SOURCES = wps2epub.cxx
+@USE_LIBZMF_TRUE@zmf2epub_DEPENDENCIES = @ZMF2EPUB_WIN32_RESOURCE@ libepubhelper.la
+@USE_LIBZMF_TRUE@zmf2epub_CPPFLAGS = $(ZMF_CFLAGS)
+@USE_LIBZMF_TRUE@zmf2epub_LDADD = @ZMF2EPUB_WIN32_RESOURCE@ $(wrapper_dir)/libwpzmf.la libepubhelper.la $(ZMF_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBZMF_TRUE@zmf2epub_SOURCES = zmf2epub.cxx
all: all-am
.SUFFIXES:
@@ -642,6 +772,10 @@ pub2epub.rc: $(top_builddir)/config.status $(srcdir)/pub2epub.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
pmd2epub.rc: $(top_builddir)/config.status $(srcdir)/pmd2epub.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+qxp2epub.rc: $(top_builddir)/config.status $(srcdir)/qxp2epub.rc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+sd2epub.rc: $(top_builddir)/config.status $(srcdir)/sd2epub.rc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
vsd2epub.rc: $(top_builddir)/config.status $(srcdir)/vsd2epub.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
vss2epub.rc: $(top_builddir)/config.status $(srcdir)/vss2epub.rc.in
@@ -652,6 +786,10 @@ wpg2epub.rc: $(top_builddir)/config.status $(srcdir)/wpg2epub.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
wps2epub.rc: $(top_builddir)/config.status $(srcdir)/wps2epub.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+zmf2epub.rc: $(top_builddir)/config.status $(srcdir)/zmf2epub.rc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+wpft2epub.rc: $(top_builddir)/config.status $(srcdir)/wpft2epub.rc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
clean-noinstLTLIBRARIES:
-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
@@ -756,6 +894,14 @@ pub2epub$(EXEEXT): $(pub2epub_OBJECTS) $(pub2epub_DEPENDENCIES) $(EXTRA_pub2epub
@rm -f pub2epub$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(pub2epub_OBJECTS) $(pub2epub_LDADD) $(LIBS)
+qxp2epub$(EXEEXT): $(qxp2epub_OBJECTS) $(qxp2epub_DEPENDENCIES) $(EXTRA_qxp2epub_DEPENDENCIES)
+ @rm -f qxp2epub$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(qxp2epub_OBJECTS) $(qxp2epub_LDADD) $(LIBS)
+
+sd2epub$(EXEEXT): $(sd2epub_OBJECTS) $(sd2epub_DEPENDENCIES) $(EXTRA_sd2epub_DEPENDENCIES)
+ @rm -f sd2epub$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(sd2epub_OBJECTS) $(sd2epub_LDADD) $(LIBS)
+
vsd2epub$(EXEEXT): $(vsd2epub_OBJECTS) $(vsd2epub_DEPENDENCIES) $(EXTRA_vsd2epub_DEPENDENCIES)
@rm -f vsd2epub$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(vsd2epub_OBJECTS) $(vsd2epub_LDADD) $(LIBS)
@@ -768,6 +914,10 @@ wpd2epub$(EXEEXT): $(wpd2epub_OBJECTS) $(wpd2epub_DEPENDENCIES) $(EXTRA_wpd2epub
@rm -f wpd2epub$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(wpd2epub_OBJECTS) $(wpd2epub_LDADD) $(LIBS)
+wpft2epub$(EXEEXT): $(wpft2epub_OBJECTS) $(wpft2epub_DEPENDENCIES) $(EXTRA_wpft2epub_DEPENDENCIES)
+ @rm -f wpft2epub$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(wpft2epub_OBJECTS) $(wpft2epub_LDADD) $(LIBS)
+
wpg2epub$(EXEEXT): $(wpg2epub_OBJECTS) $(wpg2epub_DEPENDENCIES) $(EXTRA_wpg2epub_DEPENDENCIES)
@rm -f wpg2epub$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(wpg2epub_OBJECTS) $(wpg2epub_LDADD) $(LIBS)
@@ -776,12 +926,17 @@ wps2epub$(EXEEXT): $(wps2epub_OBJECTS) $(wps2epub_DEPENDENCIES) $(EXTRA_wps2epub
@rm -f wps2epub$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(wps2epub_OBJECTS) $(wps2epub_LDADD) $(LIBS)
+zmf2epub$(EXEEXT): $(zmf2epub_OBJECTS) $(zmf2epub_DEPENDENCIES) $(EXTRA_zmf2epub_DEPENDENCIES)
+ @rm -f zmf2epub$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(zmf2epub_OBJECTS) $(zmf2epub_LDADD) $(LIBS)
+
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EpubConverter.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EpubPackage.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/abw2epub-abw2epub.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cdr2epub-cdr2epub.Po@am__quote@
@@ -793,11 +948,15 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pages2epub-pages2epub.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pmd2epub-pmd2epub.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pub2epub-pub2epub.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/qxp2epub-qxp2epub.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sd2epub-sd2epub.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vsd2epub-vsd2epub.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vss2epub-vss2epub.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wpd2epub-wpd2epub.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wpft2epub-wpft2epub.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wpg2epub-wpg2epub.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wps2epub-wps2epub.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zmf2epub-zmf2epub.Po@am__quote@
.cxx.o:
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -960,6 +1119,34 @@ pub2epub-pub2epub.obj: pub2epub.cxx
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pub2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o pub2epub-pub2epub.obj `if test -f 'pub2epub.cxx'; then $(CYGPATH_W) 'pub2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/pub2epub.cxx'; fi`
+qxp2epub-qxp2epub.o: qxp2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(qxp2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT qxp2epub-qxp2epub.o -MD -MP -MF $(DEPDIR)/qxp2epub-qxp2epub.Tpo -c -o qxp2epub-qxp2epub.o `test -f 'qxp2epub.cxx' || echo '$(srcdir)/'`qxp2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/qxp2epub-qxp2epub.Tpo $(DEPDIR)/qxp2epub-qxp2epub.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='qxp2epub.cxx' object='qxp2epub-qxp2epub.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(qxp2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o qxp2epub-qxp2epub.o `test -f 'qxp2epub.cxx' || echo '$(srcdir)/'`qxp2epub.cxx
+
+qxp2epub-qxp2epub.obj: qxp2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(qxp2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT qxp2epub-qxp2epub.obj -MD -MP -MF $(DEPDIR)/qxp2epub-qxp2epub.Tpo -c -o qxp2epub-qxp2epub.obj `if test -f 'qxp2epub.cxx'; then $(CYGPATH_W) 'qxp2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/qxp2epub.cxx'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/qxp2epub-qxp2epub.Tpo $(DEPDIR)/qxp2epub-qxp2epub.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='qxp2epub.cxx' object='qxp2epub-qxp2epub.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(qxp2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o qxp2epub-qxp2epub.obj `if test -f 'qxp2epub.cxx'; then $(CYGPATH_W) 'qxp2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/qxp2epub.cxx'; fi`
+
+sd2epub-sd2epub.o: sd2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sd2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sd2epub-sd2epub.o -MD -MP -MF $(DEPDIR)/sd2epub-sd2epub.Tpo -c -o sd2epub-sd2epub.o `test -f 'sd2epub.cxx' || echo '$(srcdir)/'`sd2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/sd2epub-sd2epub.Tpo $(DEPDIR)/sd2epub-sd2epub.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='sd2epub.cxx' object='sd2epub-sd2epub.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sd2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sd2epub-sd2epub.o `test -f 'sd2epub.cxx' || echo '$(srcdir)/'`sd2epub.cxx
+
+sd2epub-sd2epub.obj: sd2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sd2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sd2epub-sd2epub.obj -MD -MP -MF $(DEPDIR)/sd2epub-sd2epub.Tpo -c -o sd2epub-sd2epub.obj `if test -f 'sd2epub.cxx'; then $(CYGPATH_W) 'sd2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/sd2epub.cxx'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/sd2epub-sd2epub.Tpo $(DEPDIR)/sd2epub-sd2epub.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='sd2epub.cxx' object='sd2epub-sd2epub.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sd2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sd2epub-sd2epub.obj `if test -f 'sd2epub.cxx'; then $(CYGPATH_W) 'sd2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/sd2epub.cxx'; fi`
+
vsd2epub-vsd2epub.o: vsd2epub.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vsd2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT vsd2epub-vsd2epub.o -MD -MP -MF $(DEPDIR)/vsd2epub-vsd2epub.Tpo -c -o vsd2epub-vsd2epub.o `test -f 'vsd2epub.cxx' || echo '$(srcdir)/'`vsd2epub.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/vsd2epub-vsd2epub.Tpo $(DEPDIR)/vsd2epub-vsd2epub.Po
@@ -1002,6 +1189,20 @@ wpd2epub-wpd2epub.obj: wpd2epub.cxx
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpd2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wpd2epub-wpd2epub.obj `if test -f 'wpd2epub.cxx'; then $(CYGPATH_W) 'wpd2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/wpd2epub.cxx'; fi`
+wpft2epub-wpft2epub.o: wpft2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wpft2epub-wpft2epub.o -MD -MP -MF $(DEPDIR)/wpft2epub-wpft2epub.Tpo -c -o wpft2epub-wpft2epub.o `test -f 'wpft2epub.cxx' || echo '$(srcdir)/'`wpft2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wpft2epub-wpft2epub.Tpo $(DEPDIR)/wpft2epub-wpft2epub.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='wpft2epub.cxx' object='wpft2epub-wpft2epub.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wpft2epub-wpft2epub.o `test -f 'wpft2epub.cxx' || echo '$(srcdir)/'`wpft2epub.cxx
+
+wpft2epub-wpft2epub.obj: wpft2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wpft2epub-wpft2epub.obj -MD -MP -MF $(DEPDIR)/wpft2epub-wpft2epub.Tpo -c -o wpft2epub-wpft2epub.obj `if test -f 'wpft2epub.cxx'; then $(CYGPATH_W) 'wpft2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/wpft2epub.cxx'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wpft2epub-wpft2epub.Tpo $(DEPDIR)/wpft2epub-wpft2epub.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='wpft2epub.cxx' object='wpft2epub-wpft2epub.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wpft2epub-wpft2epub.obj `if test -f 'wpft2epub.cxx'; then $(CYGPATH_W) 'wpft2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/wpft2epub.cxx'; fi`
+
wpg2epub-wpg2epub.o: wpg2epub.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpg2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wpg2epub-wpg2epub.o -MD -MP -MF $(DEPDIR)/wpg2epub-wpg2epub.Tpo -c -o wpg2epub-wpg2epub.o `test -f 'wpg2epub.cxx' || echo '$(srcdir)/'`wpg2epub.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wpg2epub-wpg2epub.Tpo $(DEPDIR)/wpg2epub-wpg2epub.Po
@@ -1030,6 +1231,20 @@ wps2epub-wps2epub.obj: wps2epub.cxx
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wps2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wps2epub-wps2epub.obj `if test -f 'wps2epub.cxx'; then $(CYGPATH_W) 'wps2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/wps2epub.cxx'; fi`
+zmf2epub-zmf2epub.o: zmf2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zmf2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT zmf2epub-zmf2epub.o -MD -MP -MF $(DEPDIR)/zmf2epub-zmf2epub.Tpo -c -o zmf2epub-zmf2epub.o `test -f 'zmf2epub.cxx' || echo '$(srcdir)/'`zmf2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/zmf2epub-zmf2epub.Tpo $(DEPDIR)/zmf2epub-zmf2epub.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='zmf2epub.cxx' object='zmf2epub-zmf2epub.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zmf2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o zmf2epub-zmf2epub.o `test -f 'zmf2epub.cxx' || echo '$(srcdir)/'`zmf2epub.cxx
+
+zmf2epub-zmf2epub.obj: zmf2epub.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zmf2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT zmf2epub-zmf2epub.obj -MD -MP -MF $(DEPDIR)/zmf2epub-zmf2epub.Tpo -c -o zmf2epub-zmf2epub.obj `if test -f 'zmf2epub.cxx'; then $(CYGPATH_W) 'zmf2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/zmf2epub.cxx'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/zmf2epub-zmf2epub.Tpo $(DEPDIR)/zmf2epub-zmf2epub.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='zmf2epub.cxx' object='zmf2epub-zmf2epub.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zmf2epub_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o zmf2epub-zmf2epub.obj `if test -f 'zmf2epub.cxx'; then $(CYGPATH_W) 'zmf2epub.cxx'; else $(CYGPATH_W) '$(srcdir)/zmf2epub.cxx'; fi`
+
mostlyclean-libtool:
-rm -f *.lo
@@ -1302,10 +1517,26 @@ uninstall-am: uninstall-binPROGRAMS
@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource pmd2epub.rc @PMD2EPUB_WIN32_RESOURCE@
+@OS_WIN32_TRUE@@QXP2EPUB_WIN32_RESOURCE@ : qxp2epub.rc $(qxp2epub_OBJECTS)
+@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
+@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource qxp2epub.rc @QXP2EPUB_WIN32_RESOURCE@
+
@OS_WIN32_TRUE@@FH2EPUB_WIN32_RESOURCE@ : fh2epub.rc $(fh2epub_OBJECTS)
@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource fh2epub.rc @FH2EPUB_WIN32_RESOURCE@
+@OS_WIN32_TRUE@@ZMF2EPUB_WIN32_RESOURCE@ : zmf2epub.rc $(zmf2epub_OBJECTS)
+@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
+@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource zmf2epub.rc @ZMF2EPUB_WIN32_RESOURCE@
+
+@OS_WIN32_TRUE@@SD2EPUB_WIN32_RESOURCE@ : sd2epub.rc $(sd2epub_OBJECTS)
+@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
+@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource sd2epub.rc @SD2EPUB_WIN32_RESOURCE@
+
+@OS_WIN32_TRUE@@WPFT2EPUB_WIN32_RESOURCE@ : wpft2epub.rc $(wpft2epub_OBJECTS)
+@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
+@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wpft2epub.rc @WPFT2EPUB_WIN32_RESOURCE@
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/src/conv/epub/abw2epub.cxx b/src/conv/epub/abw2epub.cxx
index e572a66..b6e73f5 100644
--- a/src/conv/epub/abw2epub.cxx
+++ b/src/conv/epub/abw2epub.cxx
@@ -20,97 +20,19 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "EpubConverter.hxx"
+#include "WPWrapperABW.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libabw/libabw.h>
-
-#include <libepubgen/libepubgen.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "abw2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *const outFileName) :
- m_fileName(outFileName)
- {
- }
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBTextGenerator collector(&package);
-
- return libabw::AbiDocument::parse(&input, &collector);
- }
-
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- if (!libabw::AbiDocument::isFileFormatSupported(&input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid AbiWord document.\n");
- return false;
- }
-
- return true;
- }
-
-private:
- std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts AbiWord documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- librevenge::RVNGFileStream input(szInputFile);
- EpubOutputFileHelper helper(szOutFile);
-
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: the document is not in any supported format.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperABW wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts AbiWord documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
-
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/cdr2epub.cxx b/src/conv/epub/cdr2epub.cxx
index 4fe7ef5..182428f 100644
--- a/src/conv/epub/cdr2epub.cxx
+++ b/src/conv/epub/cdr2epub.cxx
@@ -20,83 +20,19 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "EpubConverter.hxx"
+#include "WPWrapperCDR.hxx"
-#include <libcdr/libcdr.h>
-
-#include <libepubgen/libepubgen.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "cdr2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *outFileName) :
- m_fileName(outFileName) {}
- ~EpubOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBDrawingGenerator collector(&package);
- return libcdr::CDRDocument::parse(&input, &collector);
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libcdr::CDRDocument::isSupported(&input);
- }
-
-private:
- const std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts CorelDRAW documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- EpubOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Corel Draw Document.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperCDR wrapper(options, writerperfect::WPWrapperCDR::CDR_CDR);
+ EpubConverter converter(options, TOOLNAME, "converts CorelDRAW documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
-
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/cmx2epub.cxx b/src/conv/epub/cmx2epub.cxx
index bc2ac92..6dc7f76 100644
--- a/src/conv/epub/cmx2epub.cxx
+++ b/src/conv/epub/cmx2epub.cxx
@@ -20,82 +20,19 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "EpubConverter.hxx"
+#include "WPWrapperCDR.hxx"
-#include <libcdr/libcdr.h>
-
-#include <libepubgen/libepubgen.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "cmx2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *outFileName) :
- m_fileName(outFileName) {}
- ~EpubOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBDrawingGenerator collector(&package);
- return libcdr::CMXDocument::parse(&input, &collector);
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libcdr::CMXDocument::isSupported(&input);
- }
-private:
- const std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts Corel Presentation Exchange documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- EpubOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Corel Presentation Exchage document.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperCDR wrapper(options, writerperfect::WPWrapperCDR::CDR_CMX);
+ EpubConverter converter(options, TOOLNAME, "converts Corel Presentation Exchange documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
-
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/ebook2epub.cxx b/src/conv/epub/ebook2epub.cxx
index 4eef83f..5a8b642 100644
--- a/src/conv/epub/ebook2epub.cxx
+++ b/src/conv/epub/ebook2epub.cxx
@@ -20,91 +20,19 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "EpubConverter.hxx"
+#include "WPWrapperEBOOK.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libe-book/libe-book.h>
-
-#include <libepubgen/libepubgen.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "ebook2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *const outFileName) :
- m_fileName(outFileName)
- {
- }
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBTextGenerator collector(&package);
-
- return libebook::EBOOKDocument::RESULT_OK == libebook::EBOOKDocument::parse(&input, &collector);
- }
-
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libebook::EBOOKDocument::CONFIDENCE_EXCELLENT == libebook::EBOOKDocument::isSupported(&input);
- }
-
-private:
- std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts e-books to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- librevenge::RVNGFileStream input(szInputFile);
- EpubOutputFileHelper helper(szOutFile);
-
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: the document is not in any supported format.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperEBOOK wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts e-books to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
-
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/fh2epub.cxx b/src/conv/epub/fh2epub.cxx
index f2c15d0..cf313da 100644
--- a/src/conv/epub/fh2epub.cxx
+++ b/src/conv/epub/fh2epub.cxx
@@ -20,84 +20,20 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "EpubConverter.hxx"
+#include "WPWrapperFREEHAND.hxx"
-#include <libepubgen/libepubgen.h>
-
-#include <libfreehand/libfreehand.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "fh2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *outFileName) :
- m_fileName(outFileName) {}
- ~EpubOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBDrawingGenerator collector(&package);
- return libfreehand::FreeHandDocument::parse(&input, &collector);
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libfreehand::FreeHandDocument::isSupported(&input);
- }
-private:
- const std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- fprintf(stderr, "Usage : %s <infile> <outfile>\n", name);
- fprintf(stderr, "\twhere <infile> is the Freehand source drawing\n");
- fprintf(stderr, "\tand <outfile> is the ePub target document.\n");
- return 1;
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- EpubOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Freehand drawing.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperFREEHAND wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts Adobe FreeHand documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/key2epub.cxx b/src/conv/epub/key2epub.cxx
index ddcb4b0..6710769 100644
--- a/src/conv/epub/key2epub.cxx
+++ b/src/conv/epub/key2epub.cxx
@@ -20,111 +20,19 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "EpubConverter.hxx"
+#include "WPWrapperETONYEK.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libepubgen/libepubgen.h>
-
-#include <libetonyek/libetonyek.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "key2epub"
-using libetonyek::EtonyekDocument;
-
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *const outFileName) :
- m_fileName(outFileName)
- {
- }
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBPresentationGenerator collector(&package);
-
- return EtonyekDocument::parse(&input, &collector);
- }
-
- EtonyekDocument::Confidence isSupportedFormat(librevenge::RVNGInputStream &input, EtonyekDocument::Type *type = 0)
- {
- return EtonyekDocument::isSupported(&input, type);
- }
-
-private:
- std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts Apple Keynote documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- shared_ptr<librevenge::RVNGInputStream> input;
- if (librevenge::RVNGDirectoryStream::isDirectory(szInputFile))
- input.reset(new librevenge::RVNGDirectoryStream(szInputFile));
- else
- input.reset(new librevenge::RVNGFileStream(szInputFile));
-
- EpubOutputFileHelper helper(szOutFile);
-
- EtonyekDocument::Type type = EtonyekDocument::TYPE_UNKNOWN;
- const EtonyekDocument::Confidence confidence = helper.isSupportedFormat(*input, &type);
- if ((EtonyekDocument::CONFIDENCE_NONE == confidence) || (EtonyekDocument::TYPE_KEYNOTE != type))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Pages Document.\n");
- return 1;
- }
-
- if (EtonyekDocument::CONFIDENCE_SUPPORTED_PART == confidence)
- {
- input.reset(librevenge::RVNGDirectoryStream::createForParent(szInputFile));
-
- if (EtonyekDocument::CONFIDENCE_EXCELLENT != helper.isSupportedFormat(*input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Pages Document.\n");
- return 1;
- }
- }
-
- if (!helper.convertDocument(*input))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperETONYEK wrapper(options, writerperfect::WPWrapper::Presentation);
+ EpubConverter converter(options, TOOLNAME, "converts Apple Keynote documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
-
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/mwaw2epub.cxx b/src/conv/epub/mwaw2epub.cxx
index 5749ace..58a02fb 100644
--- a/src/conv/epub/mwaw2epub.cxx
+++ b/src/conv/epub/mwaw2epub.cxx
@@ -20,120 +20,20 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "EpubConverter.hxx"
+#include "WPWrapperMWAW.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libepubgen/libepubgen.h>
-
-#include <libmwaw/libmwaw.hxx>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "mwaw2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *const outFileName) :
- m_kind(MWAWDocument::MWAW_K_UNKNOWN), m_fileName(outFileName)
- {
- }
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- if (m_kind==MWAWDocument::MWAW_K_TEXT)
- {
- libepubgen::EPUBTextGenerator collector(&package);
- return MWAWDocument::MWAW_R_OK == MWAWDocument::parse(&input, &collector);
- }
- if (m_kind==MWAWDocument::MWAW_K_DRAW || m_kind == MWAWDocument::MWAW_K_PAINT)
- {
- libepubgen::EPUBDrawingGenerator collector(&package);
- return MWAWDocument::MWAW_R_OK == MWAWDocument::parse(&input, &collector);
- }
- if (m_kind==MWAWDocument::MWAW_K_PRESENTATION)
- {
- libepubgen::EPUBPresentationGenerator collector(&package);
- return MWAWDocument::MWAW_R_OK == MWAWDocument::parse(&input, &collector);
- }
- // must not happen
- return false;
- }
-
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- MWAWDocument::Type type;
- MWAWDocument::Confidence confidence = MWAWDocument::isFileFormatSupported(&input, type, m_kind);
- if (confidence != MWAWDocument::MWAW_C_EXCELLENT)
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Mac Classic document.\n");
- return false;
- }
- return m_kind == MWAWDocument::MWAW_K_TEXT || m_kind == MWAWDocument::MWAW_K_DRAW ||
- m_kind == MWAWDocument::MWAW_K_PAINT || m_kind == MWAWDocument::MWAW_K_PRESENTATION;
- }
-
-private:
- MWAWDocument::Kind m_kind;
- const char *m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts Mac documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
-int printVersion(char const *name)
-{
- printf("%s %s\n", name, VERSION);
- return 0;
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- librevenge::RVNGFileStream input(szInputFile);
- EpubOutputFileHelper helper(szOutFile);
-
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: the document is not in any supported format.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperMWAW wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts legacy Mac documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/pages2epub.cxx b/src/conv/epub/pages2epub.cxx
index 7fdad54..1392f4a 100644
--- a/src/conv/epub/pages2epub.cxx
+++ b/src/conv/epub/pages2epub.cxx
@@ -20,111 +20,20 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "EpubConverter.hxx"
+#include "WPWrapperETONYEK.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libepubgen/libepubgen.h>
-
-#include <libetonyek/libetonyek.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "pages2epub"
-using libetonyek::EtonyekDocument;
-
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *const outFileName) :
- m_fileName(outFileName)
- {
- }
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBTextGenerator collector(&package);
-
- return EtonyekDocument::parse(&input, &collector);
- }
-
- EtonyekDocument::Confidence isSupportedFormat(librevenge::RVNGInputStream &input, EtonyekDocument::Type *type = 0)
- {
- return EtonyekDocument::isSupported(&input, type);
- }
-
-private:
- std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts Apple Pages documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- shared_ptr<librevenge::RVNGInputStream> input;
- if (librevenge::RVNGDirectoryStream::isDirectory(szInputFile))
- input.reset(new librevenge::RVNGDirectoryStream(szInputFile));
- else
- input.reset(new librevenge::RVNGFileStream(szInputFile));
-
- EpubOutputFileHelper helper(szOutFile);
-
- EtonyekDocument::Type type = EtonyekDocument::TYPE_UNKNOWN;
- const EtonyekDocument::Confidence confidence = helper.isSupportedFormat(*input, &type);
- if ((EtonyekDocument::CONFIDENCE_NONE == confidence) || (EtonyekDocument::TYPE_PAGES != type))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Pages Document.\n");
- return 1;
- }
-
- if (EtonyekDocument::CONFIDENCE_SUPPORTED_PART == confidence)
- {
- input.reset(librevenge::RVNGDirectoryStream::createForParent(szInputFile));
-
- if (EtonyekDocument::CONFIDENCE_EXCELLENT != helper.isSupportedFormat(*input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Pages Document.\n");
- return 1;
- }
- }
-
- if (!helper.convertDocument(*input))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperETONYEK wrapper(options, writerperfect::WPWrapper::Text);
+ EpubConverter converter(options, TOOLNAME, "converts Apple Pages documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/pmd2epub.cxx b/src/conv/epub/pmd2epub.cxx
index d579dac..0ccfa83 100644
--- a/src/conv/epub/pmd2epub.cxx
+++ b/src/conv/epub/pmd2epub.cxx
@@ -20,82 +20,20 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "EpubConverter.hxx"
+#include "WPWrapperPAGEMAKER.hxx"
-#include <libepubgen/libepubgen.h>
-
-#include <libpagemaker/libpagemaker.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "pmd2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *outFileName) :
- m_fileName(outFileName) {}
- ~EpubOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBDrawingGenerator collector(&package);
- return libpagemaker::PMDocument::parse(&input, &collector);
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libpagemaker::PMDocument::isSupported(&input);
- }
-private:
- const std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts Adobe PageMaker documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- EpubOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Adobe Pagemaker document.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperPAGEMAKER wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts Adobe PageMaker documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/pub2epub.cxx b/src/conv/epub/pub2epub.cxx
index 341702f..0744f7f 100644
--- a/src/conv/epub/pub2epub.cxx
+++ b/src/conv/epub/pub2epub.cxx
@@ -20,82 +20,20 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "EpubConverter.hxx"
+#include "WPWrapperMSPUB.hxx"
-#include <libepubgen/libepubgen.h>
-
-#include <libmspub/libmspub.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "pub2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *outFileName) :
- m_fileName(outFileName) {}
- ~EpubOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBDrawingGenerator collector(&package);
- return libmspub::MSPUBDocument::parse(&input, &collector);
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libmspub::MSPUBDocument::isSupported(&input);
- }
-private:
- const std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts MS Publisher documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- EpubOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Microsoft Publisher Document.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperMSPUB wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts MS Publisher documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/qxp2epub.cxx b/src/conv/epub/qxp2epub.cxx
new file mode 100644
index 0000000..321777d
--- /dev/null
+++ b/src/conv/epub/qxp2epub.cxx
@@ -0,0 +1,39 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2006 Ariya Hidayat (ariya@kde.org)
+ * Copyright (C) 2006-2007 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "EpubConverter.hxx"
+#include "WPWrapperQXP.hxx"
+
+#include "UserOptions.hxx"
+
+#define TOOLNAME "qxp2epub"
+
+using namespace writerperfectrvngepub;
+int main(int argc, char *argv[])
+{
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperQXP wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts QuarkXPress documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/qxp2epub.rc.in b/src/conv/epub/qxp2epub.rc.in
new file mode 100644
index 0000000..e2f55b8
--- /dev/null
+++ b/src/conv/epub/qxp2epub.rc.in
@@ -0,0 +1,31 @@
+#include <winver.h>
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,BUILDNUMBER
+ PRODUCTVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,0
+ FILEFLAGSMASK 0
+ FILEFLAGS 0
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_DLL
+ FILESUBTYPE VFT2_UNKNOWN
+ BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904B0"
+ BEGIN
+ VALUE "CompanyName", "The libwpd developer community"
+ VALUE "FileDescription", "qxp2epub"
+ VALUE "FileVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@.BUILDNUMBER"
+ VALUE "InternalName", "qxp2epub"
+ VALUE "LegalCopyright", "Copyright (C) 2002-2004 William Lachance, Marc Maurer, Fridrich Strba, Ariya Hidayat, other contributors"
+ VALUE "OriginalFilename", "qxp2epub.exe"
+ VALUE "ProductName", "writerperfect"
+ VALUE "ProductVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+ END
+
diff --git a/src/conv/epub/sd2epub.cxx b/src/conv/epub/sd2epub.cxx
new file mode 100644
index 0000000..c9ff23f
--- /dev/null
+++ b/src/conv/epub/sd2epub.cxx
@@ -0,0 +1,40 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "EpubConverter.hxx"
+#include "WPWrapperSTAROFFICE.hxx"
+
+#include "UserOptions.hxx"
+
+#define TOOLNAME "sd2epub"
+
+using namespace writerperfectrvngepub;
+int main(int argc, char *argv[])
+{
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_passwordOption=true;
+ writerperfect::WPWrapperSTAROFFICE wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts legacy StarOffice documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/sd2epub.rc.in b/src/conv/epub/sd2epub.rc.in
new file mode 100644
index 0000000..b1a8532
--- /dev/null
+++ b/src/conv/epub/sd2epub.rc.in
@@ -0,0 +1,31 @@
+#include <winver.h>
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,BUILDNUMBER
+ PRODUCTVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,0
+ FILEFLAGSMASK 0
+ FILEFLAGS 0
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_DLL
+ FILESUBTYPE VFT2_UNKNOWN
+ BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904B0"
+ BEGIN
+ VALUE "CompanyName", "The libwpd developer community"
+ VALUE "FileDescription", "sd2epub"
+ VALUE "FileVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@.BUILDNUMBER"
+ VALUE "InternalName", "sd2epub"
+ VALUE "LegalCopyright", "Copyright (C) 2002-2004 William Lachance, Marc Maurer, Fridrich Strba, Andrew Ziem, other contributers"
+ VALUE "OriginalFilename", "sd2epub.exe"
+ VALUE "ProductName", "writerperfect"
+ VALUE "ProductVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+ END
+
diff --git a/src/conv/epub/vsd2epub.cxx b/src/conv/epub/vsd2epub.cxx
index 6298f81..db094b9 100644
--- a/src/conv/epub/vsd2epub.cxx
+++ b/src/conv/epub/vsd2epub.cxx
@@ -20,82 +20,20 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "EpubConverter.hxx"
+#include "WPWrapperVISIO.hxx"
-#include <libepubgen/libepubgen.h>
-
-#include <libvisio/libvisio.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "vsd2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *outFileName) :
- m_fileName(outFileName) {}
- ~EpubOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBDrawingGenerator collector(&package);
- return libvisio::VisioDocument::parse(&input, &collector);
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libvisio::VisioDocument::isSupported(&input);
- }
-private:
- const std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts MS Visio documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- EpubOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Visio Document.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperVISIO wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts MS Visio documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/vss2epub.cxx b/src/conv/epub/vss2epub.cxx
index 14578cf..7b30fb3 100644
--- a/src/conv/epub/vss2epub.cxx
+++ b/src/conv/epub/vss2epub.cxx
@@ -20,83 +20,20 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "EpubConverter.hxx"
+#include "WPWrapperVISIO.hxx"
-#include <libepubgen/libepubgen.h>
-
-#include <libvisio/libvisio.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "vss2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *outFileName) :
- m_fileName(outFileName) {}
- ~EpubOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBDrawingGenerator collector(&package);
- return libvisio::VisioDocument::parseStencils(&input, &collector);
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libvisio::VisioDocument::isSupported(&input);
- }
-
-private:
- const std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts MS Visio stencils to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- EpubOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Visio Stencil File.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperVISIO wrapper(options, true);
+ EpubConverter converter(options, TOOLNAME, "converts MS Visio stencils to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/wpd2epub.cxx b/src/conv/epub/wpd2epub.cxx
index 5d7c4c7..e79784e 100644
--- a/src/conv/epub/wpd2epub.cxx
+++ b/src/conv/epub/wpd2epub.cxx
@@ -20,112 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "EpubConverter.hxx"
+#include "WPWrapperWPD.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libepubgen/libepubgen.h>
-
-#include <libwpd/libwpd.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "wpd2epub"
-using namespace libwpd;
-
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *const outFileName) :
- m_fileName(outFileName)
- {
- }
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBTextGenerator collector(&package);
-
- return WPD_OK == WPDocument::parse(&input, &collector, 0);
- }
-
- bool isSupportedFormat(librevenge::RVNGInputStream &input, const char *password = 0)
- {
- WPDConfidence confidence = WPDocument::isFileFormatSupported(&input);
- if (WPD_CONFIDENCE_EXCELLENT != confidence && WPD_CONFIDENCE_SUPPORTED_ENCRYPTION != confidence)
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid WordPerfect document.\n");
- return false;
- }
- if (WPD_CONFIDENCE_SUPPORTED_ENCRYPTION == confidence && !password)
- {
- fprintf(stderr, "ERROR: The WordPerfect document is encrypted and you did not give us a password.\n");
- return false;
- }
- if (confidence == WPD_CONFIDENCE_SUPPORTED_ENCRYPTION && password &&
- (WPD_PASSWORD_MATCH_OK != WPDocument::verifyPassword(&input, password)))
- {
- fprintf(stderr, "ERROR: The WordPerfect document is encrypted and we either\n");
- fprintf(stderr, "ERROR: don't know how to decrypt it or the given password is wrong.\n");
- return false;
- }
-
- return true;
- }
-
-private:
- std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts WordPerfect documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- librevenge::RVNGFileStream input(szInputFile);
- EpubOutputFileHelper helper(szOutFile);
-
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: the document is not in any supported format.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_passwordOption=true;
+ writerperfect::WPWrapperWPD wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts WordPerfect documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/wpft2epub.cxx b/src/conv/epub/wpft2epub.cxx
new file mode 100644
index 0000000..d49f850
--- /dev/null
+++ b/src/conv/epub/wpft2epub.cxx
@@ -0,0 +1,154 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdio.h>
+#include <string.h>
+
+#include <libepubgen/libepubgen.h>
+
+#include "EpubConverter.hxx"
+#include "UserOptions.hxx"
+
+#define TOOLNAME "wpft2epub"
+
+#ifdef ENABLE_LIBABW
+# include "WPWrapperABW.hxx"
+#endif
+#ifdef ENABLE_LIBCDR
+# include "WPWrapperCDR.hxx"
+#endif
+#ifdef ENABLE_LIBEBOOK
+# include "WPWrapperEBOOK.hxx"
+#endif
+#ifdef ENABLE_LIBETONYEK
+# include "WPWrapperETONYEK.hxx"
+#endif
+#ifdef ENABLE_LIBFREEHAND
+# include "WPWrapperFREEHAND.hxx"
+#endif
+#ifdef ENABLE_LIBMSPUB
+# include "WPWrapperMSPUB.hxx"
+#endif
+#ifdef ENABLE_LIBMWAW
+# include "WPWrapperMWAW.hxx"
+#endif
+#ifdef ENABLE_LIBPAGEMAKER
+# include "WPWrapperPAGEMAKER.hxx"
+#endif
+#ifdef ENABLE_LIBSTAROFFICE
+# include "WPWrapperSTAROFFICE.hxx"
+#endif
+#ifdef ENABLE_LIBVISIO
+# include "WPWrapperVISIO.hxx"
+#endif
+#ifdef ENABLE_LIBWPD
+# include "WPWrapperWPD.hxx"
+#endif
+#ifdef ENABLE_LIBWPG
+# include "WPWrapperWPG.hxx"
+#endif
+#ifdef ENABLE_LIBWPS
+# include "WPWrapperWPS.hxx"
+#endif
+#ifdef ENABLE_LIBZMF
+# include "WPWrapperZMF.hxx"
+#endif
+
+#define CHECK_CONVERTER_LIB(x) \
+ do { \
+ if (!wrapper) { \
+ shared_ptr<WPWrapper> testWrapper(new WPWrapper##x(options)); \
+ if (testWrapper && testWrapper->checkInput(input)) \
+ wrapper=testWrapper; \
+ } \
+ } while(0)
+
+using namespace writerperfect;
+int main(int argc, char *argv[])
+{
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_encodingOption=options->m_passwordOption=true;
+ int exitCode;
+ writerperfectrvngepub::EpubConverter converter(options, TOOLNAME, "converts documents to ePub.");
+ if (converter.parseAndTreatOptions(argc, argv, exitCode))
+ return exitCode;
+
+ shared_ptr<librevenge::RVNGInputStream> input(new librevenge::RVNGFileStream(options->getInput()));
+ shared_ptr<WPWrapper> wrapper;
+
+#ifdef ENABLE_LIBABW
+ CHECK_CONVERTER_LIB(ABW);
+#endif
+#ifdef ENABLE_LIBCDR
+ CHECK_CONVERTER_LIB(CDR);
+#endif
+#ifdef ENABLE_LIBEBOOK
+ CHECK_CONVERTER_LIB(EBOOK);
+#endif
+#ifdef ENABLE_LIBETONYEK
+ CHECK_CONVERTER_LIB(ETONYEK);
+#endif
+#ifdef ENABLE_LIBFREEHAND
+ CHECK_CONVERTER_LIB(FREEHAND);
+#endif
+#ifdef ENABLE_LIBMSPUB
+ CHECK_CONVERTER_LIB(MSPUB);
+#endif
+#ifdef ENABLE_LIBMWAW
+ CHECK_CONVERTER_LIB(MWAW);
+#endif
+#ifdef ENABLE_LIBPAGEMAKER
+ CHECK_CONVERTER_LIB(PAGEMAKER);
+#endif
+#ifdef ENABLE_LIBSTAROFFICE
+ CHECK_CONVERTER_LIB(STAROFFICE);
+#endif
+#ifdef ENABLE_LIBVISIO
+ CHECK_CONVERTER_LIB(VISIO);
+#endif
+#ifdef ENABLE_LIBWPD
+ CHECK_CONVERTER_LIB(WPD);
+#endif
+#ifdef ENABLE_LIBWPG
+ CHECK_CONVERTER_LIB(WPG);
+#endif
+#ifdef ENABLE_LIBWPS
+ CHECK_CONVERTER_LIB(WPS);
+#endif
+#ifdef ENABLE_LIBZMF
+ CHECK_CONVERTER_LIB(ZMF);
+#endif
+
+ if (!wrapper || !converter.convertDocument(*wrapper, *input))
+ {
+ fprintf(stderr, "ERROR : Couldn't convert the document\n");
+ return 1;
+ }
+
+ return 0;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/wpft2epub.rc.in b/src/conv/epub/wpft2epub.rc.in
new file mode 100644
index 0000000..f838bac
--- /dev/null
+++ b/src/conv/epub/wpft2epub.rc.in
@@ -0,0 +1,31 @@
+#include <winver.h>
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,BUILDNUMBER
+ PRODUCTVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,0
+ FILEFLAGSMASK 0
+ FILEFLAGS 0
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_DLL
+ FILESUBTYPE VFT2_UNKNOWN
+ BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904B0"
+ BEGIN
+ VALUE "CompanyName", "The libwpd developer community"
+ VALUE "FileDescription", "wpft2epub"
+ VALUE "FileVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@.BUILDNUMBER"
+ VALUE "InternalName", "wpft2epub"
+ VALUE "LegalCopyright", "Copyright (C) 2002-2004 William Lachance, Marc Maurer, Fridrich Strba, Andrew Ziem, other contributers"
+ VALUE "OriginalFilename", "wpft2epub.exe"
+ VALUE "ProductName", "writerperfect"
+ VALUE "ProductVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+ END
+
diff --git a/src/conv/epub/wpg2epub.cxx b/src/conv/epub/wpg2epub.cxx
index b06dd89..f770b8c 100644
--- a/src/conv/epub/wpg2epub.cxx
+++ b/src/conv/epub/wpg2epub.cxx
@@ -20,82 +20,20 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "EpubConverter.hxx"
+#include "WPWrapperWPG.hxx"
-#include <libepubgen/libepubgen.h>
-
-#include <libwpg/libwpg.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "wpg2epub"
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *outFileName) :
- m_fileName(outFileName) {}
- ~EpubOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBDrawingGenerator collector(&package);
- return libwpg::WPGraphics::parse(&input, &collector);
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libwpg::WPGraphics::isSupported(&input);
- }
-private:
- const std::string m_fileName;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts WordPerfect Graphics images to ePub.", "[OPTIONS] INPUT OUTPUT");
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- EpubOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid WordPerfect Graphics.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperWPG wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts WordPerfect Graphics images to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/wps2epub.cxx b/src/conv/epub/wps2epub.cxx
index 7f83bb3..d18c80a 100644
--- a/src/conv/epub/wps2epub.cxx
+++ b/src/conv/epub/wps2epub.cxx
@@ -20,136 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "EpubConverter.hxx"
+#include "WPWrapperWPS.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libepubgen/libepubgen.h>
-
-#include <libwps/libwps.h>
-
-#include "EpubPackage.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "wps2epub"
-using namespace libwps;
-
-class EpubOutputFileHelper
-{
-public:
- EpubOutputFileHelper(const char *const outFileName, const char *password, const char *encoding) :
- m_fileName(outFileName), m_password(password), m_encoding(encoding)
- {
- }
-
- bool convertDocument(librevenge::RVNGInputStream &input)
- {
- EpubPackage package(m_fileName);
- libepubgen::EPUBTextGenerator collector(&package);
-
- libwps::WPSResult result=WPSDocument::parse(&input, &collector, m_password, m_encoding);
- if (result == WPS_ENCRYPTION_ERROR)
- {
- fprintf(stderr, "ERROR : encrypted file, problem with password\n");
- return false;
- }
- else if (result != WPS_OK)
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return false;
- }
-
- return true;
- }
-
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- WPSCreator creator;
- WPSKind kind = WPS_TEXT;
- bool needEncoding;
- WPSConfidence confidence = WPSDocument::isFileFormatSupported(&input, kind, creator, needEncoding);
- if (confidence == WPS_CONFIDENCE_NONE || kind != WPS_TEXT)
- return false;
- if (!m_encoding && needEncoding)
- fprintf(stderr, "WARNING: called without encoding, try to decode with basic character set encoding.\n");
-
- return true;
- }
-
-private:
- std::string m_fileName;
- //! the password
- char const *m_password;
- //! the encoding
- char const *m_encoding;
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts MS Works documents to ePub.", "[OPTIONS] INPUT OUTPUT");
- usage.addEncodingOption();
- usage.addListEncodingsOption();
- usage.addPasswordOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngepub;
int main(int argc, char *argv[])
{
- char *szInputFile = 0;
- char *szOutFile = 0;
- char *encoding = 0;
- char *password = 0;
-
- for (int i = 1; i < argc; i++)
- {
- if (strcmp(argv[i], "--encoding")==0)
- {
- if (i+1>=argc)
- return printUsage(TOOLNAME);
- encoding=argv[++i];
- continue;
- }
- else if (strcmp(argv[i], "--password")==0)
- {
- if (i+1>=argc)
- return printUsage(TOOLNAME);
- password=argv[++i];
- continue;
- }
- else if (strcmp(argv[i], "--list-encodings")==0)
- return UsageHelper::printEncodings();
- else if (strcmp(argv[i], "--version")==0)
- return UsageHelper::printVersion(TOOLNAME);
- else if (strcmp(argv[i], "--help")==0)
- return printUsage(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile || !szOutFile)
- return printUsage(TOOLNAME);
-
- librevenge::RVNGFileStream input(szInputFile);
- EpubOutputFileHelper helper(szOutFile, password, encoding);
-
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: the document is not in any supported format.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input))
- return 1;
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_encodingOption=options->m_passwordOption=true;
+ writerperfect::WPWrapperWPS wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts MS Works documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/zmf2epub.cxx b/src/conv/epub/zmf2epub.cxx
new file mode 100644
index 0000000..441fa20
--- /dev/null
+++ b/src/conv/epub/zmf2epub.cxx
@@ -0,0 +1,39 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2006 Ariya Hidayat (ariya@kde.org)
+ * Copyright (C) 2006-2007 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "EpubConverter.hxx"
+#include "WPWrapperZMF.hxx"
+
+#include "UserOptions.hxx"
+
+#define TOOLNAME "zmf2epub"
+
+using namespace writerperfectrvngepub;
+int main(int argc, char *argv[])
+{
+ shared_ptr<UserOptions> options(new UserOptions);
+ writerperfect::WPWrapperZMF wrapper(options);
+ EpubConverter converter(options, TOOLNAME, "converts Zoner Draw documents to ePub.");
+ return converter.convert(wrapper, argc, argv);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/epub/zmf2epub.rc.in b/src/conv/epub/zmf2epub.rc.in
new file mode 100644
index 0000000..d4ecadc
--- /dev/null
+++ b/src/conv/epub/zmf2epub.rc.in
@@ -0,0 +1,31 @@
+#include <winver.h>
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,BUILDNUMBER
+ PRODUCTVERSION @WRITERPERFECT_MAJOR_VERSION@,@WRITERPERFECT_MINOR_VERSION@,@WRITERPERFECT_MICRO_VERSION@,0
+ FILEFLAGSMASK 0
+ FILEFLAGS 0
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_DLL
+ FILESUBTYPE VFT2_UNKNOWN
+ BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904B0"
+ BEGIN
+ VALUE "CompanyName", "The libwpd developer community"
+ VALUE "FileDescription", "zmf2epub"
+ VALUE "FileVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@.BUILDNUMBER"
+ VALUE "InternalName", "zmf2epub"
+ VALUE "LegalCopyright", "Copyright (C) 2002-2004 William Lachance, Marc Maurer, Fridrich Strba, Ariya Hidayat, other contributors"
+ VALUE "OriginalFilename", "zmf2epub.exe"
+ VALUE "ProductName", "writerperfect"
+ VALUE "ProductVersion", "@WRITERPERFECT_MAJOR_VERSION@.@WRITERPERFECT_MINOR_VERSION@.@WRITERPERFECT_MICRO_VERSION@"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+ END
+
diff --git a/src/conv/odf/Makefile.am b/src/conv/odf/Makefile.am
index 6f3ec09..def09c3 100644
--- a/src/conv/odf/Makefile.am
+++ b/src/conv/odf/Makefile.am
@@ -1,178 +1,273 @@
## -*- Mode: make; tab-width: 4; indent-tabs-mode: tabs -*-
-bin_PROGRAMS =
+wrapper_dir = $(top_builddir)/src/conv/wrapper
-if USE_LIBVISIO
-bin_PROGRAMS += vsd2odg vss2odg
+noinst_LTLIBRARIES = libodfhelper.la
+
+bin_PROGRAMS = wpft2odf
+
+AM_CXXFLAGS = \
+ -I$(top_srcdir)/src/lib \
+ -I$(top_srcdir)/src/conv/wrapper \
+ $(REVENGE_CFLAGS) \
+ $(ODFGEN_CFLAGS) \
+ $(DEBUG_CXXFLAGS)
+
+libodfhelper_la_LIBADD = $(top_builddir)/src/lib/libwriterperfect_internal.la $(ODFGEN_LIBS)
+libodfhelper_la_SOURCES = \
+ OdfConverter.hxx \
+ OdfConverter.cxx \
+ OdfPackage.hxx \
+ OdfPackage.cxx \
+ OdfWrapper.hxx \
+ OdfWrapper.cxx
+
+wpft2odf_DEPENDENCIES = @WPFT2ODF_WIN32_RESOURCE@ libodfhelper.la
+wpft2odf_CPPFLAGS = $(REVENGE_STREAM_CFLAGS)
+wpft2odf_LDADD = $(REVENGE_STREAM_LIBS)
+wpft2odf_SOURCES = wpft2odf.cxx
+
+if USE_LIBABW
+ wpft2odf_CPPFLAGS += $(ABW_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwpabw.la $(ABW_LIBS)
+
+ bin_PROGRAMS += abw2odt
+ abw2odt_DEPENDENCIES = @ABW2ODT_WIN32_RESOURCE@ libodfhelper.la
+ abw2odt_CPPFLAGS = $(ABW_CFLAGS)
+ abw2odt_LDADD = @ABW2ODT_WIN32_RESOURCE@ $(wrapper_dir)/libwpabw.la libodfhelper.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
+ abw2odt_SOURCES = abw2odt.cxx
endif
-if USE_LIBWPD
-bin_PROGRAMS += wpd2odt
+if USE_LIBCDR
+ wpft2odf_CPPFLAGS += $(CDR_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwpcdr.la $(CDR_LIBS)
+
+ bin_PROGRAMS += cdr2odg cmx2odg
+ cdr2odg_DEPENDENCIES = @CDR2ODG_WIN32_RESOURCE@ libodfhelper.la
+ cdr2odg_CPPFLAGS = $(CDR_CFLAGS)
+ cdr2odg_LDADD = @CDR2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpcdr.la libodfhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
+ cdr2odg_SOURCES = cdr2odg.cxx
+
+ cmx2odg_DEPENDENCIES = @CMX2ODG_WIN32_RESOURCE@ libodfhelper.la
+ cmx2odg_CPPFLAGS = $(CDR_CFLAGS)
+ cmx2odg_LDADD = @CDR2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpcdr.la libodfhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
+ cmx2odg_SOURCES = cmx2odg.cxx
endif
-if USE_LIBWPG
-bin_PROGRAMS += wpg2odg
+if USE_LIBEBOOK
+ wpft2odf_CPPFLAGS += $(EBOOK_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwpebook.la $(EBOOK_LIBS)
+
+ bin_PROGRAMS += ebook2odt
+
+ ebook2odt_DEPENDENCIES = @EBOOK2ODT_WIN32_RESOURCE@ libodfhelper.la
+ ebook2odt_CPPFLAGS = $(EBOOK_CFLAGS)
+ ebook2odt_LDADD = @EBOOK2ODT_WIN32_RESOURCE@ $(wrapper_dir)/libwpebook.la libodfhelper.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
+ ebook2odt_SOURCES = ebook2odt.cxx
endif
-if USE_LIBWPS
-bin_PROGRAMS += wps2odt wks2ods
+if USE_LIBETONYEK
+ wpft2odf_CPPFLAGS += $(ETONYEK_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwpetonyek.la $(ETONYEK_LIBS)
+
+ bin_PROGRAMS += key2odp numbers2ods pages2odt
+
+ key2odp_DEPENDENCIES = @KEY2ODP_WIN32_RESOURCE@ libodfhelper.la
+ key2odp_CPPFLAGS = $(ETONYEK_CFLAGS)
+ key2odp_LDADD = @KEY2ODP_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+ key2odp_SOURCES = key2odp.cxx
+
+ pages2odt_DEPENDENCIES = @PAGES2ODT_WIN32_RESOURCE@ libodfhelper.la
+ pages2odt_CPPFLAGS = $(ETONYEK_CFLAGS)
+ pages2odt_LDADD = @PAGES2ODT_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+ pages2odt_SOURCES = pages2odt.cxx
+
+ numbers2ods_DEPENDENCIES = @NUMBERS2ODS_WIN32_RESOURCE@ libodfhelper.la
+ numbers2ods_CPPFLAGS = $(ETONYEK_CFLAGS)
+ numbers2ods_LDADD = @NUMBERS2ODS_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+ numbers2ods_SOURCES = numbers2ods.cxx
endif
-if USE_LIBCDR
-bin_PROGRAMS += cdr2odg cmx2odg
+if USE_LIBFREEHAND
+ wpft2odf_CPPFLAGS += $(FREEHAND_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwpfreehand.la $(FREEHAND_LIBS)
+
+ bin_PROGRAMS += fh2odg
+
+ fh2odg_DEPENDENCIES = @FH2ODG_WIN32_RESOURCE@ libodfhelper.la
+ fh2odg_CPPFLAGS = $(FREEHAND_CFLAGS)
+ fh2odg_LDADD = @FH2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpfreehand.la libodfhelper.la $(FREEHAND_LIBS) $(REVENGE_STREAM_LIBS)
+ fh2odg_SOURCES = fh2odg.cxx
endif
if USE_LIBMSPUB
-bin_PROGRAMS += pub2odg
+ noinst_LTLIBRARIES += libodfmspub.la
+
+ libodfmspub_la_LIBADD = $(wrapper_dir)/libwpmspub.la
+ libodfmspub_la_CPPFLAGS = $(MSPUB_CFLAGS)
+ libodfmspub_la_SOURCES = OdfWrapperMSPUB.hxx OdfWrapperMSPUB.cxx
+
+ wpft2odf_DEPENDENCIES += libodfmspub.la
+ wpft2odf_CFLAGS = $(EOT_CFLAGS)
+ wpft2odf_CPPFLAGS += $(MSPUB_CFLAGS)
+ wpft2odf_LDADD += libodfmspub.la $(MSPUB_LIBS) $(EOT_LIBS)
+
+ bin_PROGRAMS += pub2odg
+
+ pub2odg_DEPENDENCIES = @PUB2ODG_WIN32_RESOURCE@ libodfhelper.la libodfmspub.la
+ pub2odg_CPPFLAGS = $(MSPUB_CFLAGS)
+ pub2odg_CFLAGS = $(EOT_CFLAGS)
+ pub2odg_LDADD = @PUB2ODG_WIN32_RESOURCE@ libodfmspub.la libodfhelper.la $(MSPUB_LIBS) $(REVENGE_STREAM_LIBS) $(EOT_LIBS)
+ pub2odg_SOURCES = pub2odg.cxx
endif
if USE_LIBMWAW
-bin_PROGRAMS += mwaw2odf
+ noinst_LTLIBRARIES += libodfmwaw.la
+
+ libodfmwaw_la_LIBADD = $(wrapper_dir)/libwpmwaw.la
+ libodfmwaw_la_CPPFLAGS = $(MWAW_CFLAGS)
+ libodfmwaw_la_SOURCES = OdfWrapperMWAW.hxx OdfWrapperMWAW.cxx
+
+ wpft2odf_DEPENDENCIES += libodfmwaw.la
+ wpft2odf_CPPFLAGS += $(MWAW_CFLAGS)
+ wpft2odf_LDADD += libodfmwaw.la $(MWAW_LIBS)
+
+ bin_PROGRAMS += mwaw2odf
+
+ mwaw2odf_DEPENDENCIES = @MWAW2ODF_WIN32_RESOURCE@ libodfhelper.la libodfmwaw.la
+ mwaw2odf_CPPFLAGS = $(MWAW_CFLAGS)
+ mwaw2odf_LDADD = @MWAW2ODF_WIN32_RESOURCE@ libodfmwaw.la libodfhelper.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
+ mwaw2odf_SOURCES = mwaw2odf.cxx
endif
-if USE_LIBFREEHAND
-bin_PROGRAMS += fh2odg
+if USE_LIBPAGEMAKER
+ wpft2odf_CPPFLAGS += $(PAGEMAKER_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwppagemaker.la $(PAGEMAKER_LIBS)
+
+ bin_PROGRAMS += pmd2odg
+
+ pmd2odg_DEPENDENCIES = @PMD2ODG_WIN32_RESOURCE@ libodfhelper.la
+ pmd2odg_CPPFLAGS = $(PAGEMAKER_CFLAGS)
+ pmd2odg_LDADD = @PMD2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwppagemaker.la libodfhelper.la $(PAGEMAKER_LIBS) $(REVENGE_STREAM_LIBS)
+ pmd2odg_SOURCES = pmd2odg.cxx
endif
-if USE_LIBETONYEK
-bin_PROGRAMS += key2odp numbers2ods pages2odt
+if USE_LIBQXP
+ wpft2odf_CPPFLAGS += $(QXP_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwpqxp.la $(QXP_LIBS)
+
+ bin_PROGRAMS += qxp2odg
+
+ qxp2odg_DEPENDENCIES = @QXP2ODG_WIN32_RESOURCE@ libodfhelper.la
+ qxp2odg_CPPFLAGS = $(QXP_CFLAGS)
+ qxp2odg_LDADD = @QXP2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpqxp.la libodfhelper.la $(QXP_LIBS) $(REVENGE_STREAM_LIBS)
+ qxp2odg_SOURCES = qxp2odg.cxx
endif
-if USE_LIBEBOOK
-bin_PROGRAMS += ebook2odt
+if USE_LIBSTAROFFICE
+ noinst_LTLIBRARIES += libodfstaroffice.la
+
+ libodfstaroffice_la_LIBADD = $(wrapper_dir)/libwpstaroffice.la
+ libodfstaroffice_la_CPPFLAGS = $(STAROFFICE_CFLAGS)
+ libodfstaroffice_la_SOURCES = OdfWrapperSTAROFFICE.hxx OdfWrapperSTAROFFICE.cxx
+
+ wpft2odf_DEPENDENCIES += libodfstaroffice.la
+ wpft2odf_CPPFLAGS += $(STAROFFICE_CFLAGS)
+ wpft2odf_LDADD += libodfstaroffice.la $(STAROFFICE_LIBS)
+
+ bin_PROGRAMS += sd2odf
+
+ sd2odf_DEPENDENCIES = @SD2ODF_WIN32_RESOURCE@ libodfhelper.la libodfstaroffice.la
+ sd2odf_CPPFLAGS = $(STAROFFICE_CFLAGS)
+ sd2odf_LDADD = @SD2ODF_WIN32_RESOURCE@ libodfstaroffice.la libodfhelper.la $(STAROFFICE_LIBS) $(REVENGE_STREAM_LIBS)
+ sd2odf_SOURCES = sd2odf.cxx
endif
-if USE_LIBABW
-bin_PROGRAMS += abw2odt
+if USE_LIBVISIO
+ wpft2odf_CPPFLAGS += $(VISIO_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwpvisio.la $(VISIO_LIBS)
+
+ bin_PROGRAMS += vsd2odg vss2odg
+
+ vsd2odg_DEPENDENCIES = @VSD2ODG_WIN32_RESOURCE@ libodfhelper.la
+ vsd2odg_CPPFLAGS = $(VISIO_CFLAGS)
+ vsd2odg_LDADD = @VSD2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpvisio.la libodfhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
+ vsd2odg_SOURCES = vsd2odg.cxx
+
+ vss2odg_DEPENDENCIES = @VSS2ODG_WIN32_RESOURCE@ libodfhelper.la
+ vss2odg_CPPFLAGS = $(VISIO_CFLAGS)
+ vss2odg_LDADD = @VSD2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpvisio.la libodfhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
+ vss2odg_SOURCES = vss2odg.cxx
endif
-if USE_LIBPAGEMAKER
-bin_PROGRAMS += pmd2odg
+if USE_LIBWPD
+ noinst_LTLIBRARIES += libodfwpd.la
+
+ libodfwpd_la_LIBADD = $(wrapper_dir)/libwpwpd.la
+ libodfwpd_la_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
+ libodfwpd_la_SOURCES = OdfWrapperWPD.hxx OdfWrapperWPD.cxx
+
+ wpft2odf_DEPENDENCIES += libodfwpd.la
+ wpft2odf_CPPFLAGS += $(WPD_CFLAGS)
+ wpft2odf_LDADD += libodfwpd.la $(WPD_LIBS)
+
+ bin_PROGRAMS += wpd2odt
+
+ wpd2odt_DEPENDENCIES = @WPD2ODT_WIN32_RESOURCE@ libodfhelper.la libodfwpd.la
+ wpd2odt_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
+ wpd2odt_LDADD = @WPD2ODT_WIN32_RESOURCE@ libodfwpd.la libodfhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
+ wpd2odt_SOURCES = wpd2odt.cxx
endif
-if USE_LIBSTAROFFICE
-bin_PROGRAMS += sd2odf
+if USE_LIBWPG
+ wpft2odf_CPPFLAGS += $(WPG_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwpwpg.la $(WPG_LIBS)
+
+ bin_PROGRAMS += wpg2odg
+
+ wpg2odg_DEPENDENCIES = @WPG2ODG_WIN32_RESOURCE@ libodfhelper.la
+ wpg2odg_CPPFLAGS = $(WPG_CFLAGS)
+ wpg2odg_LDADD = @WPG2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpwpg.la libodfhelper.la $(WPG_LIBS) $(REVENGE_STREAM_LIBS)
+ wpg2odg_SOURCES = wpg2odg.cxx
endif
-AM_CXXFLAGS = \
- -I$(top_srcdir)/src/lib \
- $(ODFGEN_CFLAGS) \
- $(DEBUG_CXXFLAGS)
+if USE_LIBWPS
+ noinst_LTLIBRARIES += libodfwps.la
-noinst_LTLIBRARIES = libodfhelper.la
-libodfhelper_la_LIBADD = $(top_builddir)/src/lib/libwriterperfect_internal.la $(ODFGEN_LIBS)
-libodfhelper_la_SOURCES = \
- StringDocumentHandler.hxx \
- StringDocumentHandler.cxx
-
-wpd2odt_DEPENDENCIES = @WPD2ODT_WIN32_RESOURCE@ libodfhelper.la
-wpd2odt_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
-wpd2odt_LDADD = @WPD2ODT_WIN32_RESOURCE@ libodfhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpd2odt_SOURCES = \
- wpd2odt.cxx
-
-wks2ods_DEPENDENCIES = @WKS2ODS_WIN32_RESOURCE@ libodfhelper.la
-wks2ods_CPPFLAGS = $(WPS_CFLAGS)
-wks2ods_LDADD = @WKS2ODS_WIN32_RESOURCE@ libodfhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
-wks2ods_SOURCES = \
- wks2ods.cxx
-
-wps2odt_DEPENDENCIES = @WPS2ODT_WIN32_RESOURCE@ libodfhelper.la
-wps2odt_CPPFLAGS = $(WPS_CFLAGS)
-wps2odt_LDADD = @WPS2ODT_WIN32_RESOURCE@ libodfhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
-wps2odt_SOURCES = \
- wps2odt.cxx
-
-wpg2odg_DEPENDENCIES = @WPG2ODG_WIN32_RESOURCE@ libodfhelper.la
-wpg2odg_CPPFLAGS = $(WPG_CFLAGS)
-wpg2odg_LDADD = @WPG2ODG_WIN32_RESOURCE@ libodfhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpg2odg_SOURCES = \
- wpg2odg.cxx
-
-vsd2odg_DEPENDENCIES = @VSD2ODG_WIN32_RESOURCE@ libodfhelper.la
-vsd2odg_CPPFLAGS = $(VISIO_CFLAGS)
-vsd2odg_LDADD = @VSD2ODG_WIN32_RESOURCE@ libodfhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
-vsd2odg_SOURCES = \
- vsd2odg.cxx
-
-vss2odg_DEPENDENCIES = @VSS2ODG_WIN32_RESOURCE@ libodfhelper.la
-vss2odg_CPPFLAGS = $(VISIO_CFLAGS)
-vss2odg_LDADD = @VSD2ODG_WIN32_RESOURCE@ libodfhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
-vss2odg_SOURCES = \
- vss2odg.cxx
-
-cdr2odg_DEPENDENCIES = @CDR2ODG_WIN32_RESOURCE@ libodfhelper.la
-cdr2odg_CPPFLAGS = $(CDR_CFLAGS)
-cdr2odg_LDADD = @CDR2ODG_WIN32_RESOURCE@ libodfhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
-cdr2odg_SOURCES = \
- cdr2odg.cxx
-
-cmx2odg_DEPENDENCIES = @CMX2ODG_WIN32_RESOURCE@ libodfhelper.la
-cmx2odg_CPPFLAGS = $(CDR_CFLAGS)
-cmx2odg_LDADD = @CDR2ODG_WIN32_RESOURCE@ libodfhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
-cmx2odg_SOURCES = \
- cmx2odg.cxx
-
-pub2odg_DEPENDENCIES = @PUB2ODG_WIN32_RESOURCE@ libodfhelper.la
-pub2odg_CPPFLAGS = $(MSPUB_CFLAGS) $(EOT_CPPFLAGS)
-pub2odg_CFLAGS = $(EOT_CFLAGS)
-pub2odg_LDADD = @PUB2ODG_WIN32_RESOURCE@ libodfhelper.la $(MSPUB_LIBS) $(REVENGE_STREAM_LIBS) $(EOT_LIBS)
-pub2odg_SOURCES = \
- pub2odg.cxx
-
-pmd2odg_DEPENDENCIES = @PMD2ODG_WIN32_RESOURCE@ libodfhelper.la
-pmd2odg_CPPFLAGS = $(PAGEMAKER_CFLAGS)
-pmd2odg_LDADD = @PMD2ODG_WIN32_RESOURCE@ libodfhelper.la $(PAGEMAKER_LIBS) $(REVENGE_STREAM_LIBS)
-pmd2odg_SOURCES = \
- pmd2odg.cxx
-
-mwaw2odf_DEPENDENCIES = @MWAW2ODF_WIN32_RESOURCE@ libodfhelper.la
-mwaw2odf_CPPFLAGS = $(MWAW_CFLAGS)
-mwaw2odf_LDADD = @MWAW2ODF_WIN32_RESOURCE@ libodfhelper.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
-mwaw2odf_SOURCES = \
- mwaw2odf.cxx
-
-fh2odg_DEPENDENCIES = @FH2ODG_WIN32_RESOURCE@ libodfhelper.la
-fh2odg_CPPFLAGS = $(FREEHAND_CFLAGS)
-fh2odg_LDADD = @FH2ODG_WIN32_RESOURCE@ libodfhelper.la $(FREEHAND_LIBS) $(REVENGE_STREAM_LIBS)
-fh2odg_SOURCES = \
- fh2odg.cxx
-
-key2odp_DEPENDENCIES = @KEY2ODP_WIN32_RESOURCE@ libodfhelper.la
-key2odp_CPPFLAGS = $(ETONYEK_CFLAGS)
-key2odp_LDADD = @KEY2ODP_WIN32_RESOURCE@ libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-key2odp_SOURCES = \
- key2odp.cxx
-
-ebook2odt_DEPENDENCIES = @EBOOK2ODT_WIN32_RESOURCE@ libodfhelper.la
-ebook2odt_CPPFLAGS = $(EBOOK_CFLAGS)
-ebook2odt_LDADD = @EBOOK2ODT_WIN32_RESOURCE@ libodfhelper.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
-ebook2odt_SOURCES = \
- ebook2odt.cxx
-
-abw2odt_DEPENDENCIES = @ABW2ODT_WIN32_RESOURCE@ libodfhelper.la
-abw2odt_CPPFLAGS = $(ABW_CFLAGS)
-abw2odt_LDADD = @ABW2ODT_WIN32_RESOURCE@ libodfhelper.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
-abw2odt_SOURCES = \
- abw2odt.cxx
-
-pages2odt_DEPENDENCIES = @PAGES2ODT_WIN32_RESOURCE@ libodfhelper.la
-pages2odt_CPPFLAGS = $(ETONYEK_CFLAGS)
-pages2odt_LDADD = @PAGES2ODT_WIN32_RESOURCE@ libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-pages2odt_SOURCES = \
- pages2odt.cxx
-
-numbers2ods_DEPENDENCIES = @NUMBERS2ODS_WIN32_RESOURCE@ libodfhelper.la
-numbers2ods_CPPFLAGS = $(ETONYEK_CFLAGS)
-numbers2ods_LDADD = @NUMBERS2ODS_WIN32_RESOURCE@ libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-numbers2ods_SOURCES = \
- numbers2ods.cxx
-
-sd2odf_DEPENDENCIES = @SD2ODF_WIN32_RESOURCE@ libodfhelper.la
-sd2odf_CPPFLAGS = $(STAROFFICE_CFLAGS)
-sd2odf_LDADD = @SD2ODF_WIN32_RESOURCE@ libodfhelper.la $(STAROFFICE_LIBS) $(REVENGE_STREAM_LIBS)
-sd2odf_SOURCES = \
- sd2odf.cxx
+ libodfwps_la_LIBADD = $(wrapper_dir)/libwpwps.la
+ libodfwps_la_CPPFLAGS = $(WPS_CFLAGS)
+ libodfwps_la_SOURCES = OdfWrapperWPS.hxx OdfWrapperWPS.cxx
+
+ wpft2odf_DEPENDENCIES += libodfwps.la
+ wpft2odf_CPPFLAGS += $(WPS_CFLAGS)
+ wpft2odf_LDADD += libodfwps.la $(WPS_LIBS)
+
+ bin_PROGRAMS += wps2odt wks2ods
+
+ wks2ods_DEPENDENCIES = @WKS2ODS_WIN32_RESOURCE@ libodfhelper.la libodfwps.la
+ wks2ods_CPPFLAGS = $(WPS_CFLAGS)
+ wks2ods_LDADD = @WKS2ODS_WIN32_RESOURCE@ libodfwps.la libodfhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
+ wks2ods_SOURCES = wks2ods.cxx
+
+ wps2odt_DEPENDENCIES = @WPS2ODT_WIN32_RESOURCE@ libodfhelper.la libodfwps.la
+ wps2odt_CPPFLAGS = $(WPS_CFLAGS)
+ wps2odt_LDADD = @WPS2ODT_WIN32_RESOURCE@ libodfwps.la libodfhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
+ wps2odt_SOURCES = wps2odt.cxx
+endif
+
+if USE_LIBZMF
+ wpft2odf_CPPFLAGS += $(ZMF_CFLAGS)
+ wpft2odf_LDADD += $(wrapper_dir)/libwpzmf.la $(ZMF_LIBS)
+
+ bin_PROGRAMS += zmf2odg
+
+ zmf2odg_DEPENDENCIES = @ZMF2ODG_WIN32_RESOURCE@ libodfhelper.la
+ zmf2odg_CPPFLAGS = $(ZMF_CFLAGS)
+ zmf2odg_LDADD = @ZMF2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpzmf.la libodfhelper.la $(ZMF_LIBS) $(REVENGE_STREAM_LIBS)
+ zmf2odg_SOURCES = zmf2odg.cxx
+endif
+
+wpft2odf_LDADD += libodfhelper.la $(REVENGE_STREAM_LIBS)
if OS_WIN32
@@ -244,10 +339,21 @@ if OS_WIN32
chmod +x $(top_srcdir)/build/win32/*compile-resource
WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource numbers2ods.rc @NUMBERS2ODS_WIN32_RESOURCE@
+@QXP2ODG_WIN32_RESOURCE@ : qxp2odg.rc $(qxp2odf_OBJECTS)
+ chmod +x $(top_srcdir)/build/win32/*compile-resource
+ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource qxp2odg.rc @QXP2ODG_WIN32_RESOURCE@
+
@SD2ODF_WIN32_RESOURCE@ : sd2odf.rc $(sd2odf_OBJECTS)
chmod +x $(top_srcdir)/build/win32/*compile-resource
WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource sd2odf.rc @SD2ODF_WIN32_RESOURCE@
+@ZMF2ODG_WIN32_RESOURCE@ : zmf2odg.rc $(zmf2odf_OBJECTS)
+ chmod +x $(top_srcdir)/build/win32/*compile-resource
+ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource zmf2odg.rc @ZMF2ODG_WIN32_RESOURCE@
+
+@WPFT2ODF_WIN32_RESOURCE@ : wpft2odf.rc $(wpft2odf_OBJECTS)
+ chmod +x $(top_srcdir)/build/win32/*compile-resource
+ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wpft2odf.rc @WPFT2ODF_WIN32_RESOURCE@
endif
## vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/src/conv/odf/Makefile.in b/src/conv/odf/Makefile.in
index 6177212..02ca148 100644
--- a/src/conv/odf/Makefile.in
+++ b/src/conv/odf/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -89,30 +89,75 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-bin_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3) \
- $(am__EXEEXT_4) $(am__EXEEXT_5) $(am__EXEEXT_6) \
- $(am__EXEEXT_7) $(am__EXEEXT_8) $(am__EXEEXT_9) \
- $(am__EXEEXT_10) $(am__EXEEXT_11) $(am__EXEEXT_12) \
- $(am__EXEEXT_13)
-@USE_LIBVISIO_TRUE@am__append_1 = vsd2odg vss2odg
-@USE_LIBWPD_TRUE@am__append_2 = wpd2odt
-@USE_LIBWPG_TRUE@am__append_3 = wpg2odg
-@USE_LIBWPS_TRUE@am__append_4 = wps2odt wks2ods
-@USE_LIBCDR_TRUE@am__append_5 = cdr2odg cmx2odg
-@USE_LIBMSPUB_TRUE@am__append_6 = pub2odg
-@USE_LIBMWAW_TRUE@am__append_7 = mwaw2odf
-@USE_LIBFREEHAND_TRUE@am__append_8 = fh2odg
-@USE_LIBETONYEK_TRUE@am__append_9 = key2odp numbers2ods pages2odt
-@USE_LIBEBOOK_TRUE@am__append_10 = ebook2odt
-@USE_LIBABW_TRUE@am__append_11 = abw2odt
-@USE_LIBPAGEMAKER_TRUE@am__append_12 = pmd2odg
-@USE_LIBSTAROFFICE_TRUE@am__append_13 = sd2odf
+bin_PROGRAMS = wpft2odf$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
+ $(am__EXEEXT_3) $(am__EXEEXT_4) $(am__EXEEXT_5) \
+ $(am__EXEEXT_6) $(am__EXEEXT_7) $(am__EXEEXT_8) \
+ $(am__EXEEXT_9) $(am__EXEEXT_10) $(am__EXEEXT_11) \
+ $(am__EXEEXT_12) $(am__EXEEXT_13) $(am__EXEEXT_14) \
+ $(am__EXEEXT_15)
+@USE_LIBABW_TRUE@am__append_1 = $(ABW_CFLAGS)
+@USE_LIBABW_TRUE@am__append_2 = $(wrapper_dir)/libwpabw.la $(ABW_LIBS)
+@USE_LIBABW_TRUE@am__append_3 = abw2odt
+@USE_LIBCDR_TRUE@am__append_4 = $(CDR_CFLAGS)
+@USE_LIBCDR_TRUE@am__append_5 = $(wrapper_dir)/libwpcdr.la $(CDR_LIBS)
+@USE_LIBCDR_TRUE@am__append_6 = cdr2odg cmx2odg
+@USE_LIBEBOOK_TRUE@am__append_7 = $(EBOOK_CFLAGS)
+@USE_LIBEBOOK_TRUE@am__append_8 = $(wrapper_dir)/libwpebook.la $(EBOOK_LIBS)
+@USE_LIBEBOOK_TRUE@am__append_9 = ebook2odt
+@USE_LIBETONYEK_TRUE@am__append_10 = $(ETONYEK_CFLAGS)
+@USE_LIBETONYEK_TRUE@am__append_11 = $(wrapper_dir)/libwpetonyek.la $(ETONYEK_LIBS)
+@USE_LIBETONYEK_TRUE@am__append_12 = key2odp numbers2ods pages2odt
+@USE_LIBFREEHAND_TRUE@am__append_13 = $(FREEHAND_CFLAGS)
+@USE_LIBFREEHAND_TRUE@am__append_14 = $(wrapper_dir)/libwpfreehand.la $(FREEHAND_LIBS)
+@USE_LIBFREEHAND_TRUE@am__append_15 = fh2odg
+@USE_LIBMSPUB_TRUE@am__append_16 = libodfmspub.la
+@USE_LIBMSPUB_TRUE@am__append_17 = libodfmspub.la
+@USE_LIBMSPUB_TRUE@am__append_18 = $(MSPUB_CFLAGS)
+@USE_LIBMSPUB_TRUE@am__append_19 = libodfmspub.la $(MSPUB_LIBS) $(EOT_LIBS)
+@USE_LIBMSPUB_TRUE@am__append_20 = pub2odg
+@USE_LIBMWAW_TRUE@am__append_21 = libodfmwaw.la
+@USE_LIBMWAW_TRUE@am__append_22 = libodfmwaw.la
+@USE_LIBMWAW_TRUE@am__append_23 = $(MWAW_CFLAGS)
+@USE_LIBMWAW_TRUE@am__append_24 = libodfmwaw.la $(MWAW_LIBS)
+@USE_LIBMWAW_TRUE@am__append_25 = mwaw2odf
+@USE_LIBPAGEMAKER_TRUE@am__append_26 = $(PAGEMAKER_CFLAGS)
+@USE_LIBPAGEMAKER_TRUE@am__append_27 = $(wrapper_dir)/libwppagemaker.la $(PAGEMAKER_LIBS)
+@USE_LIBPAGEMAKER_TRUE@am__append_28 = pmd2odg
+@USE_LIBQXP_TRUE@am__append_29 = $(QXP_CFLAGS)
+@USE_LIBQXP_TRUE@am__append_30 = $(wrapper_dir)/libwpqxp.la $(QXP_LIBS)
+@USE_LIBQXP_TRUE@am__append_31 = qxp2odg
+@USE_LIBSTAROFFICE_TRUE@am__append_32 = libodfstaroffice.la
+@USE_LIBSTAROFFICE_TRUE@am__append_33 = libodfstaroffice.la
+@USE_LIBSTAROFFICE_TRUE@am__append_34 = $(STAROFFICE_CFLAGS)
+@USE_LIBSTAROFFICE_TRUE@am__append_35 = libodfstaroffice.la $(STAROFFICE_LIBS)
+@USE_LIBSTAROFFICE_TRUE@am__append_36 = sd2odf
+@USE_LIBVISIO_TRUE@am__append_37 = $(VISIO_CFLAGS)
+@USE_LIBVISIO_TRUE@am__append_38 = $(wrapper_dir)/libwpvisio.la $(VISIO_LIBS)
+@USE_LIBVISIO_TRUE@am__append_39 = vsd2odg vss2odg
+@USE_LIBWPD_TRUE@am__append_40 = libodfwpd.la
+@USE_LIBWPD_TRUE@am__append_41 = libodfwpd.la
+@USE_LIBWPD_TRUE@am__append_42 = $(WPD_CFLAGS)
+@USE_LIBWPD_TRUE@am__append_43 = libodfwpd.la $(WPD_LIBS)
+@USE_LIBWPD_TRUE@am__append_44 = wpd2odt
+@USE_LIBWPG_TRUE@am__append_45 = $(WPG_CFLAGS)
+@USE_LIBWPG_TRUE@am__append_46 = $(wrapper_dir)/libwpwpg.la $(WPG_LIBS)
+@USE_LIBWPG_TRUE@am__append_47 = wpg2odg
+@USE_LIBWPS_TRUE@am__append_48 = libodfwps.la
+@USE_LIBWPS_TRUE@am__append_49 = libodfwps.la
+@USE_LIBWPS_TRUE@am__append_50 = $(WPS_CFLAGS)
+@USE_LIBWPS_TRUE@am__append_51 = libodfwps.la $(WPS_LIBS)
+@USE_LIBWPS_TRUE@am__append_52 = wps2odt wks2ods
+@USE_LIBZMF_TRUE@am__append_53 = $(ZMF_CFLAGS)
+@USE_LIBZMF_TRUE@am__append_54 = $(wrapper_dir)/libwpzmf.la $(ZMF_LIBS)
+@USE_LIBZMF_TRUE@am__append_55 = zmf2odg
subdir = src/conv/odf
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/wpft_libs.m4 $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/wpft_libs.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -120,72 +165,174 @@ mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = abw2odt.rc cdr2odg.rc cmx2odg.rc ebook2odt.rc \
fh2odg.rc key2odp.rc mwaw2odf.rc numbers2ods.rc pages2odt.rc \
- pub2odg.rc pmd2odg.rc sd2odf.rc vsd2odg.rc vss2odg.rc \
- wks2ods.rc wpd2odt.rc wpg2odg.rc wps2odt.rc
+ pub2odg.rc pmd2odg.rc qxp2odg.rc sd2odf.rc vsd2odg.rc \
+ vss2odg.rc wks2ods.rc wpd2odt.rc wpg2odg.rc wps2odt.rc \
+ zmf2odg.rc wpft2odf.rc
CONFIG_CLEAN_VPATH_FILES =
LTLIBRARIES = $(noinst_LTLIBRARIES)
am__DEPENDENCIES_1 =
libodfhelper_la_DEPENDENCIES = \
$(top_builddir)/src/lib/libwriterperfect_internal.la \
$(am__DEPENDENCIES_1)
-am_libodfhelper_la_OBJECTS = StringDocumentHandler.lo
+am_libodfhelper_la_OBJECTS = OdfConverter.lo OdfPackage.lo \
+ OdfWrapper.lo
libodfhelper_la_OBJECTS = $(am_libodfhelper_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 =
-@USE_LIBVISIO_TRUE@am__EXEEXT_1 = vsd2odg$(EXEEXT) vss2odg$(EXEEXT)
-@USE_LIBWPD_TRUE@am__EXEEXT_2 = wpd2odt$(EXEEXT)
-@USE_LIBWPG_TRUE@am__EXEEXT_3 = wpg2odg$(EXEEXT)
-@USE_LIBWPS_TRUE@am__EXEEXT_4 = wps2odt$(EXEEXT) wks2ods$(EXEEXT)
-@USE_LIBCDR_TRUE@am__EXEEXT_5 = cdr2odg$(EXEEXT) cmx2odg$(EXEEXT)
+@USE_LIBMSPUB_TRUE@libodfmspub_la_DEPENDENCIES = \
+@USE_LIBMSPUB_TRUE@ $(wrapper_dir)/libwpmspub.la
+am__libodfmspub_la_SOURCES_DIST = OdfWrapperMSPUB.hxx \
+ OdfWrapperMSPUB.cxx
+@USE_LIBMSPUB_TRUE@am_libodfmspub_la_OBJECTS = \
+@USE_LIBMSPUB_TRUE@ libodfmspub_la-OdfWrapperMSPUB.lo
+libodfmspub_la_OBJECTS = $(am_libodfmspub_la_OBJECTS)
+@USE_LIBMSPUB_TRUE@am_libodfmspub_la_rpath =
+@USE_LIBMWAW_TRUE@libodfmwaw_la_DEPENDENCIES = \
+@USE_LIBMWAW_TRUE@ $(wrapper_dir)/libwpmwaw.la
+am__libodfmwaw_la_SOURCES_DIST = OdfWrapperMWAW.hxx OdfWrapperMWAW.cxx
+@USE_LIBMWAW_TRUE@am_libodfmwaw_la_OBJECTS = \
+@USE_LIBMWAW_TRUE@ libodfmwaw_la-OdfWrapperMWAW.lo
+libodfmwaw_la_OBJECTS = $(am_libodfmwaw_la_OBJECTS)
+@USE_LIBMWAW_TRUE@am_libodfmwaw_la_rpath =
+@USE_LIBSTAROFFICE_TRUE@libodfstaroffice_la_DEPENDENCIES = \
+@USE_LIBSTAROFFICE_TRUE@ $(wrapper_dir)/libwpstaroffice.la
+am__libodfstaroffice_la_SOURCES_DIST = OdfWrapperSTAROFFICE.hxx \
+ OdfWrapperSTAROFFICE.cxx
+@USE_LIBSTAROFFICE_TRUE@am_libodfstaroffice_la_OBJECTS = libodfstaroffice_la-OdfWrapperSTAROFFICE.lo
+libodfstaroffice_la_OBJECTS = $(am_libodfstaroffice_la_OBJECTS)
+@USE_LIBSTAROFFICE_TRUE@am_libodfstaroffice_la_rpath =
+@USE_LIBWPD_TRUE@libodfwpd_la_DEPENDENCIES = \
+@USE_LIBWPD_TRUE@ $(wrapper_dir)/libwpwpd.la
+am__libodfwpd_la_SOURCES_DIST = OdfWrapperWPD.hxx OdfWrapperWPD.cxx
+@USE_LIBWPD_TRUE@am_libodfwpd_la_OBJECTS = \
+@USE_LIBWPD_TRUE@ libodfwpd_la-OdfWrapperWPD.lo
+libodfwpd_la_OBJECTS = $(am_libodfwpd_la_OBJECTS)
+@USE_LIBWPD_TRUE@am_libodfwpd_la_rpath =
+@USE_LIBWPS_TRUE@libodfwps_la_DEPENDENCIES = \
+@USE_LIBWPS_TRUE@ $(wrapper_dir)/libwpwps.la
+am__libodfwps_la_SOURCES_DIST = OdfWrapperWPS.hxx OdfWrapperWPS.cxx
+@USE_LIBWPS_TRUE@am_libodfwps_la_OBJECTS = \
+@USE_LIBWPS_TRUE@ libodfwps_la-OdfWrapperWPS.lo
+libodfwps_la_OBJECTS = $(am_libodfwps_la_OBJECTS)
+@USE_LIBWPS_TRUE@am_libodfwps_la_rpath =
+@USE_LIBABW_TRUE@am__EXEEXT_1 = abw2odt$(EXEEXT)
+@USE_LIBCDR_TRUE@am__EXEEXT_2 = cdr2odg$(EXEEXT) cmx2odg$(EXEEXT)
+@USE_LIBEBOOK_TRUE@am__EXEEXT_3 = ebook2odt$(EXEEXT)
+@USE_LIBETONYEK_TRUE@am__EXEEXT_4 = key2odp$(EXEEXT) \
+@USE_LIBETONYEK_TRUE@ numbers2ods$(EXEEXT) pages2odt$(EXEEXT)
+@USE_LIBFREEHAND_TRUE@am__EXEEXT_5 = fh2odg$(EXEEXT)
@USE_LIBMSPUB_TRUE@am__EXEEXT_6 = pub2odg$(EXEEXT)
@USE_LIBMWAW_TRUE@am__EXEEXT_7 = mwaw2odf$(EXEEXT)
-@USE_LIBFREEHAND_TRUE@am__EXEEXT_8 = fh2odg$(EXEEXT)
-@USE_LIBETONYEK_TRUE@am__EXEEXT_9 = key2odp$(EXEEXT) \
-@USE_LIBETONYEK_TRUE@ numbers2ods$(EXEEXT) pages2odt$(EXEEXT)
-@USE_LIBEBOOK_TRUE@am__EXEEXT_10 = ebook2odt$(EXEEXT)
-@USE_LIBABW_TRUE@am__EXEEXT_11 = abw2odt$(EXEEXT)
-@USE_LIBPAGEMAKER_TRUE@am__EXEEXT_12 = pmd2odg$(EXEEXT)
-@USE_LIBSTAROFFICE_TRUE@am__EXEEXT_13 = sd2odf$(EXEEXT)
+@USE_LIBPAGEMAKER_TRUE@am__EXEEXT_8 = pmd2odg$(EXEEXT)
+@USE_LIBQXP_TRUE@am__EXEEXT_9 = qxp2odg$(EXEEXT)
+@USE_LIBSTAROFFICE_TRUE@am__EXEEXT_10 = sd2odf$(EXEEXT)
+@USE_LIBVISIO_TRUE@am__EXEEXT_11 = vsd2odg$(EXEEXT) vss2odg$(EXEEXT)
+@USE_LIBWPD_TRUE@am__EXEEXT_12 = wpd2odt$(EXEEXT)
+@USE_LIBWPG_TRUE@am__EXEEXT_13 = wpg2odg$(EXEEXT)
+@USE_LIBWPS_TRUE@am__EXEEXT_14 = wps2odt$(EXEEXT) wks2ods$(EXEEXT)
+@USE_LIBZMF_TRUE@am__EXEEXT_15 = zmf2odg$(EXEEXT)
am__installdirs = "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS)
-am_abw2odt_OBJECTS = abw2odt-abw2odt.$(OBJEXT)
+am__abw2odt_SOURCES_DIST = abw2odt.cxx
+@USE_LIBABW_TRUE@am_abw2odt_OBJECTS = abw2odt-abw2odt.$(OBJEXT)
abw2odt_OBJECTS = $(am_abw2odt_OBJECTS)
-am_cdr2odg_OBJECTS = cdr2odg-cdr2odg.$(OBJEXT)
+am__cdr2odg_SOURCES_DIST = cdr2odg.cxx
+@USE_LIBCDR_TRUE@am_cdr2odg_OBJECTS = cdr2odg-cdr2odg.$(OBJEXT)
cdr2odg_OBJECTS = $(am_cdr2odg_OBJECTS)
-am_cmx2odg_OBJECTS = cmx2odg-cmx2odg.$(OBJEXT)
+am__cmx2odg_SOURCES_DIST = cmx2odg.cxx
+@USE_LIBCDR_TRUE@am_cmx2odg_OBJECTS = cmx2odg-cmx2odg.$(OBJEXT)
cmx2odg_OBJECTS = $(am_cmx2odg_OBJECTS)
-am_ebook2odt_OBJECTS = ebook2odt-ebook2odt.$(OBJEXT)
+am__ebook2odt_SOURCES_DIST = ebook2odt.cxx
+@USE_LIBEBOOK_TRUE@am_ebook2odt_OBJECTS = \
+@USE_LIBEBOOK_TRUE@ ebook2odt-ebook2odt.$(OBJEXT)
ebook2odt_OBJECTS = $(am_ebook2odt_OBJECTS)
-am_fh2odg_OBJECTS = fh2odg-fh2odg.$(OBJEXT)
+am__fh2odg_SOURCES_DIST = fh2odg.cxx
+@USE_LIBFREEHAND_TRUE@am_fh2odg_OBJECTS = fh2odg-fh2odg.$(OBJEXT)
fh2odg_OBJECTS = $(am_fh2odg_OBJECTS)
-am_key2odp_OBJECTS = key2odp-key2odp.$(OBJEXT)
+am__key2odp_SOURCES_DIST = key2odp.cxx
+@USE_LIBETONYEK_TRUE@am_key2odp_OBJECTS = key2odp-key2odp.$(OBJEXT)
key2odp_OBJECTS = $(am_key2odp_OBJECTS)
-am_mwaw2odf_OBJECTS = mwaw2odf-mwaw2odf.$(OBJEXT)
+am__mwaw2odf_SOURCES_DIST = mwaw2odf.cxx
+@USE_LIBMWAW_TRUE@am_mwaw2odf_OBJECTS = mwaw2odf-mwaw2odf.$(OBJEXT)
mwaw2odf_OBJECTS = $(am_mwaw2odf_OBJECTS)
-am_numbers2ods_OBJECTS = numbers2ods-numbers2ods.$(OBJEXT)
+am__numbers2ods_SOURCES_DIST = numbers2ods.cxx
+@USE_LIBETONYEK_TRUE@am_numbers2ods_OBJECTS = \
+@USE_LIBETONYEK_TRUE@ numbers2ods-numbers2ods.$(OBJEXT)
numbers2ods_OBJECTS = $(am_numbers2ods_OBJECTS)
-am_pages2odt_OBJECTS = pages2odt-pages2odt.$(OBJEXT)
+am__pages2odt_SOURCES_DIST = pages2odt.cxx
+@USE_LIBETONYEK_TRUE@am_pages2odt_OBJECTS = \
+@USE_LIBETONYEK_TRUE@ pages2odt-pages2odt.$(OBJEXT)
pages2odt_OBJECTS = $(am_pages2odt_OBJECTS)
-am_pmd2odg_OBJECTS = pmd2odg-pmd2odg.$(OBJEXT)
+am__pmd2odg_SOURCES_DIST = pmd2odg.cxx
+@USE_LIBPAGEMAKER_TRUE@am_pmd2odg_OBJECTS = pmd2odg-pmd2odg.$(OBJEXT)
pmd2odg_OBJECTS = $(am_pmd2odg_OBJECTS)
-am_pub2odg_OBJECTS = pub2odg-pub2odg.$(OBJEXT)
+am__pub2odg_SOURCES_DIST = pub2odg.cxx
+@USE_LIBMSPUB_TRUE@am_pub2odg_OBJECTS = pub2odg-pub2odg.$(OBJEXT)
pub2odg_OBJECTS = $(am_pub2odg_OBJECTS)
-am_sd2odf_OBJECTS = sd2odf-sd2odf.$(OBJEXT)
+am__qxp2odg_SOURCES_DIST = qxp2odg.cxx
+@USE_LIBQXP_TRUE@am_qxp2odg_OBJECTS = qxp2odg-qxp2odg.$(OBJEXT)
+qxp2odg_OBJECTS = $(am_qxp2odg_OBJECTS)
+am__sd2odf_SOURCES_DIST = sd2odf.cxx
+@USE_LIBSTAROFFICE_TRUE@am_sd2odf_OBJECTS = sd2odf-sd2odf.$(OBJEXT)
sd2odf_OBJECTS = $(am_sd2odf_OBJECTS)
-am_vsd2odg_OBJECTS = vsd2odg-vsd2odg.$(OBJEXT)
+am__vsd2odg_SOURCES_DIST = vsd2odg.cxx
+@USE_LIBVISIO_TRUE@am_vsd2odg_OBJECTS = vsd2odg-vsd2odg.$(OBJEXT)
vsd2odg_OBJECTS = $(am_vsd2odg_OBJECTS)
-am_vss2odg_OBJECTS = vss2odg-vss2odg.$(OBJEXT)
+am__vss2odg_SOURCES_DIST = vss2odg.cxx
+@USE_LIBVISIO_TRUE@am_vss2odg_OBJECTS = vss2odg-vss2odg.$(OBJEXT)
vss2odg_OBJECTS = $(am_vss2odg_OBJECTS)
-am_wks2ods_OBJECTS = wks2ods-wks2ods.$(OBJEXT)
+am__wks2ods_SOURCES_DIST = wks2ods.cxx
+@USE_LIBWPS_TRUE@am_wks2ods_OBJECTS = wks2ods-wks2ods.$(OBJEXT)
wks2ods_OBJECTS = $(am_wks2ods_OBJECTS)
-am_wpd2odt_OBJECTS = wpd2odt-wpd2odt.$(OBJEXT)
+am__wpd2odt_SOURCES_DIST = wpd2odt.cxx
+@USE_LIBWPD_TRUE@am_wpd2odt_OBJECTS = wpd2odt-wpd2odt.$(OBJEXT)
wpd2odt_OBJECTS = $(am_wpd2odt_OBJECTS)
-am_wpg2odg_OBJECTS = wpg2odg-wpg2odg.$(OBJEXT)
+am_wpft2odf_OBJECTS = wpft2odf-wpft2odf.$(OBJEXT)
+wpft2odf_OBJECTS = $(am_wpft2odf_OBJECTS)
+@USE_LIBABW_TRUE@am__DEPENDENCIES_2 = $(wrapper_dir)/libwpabw.la \
+@USE_LIBABW_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBCDR_TRUE@am__DEPENDENCIES_3 = $(wrapper_dir)/libwpcdr.la \
+@USE_LIBCDR_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBEBOOK_TRUE@am__DEPENDENCIES_4 = $(wrapper_dir)/libwpebook.la \
+@USE_LIBEBOOK_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBETONYEK_TRUE@am__DEPENDENCIES_5 = \
+@USE_LIBETONYEK_TRUE@ $(wrapper_dir)/libwpetonyek.la \
+@USE_LIBETONYEK_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBFREEHAND_TRUE@am__DEPENDENCIES_6 = \
+@USE_LIBFREEHAND_TRUE@ $(wrapper_dir)/libwpfreehand.la \
+@USE_LIBFREEHAND_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBMSPUB_TRUE@am__DEPENDENCIES_7 = libodfmspub.la \
+@USE_LIBMSPUB_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+@USE_LIBMWAW_TRUE@am__DEPENDENCIES_8 = libodfmwaw.la \
+@USE_LIBMWAW_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBPAGEMAKER_TRUE@am__DEPENDENCIES_9 = \
+@USE_LIBPAGEMAKER_TRUE@ $(wrapper_dir)/libwppagemaker.la \
+@USE_LIBPAGEMAKER_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBQXP_TRUE@am__DEPENDENCIES_10 = $(wrapper_dir)/libwpqxp.la \
+@USE_LIBQXP_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBSTAROFFICE_TRUE@am__DEPENDENCIES_11 = libodfstaroffice.la \
+@USE_LIBSTAROFFICE_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBVISIO_TRUE@am__DEPENDENCIES_12 = $(wrapper_dir)/libwpvisio.la \
+@USE_LIBVISIO_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBWPD_TRUE@am__DEPENDENCIES_13 = libodfwpd.la \
+@USE_LIBWPD_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBWPG_TRUE@am__DEPENDENCIES_14 = $(wrapper_dir)/libwpwpg.la \
+@USE_LIBWPG_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBWPS_TRUE@am__DEPENDENCIES_15 = libodfwps.la \
+@USE_LIBWPS_TRUE@ $(am__DEPENDENCIES_1)
+@USE_LIBZMF_TRUE@am__DEPENDENCIES_16 = $(wrapper_dir)/libwpzmf.la \
+@USE_LIBZMF_TRUE@ $(am__DEPENDENCIES_1)
+am__wpg2odg_SOURCES_DIST = wpg2odg.cxx
+@USE_LIBWPG_TRUE@am_wpg2odg_OBJECTS = wpg2odg-wpg2odg.$(OBJEXT)
wpg2odg_OBJECTS = $(am_wpg2odg_OBJECTS)
-am_wps2odt_OBJECTS = wps2odt-wps2odt.$(OBJEXT)
+am__wps2odt_SOURCES_DIST = wps2odt.cxx
+@USE_LIBWPS_TRUE@am_wps2odt_OBJECTS = wps2odt-wps2odt.$(OBJEXT)
wps2odt_OBJECTS = $(am_wps2odt_OBJECTS)
+am__zmf2odg_SOURCES_DIST = zmf2odg.cxx
+@USE_LIBZMF_TRUE@am_zmf2odg_OBJECTS = zmf2odg-zmf2odg.$(OBJEXT)
+zmf2odg_OBJECTS = $(am_zmf2odg_OBJECTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
@@ -238,20 +385,33 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
-SOURCES = $(libodfhelper_la_SOURCES) $(abw2odt_SOURCES) \
- $(cdr2odg_SOURCES) $(cmx2odg_SOURCES) $(ebook2odt_SOURCES) \
- $(fh2odg_SOURCES) $(key2odp_SOURCES) $(mwaw2odf_SOURCES) \
- $(numbers2ods_SOURCES) $(pages2odt_SOURCES) $(pmd2odg_SOURCES) \
- $(pub2odg_SOURCES) $(sd2odf_SOURCES) $(vsd2odg_SOURCES) \
- $(vss2odg_SOURCES) $(wks2ods_SOURCES) $(wpd2odt_SOURCES) \
- $(wpg2odg_SOURCES) $(wps2odt_SOURCES)
-DIST_SOURCES = $(libodfhelper_la_SOURCES) $(abw2odt_SOURCES) \
- $(cdr2odg_SOURCES) $(cmx2odg_SOURCES) $(ebook2odt_SOURCES) \
- $(fh2odg_SOURCES) $(key2odp_SOURCES) $(mwaw2odf_SOURCES) \
- $(numbers2ods_SOURCES) $(pages2odt_SOURCES) $(pmd2odg_SOURCES) \
- $(pub2odg_SOURCES) $(sd2odf_SOURCES) $(vsd2odg_SOURCES) \
+SOURCES = $(libodfhelper_la_SOURCES) $(libodfmspub_la_SOURCES) \
+ $(libodfmwaw_la_SOURCES) $(libodfstaroffice_la_SOURCES) \
+ $(libodfwpd_la_SOURCES) $(libodfwps_la_SOURCES) \
+ $(abw2odt_SOURCES) $(cdr2odg_SOURCES) $(cmx2odg_SOURCES) \
+ $(ebook2odt_SOURCES) $(fh2odg_SOURCES) $(key2odp_SOURCES) \
+ $(mwaw2odf_SOURCES) $(numbers2ods_SOURCES) \
+ $(pages2odt_SOURCES) $(pmd2odg_SOURCES) $(pub2odg_SOURCES) \
+ $(qxp2odg_SOURCES) $(sd2odf_SOURCES) $(vsd2odg_SOURCES) \
$(vss2odg_SOURCES) $(wks2ods_SOURCES) $(wpd2odt_SOURCES) \
- $(wpg2odg_SOURCES) $(wps2odt_SOURCES)
+ $(wpft2odf_SOURCES) $(wpg2odg_SOURCES) $(wps2odt_SOURCES) \
+ $(zmf2odg_SOURCES)
+DIST_SOURCES = $(libodfhelper_la_SOURCES) \
+ $(am__libodfmspub_la_SOURCES_DIST) \
+ $(am__libodfmwaw_la_SOURCES_DIST) \
+ $(am__libodfstaroffice_la_SOURCES_DIST) \
+ $(am__libodfwpd_la_SOURCES_DIST) \
+ $(am__libodfwps_la_SOURCES_DIST) $(am__abw2odt_SOURCES_DIST) \
+ $(am__cdr2odg_SOURCES_DIST) $(am__cmx2odg_SOURCES_DIST) \
+ $(am__ebook2odt_SOURCES_DIST) $(am__fh2odg_SOURCES_DIST) \
+ $(am__key2odp_SOURCES_DIST) $(am__mwaw2odf_SOURCES_DIST) \
+ $(am__numbers2ods_SOURCES_DIST) $(am__pages2odt_SOURCES_DIST) \
+ $(am__pmd2odg_SOURCES_DIST) $(am__pub2odg_SOURCES_DIST) \
+ $(am__qxp2odg_SOURCES_DIST) $(am__sd2odf_SOURCES_DIST) \
+ $(am__vsd2odg_SOURCES_DIST) $(am__vss2odg_SOURCES_DIST) \
+ $(am__wks2ods_SOURCES_DIST) $(am__wpd2odt_SOURCES_DIST) \
+ $(wpft2odf_SOURCES) $(am__wpg2odg_SOURCES_DIST) \
+ $(am__wps2odt_SOURCES_DIST) $(am__zmf2odg_SOURCES_DIST)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -282,10 +442,12 @@ am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/abw2odt.rc.in \
$(srcdir)/key2odp.rc.in $(srcdir)/mwaw2odf.rc.in \
$(srcdir)/numbers2ods.rc.in $(srcdir)/pages2odt.rc.in \
$(srcdir)/pmd2odg.rc.in $(srcdir)/pub2odg.rc.in \
- $(srcdir)/sd2odf.rc.in $(srcdir)/vsd2odg.rc.in \
- $(srcdir)/vss2odg.rc.in $(srcdir)/wks2ods.rc.in \
- $(srcdir)/wpd2odt.rc.in $(srcdir)/wpg2odg.rc.in \
- $(srcdir)/wps2odt.rc.in $(top_srcdir)/depcomp
+ $(srcdir)/qxp2odg.rc.in $(srcdir)/sd2odf.rc.in \
+ $(srcdir)/vsd2odg.rc.in $(srcdir)/vss2odg.rc.in \
+ $(srcdir)/wks2ods.rc.in $(srcdir)/wpd2odt.rc.in \
+ $(srcdir)/wpft2odf.rc.in $(srcdir)/wpg2odg.rc.in \
+ $(srcdir)/wps2odt.rc.in $(srcdir)/zmf2odg.rc.in \
+ $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ABW2ABW_WIN32_RESOURCE = @ABW2ABW_WIN32_RESOURCE@
ABW2EPUB_WIN32_RESOURCE = @ABW2EPUB_WIN32_RESOURCE@
@@ -333,7 +495,6 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EOT_CFLAGS = @EOT_CFLAGS@
-EOT_CPPFLAGS = @EOT_CPPFLAGS@
EOT_LIBS = @EOT_LIBS@
EPUBGEN_CFLAGS = @EPUBGEN_CFLAGS@
EPUBGEN_LIBS = @EPUBGEN_LIBS@
@@ -348,6 +509,7 @@ FREEHAND_LIBS = @FREEHAND_LIBS@
GREP = @GREP@
GSF_CFLAGS = @GSF_CFLAGS@
GSF_LIBS = @GSF_LIBS@
+HAVE_CXX11 = @HAVE_CXX11@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -406,6 +568,10 @@ PMD2EPUB_WIN32_RESOURCE = @PMD2EPUB_WIN32_RESOURCE@
PMD2ODG_WIN32_RESOURCE = @PMD2ODG_WIN32_RESOURCE@
PUB2EPUB_WIN32_RESOURCE = @PUB2EPUB_WIN32_RESOURCE@
PUB2ODG_WIN32_RESOURCE = @PUB2ODG_WIN32_RESOURCE@
+QXP2EPUB_WIN32_RESOURCE = @QXP2EPUB_WIN32_RESOURCE@
+QXP2ODG_WIN32_RESOURCE = @QXP2ODG_WIN32_RESOURCE@
+QXP_CFLAGS = @QXP_CFLAGS@
+QXP_LIBS = @QXP_LIBS@
RANLIB = @RANLIB@
REVENGE_CFLAGS = @REVENGE_CFLAGS@
REVENGE_LIBS = @REVENGE_LIBS@
@@ -413,6 +579,8 @@ REVENGE_STREAM_CFLAGS = @REVENGE_STREAM_CFLAGS@
REVENGE_STREAM_LIBS = @REVENGE_STREAM_LIBS@
RVNGABW_CFLAGS = @RVNGABW_CFLAGS@
RVNGABW_LIBS = @RVNGABW_LIBS@
+SD2ABW_WIN32_RESOURCE = @SD2ABW_WIN32_RESOURCE@
+SD2EPUB_WIN32_RESOURCE = @SD2EPUB_WIN32_RESOURCE@
SD2ODF_WIN32_RESOURCE = @SD2ODF_WIN32_RESOURCE@
SED = @SED@
SET_MAKE = @SET_MAKE@
@@ -434,6 +602,9 @@ WPD2EPUB_WIN32_RESOURCE = @WPD2EPUB_WIN32_RESOURCE@
WPD2ODT_WIN32_RESOURCE = @WPD2ODT_WIN32_RESOURCE@
WPD_CFLAGS = @WPD_CFLAGS@
WPD_LIBS = @WPD_LIBS@
+WPFT2ABW_WIN32_RESOURCE = @WPFT2ABW_WIN32_RESOURCE@
+WPFT2EPUB_WIN32_RESOURCE = @WPFT2EPUB_WIN32_RESOURCE@
+WPFT2ODF_WIN32_RESOURCE = @WPFT2ODF_WIN32_RESOURCE@
WPG2EPUB_WIN32_RESOURCE = @WPG2EPUB_WIN32_RESOURCE@
WPG2ODG_WIN32_RESOURCE = @WPG2ODG_WIN32_RESOURCE@
WPG_CFLAGS = @WPG_CFLAGS@
@@ -447,6 +618,11 @@ WRITERPERFECT_MAJOR_VERSION = @WRITERPERFECT_MAJOR_VERSION@
WRITERPERFECT_MICRO_VERSION = @WRITERPERFECT_MICRO_VERSION@
WRITERPERFECT_MINOR_VERSION = @WRITERPERFECT_MINOR_VERSION@
WRITERPERFECT_VERSION = @WRITERPERFECT_VERSION@
+XATTR_CFLAGS = @XATTR_CFLAGS@
+ZMF2EPUB_WIN32_RESOURCE = @ZMF2EPUB_WIN32_RESOURCE@
+ZMF2ODG_WIN32_RESOURCE = @ZMF2ODG_WIN32_RESOURCE@
+ZMF_CFLAGS = @ZMF_CFLAGS@
+ZMF_LIBS = @ZMF_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
@@ -500,126 +676,139 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
+wrapper_dir = $(top_builddir)/src/conv/wrapper
+noinst_LTLIBRARIES = libodfhelper.la $(am__append_16) $(am__append_21) \
+ $(am__append_32) $(am__append_40) $(am__append_48)
AM_CXXFLAGS = \
-I$(top_srcdir)/src/lib \
+ -I$(top_srcdir)/src/conv/wrapper \
+ $(REVENGE_CFLAGS) \
$(ODFGEN_CFLAGS) \
$(DEBUG_CXXFLAGS)
-noinst_LTLIBRARIES = libodfhelper.la
libodfhelper_la_LIBADD = $(top_builddir)/src/lib/libwriterperfect_internal.la $(ODFGEN_LIBS)
libodfhelper_la_SOURCES = \
- StringDocumentHandler.hxx \
- StringDocumentHandler.cxx
-
-wpd2odt_DEPENDENCIES = @WPD2ODT_WIN32_RESOURCE@ libodfhelper.la
-wpd2odt_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
-wpd2odt_LDADD = @WPD2ODT_WIN32_RESOURCE@ libodfhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpd2odt_SOURCES = \
- wpd2odt.cxx
-
-wks2ods_DEPENDENCIES = @WKS2ODS_WIN32_RESOURCE@ libodfhelper.la
-wks2ods_CPPFLAGS = $(WPS_CFLAGS)
-wks2ods_LDADD = @WKS2ODS_WIN32_RESOURCE@ libodfhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
-wks2ods_SOURCES = \
- wks2ods.cxx
-
-wps2odt_DEPENDENCIES = @WPS2ODT_WIN32_RESOURCE@ libodfhelper.la
-wps2odt_CPPFLAGS = $(WPS_CFLAGS)
-wps2odt_LDADD = @WPS2ODT_WIN32_RESOURCE@ libodfhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
-wps2odt_SOURCES = \
- wps2odt.cxx
-
-wpg2odg_DEPENDENCIES = @WPG2ODG_WIN32_RESOURCE@ libodfhelper.la
-wpg2odg_CPPFLAGS = $(WPG_CFLAGS)
-wpg2odg_LDADD = @WPG2ODG_WIN32_RESOURCE@ libodfhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
-wpg2odg_SOURCES = \
- wpg2odg.cxx
-
-vsd2odg_DEPENDENCIES = @VSD2ODG_WIN32_RESOURCE@ libodfhelper.la
-vsd2odg_CPPFLAGS = $(VISIO_CFLAGS)
-vsd2odg_LDADD = @VSD2ODG_WIN32_RESOURCE@ libodfhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
-vsd2odg_SOURCES = \
- vsd2odg.cxx
-
-vss2odg_DEPENDENCIES = @VSS2ODG_WIN32_RESOURCE@ libodfhelper.la
-vss2odg_CPPFLAGS = $(VISIO_CFLAGS)
-vss2odg_LDADD = @VSD2ODG_WIN32_RESOURCE@ libodfhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
-vss2odg_SOURCES = \
- vss2odg.cxx
-
-cdr2odg_DEPENDENCIES = @CDR2ODG_WIN32_RESOURCE@ libodfhelper.la
-cdr2odg_CPPFLAGS = $(CDR_CFLAGS)
-cdr2odg_LDADD = @CDR2ODG_WIN32_RESOURCE@ libodfhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
-cdr2odg_SOURCES = \
- cdr2odg.cxx
-
-cmx2odg_DEPENDENCIES = @CMX2ODG_WIN32_RESOURCE@ libodfhelper.la
-cmx2odg_CPPFLAGS = $(CDR_CFLAGS)
-cmx2odg_LDADD = @CDR2ODG_WIN32_RESOURCE@ libodfhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
-cmx2odg_SOURCES = \
- cmx2odg.cxx
-
-pub2odg_DEPENDENCIES = @PUB2ODG_WIN32_RESOURCE@ libodfhelper.la
-pub2odg_CPPFLAGS = $(MSPUB_CFLAGS) $(EOT_CPPFLAGS)
-pub2odg_CFLAGS = $(EOT_CFLAGS)
-pub2odg_LDADD = @PUB2ODG_WIN32_RESOURCE@ libodfhelper.la $(MSPUB_LIBS) $(REVENGE_STREAM_LIBS) $(EOT_LIBS)
-pub2odg_SOURCES = \
- pub2odg.cxx
-
-pmd2odg_DEPENDENCIES = @PMD2ODG_WIN32_RESOURCE@ libodfhelper.la
-pmd2odg_CPPFLAGS = $(PAGEMAKER_CFLAGS)
-pmd2odg_LDADD = @PMD2ODG_WIN32_RESOURCE@ libodfhelper.la $(PAGEMAKER_LIBS) $(REVENGE_STREAM_LIBS)
-pmd2odg_SOURCES = \
- pmd2odg.cxx
-
-mwaw2odf_DEPENDENCIES = @MWAW2ODF_WIN32_RESOURCE@ libodfhelper.la
-mwaw2odf_CPPFLAGS = $(MWAW_CFLAGS)
-mwaw2odf_LDADD = @MWAW2ODF_WIN32_RESOURCE@ libodfhelper.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
-mwaw2odf_SOURCES = \
- mwaw2odf.cxx
-
-fh2odg_DEPENDENCIES = @FH2ODG_WIN32_RESOURCE@ libodfhelper.la
-fh2odg_CPPFLAGS = $(FREEHAND_CFLAGS)
-fh2odg_LDADD = @FH2ODG_WIN32_RESOURCE@ libodfhelper.la $(FREEHAND_LIBS) $(REVENGE_STREAM_LIBS)
-fh2odg_SOURCES = \
- fh2odg.cxx
-
-key2odp_DEPENDENCIES = @KEY2ODP_WIN32_RESOURCE@ libodfhelper.la
-key2odp_CPPFLAGS = $(ETONYEK_CFLAGS)
-key2odp_LDADD = @KEY2ODP_WIN32_RESOURCE@ libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-key2odp_SOURCES = \
- key2odp.cxx
-
-ebook2odt_DEPENDENCIES = @EBOOK2ODT_WIN32_RESOURCE@ libodfhelper.la
-ebook2odt_CPPFLAGS = $(EBOOK_CFLAGS)
-ebook2odt_LDADD = @EBOOK2ODT_WIN32_RESOURCE@ libodfhelper.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
-ebook2odt_SOURCES = \
- ebook2odt.cxx
-
-abw2odt_DEPENDENCIES = @ABW2ODT_WIN32_RESOURCE@ libodfhelper.la
-abw2odt_CPPFLAGS = $(ABW_CFLAGS)
-abw2odt_LDADD = @ABW2ODT_WIN32_RESOURCE@ libodfhelper.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
-abw2odt_SOURCES = \
- abw2odt.cxx
-
-pages2odt_DEPENDENCIES = @PAGES2ODT_WIN32_RESOURCE@ libodfhelper.la
-pages2odt_CPPFLAGS = $(ETONYEK_CFLAGS)
-pages2odt_LDADD = @PAGES2ODT_WIN32_RESOURCE@ libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-pages2odt_SOURCES = \
- pages2odt.cxx
-
-numbers2ods_DEPENDENCIES = @NUMBERS2ODS_WIN32_RESOURCE@ libodfhelper.la
-numbers2ods_CPPFLAGS = $(ETONYEK_CFLAGS)
-numbers2ods_LDADD = @NUMBERS2ODS_WIN32_RESOURCE@ libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
-numbers2ods_SOURCES = \
- numbers2ods.cxx
-
-sd2odf_DEPENDENCIES = @SD2ODF_WIN32_RESOURCE@ libodfhelper.la
-sd2odf_CPPFLAGS = $(STAROFFICE_CFLAGS)
-sd2odf_LDADD = @SD2ODF_WIN32_RESOURCE@ libodfhelper.la $(STAROFFICE_LIBS) $(REVENGE_STREAM_LIBS)
-sd2odf_SOURCES = \
- sd2odf.cxx
-
+ OdfConverter.hxx \
+ OdfConverter.cxx \
+ OdfPackage.hxx \
+ OdfPackage.cxx \
+ OdfWrapper.hxx \
+ OdfWrapper.cxx
+
+wpft2odf_DEPENDENCIES = @WPFT2ODF_WIN32_RESOURCE@ libodfhelper.la \
+ $(am__append_17) $(am__append_22) $(am__append_33) \
+ $(am__append_41) $(am__append_49)
+wpft2odf_CPPFLAGS = $(REVENGE_STREAM_CFLAGS) $(am__append_1) \
+ $(am__append_4) $(am__append_7) $(am__append_10) \
+ $(am__append_13) $(am__append_18) $(am__append_23) \
+ $(am__append_26) $(am__append_29) $(am__append_34) \
+ $(am__append_37) $(am__append_42) $(am__append_45) \
+ $(am__append_50) $(am__append_53)
+wpft2odf_LDADD = $(REVENGE_STREAM_LIBS) $(am__append_2) \
+ $(am__append_5) $(am__append_8) $(am__append_11) \
+ $(am__append_14) $(am__append_19) $(am__append_24) \
+ $(am__append_27) $(am__append_30) $(am__append_35) \
+ $(am__append_38) $(am__append_43) $(am__append_46) \
+ $(am__append_51) $(am__append_54) libodfhelper.la \
+ $(REVENGE_STREAM_LIBS)
+wpft2odf_SOURCES = wpft2odf.cxx
+@USE_LIBABW_TRUE@abw2odt_DEPENDENCIES = @ABW2ODT_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBABW_TRUE@abw2odt_CPPFLAGS = $(ABW_CFLAGS)
+@USE_LIBABW_TRUE@abw2odt_LDADD = @ABW2ODT_WIN32_RESOURCE@ $(wrapper_dir)/libwpabw.la libodfhelper.la $(ABW_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBABW_TRUE@abw2odt_SOURCES = abw2odt.cxx
+@USE_LIBCDR_TRUE@cdr2odg_DEPENDENCIES = @CDR2ODG_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBCDR_TRUE@cdr2odg_CPPFLAGS = $(CDR_CFLAGS)
+@USE_LIBCDR_TRUE@cdr2odg_LDADD = @CDR2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpcdr.la libodfhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBCDR_TRUE@cdr2odg_SOURCES = cdr2odg.cxx
+@USE_LIBCDR_TRUE@cmx2odg_DEPENDENCIES = @CMX2ODG_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBCDR_TRUE@cmx2odg_CPPFLAGS = $(CDR_CFLAGS)
+@USE_LIBCDR_TRUE@cmx2odg_LDADD = @CDR2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpcdr.la libodfhelper.la $(CDR_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBCDR_TRUE@cmx2odg_SOURCES = cmx2odg.cxx
+@USE_LIBEBOOK_TRUE@ebook2odt_DEPENDENCIES = @EBOOK2ODT_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBEBOOK_TRUE@ebook2odt_CPPFLAGS = $(EBOOK_CFLAGS)
+@USE_LIBEBOOK_TRUE@ebook2odt_LDADD = @EBOOK2ODT_WIN32_RESOURCE@ $(wrapper_dir)/libwpebook.la libodfhelper.la $(EBOOK_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBEBOOK_TRUE@ebook2odt_SOURCES = ebook2odt.cxx
+@USE_LIBETONYEK_TRUE@key2odp_DEPENDENCIES = @KEY2ODP_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBETONYEK_TRUE@key2odp_CPPFLAGS = $(ETONYEK_CFLAGS)
+@USE_LIBETONYEK_TRUE@key2odp_LDADD = @KEY2ODP_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBETONYEK_TRUE@key2odp_SOURCES = key2odp.cxx
+@USE_LIBETONYEK_TRUE@pages2odt_DEPENDENCIES = @PAGES2ODT_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBETONYEK_TRUE@pages2odt_CPPFLAGS = $(ETONYEK_CFLAGS)
+@USE_LIBETONYEK_TRUE@pages2odt_LDADD = @PAGES2ODT_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBETONYEK_TRUE@pages2odt_SOURCES = pages2odt.cxx
+@USE_LIBETONYEK_TRUE@numbers2ods_DEPENDENCIES = @NUMBERS2ODS_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBETONYEK_TRUE@numbers2ods_CPPFLAGS = $(ETONYEK_CFLAGS)
+@USE_LIBETONYEK_TRUE@numbers2ods_LDADD = @NUMBERS2ODS_WIN32_RESOURCE@ $(wrapper_dir)/libwpetonyek.la libodfhelper.la $(ETONYEK_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBETONYEK_TRUE@numbers2ods_SOURCES = numbers2ods.cxx
+@USE_LIBFREEHAND_TRUE@fh2odg_DEPENDENCIES = @FH2ODG_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBFREEHAND_TRUE@fh2odg_CPPFLAGS = $(FREEHAND_CFLAGS)
+@USE_LIBFREEHAND_TRUE@fh2odg_LDADD = @FH2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpfreehand.la libodfhelper.la $(FREEHAND_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBFREEHAND_TRUE@fh2odg_SOURCES = fh2odg.cxx
+@USE_LIBMSPUB_TRUE@libodfmspub_la_LIBADD = $(wrapper_dir)/libwpmspub.la
+@USE_LIBMSPUB_TRUE@libodfmspub_la_CPPFLAGS = $(MSPUB_CFLAGS)
+@USE_LIBMSPUB_TRUE@libodfmspub_la_SOURCES = OdfWrapperMSPUB.hxx OdfWrapperMSPUB.cxx
+@USE_LIBMSPUB_TRUE@wpft2odf_CFLAGS = $(EOT_CFLAGS)
+@USE_LIBMSPUB_TRUE@pub2odg_DEPENDENCIES = @PUB2ODG_WIN32_RESOURCE@ libodfhelper.la libodfmspub.la
+@USE_LIBMSPUB_TRUE@pub2odg_CPPFLAGS = $(MSPUB_CFLAGS)
+@USE_LIBMSPUB_TRUE@pub2odg_CFLAGS = $(EOT_CFLAGS)
+@USE_LIBMSPUB_TRUE@pub2odg_LDADD = @PUB2ODG_WIN32_RESOURCE@ libodfmspub.la libodfhelper.la $(MSPUB_LIBS) $(REVENGE_STREAM_LIBS) $(EOT_LIBS)
+@USE_LIBMSPUB_TRUE@pub2odg_SOURCES = pub2odg.cxx
+@USE_LIBMWAW_TRUE@libodfmwaw_la_LIBADD = $(wrapper_dir)/libwpmwaw.la
+@USE_LIBMWAW_TRUE@libodfmwaw_la_CPPFLAGS = $(MWAW_CFLAGS)
+@USE_LIBMWAW_TRUE@libodfmwaw_la_SOURCES = OdfWrapperMWAW.hxx OdfWrapperMWAW.cxx
+@USE_LIBMWAW_TRUE@mwaw2odf_DEPENDENCIES = @MWAW2ODF_WIN32_RESOURCE@ libodfhelper.la libodfmwaw.la
+@USE_LIBMWAW_TRUE@mwaw2odf_CPPFLAGS = $(MWAW_CFLAGS)
+@USE_LIBMWAW_TRUE@mwaw2odf_LDADD = @MWAW2ODF_WIN32_RESOURCE@ libodfmwaw.la libodfhelper.la $(MWAW_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBMWAW_TRUE@mwaw2odf_SOURCES = mwaw2odf.cxx
+@USE_LIBPAGEMAKER_TRUE@pmd2odg_DEPENDENCIES = @PMD2ODG_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBPAGEMAKER_TRUE@pmd2odg_CPPFLAGS = $(PAGEMAKER_CFLAGS)
+@USE_LIBPAGEMAKER_TRUE@pmd2odg_LDADD = @PMD2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwppagemaker.la libodfhelper.la $(PAGEMAKER_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBPAGEMAKER_TRUE@pmd2odg_SOURCES = pmd2odg.cxx
+@USE_LIBQXP_TRUE@qxp2odg_DEPENDENCIES = @QXP2ODG_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBQXP_TRUE@qxp2odg_CPPFLAGS = $(QXP_CFLAGS)
+@USE_LIBQXP_TRUE@qxp2odg_LDADD = @QXP2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpqxp.la libodfhelper.la $(QXP_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBQXP_TRUE@qxp2odg_SOURCES = qxp2odg.cxx
+@USE_LIBSTAROFFICE_TRUE@libodfstaroffice_la_LIBADD = $(wrapper_dir)/libwpstaroffice.la
+@USE_LIBSTAROFFICE_TRUE@libodfstaroffice_la_CPPFLAGS = $(STAROFFICE_CFLAGS)
+@USE_LIBSTAROFFICE_TRUE@libodfstaroffice_la_SOURCES = OdfWrapperSTAROFFICE.hxx OdfWrapperSTAROFFICE.cxx
+@USE_LIBSTAROFFICE_TRUE@sd2odf_DEPENDENCIES = @SD2ODF_WIN32_RESOURCE@ libodfhelper.la libodfstaroffice.la
+@USE_LIBSTAROFFICE_TRUE@sd2odf_CPPFLAGS = $(STAROFFICE_CFLAGS)
+@USE_LIBSTAROFFICE_TRUE@sd2odf_LDADD = @SD2ODF_WIN32_RESOURCE@ libodfstaroffice.la libodfhelper.la $(STAROFFICE_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBSTAROFFICE_TRUE@sd2odf_SOURCES = sd2odf.cxx
+@USE_LIBVISIO_TRUE@vsd2odg_DEPENDENCIES = @VSD2ODG_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBVISIO_TRUE@vsd2odg_CPPFLAGS = $(VISIO_CFLAGS)
+@USE_LIBVISIO_TRUE@vsd2odg_LDADD = @VSD2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpvisio.la libodfhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBVISIO_TRUE@vsd2odg_SOURCES = vsd2odg.cxx
+@USE_LIBVISIO_TRUE@vss2odg_DEPENDENCIES = @VSS2ODG_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBVISIO_TRUE@vss2odg_CPPFLAGS = $(VISIO_CFLAGS)
+@USE_LIBVISIO_TRUE@vss2odg_LDADD = @VSD2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpvisio.la libodfhelper.la $(VISIO_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBVISIO_TRUE@vss2odg_SOURCES = vss2odg.cxx
+@USE_LIBWPD_TRUE@libodfwpd_la_LIBADD = $(wrapper_dir)/libwpwpd.la
+@USE_LIBWPD_TRUE@libodfwpd_la_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
+@USE_LIBWPD_TRUE@libodfwpd_la_SOURCES = OdfWrapperWPD.hxx OdfWrapperWPD.cxx
+@USE_LIBWPD_TRUE@wpd2odt_DEPENDENCIES = @WPD2ODT_WIN32_RESOURCE@ libodfhelper.la libodfwpd.la
+@USE_LIBWPD_TRUE@wpd2odt_CPPFLAGS = $(WPD_CFLAGS) $(WPG_CFLAGS)
+@USE_LIBWPD_TRUE@wpd2odt_LDADD = @WPD2ODT_WIN32_RESOURCE@ libodfwpd.la libodfhelper.la $(WPG_LIBS) $(WPD_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBWPD_TRUE@wpd2odt_SOURCES = wpd2odt.cxx
+@USE_LIBWPG_TRUE@wpg2odg_DEPENDENCIES = @WPG2ODG_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBWPG_TRUE@wpg2odg_CPPFLAGS = $(WPG_CFLAGS)
+@USE_LIBWPG_TRUE@wpg2odg_LDADD = @WPG2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpwpg.la libodfhelper.la $(WPG_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBWPG_TRUE@wpg2odg_SOURCES = wpg2odg.cxx
+@USE_LIBWPS_TRUE@libodfwps_la_LIBADD = $(wrapper_dir)/libwpwps.la
+@USE_LIBWPS_TRUE@libodfwps_la_CPPFLAGS = $(WPS_CFLAGS)
+@USE_LIBWPS_TRUE@libodfwps_la_SOURCES = OdfWrapperWPS.hxx OdfWrapperWPS.cxx
+@USE_LIBWPS_TRUE@wks2ods_DEPENDENCIES = @WKS2ODS_WIN32_RESOURCE@ libodfhelper.la libodfwps.la
+@USE_LIBWPS_TRUE@wks2ods_CPPFLAGS = $(WPS_CFLAGS)
+@USE_LIBWPS_TRUE@wks2ods_LDADD = @WKS2ODS_WIN32_RESOURCE@ libodfwps.la libodfhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBWPS_TRUE@wks2ods_SOURCES = wks2ods.cxx
+@USE_LIBWPS_TRUE@wps2odt_DEPENDENCIES = @WPS2ODT_WIN32_RESOURCE@ libodfhelper.la libodfwps.la
+@USE_LIBWPS_TRUE@wps2odt_CPPFLAGS = $(WPS_CFLAGS)
+@USE_LIBWPS_TRUE@wps2odt_LDADD = @WPS2ODT_WIN32_RESOURCE@ libodfwps.la libodfhelper.la $(WPS_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBWPS_TRUE@wps2odt_SOURCES = wps2odt.cxx
+@USE_LIBZMF_TRUE@zmf2odg_DEPENDENCIES = @ZMF2ODG_WIN32_RESOURCE@ libodfhelper.la
+@USE_LIBZMF_TRUE@zmf2odg_CPPFLAGS = $(ZMF_CFLAGS)
+@USE_LIBZMF_TRUE@zmf2odg_LDADD = @ZMF2ODG_WIN32_RESOURCE@ $(wrapper_dir)/libwpzmf.la libodfhelper.la $(ZMF_LIBS) $(REVENGE_STREAM_LIBS)
+@USE_LIBZMF_TRUE@zmf2odg_SOURCES = zmf2odg.cxx
all: all-am
.SUFFIXES:
@@ -675,6 +864,8 @@ pub2odg.rc: $(top_builddir)/config.status $(srcdir)/pub2odg.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
pmd2odg.rc: $(top_builddir)/config.status $(srcdir)/pmd2odg.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+qxp2odg.rc: $(top_builddir)/config.status $(srcdir)/qxp2odg.rc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
sd2odf.rc: $(top_builddir)/config.status $(srcdir)/sd2odf.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
vsd2odg.rc: $(top_builddir)/config.status $(srcdir)/vsd2odg.rc.in
@@ -689,6 +880,10 @@ wpg2odg.rc: $(top_builddir)/config.status $(srcdir)/wpg2odg.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
wps2odt.rc: $(top_builddir)/config.status $(srcdir)/wps2odt.rc.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+zmf2odg.rc: $(top_builddir)/config.status $(srcdir)/zmf2odg.rc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+wpft2odf.rc: $(top_builddir)/config.status $(srcdir)/wpft2odf.rc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
clean-noinstLTLIBRARIES:
-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
@@ -703,6 +898,21 @@ clean-noinstLTLIBRARIES:
libodfhelper.la: $(libodfhelper_la_OBJECTS) $(libodfhelper_la_DEPENDENCIES) $(EXTRA_libodfhelper_la_DEPENDENCIES)
$(AM_V_CXXLD)$(CXXLINK) $(libodfhelper_la_OBJECTS) $(libodfhelper_la_LIBADD) $(LIBS)
+
+libodfmspub.la: $(libodfmspub_la_OBJECTS) $(libodfmspub_la_DEPENDENCIES) $(EXTRA_libodfmspub_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(am_libodfmspub_la_rpath) $(libodfmspub_la_OBJECTS) $(libodfmspub_la_LIBADD) $(LIBS)
+
+libodfmwaw.la: $(libodfmwaw_la_OBJECTS) $(libodfmwaw_la_DEPENDENCIES) $(EXTRA_libodfmwaw_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(am_libodfmwaw_la_rpath) $(libodfmwaw_la_OBJECTS) $(libodfmwaw_la_LIBADD) $(LIBS)
+
+libodfstaroffice.la: $(libodfstaroffice_la_OBJECTS) $(libodfstaroffice_la_DEPENDENCIES) $(EXTRA_libodfstaroffice_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(am_libodfstaroffice_la_rpath) $(libodfstaroffice_la_OBJECTS) $(libodfstaroffice_la_LIBADD) $(LIBS)
+
+libodfwpd.la: $(libodfwpd_la_OBJECTS) $(libodfwpd_la_DEPENDENCIES) $(EXTRA_libodfwpd_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(am_libodfwpd_la_rpath) $(libodfwpd_la_OBJECTS) $(libodfwpd_la_LIBADD) $(LIBS)
+
+libodfwps.la: $(libodfwps_la_OBJECTS) $(libodfwps_la_DEPENDENCIES) $(EXTRA_libodfwps_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(am_libodfwps_la_rpath) $(libodfwps_la_OBJECTS) $(libodfwps_la_LIBADD) $(LIBS)
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
@@ -797,6 +1007,10 @@ pub2odg$(EXEEXT): $(pub2odg_OBJECTS) $(pub2odg_DEPENDENCIES) $(EXTRA_pub2odg_DEP
@rm -f pub2odg$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(pub2odg_OBJECTS) $(pub2odg_LDADD) $(LIBS)
+qxp2odg$(EXEEXT): $(qxp2odg_OBJECTS) $(qxp2odg_DEPENDENCIES) $(EXTRA_qxp2odg_DEPENDENCIES)
+ @rm -f qxp2odg$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(qxp2odg_OBJECTS) $(qxp2odg_LDADD) $(LIBS)
+
sd2odf$(EXEEXT): $(sd2odf_OBJECTS) $(sd2odf_DEPENDENCIES) $(EXTRA_sd2odf_DEPENDENCIES)
@rm -f sd2odf$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(sd2odf_OBJECTS) $(sd2odf_LDADD) $(LIBS)
@@ -817,6 +1031,10 @@ wpd2odt$(EXEEXT): $(wpd2odt_OBJECTS) $(wpd2odt_DEPENDENCIES) $(EXTRA_wpd2odt_DEP
@rm -f wpd2odt$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(wpd2odt_OBJECTS) $(wpd2odt_LDADD) $(LIBS)
+wpft2odf$(EXEEXT): $(wpft2odf_OBJECTS) $(wpft2odf_DEPENDENCIES) $(EXTRA_wpft2odf_DEPENDENCIES)
+ @rm -f wpft2odf$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(wpft2odf_OBJECTS) $(wpft2odf_LDADD) $(LIBS)
+
wpg2odg$(EXEEXT): $(wpg2odg_OBJECTS) $(wpg2odg_DEPENDENCIES) $(EXTRA_wpg2odg_DEPENDENCIES)
@rm -f wpg2odg$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(wpg2odg_OBJECTS) $(wpg2odg_LDADD) $(LIBS)
@@ -825,31 +1043,45 @@ wps2odt$(EXEEXT): $(wps2odt_OBJECTS) $(wps2odt_DEPENDENCIES) $(EXTRA_wps2odt_DEP
@rm -f wps2odt$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(wps2odt_OBJECTS) $(wps2odt_LDADD) $(LIBS)
+zmf2odg$(EXEEXT): $(zmf2odg_OBJECTS) $(zmf2odg_DEPENDENCIES) $(EXTRA_zmf2odg_DEPENDENCIES)
+ @rm -f zmf2odg$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(zmf2odg_OBJECTS) $(zmf2odg_LDADD) $(LIBS)
+
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/StringDocumentHandler.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OdfConverter.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OdfPackage.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OdfWrapper.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/abw2odt-abw2odt.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cdr2odg-cdr2odg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cmx2odg-cmx2odg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ebook2odt-ebook2odt.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fh2odg-fh2odg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/key2odp-key2odp.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libodfmspub_la-OdfWrapperMSPUB.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libodfmwaw_la-OdfWrapperMWAW.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libodfstaroffice_la-OdfWrapperSTAROFFICE.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libodfwpd_la-OdfWrapperWPD.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libodfwps_la-OdfWrapperWPS.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mwaw2odf-mwaw2odf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/numbers2ods-numbers2ods.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pages2odt-pages2odt.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pmd2odg-pmd2odg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pub2odg-pub2odg.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/qxp2odg-qxp2odg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sd2odf-sd2odf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vsd2odg-vsd2odg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vss2odg-vss2odg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wks2ods-wks2ods.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wpd2odt-wpd2odt.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wpft2odf-wpft2odf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wpg2odg-wpg2odg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wps2odt-wps2odt.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zmf2odg-zmf2odg.Po@am__quote@
.cxx.o:
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -872,6 +1104,41 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<
+libodfmspub_la-OdfWrapperMSPUB.lo: OdfWrapperMSPUB.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfmspub_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libodfmspub_la-OdfWrapperMSPUB.lo -MD -MP -MF $(DEPDIR)/libodfmspub_la-OdfWrapperMSPUB.Tpo -c -o libodfmspub_la-OdfWrapperMSPUB.lo `test -f 'OdfWrapperMSPUB.cxx' || echo '$(srcdir)/'`OdfWrapperMSPUB.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libodfmspub_la-OdfWrapperMSPUB.Tpo $(DEPDIR)/libodfmspub_la-OdfWrapperMSPUB.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='OdfWrapperMSPUB.cxx' object='libodfmspub_la-OdfWrapperMSPUB.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfmspub_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libodfmspub_la-OdfWrapperMSPUB.lo `test -f 'OdfWrapperMSPUB.cxx' || echo '$(srcdir)/'`OdfWrapperMSPUB.cxx
+
+libodfmwaw_la-OdfWrapperMWAW.lo: OdfWrapperMWAW.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfmwaw_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libodfmwaw_la-OdfWrapperMWAW.lo -MD -MP -MF $(DEPDIR)/libodfmwaw_la-OdfWrapperMWAW.Tpo -c -o libodfmwaw_la-OdfWrapperMWAW.lo `test -f 'OdfWrapperMWAW.cxx' || echo '$(srcdir)/'`OdfWrapperMWAW.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libodfmwaw_la-OdfWrapperMWAW.Tpo $(DEPDIR)/libodfmwaw_la-OdfWrapperMWAW.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='OdfWrapperMWAW.cxx' object='libodfmwaw_la-OdfWrapperMWAW.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfmwaw_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libodfmwaw_la-OdfWrapperMWAW.lo `test -f 'OdfWrapperMWAW.cxx' || echo '$(srcdir)/'`OdfWrapperMWAW.cxx
+
+libodfstaroffice_la-OdfWrapperSTAROFFICE.lo: OdfWrapperSTAROFFICE.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfstaroffice_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libodfstaroffice_la-OdfWrapperSTAROFFICE.lo -MD -MP -MF $(DEPDIR)/libodfstaroffice_la-OdfWrapperSTAROFFICE.Tpo -c -o libodfstaroffice_la-OdfWrapperSTAROFFICE.lo `test -f 'OdfWrapperSTAROFFICE.cxx' || echo '$(srcdir)/'`OdfWrapperSTAROFFICE.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libodfstaroffice_la-OdfWrapperSTAROFFICE.Tpo $(DEPDIR)/libodfstaroffice_la-OdfWrapperSTAROFFICE.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='OdfWrapperSTAROFFICE.cxx' object='libodfstaroffice_la-OdfWrapperSTAROFFICE.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfstaroffice_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libodfstaroffice_la-OdfWrapperSTAROFFICE.lo `test -f 'OdfWrapperSTAROFFICE.cxx' || echo '$(srcdir)/'`OdfWrapperSTAROFFICE.cxx
+
+libodfwpd_la-OdfWrapperWPD.lo: OdfWrapperWPD.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfwpd_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libodfwpd_la-OdfWrapperWPD.lo -MD -MP -MF $(DEPDIR)/libodfwpd_la-OdfWrapperWPD.Tpo -c -o libodfwpd_la-OdfWrapperWPD.lo `test -f 'OdfWrapperWPD.cxx' || echo '$(srcdir)/'`OdfWrapperWPD.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libodfwpd_la-OdfWrapperWPD.Tpo $(DEPDIR)/libodfwpd_la-OdfWrapperWPD.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='OdfWrapperWPD.cxx' object='libodfwpd_la-OdfWrapperWPD.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfwpd_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libodfwpd_la-OdfWrapperWPD.lo `test -f 'OdfWrapperWPD.cxx' || echo '$(srcdir)/'`OdfWrapperWPD.cxx
+
+libodfwps_la-OdfWrapperWPS.lo: OdfWrapperWPS.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfwps_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libodfwps_la-OdfWrapperWPS.lo -MD -MP -MF $(DEPDIR)/libodfwps_la-OdfWrapperWPS.Tpo -c -o libodfwps_la-OdfWrapperWPS.lo `test -f 'OdfWrapperWPS.cxx' || echo '$(srcdir)/'`OdfWrapperWPS.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libodfwps_la-OdfWrapperWPS.Tpo $(DEPDIR)/libodfwps_la-OdfWrapperWPS.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='OdfWrapperWPS.cxx' object='libodfwps_la-OdfWrapperWPS.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libodfwps_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libodfwps_la-OdfWrapperWPS.lo `test -f 'OdfWrapperWPS.cxx' || echo '$(srcdir)/'`OdfWrapperWPS.cxx
+
abw2odt-abw2odt.o: abw2odt.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(abw2odt_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT abw2odt-abw2odt.o -MD -MP -MF $(DEPDIR)/abw2odt-abw2odt.Tpo -c -o abw2odt-abw2odt.o `test -f 'abw2odt.cxx' || echo '$(srcdir)/'`abw2odt.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/abw2odt-abw2odt.Tpo $(DEPDIR)/abw2odt-abw2odt.Po
@@ -1026,6 +1293,20 @@ pub2odg-pub2odg.obj: pub2odg.cxx
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pub2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o pub2odg-pub2odg.obj `if test -f 'pub2odg.cxx'; then $(CYGPATH_W) 'pub2odg.cxx'; else $(CYGPATH_W) '$(srcdir)/pub2odg.cxx'; fi`
+qxp2odg-qxp2odg.o: qxp2odg.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(qxp2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT qxp2odg-qxp2odg.o -MD -MP -MF $(DEPDIR)/qxp2odg-qxp2odg.Tpo -c -o qxp2odg-qxp2odg.o `test -f 'qxp2odg.cxx' || echo '$(srcdir)/'`qxp2odg.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/qxp2odg-qxp2odg.Tpo $(DEPDIR)/qxp2odg-qxp2odg.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='qxp2odg.cxx' object='qxp2odg-qxp2odg.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(qxp2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o qxp2odg-qxp2odg.o `test -f 'qxp2odg.cxx' || echo '$(srcdir)/'`qxp2odg.cxx
+
+qxp2odg-qxp2odg.obj: qxp2odg.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(qxp2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT qxp2odg-qxp2odg.obj -MD -MP -MF $(DEPDIR)/qxp2odg-qxp2odg.Tpo -c -o qxp2odg-qxp2odg.obj `if test -f 'qxp2odg.cxx'; then $(CYGPATH_W) 'qxp2odg.cxx'; else $(CYGPATH_W) '$(srcdir)/qxp2odg.cxx'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/qxp2odg-qxp2odg.Tpo $(DEPDIR)/qxp2odg-qxp2odg.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='qxp2odg.cxx' object='qxp2odg-qxp2odg.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(qxp2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o qxp2odg-qxp2odg.obj `if test -f 'qxp2odg.cxx'; then $(CYGPATH_W) 'qxp2odg.cxx'; else $(CYGPATH_W) '$(srcdir)/qxp2odg.cxx'; fi`
+
sd2odf-sd2odf.o: sd2odf.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sd2odf_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sd2odf-sd2odf.o -MD -MP -MF $(DEPDIR)/sd2odf-sd2odf.Tpo -c -o sd2odf-sd2odf.o `test -f 'sd2odf.cxx' || echo '$(srcdir)/'`sd2odf.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/sd2odf-sd2odf.Tpo $(DEPDIR)/sd2odf-sd2odf.Po
@@ -1096,6 +1377,20 @@ wpd2odt-wpd2odt.obj: wpd2odt.cxx
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpd2odt_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wpd2odt-wpd2odt.obj `if test -f 'wpd2odt.cxx'; then $(CYGPATH_W) 'wpd2odt.cxx'; else $(CYGPATH_W) '$(srcdir)/wpd2odt.cxx'; fi`
+wpft2odf-wpft2odf.o: wpft2odf.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2odf_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wpft2odf-wpft2odf.o -MD -MP -MF $(DEPDIR)/wpft2odf-wpft2odf.Tpo -c -o wpft2odf-wpft2odf.o `test -f 'wpft2odf.cxx' || echo '$(srcdir)/'`wpft2odf.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wpft2odf-wpft2odf.Tpo $(DEPDIR)/wpft2odf-wpft2odf.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='wpft2odf.cxx' object='wpft2odf-wpft2odf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2odf_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wpft2odf-wpft2odf.o `test -f 'wpft2odf.cxx' || echo '$(srcdir)/'`wpft2odf.cxx
+
+wpft2odf-wpft2odf.obj: wpft2odf.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2odf_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wpft2odf-wpft2odf.obj -MD -MP -MF $(DEPDIR)/wpft2odf-wpft2odf.Tpo -c -o wpft2odf-wpft2odf.obj `if test -f 'wpft2odf.cxx'; then $(CYGPATH_W) 'wpft2odf.cxx'; else $(CYGPATH_W) '$(srcdir)/wpft2odf.cxx'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wpft2odf-wpft2odf.Tpo $(DEPDIR)/wpft2odf-wpft2odf.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='wpft2odf.cxx' object='wpft2odf-wpft2odf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpft2odf_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wpft2odf-wpft2odf.obj `if test -f 'wpft2odf.cxx'; then $(CYGPATH_W) 'wpft2odf.cxx'; else $(CYGPATH_W) '$(srcdir)/wpft2odf.cxx'; fi`
+
wpg2odg-wpg2odg.o: wpg2odg.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wpg2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT wpg2odg-wpg2odg.o -MD -MP -MF $(DEPDIR)/wpg2odg-wpg2odg.Tpo -c -o wpg2odg-wpg2odg.o `test -f 'wpg2odg.cxx' || echo '$(srcdir)/'`wpg2odg.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wpg2odg-wpg2odg.Tpo $(DEPDIR)/wpg2odg-wpg2odg.Po
@@ -1124,6 +1419,20 @@ wps2odt-wps2odt.obj: wps2odt.cxx
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wps2odt_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o wps2odt-wps2odt.obj `if test -f 'wps2odt.cxx'; then $(CYGPATH_W) 'wps2odt.cxx'; else $(CYGPATH_W) '$(srcdir)/wps2odt.cxx'; fi`
+zmf2odg-zmf2odg.o: zmf2odg.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zmf2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT zmf2odg-zmf2odg.o -MD -MP -MF $(DEPDIR)/zmf2odg-zmf2odg.Tpo -c -o zmf2odg-zmf2odg.o `test -f 'zmf2odg.cxx' || echo '$(srcdir)/'`zmf2odg.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/zmf2odg-zmf2odg.Tpo $(DEPDIR)/zmf2odg-zmf2odg.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='zmf2odg.cxx' object='zmf2odg-zmf2odg.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zmf2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o zmf2odg-zmf2odg.o `test -f 'zmf2odg.cxx' || echo '$(srcdir)/'`zmf2odg.cxx
+
+zmf2odg-zmf2odg.obj: zmf2odg.cxx
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zmf2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT zmf2odg-zmf2odg.obj -MD -MP -MF $(DEPDIR)/zmf2odg-zmf2odg.Tpo -c -o zmf2odg-zmf2odg.obj `if test -f 'zmf2odg.cxx'; then $(CYGPATH_W) 'zmf2odg.cxx'; else $(CYGPATH_W) '$(srcdir)/zmf2odg.cxx'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/zmf2odg-zmf2odg.Tpo $(DEPDIR)/zmf2odg-zmf2odg.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='zmf2odg.cxx' object='zmf2odg-zmf2odg.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zmf2odg_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o zmf2odg-zmf2odg.obj `if test -f 'zmf2odg.cxx'; then $(CYGPATH_W) 'zmf2odg.cxx'; else $(CYGPATH_W) '$(srcdir)/zmf2odg.cxx'; fi`
+
mostlyclean-libtool:
-rm -f *.lo
@@ -1408,10 +1717,22 @@ uninstall-am: uninstall-binPROGRAMS
@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource numbers2ods.rc @NUMBERS2ODS_WIN32_RESOURCE@
+@OS_WIN32_TRUE@@QXP2ODG_WIN32_RESOURCE@ : qxp2odg.rc $(qxp2odf_OBJECTS)
+@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
+@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource qxp2odg.rc @QXP2ODG_WIN32_RESOURCE@
+
@OS_WIN32_TRUE@@SD2ODF_WIN32_RESOURCE@ : sd2odf.rc $(sd2odf_OBJECTS)
@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource sd2odf.rc @SD2ODF_WIN32_RESOURCE@
+@OS_WIN32_TRUE@@ZMF2ODG_WIN32_RESOURCE@ : zmf2odg.rc $(zmf2odf_OBJECTS)
+@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
+@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource zmf2odg.rc @ZMF2ODG_WIN32_RESOURCE@
+
+@OS_WIN32_TRUE@@WPFT2ODF_WIN32_RESOURCE@ : wpft2odf.rc $(wpft2odf_OBJECTS)
+@OS_WIN32_TRUE@ chmod +x $(top_srcdir)/build/win32/*compile-resource
+@OS_WIN32_TRUE@ WINDRES=@WINDRES@ $(top_srcdir)/build/win32/lt-compile-resource wpft2odf.rc @WPFT2ODF_WIN32_RESOURCE@
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/src/conv/odf/OdfConverter.cxx b/src/conv/odf/OdfConverter.cxx
new file mode 100644
index 0000000..7e18817
--- /dev/null
+++ b/src/conv/odf/OdfConverter.cxx
@@ -0,0 +1,242 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include <stdio.h>
+#include <string.h>
+
+#include "OdfConverter.hxx"
+
+#include <libodfgen/libodfgen.hxx>
+
+#include "OdfPackage.hxx"
+#include "OdfWrapper.hxx"
+
+#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
+
+namespace writerperfectrvngodf
+{
+OdfConverter::OdfConverter(shared_ptr<UserOptions> options, std::string const &toolName, std::string const &usageMessage) :
+ m_options(options), m_toolName(toolName), m_usageMessage(usageMessage)
+{
+}
+
+OdfConverter::~OdfConverter()
+{
+}
+
+int OdfConverter::printUsage() const
+{
+ if (m_toolName.empty() || m_usageMessage.empty())
+ {
+ fprintf(stderr, "INTERNAL ERROR: not enough data to show help.\n");
+ return 1;
+ }
+ UsageHelper usage(m_toolName.c_str(), m_usageMessage.c_str());
+ usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
+ if (m_options) m_options->addOptionsToUsageHelper(usage);
+ return usage.printUsage();
+}
+
+int OdfConverter::printExtension(writerperfect::WPWrapper::Type type) const
+{
+ if (type == writerperfect::WPWrapper::Text)
+ printf("odt\n");
+ else if (type == writerperfect::WPWrapper::Drawing)
+ printf("odg\n");
+ else if (type == writerperfect::WPWrapper::Presentation)
+ printf("odp\n");
+ else if (type == writerperfect::WPWrapper::Spreadsheet)
+ printf("ods\n");
+ else
+ {
+ printf("unknown\n");
+ return 1;
+ }
+ return 0;
+}
+
+bool OdfConverter::parseAndTreatOptions(int argc, char const *const *argv, int &exitCode) const
+{
+ if (!m_options)
+ {
+ fprintf(stderr, "INTERNAL ERROR: can not find the options.\n");
+ exitCode=1;
+ }
+ else if (!m_options->parseOptions(argc, argv) || m_options->m_showHelp)
+ exitCode=printUsage();
+ else if (m_options->m_showListEncoding)
+ exitCode=UsageHelper::printEncodings();
+ else if (m_options->m_showVersion)
+ exitCode=UsageHelper::printVersion(m_toolName.c_str());
+ else if (!m_options->getInput())
+ exitCode=printUsage();
+ else
+ return false;
+ return true;
+}
+
+// basic wrapper
+bool OdfConverter::convertDocument(writerperfect::WPWrapper &wrapper, librevenge::RVNGInputStream &input)
+{
+ if (!m_options)
+ return false;
+ writerperfect::WPWrapper::Type type=wrapper.m_type;
+ if (type==writerperfect::WPWrapper::Drawing)
+ {
+ OdfPackage package(m_options->getOutput());
+ OdgGenerator collector;
+ package.addHandlersTo(collector);
+ return wrapper.parseDocument(input, collector) && package.write(collector);
+ }
+ if (type==writerperfect::WPWrapper::Presentation)
+ {
+ OdfPackage package(m_options->getOutput());
+ OdpGenerator collector;
+ package.addHandlersTo(collector);
+ return wrapper.parseDocument(input, collector) && package.write(collector);
+ }
+ if (type==writerperfect::WPWrapper::Spreadsheet)
+ {
+ OdfPackage package(m_options->getOutput());
+ OdsGenerator collector;
+ package.addHandlersTo(collector);
+ return wrapper.parseDocument(input, collector) && package.write(collector);
+ }
+ if (type==writerperfect::WPWrapper::Text)
+ {
+ OdfPackage package(m_options->getOutput());
+ OdtGenerator collector;
+ package.addHandlersTo(collector);
+ return wrapper.parseDocument(input, collector) && package.write(collector);
+ }
+ return false;
+}
+
+bool OdfConverter::isSupportedFormat(writerperfect::WPWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input)
+{
+ if (!m_options)
+ return false;
+ return input.get() && wrapper.checkInput(input);
+}
+
+int OdfConverter::convert(writerperfect::WPWrapper &wrapper, int argc, char const *const *argv)
+{
+ int exitCode;
+ if (parseAndTreatOptions(argc, argv, exitCode))
+ return exitCode;
+
+ shared_ptr<librevenge::RVNGInputStream> input(new librevenge::RVNGFileStream(m_options->getInput()));
+ if (!isSupportedFormat(wrapper,input))
+ {
+ if (m_options->m_showExtension)
+ return printExtension(writerperfect::WPWrapper::Unknown);
+ if (!wrapper.m_errorSent)
+ fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid document.\n");
+ return 1;
+ }
+ if (m_options->m_showExtension)
+ return printExtension(wrapper.m_type);
+ if (!input || !convertDocument(wrapper, *input))
+ {
+ if (!wrapper.m_errorSent)
+ fprintf(stderr, "ERROR : Couldn't convert the document\n");
+ return 1;
+ }
+
+ return 0;
+}
+
+// odf wrapper
+bool OdfConverter::convertDocument(OdfWrapper &wrapper, librevenge::RVNGInputStream &input)
+{
+ if (!m_options)
+ return false;
+ writerperfect::WPWrapper::Type type=wrapper.getType();
+ if (type==writerperfect::WPWrapper::Drawing)
+ {
+ OdfPackage package(m_options->getOutput());
+ OdgGenerator collector;
+ package.addHandlersTo(collector);
+ return wrapper.parseDocument(input, collector) && package.write(collector);
+ }
+ if (type==writerperfect::WPWrapper::Presentation)
+ {
+ OdfPackage package(m_options->getOutput());
+ OdpGenerator collector;
+ package.addHandlersTo(collector);
+ return wrapper.parseDocument(input, collector) && package.write(collector);
+ }
+ if (type==writerperfect::WPWrapper::Spreadsheet)
+ {
+ OdfPackage package(m_options->getOutput());
+ OdsGenerator collector;
+ package.addHandlersTo(collector);
+ return wrapper.parseDocument(input, collector) && package.write(collector);
+ }
+ if (type==writerperfect::WPWrapper::Text)
+ {
+ OdfPackage package(m_options->getOutput());
+ OdtGenerator collector;
+ package.addHandlersTo(collector);
+ return wrapper.parseDocument(input, collector) && package.write(collector);
+ }
+ return false;
+}
+
+bool OdfConverter::isSupportedFormat(OdfWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input)
+{
+ if (!m_options)
+ return false;
+ return input.get() && wrapper.checkInput(input);
+}
+
+int OdfConverter::convert(OdfWrapper &wrapper, int argc, char const *const *argv)
+{
+ int exitCode;
+ if (parseAndTreatOptions(argc, argv, exitCode))
+ return exitCode;
+
+ shared_ptr<librevenge::RVNGInputStream> input(new librevenge::RVNGFileStream(m_options->getInput()));
+ if (!isSupportedFormat(wrapper,input))
+ {
+ if (m_options->m_showExtension)
+ return printExtension(writerperfect::WPWrapper::Unknown);
+ if (!wrapper.isErrorSent())
+ fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid document.\n");
+ return 1;
+ }
+ if (m_options->m_showExtension)
+ return printExtension(wrapper.getType());
+ if (!input || !convertDocument(wrapper, *input))
+ {
+ if (!wrapper.isErrorSent())
+ fprintf(stderr, "ERROR : Couldn't convert the document\n");
+ return 1;
+ }
+
+ return 0;
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfConverter.hxx b/src/conv/odf/OdfConverter.hxx
new file mode 100644
index 0000000..4e1b6ba
--- /dev/null
+++ b/src/conv/odf/OdfConverter.hxx
@@ -0,0 +1,93 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ODF_CONVERTER_H
+#define ODF_CONVERTER_H
+
+#include <string>
+
+#include <librevenge/librevenge.h>
+
+#include "writerperfect_utils.hxx"
+#include "WPWrapper.hxx"
+
+class UserOptions;
+
+class OdgGenerator;
+class OdpGenerator;
+class OdsGenerator;
+class OdtGenerator;
+
+namespace writerperfect
+{
+class WPWrapper;
+}
+
+namespace writerperfectrvngodf
+{
+class OdfWrapper;
+/** a abstract class to help convert file
+ */
+class OdfConverter
+{
+public:
+ //! constructor
+ OdfConverter(shared_ptr<UserOptions> options, std::string const &toolName, std::string const &usageMessage);
+ //! destructor
+ virtual ~OdfConverter();
+
+ /** try to parse/treat the argument, to do the conversion, ... using a basic wrapper. Returns the exit code */
+ int convert(writerperfect::WPWrapper &wrapper, int argc, char const *const *argv);
+ /** try to parse/treat the argument, to do the conversion, ... Returns the exit code */
+ int convert(OdfWrapper &wrapper, int argc, char const *const *argv);
+
+ // low level function
+
+ /** print the options and try to call basic functions:
+ - printVersion, printUsage: if toolName and usage message is set
+ - printEncoding
+ Return true and set the exit code if the program can exit
+ */
+ bool parseAndTreatOptions(int argc, char const *const *argv, int &exitCode) const;
+ /// check if a file is supported using a basic wrapper
+ bool isSupportedFormat(writerperfect::WPWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input);
+ /// check if a file is supported
+ bool isSupportedFormat(OdfWrapper &wrapper, shared_ptr<librevenge::RVNGInputStream> &input);
+ /// try to convert a file using a basic wrapper
+ bool convertDocument(writerperfect::WPWrapper &wrapper, librevenge::RVNGInputStream &input);
+ /// try to convert a file
+ bool convertDocument(OdfWrapper &wrapper, librevenge::RVNGInputStream &input);
+ /// print usage: toolName and usage message must be set
+ int printUsage() const;
+ /// print the extension
+ int printExtension(writerperfect::WPWrapper::Type type) const;
+ //! the option
+ shared_ptr<UserOptions> m_options;
+ //! the tool name
+ std::string m_toolName;
+ //! the usage message
+ std::string m_usageMessage;
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfPackage.cxx b/src/conv/odf/OdfPackage.cxx
new file mode 100644
index 0000000..fafaefd
--- /dev/null
+++ b/src/conv/odf/OdfPackage.cxx
@@ -0,0 +1,248 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include <string.h>
+#include <stdio.h>
+
+#include "OdfPackage.hxx"
+
+#include "libodfgen/libodfgen.hxx"
+#include "StringXMLSerializer.hxx"
+
+namespace OdfPackageInternal
+{
+class StringDocumentHandler : public OdfDocumentHandler
+{
+public:
+ StringDocumentHandler();
+
+ char const *cstr() const
+ {
+ return m_serializer.getData().cstr();
+ }
+
+ virtual void startDocument()
+ {
+ m_serializer.startDocument();
+ }
+
+ virtual void endDocument()
+ {
+ m_serializer.endDocument();
+ }
+
+ virtual void startElement(const char *psName, const librevenge::RVNGPropertyList &xPropList)
+ {
+ if (!psName)
+ return;
+ if (strcmp(psName,"chart:series")==0 && xPropList["loext:label-string"])
+ {
+ librevenge::RVNGPropertyList pList(xPropList);
+ pList.insert("loext:label-string",
+ librevenge::RVNGString::escapeXML(xPropList["loext:label-string"]->getStr()));
+ m_serializer.startElement(psName, pList);
+ }
+ else
+ m_serializer.startElement(psName, xPropList);
+ }
+
+ virtual void endElement(const char *psName)
+ {
+ m_serializer.endElement(psName);
+ }
+
+ virtual void characters(const librevenge::RVNGString &sCharacters)
+ {
+ m_serializer.characters(sCharacters);
+ }
+
+private:
+ StringXMLSerializer m_serializer;
+};
+
+StringDocumentHandler::StringDocumentHandler()
+ : m_serializer()
+{
+}
+
+struct Content
+{
+ explicit Content(char const *fileName)
+ : m_fileName(fileName)
+ , m_contentHandler(), m_manifestHandler(), m_metaHandler(), m_settingsHandler(), m_stylesHandler()
+ {
+ }
+ char const *m_fileName;
+ StringDocumentHandler m_contentHandler, m_manifestHandler, m_metaHandler, m_settingsHandler, m_stylesHandler;
+};
+}
+
+OdfPackage::OdfPackage(char const *fileName)
+ : OutputFileHelper(fileName)
+ , m_type(OdfPackage::Unknown)
+ , m_content(new OdfPackageInternal::Content(fileName))
+{
+}
+
+OdfPackage::~OdfPackage()
+{
+}
+
+void OdfPackage::addHandlersTo(OdgGenerator &generator)
+{
+ m_type=Odg;
+ if (!m_content->m_fileName)
+ {
+ generator.addDocumentHandler(&m_content->m_contentHandler, ODF_FLAT_XML);
+ return;
+ }
+ generator.addDocumentHandler(&m_content->m_contentHandler, ODF_CONTENT_XML);
+ generator.addDocumentHandler(&m_content->m_manifestHandler, ODF_MANIFEST_XML);
+ generator.addDocumentHandler(&m_content->m_metaHandler, ODF_META_XML);
+ generator.addDocumentHandler(&m_content->m_settingsHandler, ODF_SETTINGS_XML);
+ generator.addDocumentHandler(&m_content->m_stylesHandler, ODF_STYLES_XML);
+}
+
+void OdfPackage::addHandlersTo(OdpGenerator &generator)
+{
+ m_type=Odp;
+ if (!m_content->m_fileName)
+ {
+ generator.addDocumentHandler(&m_content->m_contentHandler, ODF_FLAT_XML);
+ return;
+ }
+ generator.addDocumentHandler(&m_content->m_contentHandler, ODF_CONTENT_XML);
+ generator.addDocumentHandler(&m_content->m_manifestHandler, ODF_MANIFEST_XML);
+ generator.addDocumentHandler(&m_content->m_metaHandler, ODF_META_XML);
+ generator.addDocumentHandler(&m_content->m_settingsHandler, ODF_SETTINGS_XML);
+ generator.addDocumentHandler(&m_content->m_stylesHandler, ODF_STYLES_XML);
+}
+
+void OdfPackage::addHandlersTo(OdsGenerator &generator)
+{
+ m_type=Ods;
+ if (!m_content->m_fileName)
+ {
+ generator.addDocumentHandler(&m_content->m_contentHandler, ODF_FLAT_XML);
+ return;
+ }
+ generator.addDocumentHandler(&m_content->m_contentHandler, ODF_CONTENT_XML);
+ generator.addDocumentHandler(&m_content->m_manifestHandler, ODF_MANIFEST_XML);
+ generator.addDocumentHandler(&m_content->m_metaHandler, ODF_META_XML);
+ generator.addDocumentHandler(&m_content->m_stylesHandler, ODF_STYLES_XML);
+}
+
+void OdfPackage::addHandlersTo(OdtGenerator &generator)
+{
+ m_type=Odt;
+ if (!m_content->m_fileName)
+ {
+ generator.addDocumentHandler(&m_content->m_contentHandler, ODF_FLAT_XML);
+ return;
+ }
+ generator.addDocumentHandler(&m_content->m_contentHandler, ODF_CONTENT_XML);
+ generator.addDocumentHandler(&m_content->m_manifestHandler, ODF_MANIFEST_XML);
+ generator.addDocumentHandler(&m_content->m_metaHandler, ODF_META_XML);
+ generator.addDocumentHandler(&m_content->m_stylesHandler, ODF_STYLES_XML);
+}
+
+bool OdfPackage::write()
+{
+ if (m_type==Unknown) return false;
+ if (!m_content->m_fileName)
+ {
+ printf("%s\n", m_content->m_contentHandler.cstr());
+ return true;
+ }
+
+ if ((m_type==Odg && !writeChildFile("mimetype", "application/vnd.oasis.opendocument.graphics", (char)0)) ||
+ (m_type==Odp && !writeChildFile("mimetype", "application/vnd.oasis.opendocument.presentation", (char)0)) ||
+ (m_type==Ods && !writeChildFile("mimetype", "application/vnd.oasis.opendocument.spreadsheet", (char)0)) ||
+ (m_type==Odt && !writeChildFile("mimetype", "application/vnd.oasis.opendocument.text", (char)0)))
+ return false;
+ if (!writeChildFile("META-INF/manifest.xml", m_content->m_manifestHandler.cstr()) ||
+ !writeChildFile("content.xml", m_content->m_contentHandler.cstr()) ||
+ !writeChildFile("meta.xml", m_content->m_metaHandler.cstr()) ||
+ ((m_type==Odg || m_type==Odp) && !writeChildFile("settings.xml", m_content->m_settingsHandler.cstr())) ||
+ !writeChildFile("styles.xml", m_content->m_stylesHandler.cstr()))
+ return false;
+
+ return true;
+}
+
+bool OdfPackage::write(OdgGenerator &generator)
+{
+ if (!write()) return false;
+ if (!m_content->m_fileName) return true;
+ librevenge::RVNGStringVector objects=generator.getObjectNames();
+ for (unsigned i=0; i<objects.size(); ++i)
+ {
+ OdfPackageInternal::StringDocumentHandler objectHandler;
+ if (generator.getObjectContent(objects[i], &objectHandler))
+ writeChildFile(objects[i].cstr(), objectHandler.cstr());
+ }
+ return true;
+}
+
+bool OdfPackage::write(OdpGenerator &generator)
+{
+ if (!write()) return false;
+ if (!m_content->m_fileName) return true;
+ librevenge::RVNGStringVector objects=generator.getObjectNames();
+ for (unsigned i=0; i<objects.size(); ++i)
+ {
+ OdfPackageInternal::StringDocumentHandler objectHandler;
+ if (generator.getObjectContent(objects[i], &objectHandler))
+ writeChildFile(objects[i].cstr(), objectHandler.cstr());
+ }
+ return true;
+}
+
+bool OdfPackage::write(OdsGenerator &generator)
+{
+ if (!write()) return false;
+ if (!m_content->m_fileName) return true;
+ librevenge::RVNGStringVector objects=generator.getObjectNames();
+ for (unsigned i=0; i<objects.size(); ++i)
+ {
+ OdfPackageInternal::StringDocumentHandler objectHandler;
+ if (generator.getObjectContent(objects[i], &objectHandler))
+ writeChildFile(objects[i].cstr(), objectHandler.cstr());
+ }
+ return true;
+}
+
+bool OdfPackage::write(OdtGenerator &generator)
+{
+ if (!write()) return false;
+ if (!m_content->m_fileName) return true;
+ librevenge::RVNGStringVector objects=generator.getObjectNames();
+ for (unsigned i=0; i<objects.size(); ++i)
+ {
+ OdfPackageInternal::StringDocumentHandler objectHandler;
+ if (generator.getObjectContent(objects[i], &objectHandler))
+ writeChildFile(objects[i].cstr(), objectHandler.cstr());
+ }
+ return true;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfPackage.hxx b/src/conv/odf/OdfPackage.hxx
new file mode 100644
index 0000000..691ff06
--- /dev/null
+++ b/src/conv/odf/OdfPackage.hxx
@@ -0,0 +1,65 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ODF_PACKAGE_H
+#define ODF_PACKAGE_H
+
+#include "writerperfect_utils.hxx"
+
+#include "OutputFileHelper.hxx"
+
+class OdgGenerator;
+class OdpGenerator;
+class OdsGenerator;
+class OdtGenerator;
+
+namespace OdfPackageInternal
+{
+struct Content;
+}
+
+class OdfPackage : public OutputFileHelper
+{
+public:
+ explicit OdfPackage(char const *fileName);
+ ~OdfPackage();
+
+ void addHandlersTo(OdgGenerator &generator);
+ void addHandlersTo(OdpGenerator &generator);
+ void addHandlersTo(OdsGenerator &generator);
+ void addHandlersTo(OdtGenerator &generator);
+
+ bool write(OdgGenerator &generator);
+ bool write(OdsGenerator &generator);
+ bool write(OdpGenerator &generator);
+ bool write(OdtGenerator &generator);
+private:
+ bool write();
+
+ enum Type { Unknown, Odg, Odp, Ods, Odt };
+ Type m_type;
+ shared_ptr<OdfPackageInternal::Content> m_content;
+};
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapper.cxx b/src/conv/odf/OdfWrapper.cxx
new file mode 100644
index 0000000..897c5f5
--- /dev/null
+++ b/src/conv/odf/OdfWrapper.cxx
@@ -0,0 +1,85 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include <string.h>
+
+#include "OdfWrapper.hxx"
+
+#include <libodfgen/libodfgen.hxx>
+
+namespace writerperfectrvngodf
+{
+writerperfect::WPWrapper::Type OdfWrapper::getType() const
+{
+ if (!m_wrapper) return writerperfect::WPWrapper::Unknown;
+ return m_wrapper->m_type;
+}
+bool OdfWrapper::isErrorSent() const
+{
+ if (!m_wrapper) return false;
+ return m_wrapper->m_errorSent;
+}
+bool OdfWrapper::checkInput(shared_ptr<librevenge::RVNGInputStream> &input)
+{
+ if (m_wrapper)
+ return m_wrapper->checkInput(input);
+ return false;
+}
+bool OdfWrapper::parseDocument(librevenge::RVNGInputStream &input, OdgGenerator &collector)
+{
+ if (m_wrapper)
+ return m_wrapper->parseDocument(input, collector);
+ return false;
+}
+bool OdfWrapper::parseDocument(librevenge::RVNGInputStream &input, OdpGenerator &collector)
+{
+ if (m_wrapper)
+ return m_wrapper->parseDocument(input, collector);
+ return false;
+}
+bool OdfWrapper::parseDocument(librevenge::RVNGInputStream &input, OdsGenerator &collector)
+{
+ if (m_wrapper)
+ return m_wrapper->parseDocument(input, collector);
+ return false;
+}
+bool OdfWrapper::parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector)
+{
+ if (m_wrapper)
+ return m_wrapper->parseDocument(input, collector);
+ return false;
+}
+bool OdfWrapper::convertSVGImage(librevenge::RVNGStringVector const &svgOutput, librevenge::RVNGBinaryData &output)
+{
+ if (svgOutput.empty() || svgOutput[0].empty())
+ return false;
+ output.clear();
+ const char *svgHeader = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n"
+ "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\""
+ " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n";
+ output.append((unsigned char *)svgHeader, strlen(svgHeader));
+ output.append((unsigned char *)svgOutput[0].cstr(), strlen(svgOutput[0].cstr()));
+ return true;
+}
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapper.hxx b/src/conv/odf/OdfWrapper.hxx
new file mode 100644
index 0000000..1bdf981
--- /dev/null
+++ b/src/conv/odf/OdfWrapper.hxx
@@ -0,0 +1,67 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ODF_WRAPPER_H
+#define ODF_WRAPPER_H
+
+#include <string>
+
+#include <librevenge/librevenge.h>
+
+#include "writerperfect_utils.hxx"
+
+#include "WPWrapper.hxx"
+
+class OdgGenerator;
+class OdpGenerator;
+class OdsGenerator;
+class OdtGenerator;
+
+namespace writerperfectrvngodf
+{
+/** a abstract wrapper to help convert file
+ */
+class OdfWrapper
+{
+public:
+ //! constructor
+ explicit OdfWrapper(shared_ptr<writerperfect::WPWrapper> wrapper) : m_wrapper(wrapper) {}
+ //! destructor
+ virtual ~OdfWrapper() {}
+ //! return the wrapper type
+ writerperfect::WPWrapper::Type getType() const;
+ //! return true if an error is send
+ bool isErrorSent() const;
+ virtual bool checkInput(shared_ptr<librevenge::RVNGInputStream> &input);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdgGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdpGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdsGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector);
+ //! helper function which can be use to convert a output of svgdrawing to a svg image
+ static bool convertSVGImage(librevenge::RVNGStringVector const &svgOutput, librevenge::RVNGBinaryData &output);
+ //! the basic wrapper
+ shared_ptr<writerperfect::WPWrapper> m_wrapper;
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperMSPUB.cxx b/src/conv/odf/OdfWrapperMSPUB.cxx
new file mode 100644
index 0000000..5c99b35
--- /dev/null
+++ b/src/conv/odf/OdfWrapperMSPUB.cxx
@@ -0,0 +1,84 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <limits>
+
+#include "OdfWrapperMSPUB.hxx"
+
+#include <librevenge/librevenge.h>
+#include <libodfgen/libodfgen.hxx>
+#include <libmspub/libmspub.h>
+
+#include "WPWrapperMSPUB.hxx"
+
+# ifdef ENABLE_EOT
+extern "C"
+{
+# include <libeot/libeot.h>
+}
+# endif
+
+namespace writerperfectrvngodf
+{
+# ifdef ENABLE_EOT
+static bool handleEmbeddedEOTFont(const librevenge::RVNGBinaryData &input, librevenge::RVNGBinaryData &output)
+{
+ EOTMetadata metadata;
+ uint8_t *ttf = 0;
+ unsigned ttfSize = 0;
+
+ if (input.size() > std::numeric_limits<unsigned>::max()) // can't convert
+ return false;
+
+ const EOTError err = EOT2ttf_buffer(input.getDataBuffer(), unsigned(input.size()), &metadata, &ttf, &ttfSize);
+ const bool success = err == EOT_SUCCESS;
+
+ if (success)
+ {
+ output.clear();
+ output.append(ttf, ttfSize);
+ }
+
+ EOTfreeMetadata(&metadata);
+ EOTfreeBuffer(ttf);
+
+ return success;
+}
+# endif
+
+OdfWrapperMSPUB::OdfWrapperMSPUB(shared_ptr<UserOptions> options) :
+ OdfWrapper(shared_ptr<writerperfect::WPWrapper>(new writerperfect::WPWrapperMSPUB(options)))
+{
+}
+bool OdfWrapperMSPUB::parseDocument(librevenge::RVNGInputStream &input, OdgGenerator &collector)
+{
+# ifdef ENABLE_EOT
+ collector.registerEmbeddedImageHandler("application/vnd.ms-fontobject", &handleEmbeddedEOTFont);
+# endif
+ return OdfWrapper::parseDocument(input, collector);
+}
+}
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperMSPUB.hxx b/src/conv/odf/OdfWrapperMSPUB.hxx
new file mode 100644
index 0000000..0ce78e1
--- /dev/null
+++ b/src/conv/odf/OdfWrapperMSPUB.hxx
@@ -0,0 +1,47 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ODF_WRAPPER_MSPUB_H
+#define ODF_WRAPPER_MSPUB_H
+
+#include <string>
+
+#include "OdfWrapper.hxx"
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfectrvngodf
+{
+class OdfWrapperMSPUB : public OdfWrapper
+{
+public:
+ //! constructor
+ explicit OdfWrapperMSPUB(shared_ptr<UserOptions> options);
+protected:
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdgGenerator &collector);
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperMWAW.cxx b/src/conv/odf/OdfWrapperMWAW.cxx
new file mode 100644
index 0000000..8d12aa8
--- /dev/null
+++ b/src/conv/odf/OdfWrapperMWAW.cxx
@@ -0,0 +1,77 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "OdfWrapperMWAW.hxx"
+
+#include <librevenge/librevenge.h>
+#include <libodfgen/libodfgen.hxx>
+#include <libmwaw/libmwaw.hxx>
+
+#include "UserOptions.hxx"
+#include "WPWrapperMWAW.hxx"
+
+namespace writerperfectrvngodf
+{
+static bool handleEmbeddedMWAWGraphicObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType)
+{
+ OdgGenerator exporter;
+ exporter.addDocumentHandler(pHandler, streamType);
+ return MWAWDocument::decodeGraphic(data, &exporter);
+}
+static bool handleEmbeddedMWAWSpreadsheetObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType)
+{
+ OdsGenerator exporter;
+ exporter.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
+ exporter.addDocumentHandler(pHandler, streamType);
+ return MWAWDocument::decodeSpreadsheet(data, &exporter);
+}
+
+OdfWrapperMWAW::OdfWrapperMWAW(shared_ptr<UserOptions> options) :
+ OdfWrapper(shared_ptr<writerperfect::WPWrapper>(new writerperfect::WPWrapperMWAW(options)))
+{
+}
+bool OdfWrapperMWAW::parseDocument(librevenge::RVNGInputStream &input, OdgGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
+ collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
+ return OdfWrapper::parseDocument(input, collector);
+}
+bool OdfWrapperMWAW::parseDocument(librevenge::RVNGInputStream &input, OdpGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
+ collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
+ return OdfWrapper::parseDocument(input, collector);
+}
+bool OdfWrapperMWAW::parseDocument(librevenge::RVNGInputStream &input, OdsGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
+ collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
+ return OdfWrapper::parseDocument(input, collector);
+}
+bool OdfWrapperMWAW::parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
+ collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
+ return OdfWrapper::parseDocument(input, collector);
+}
+}
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperMWAW.hxx b/src/conv/odf/OdfWrapperMWAW.hxx
new file mode 100644
index 0000000..a9950cd
--- /dev/null
+++ b/src/conv/odf/OdfWrapperMWAW.hxx
@@ -0,0 +1,50 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ODF_WRAPPER_MWAW_H
+#define ODF_WRAPPER_MWAW_H
+
+#include <string>
+
+#include "OdfWrapper.hxx"
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfectrvngodf
+{
+class OdfWrapperMWAW : public OdfWrapper
+{
+public:
+ //! constructor
+ explicit OdfWrapperMWAW(shared_ptr<UserOptions> options);
+protected:
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdgGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdpGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdsGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector);
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperSTAROFFICE.cxx b/src/conv/odf/OdfWrapperSTAROFFICE.cxx
new file mode 100644
index 0000000..797256c
--- /dev/null
+++ b/src/conv/odf/OdfWrapperSTAROFFICE.cxx
@@ -0,0 +1,81 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "OdfWrapperSTAROFFICE.hxx"
+
+#include <librevenge/librevenge.h>
+#include <libodfgen/libodfgen.hxx>
+#include <libstaroffice/libstaroffice.hxx>
+
+#include "WPWrapperSTAROFFICE.hxx"
+
+namespace writerperfectrvngodf
+{
+static bool handleEmbeddedSTOFFSpreadsheetObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType);
+
+static bool handleEmbeddedSTOFFGraphicObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType)
+{
+ OdgGenerator exporter;
+ exporter.registerEmbeddedObjectHandler("image/stoff-odg", &handleEmbeddedSTOFFGraphicObject);
+ exporter.registerEmbeddedObjectHandler("image/stoff-ods", &handleEmbeddedSTOFFSpreadsheetObject);
+ exporter.addDocumentHandler(pHandler, streamType);
+ return STOFFDocument::decodeGraphic(data, &exporter);
+}
+bool handleEmbeddedSTOFFSpreadsheetObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType)
+{
+ OdsGenerator exporter;
+ exporter.registerEmbeddedObjectHandler("image/stoff-odg", &handleEmbeddedSTOFFGraphicObject);
+ exporter.registerEmbeddedObjectHandler("image/stoff-ods", &handleEmbeddedSTOFFSpreadsheetObject);
+ exporter.addDocumentHandler(pHandler, streamType);
+ return STOFFDocument::decodeSpreadsheet(data, &exporter);
+}
+
+OdfWrapperSTAROFFICE::OdfWrapperSTAROFFICE(shared_ptr<UserOptions> options) :
+ OdfWrapper(shared_ptr<writerperfect::WPWrapper>(new writerperfect::WPWrapperSTAROFFICE(options)))
+{
+}
+bool OdfWrapperSTAROFFICE::parseDocument(librevenge::RVNGInputStream &input, OdgGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/stoff-odg", &handleEmbeddedSTOFFGraphicObject);
+ collector.registerEmbeddedObjectHandler("image/stoff-ods", &handleEmbeddedSTOFFSpreadsheetObject);
+ return OdfWrapper::parseDocument(input, collector);
+}
+bool OdfWrapperSTAROFFICE::parseDocument(librevenge::RVNGInputStream &input, OdpGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/stoff-odg", &handleEmbeddedSTOFFGraphicObject);
+ collector.registerEmbeddedObjectHandler("image/stoff-ods", &handleEmbeddedSTOFFSpreadsheetObject);
+ return OdfWrapper::parseDocument(input, collector);
+}
+bool OdfWrapperSTAROFFICE::parseDocument(librevenge::RVNGInputStream &input, OdsGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/stoff-odg", &handleEmbeddedSTOFFGraphicObject);
+ collector.registerEmbeddedObjectHandler("image/stoff-ods", &handleEmbeddedSTOFFSpreadsheetObject);
+ return OdfWrapper::parseDocument(input, collector);
+}
+bool OdfWrapperSTAROFFICE::parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/stoff-odg", &handleEmbeddedSTOFFGraphicObject);
+ collector.registerEmbeddedObjectHandler("image/stoff-ods", &handleEmbeddedSTOFFSpreadsheetObject);
+ return OdfWrapper::parseDocument(input, collector);
+}
+}
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperSTAROFFICE.hxx b/src/conv/odf/OdfWrapperSTAROFFICE.hxx
new file mode 100644
index 0000000..a74414d
--- /dev/null
+++ b/src/conv/odf/OdfWrapperSTAROFFICE.hxx
@@ -0,0 +1,50 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ODF_WRAPPER_STAROFFICE_H
+#define ODF_WRAPPER_STAROFFICE_H
+
+#include <string>
+
+#include "OdfWrapper.hxx"
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfectrvngodf
+{
+class OdfWrapperSTAROFFICE : public OdfWrapper
+{
+public:
+ //! constructor
+ explicit OdfWrapperSTAROFFICE(shared_ptr<UserOptions> options);
+protected:
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdgGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdpGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdsGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector);
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperWPD.cxx b/src/conv/odf/OdfWrapperWPD.cxx
new file mode 100644
index 0000000..87c7ecd
--- /dev/null
+++ b/src/conv/odf/OdfWrapperWPD.cxx
@@ -0,0 +1,78 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "OdfWrapperWPD.hxx"
+
+#include <librevenge/librevenge.h>
+#include <libodfgen/libodfgen.hxx>
+#include <libwpd/libwpd.h>
+#ifdef ENABLE_LIBWPG
+# include <libwpg/libwpg.h>
+#endif
+
+#include "WPWrapperWPD.hxx"
+
+namespace writerperfectrvngodf
+{
+# ifdef ENABLE_LIBWPG
+static bool handleEmbeddedWPGObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType)
+{
+ OdgGenerator exporter;
+ exporter.addDocumentHandler(pHandler, streamType);
+
+ libwpg::WPGFileFormat fileFormat = libwpg::WPG_AUTODETECT;
+
+ if (!libwpg::WPGraphics::isSupported(data.getDataStream()))
+ fileFormat = libwpg::WPG_WPG1;
+
+ return libwpg::WPGraphics::parse(data.getDataStream(), &exporter, fileFormat);
+}
+
+static bool handleEmbeddedWPGImage(const librevenge::RVNGBinaryData &input, librevenge::RVNGBinaryData &output)
+{
+ libwpg::WPGFileFormat fileFormat = libwpg::WPG_AUTODETECT;
+
+ if (!libwpg::WPGraphics::isSupported(input.getDataStream()))
+ fileFormat = libwpg::WPG_WPG1;
+
+ librevenge::RVNGStringVector svgOutput;
+ librevenge::RVNGSVGDrawingGenerator generator(svgOutput, "");
+ return libwpg::WPGraphics::parse(input.getDataStream(), &generator, fileFormat) &&
+ OdfWrapper::convertSVGImage(svgOutput, output);
+}
+# endif
+
+OdfWrapperWPD::OdfWrapperWPD(shared_ptr<UserOptions> options) :
+ OdfWrapper(shared_ptr<writerperfect::WPWrapper>(new writerperfect::WPWrapperWPD(options)))
+{
+}
+bool OdfWrapperWPD::parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector)
+{
+# ifdef ENABLE_LIBWPG
+ collector.registerEmbeddedObjectHandler("image/x-wpg", &handleEmbeddedWPGObject);
+ collector.registerEmbeddedImageHandler("image/x-wpg", &handleEmbeddedWPGImage);
+# endif
+ return OdfWrapper::parseDocument(input, collector);
+}
+
+}
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperWPD.hxx b/src/conv/odf/OdfWrapperWPD.hxx
new file mode 100644
index 0000000..d6bdbe1
--- /dev/null
+++ b/src/conv/odf/OdfWrapperWPD.hxx
@@ -0,0 +1,46 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ODF_WRAPPER_WPD_H
+#define ODF_WRAPPER_WPD_H
+
+#include <string>
+
+#include "OdfWrapper.hxx"
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfectrvngodf
+{
+class OdfWrapperWPD : public OdfWrapper
+{
+public:
+ //! constructor
+ explicit OdfWrapperWPD(shared_ptr<UserOptions> options);
+protected:
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector);
+};
+}
+#endif
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperWPS.cxx b/src/conv/odf/OdfWrapperWPS.cxx
new file mode 100644
index 0000000..7f76694
--- /dev/null
+++ b/src/conv/odf/OdfWrapperWPS.cxx
@@ -0,0 +1,55 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* writerperfect
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#include "OdfWrapperWPS.hxx"
+
+#include <librevenge/librevenge.h>
+#include <libodfgen/libodfgen.hxx>
+#include <libwps/libwps.h>
+
+#include "WPWrapperWPS.hxx"
+
+namespace writerperfectrvngodf
+{
+static bool handleEmbeddedWKSObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType)
+{
+ if (!data.size()) return false;
+ OdsGenerator exporter;
+ exporter.addDocumentHandler(pHandler, streamType);
+ return libwps::WPSDocument::parse(data.getDataStream(), &exporter)==libwps::WPS_OK;
+}
+
+OdfWrapperWPS::OdfWrapperWPS(shared_ptr<UserOptions> options, writerperfect::WPWrapper::Type type) :
+ OdfWrapper(shared_ptr<writerperfect::WPWrapper>(new writerperfect::WPWrapperWPS(options, type)))
+{
+}
+bool OdfWrapperWPS::parseDocument(librevenge::RVNGInputStream &input, OdsGenerator &collector)
+{
+ return OdfWrapper::parseDocument(input, collector);
+}
+bool OdfWrapperWPS::parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector)
+{
+ collector.registerEmbeddedObjectHandler("image/wks-ods", &handleEmbeddedWKSObject);
+ return OdfWrapper::parseDocument(input, collector);
+}
+}
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/OdfWrapperWPS.hxx b/src/conv/odf/OdfWrapperWPS.hxx
new file mode 100644
index 0000000..5c38b2e
--- /dev/null
+++ b/src/conv/odf/OdfWrapperWPS.hxx
@@ -0,0 +1,49 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* libwpd
+ * Version: MPL 2.0 / LGPLv2.1+
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Major Contributor(s):
+ * Copyright (C) 2002-2004 William Lachance (wrlach@gmail.com)
+ * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
+ *
+ * For minor contributions see the git repository.
+ *
+ * Alternatively, the contents of this file may be used under the terms
+ * of the GNU Lesser General Public License Version 2.1 or later
+ * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
+ * applicable instead of those above.
+ *
+ * For further information visit http://libwpd.sourceforge.net
+ */
+
+#ifndef ODF_WRAPPER_WPS_H
+#define ODF_WRAPPER_WPS_H
+
+#include <string>
+
+#include "OdfWrapper.hxx"
+#include "WPWrapper.hxx"
+
+#include "writerperfect_utils.hxx"
+
+class UserOptions;
+
+namespace writerperfectrvngodf
+{
+class OdfWrapperWPS : public OdfWrapper
+{
+public:
+ //! constructor
+ explicit OdfWrapperWPS(shared_ptr<UserOptions> options, writerperfect::WPWrapper::Type type=writerperfect::WPWrapper::Unknown);
+protected:
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdsGenerator &collector);
+ virtual bool parseDocument(librevenge::RVNGInputStream &input, OdtGenerator &collector);
+};
+}
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/abw2odt.cxx b/src/conv/odf/abw2odt.cxx
index e937915..5a92911 100644
--- a/src/conv/odf/abw2odt.cxx
+++ b/src/conv/odf/abw2odt.cxx
@@ -20,135 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "WPWrapperABW.hxx"
+#include "OdfConverter.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libabw/libabw.h>
-#include <libodfgen/libodfgen.hxx>
-
-#include "OutputFileHelper.hxx"
-#include "StringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "abw2odt"
-class OdtOutputFileHelper : public OutputFileHelper
-{
-public:
- OdtOutputFileHelper(const char *outFileName) :
- OutputFileHelper(outFileName, 0) {};
- ~OdtOutputFileHelper() {};
-
- bool convertDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdtGenerator collector;
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, metaHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&metaHandler, ODF_META_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (!libabw::AbiDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- static const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.text";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("meta.xml", metaHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
-
-
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- if (!libabw::AbiDocument::isFileFormatSupported(&input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid AbiWord document.\n");
- return false;
- }
-
- return true;
- }
-
-};
-
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts AbiWord documents to ODF.");
- usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
-
+using namespace writerperfectrvngodf;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- OdtOutputFileHelper helper(szOutFile);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- return 1;
-
- if (!helper.convertDocument(input, szOutFile==0))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperABW wrapper(options);
+ OdfConverter converter(options, TOOLNAME, "converts AbiWord documents to ODF.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/cdr2odg.cxx b/src/conv/odf/cdr2odg.cxx
index 2ec1eb9..27a010a 100644
--- a/src/conv/odf/cdr2odg.cxx
+++ b/src/conv/odf/cdr2odg.cxx
@@ -20,123 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "WPWrapperCDR.hxx"
+#include "OdfConverter.hxx"
-#include <libcdr/libcdr.h>
-#include <libodfgen/libodfgen.hxx>
-
-#include "OutputFileHelper.hxx"
-#include "StringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "cdr2odg"
-class OdgOutputFileHelper : public OutputFileHelper
-{
-public:
- OdgOutputFileHelper(const char *outFileName, const char *password) :
- OutputFileHelper(outFileName, password) {}
- ~OdgOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdgGenerator collector;
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, settingsHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&settingsHandler, ODF_SETTINGS_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (!libcdr::CDRDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.graphics";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("settings.xml", settingsHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libcdr::CDRDocument::isSupported(&input);
- }
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts CorelDRAW documents to ODF.");
- usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngodf;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- OdgOutputFileHelper helper(szOutFile, 0);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Corel Draw Document.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input, szOutFile==0))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperCDR wrapper(options, writerperfect::WPWrapperCDR::CDR_CDR);
+ OdfConverter converter(options, TOOLNAME, "converts CorelDRAW documents to ODF.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/cmx2odg.cxx b/src/conv/odf/cmx2odg.cxx
index f53da57..b11bba8 100644
--- a/src/conv/odf/cmx2odg.cxx
+++ b/src/conv/odf/cmx2odg.cxx
@@ -20,124 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "WPWrapperCDR.hxx"
+#include "OdfConverter.hxx"
-#include <libcdr/libcdr.h>
-#include <libodfgen/libodfgen.hxx>
-
-#include "OutputFileHelper.hxx"
-#include "StringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "cmx2odg"
-class OdgOutputFileHelper : public OutputFileHelper
-{
-public:
- OdgOutputFileHelper(const char *outFileName, const char *password) :
- OutputFileHelper(outFileName, password) {}
- ~OdgOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdgGenerator collector;
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, settingsHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&settingsHandler, ODF_SETTINGS_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (!libcdr::CMXDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.graphics";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("settings.xml", settingsHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libcdr::CMXDocument::isSupported(&input);
- }
-private:
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts Corel Presentation Exchange documents to ODF.");
- usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngodf;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- OdgOutputFileHelper helper(szOutFile, 0);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Corel Presentation Exchage document.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input, szOutFile==0))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperCDR wrapper(options, writerperfect::WPWrapperCDR::CDR_CMX);
+ OdfConverter converter(options, TOOLNAME, "converts Corel Presentation Exchange documents to ODF.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/ebook2odt.cxx b/src/conv/odf/ebook2odt.cxx
index 7f5f4d9..e673379 100644
--- a/src/conv/odf/ebook2odt.cxx
+++ b/src/conv/odf/ebook2odt.cxx
@@ -20,130 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "WPWrapperEBOOK.hxx"
+#include "OdfConverter.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libe-book/libe-book.h>
-
-#include <libodfgen/libodfgen.hxx>
-
-#include "OutputFileHelper.hxx"
-#include "StringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "ebook2odt"
-class OdtOutputFileHelper : public OutputFileHelper
-{
-public:
- OdtOutputFileHelper(const char *outFileName,const char *password) :
- OutputFileHelper(outFileName, password) {};
- ~OdtOutputFileHelper() {};
- bool convertDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdtGenerator collector;
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, metaHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&metaHandler, ODF_META_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
-
- if (libebook::EBOOKDocument::RESULT_OK != libebook::EBOOKDocument::parse(&input, &collector))
- return false;
-
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- static const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.text";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("meta.xml", metaHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libebook::EBOOKDocument::CONFIDENCE_EXCELLENT == libebook::EBOOKDocument::isSupported(&input);
- }
-};
-
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts e-books to ODF.");
- usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngodf;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- OdtOutputFileHelper helper(szOutFile, 0);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: the document is not in any supported format.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input, szOutFile==0))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperEBOOK wrapper(options);
+ OdfConverter converter(options, TOOLNAME, "converts e-books to ODF.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/fh2odg.cxx b/src/conv/odf/fh2odg.cxx
index da4a34d..630d3e8 100644
--- a/src/conv/odf/fh2odg.cxx
+++ b/src/conv/odf/fh2odg.cxx
@@ -20,124 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "WPWrapperFREEHAND.hxx"
+#include "OdfConverter.hxx"
-#include <libfreehand/libfreehand.h>
-#include <libodfgen/libodfgen.hxx>
-
-#include "OutputFileHelper.hxx"
-#include "StringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "fh2odg"
-class OdgOutputFileHelper : public OutputFileHelper
-{
-public:
- OdgOutputFileHelper(const char *outFileName, const char *password) :
- OutputFileHelper(outFileName, password) {}
- ~OdgOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdgGenerator collector;
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, settingsHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&settingsHandler, ODF_SETTINGS_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (!libfreehand::FreeHandDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.graphics";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("settings.xml", settingsHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- return libfreehand::FreeHandDocument::isSupported(&input);
- }
-private:
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts FreeHand documents to ODF.");
- usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngodf;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- OdgOutputFileHelper helper(szOutFile, 0);
- librevenge::RVNGFileStream input(szInputFile);
- if (!helper.isSupportedFormat(input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Freehand drawing.\n");
- return 1;
- }
-
- if (!helper.convertDocument(input, szOutFile==0))
- {
- fprintf(stderr, "ERROR : Couldn't write convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperFREEHAND wrapper(options);
+ OdfConverter converter(options, TOOLNAME, "converts FreeHand documents to ODF.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/key2odp.cxx b/src/conv/odf/key2odp.cxx
index 1a960e2..bf0bfcb 100644
--- a/src/conv/odf/key2odp.cxx
+++ b/src/conv/odf/key2odp.cxx
@@ -20,146 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "WPWrapperETONYEK.hxx"
+#include "OdfConverter.hxx"
-#include <libetonyek/libetonyek.h>
-#include <libodfgen/libodfgen.hxx>
-
-#include "writerperfect_utils.hxx"
-#include "OutputFileHelper.hxx"
-#include "StringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "key2odp"
-using libetonyek::EtonyekDocument;
-
-class OdpOutputFileHelper : public OutputFileHelper
-{
-public:
- OdpOutputFileHelper(const char *outFileName, const char *password) :
- OutputFileHelper(outFileName, password) {}
- ~OdpOutputFileHelper() {}
-
- bool convertDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdpGenerator collector;
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, settingsHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&settingsHandler, ODF_SETTINGS_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (!EtonyekDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.presentation";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("settings.xml", settingsHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
-
- static EtonyekDocument::Confidence isSupportedFormat(librevenge::RVNGInputStream &input, EtonyekDocument::Type *type = 0)
- {
- return EtonyekDocument::isSupported(&input, type);
- }
-};
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts Apple Keynote documents to ODF.");
- usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngodf;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- OdpOutputFileHelper helper(szOutFile, 0);
-
- shared_ptr<librevenge::RVNGInputStream> input;
- if (librevenge::RVNGDirectoryStream::isDirectory(szInputFile))
- input.reset(new librevenge::RVNGDirectoryStream(szInputFile));
- else
- input.reset(new librevenge::RVNGFileStream(szInputFile));
-
- EtonyekDocument::Type type = EtonyekDocument::TYPE_UNKNOWN;
- const EtonyekDocument::Confidence confidence = helper.isSupportedFormat(*input, &type);
- if ((EtonyekDocument::CONFIDENCE_NONE == confidence) || (EtonyekDocument::TYPE_KEYNOTE != type))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Keynote Document.\n");
- return 1;
- }
-
- if (EtonyekDocument::CONFIDENCE_SUPPORTED_PART == confidence)
- {
- input.reset(librevenge::RVNGDirectoryStream::createForParent(szInputFile));
-
- if (EtonyekDocument::CONFIDENCE_EXCELLENT != helper.isSupportedFormat(*input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Keynote Document.\n");
- return 1;
- }
- }
-
- if (!helper.convertDocument(*input, szOutFile==0))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperETONYEK wrapper(options, writerperfect::WPWrapper::Presentation);
+ OdfConverter converter(options, TOOLNAME, "converts Apple Keynote documents to ODF.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/mwaw2odf.cxx b/src/conv/odf/mwaw2odf.cxx
index c2d4f93..3af1b93 100644
--- a/src/conv/odf/mwaw2odf.cxx
+++ b/src/conv/odf/mwaw2odf.cxx
@@ -20,319 +20,20 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "OdfConverter.hxx"
+#include "OdfWrapperMWAW.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <librevenge-stream/librevenge-stream.h>
-#include <libmwaw/libmwaw.hxx>
-#include <libodfgen/libodfgen.hxx>
-
-#include "OutputFileHelper.hxx"
-#include "StringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "mwaw2odf"
-class OdfOutputFileHelper : public OutputFileHelper
-{
-public:
- enum OdfType { Odg, Odp, Ods, Odt };
- OdfOutputFileHelper(const char *outFileName,const char *password) :
- OutputFileHelper(outFileName, password) {};
- ~OdfOutputFileHelper() {};
-
- bool convertOdtDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdtGenerator collector;
- collector.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
- collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, metaHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&metaHandler, ODF_META_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (MWAWDocument::MWAW_R_OK != MWAWDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- static const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.text";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("meta.xml", metaHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
-
- bool convertOdgDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdgGenerator collector;
- collector.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
- collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, metaHandler, settingsHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&metaHandler, ODF_META_XML);
- collector.addDocumentHandler(&settingsHandler, ODF_SETTINGS_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (MWAWDocument::MWAW_R_OK != MWAWDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- static const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.graphics";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("meta.xml", metaHandler.cstr()) ||
- !writeChildFile("settings.xml", settingsHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
-
- bool convertOdpDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdpGenerator collector;
- collector.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
- collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, metaHandler, settingsHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&metaHandler, ODF_META_XML);
- collector.addDocumentHandler(&settingsHandler, ODF_SETTINGS_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (MWAWDocument::MWAW_R_OK != MWAWDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- static const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.presentation";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("meta.xml", metaHandler.cstr()) ||
- !writeChildFile("settings.xml", settingsHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
-
- bool convertOdsDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdsGenerator collector;
- collector.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
- collector.registerEmbeddedObjectHandler("image/mwaw-ods", &handleEmbeddedMWAWSpreadsheetObject);
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, metaHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&metaHandler, ODF_META_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (MWAWDocument::MWAW_R_OK != MWAWDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- static const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.spreadsheet";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("meta.xml", metaHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
-
- static bool isSupportedFormat(librevenge::RVNGInputStream &input, OdfType &odfType)
- {
- MWAWDocument::Type type;
- MWAWDocument::Kind kind;
- MWAWDocument::Confidence confidence = MWAWDocument::isFileFormatSupported(&input, type, kind);
- if (confidence != MWAWDocument::MWAW_C_EXCELLENT)
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Mac Classic document.\n");
- return false;
- }
- if (kind == MWAWDocument::MWAW_K_SPREADSHEET || kind == MWAWDocument::MWAW_K_DATABASE)
- odfType = Ods;
- else if (kind == MWAWDocument::MWAW_K_DRAW || kind == MWAWDocument::MWAW_K_PAINT)
- odfType = Odg;
- else if (kind == MWAWDocument::MWAW_K_TEXT)
- odfType = Odt;
- else if (kind == MWAWDocument::MWAW_K_PRESENTATION)
- odfType = Odp;
- else
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Mac Classic text document.\n");
- return false;
- }
-
- return true;
- }
-private:
- static bool handleEmbeddedMWAWGraphicObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType)
- {
- OdgGenerator exporter;
- exporter.addDocumentHandler(pHandler, streamType);
- return MWAWDocument::decodeGraphic(data, &exporter);
- }
- static bool handleEmbeddedMWAWSpreadsheetObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType)
- {
- OdsGenerator exporter;
- exporter.registerEmbeddedObjectHandler("image/mwaw-odg", &handleEmbeddedMWAWGraphicObject);
- exporter.addDocumentHandler(pHandler, streamType);
- return MWAWDocument::decodeSpreadsheet(data, &exporter);
- }
-};
-
-int printUsage(char const *name)
-{
- UsageHelper usage(name, "converts Mac documents to ODF.");
- usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
- usage.addStdoutOption();
- usage.addExtensionOption();
- return usage.printUsage();
-}
-
+using namespace writerperfectrvngodf;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
- bool printExtension=false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--extension") || !strcmp(argv[i], "-x"))
- printExtension = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- OdfOutputFileHelper::OdfType type;
- librevenge::RVNGFileStream input(szInputFile);
- if (!OdfOutputFileHelper::isSupportedFormat(input, type))
- return 1;
- if (printExtension)
- {
- if (type == OdfOutputFileHelper::Odt)
- printf("odt\n");
- else if (type == OdfOutputFileHelper::Odg)
- printf("odg\n");
- else if (type == OdfOutputFileHelper::Odp)
- printf("odp\n");
- else if (type == OdfOutputFileHelper::Ods)
- printf("ods\n");
- else
- printf("unknown\n");
- return 0;
- }
- OdfOutputFileHelper helper(szOutFile, 0);
- bool ok=false;
- if (type == OdfOutputFileHelper::Odt)
- ok=helper.convertOdtDocument(input, szOutFile==0);
- else if (type == OdfOutputFileHelper::Odg)
- ok=helper.convertOdgDocument(input, szOutFile==0);
- else if (type == OdfOutputFileHelper::Odp)
- ok=helper.convertOdpDocument(input, szOutFile==0);
- else if (type == OdfOutputFileHelper::Ods)
- ok=helper.convertOdsDocument(input, szOutFile==0);
- if (!ok)
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_extensionOption=options->m_standartOuputOption=true;
+ OdfWrapperMWAW wrapper(options);
+ OdfConverter converter(options, TOOLNAME, "converts legacy Mac documents to ODF.");
+ return converter.convert(wrapper, argc, argv);
}
-
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/numbers2ods.cxx b/src/conv/odf/numbers2ods.cxx
index 22767b7..9cffecd 100644
--- a/src/conv/odf/numbers2ods.cxx
+++ b/src/conv/odf/numbers2ods.cxx
@@ -20,154 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "WPWrapperETONYEK.hxx"
+#include "OdfConverter.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libetonyek/libetonyek.h>
-#include <libodfgen/libodfgen.hxx>
-
-#include "writerperfect_utils.hxx"
-#include "OutputFileHelper.hxx"
-#include "StringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "numbers2ods"
-using libetonyek::EtonyekDocument;
-
-class OdtOutputFileHelper : public OutputFileHelper
-{
-public:
- OdtOutputFileHelper(const char *outFileName) :
- OutputFileHelper(outFileName, 0) {};
- ~OdtOutputFileHelper() {};
-
- bool convertDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdsGenerator collector;
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, metaHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&metaHandler, ODF_META_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (!EtonyekDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- static const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.spreadsheet";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("meta.xml", metaHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
-
-
- EtonyekDocument::Confidence isSupportedFormat(librevenge::RVNGInputStream &input, EtonyekDocument::Type *type = 0)
- {
- return EtonyekDocument::isSupported(&input, type);
- }
-
-};
-
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts Apple Numbers documents to ODF.");
- usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
-
+using namespace writerperfectrvngodf;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- OdtOutputFileHelper helper(szOutFile);
-
- shared_ptr<librevenge::RVNGInputStream> input;
- if (librevenge::RVNGDirectoryStream::isDirectory(szInputFile))
- input.reset(new librevenge::RVNGDirectoryStream(szInputFile));
- else
- input.reset(new librevenge::RVNGFileStream(szInputFile));
-
- EtonyekDocument::Type type = EtonyekDocument::TYPE_UNKNOWN;
- const EtonyekDocument::Confidence confidence = helper.isSupportedFormat(*input, &type);
- if ((EtonyekDocument::CONFIDENCE_NONE == confidence) || (EtonyekDocument::TYPE_NUMBERS != type))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Keynote Document.\n");
- return 1;
- }
-
- if (EtonyekDocument::CONFIDENCE_SUPPORTED_PART == confidence)
- {
- input.reset(librevenge::RVNGDirectoryStream::createForParent(szInputFile));
-
- if (EtonyekDocument::CONFIDENCE_EXCELLENT != helper.isSupportedFormat(*input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Keynote Document.\n");
- return 1;
- }
- }
-
- if (!helper.convertDocument(*input, szOutFile==0))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperETONYEK wrapper(options, writerperfect::WPWrapper::Spreadsheet);
+ OdfConverter converter(options, TOOLNAME, "converts Apple Numbers documents to ODF.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/pages2odt.cxx b/src/conv/odf/pages2odt.cxx
index ec88a1d..a469b5f 100644
--- a/src/conv/odf/pages2odt.cxx
+++ b/src/conv/odf/pages2odt.cxx
@@ -20,154 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#include "WPWrapperETONYEK.hxx"
+#include "OdfConverter.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <libetonyek/libetonyek.h>
-#include <libodfgen/libodfgen.hxx>
-
-#include "writerperfect_utils.hxx"
-#include "OutputFileHelper.hxx"
-#include "StringDocumentHandler.hxx"
-#include "UsageHelper.hxx"
+#include "UserOptions.hxx"
#define TOOLNAME "pages2odt"
-using libetonyek::EtonyekDocument;
-
-class OdtOutputFileHelper : public OutputFileHelper
-{
-public:
- OdtOutputFileHelper(const char *outFileName) :
- OutputFileHelper(outFileName, 0) {};
- ~OdtOutputFileHelper() {};
-
- bool convertDocument(librevenge::RVNGInputStream &input, bool isFlat)
- {
- OdtGenerator collector;
- StringDocumentHandler stylesHandler, contentHandler, manifestHandler, metaHandler;
- if (isFlat)
- collector.addDocumentHandler(&contentHandler, ODF_FLAT_XML);
- else
- {
- collector.addDocumentHandler(&contentHandler, ODF_CONTENT_XML);
- collector.addDocumentHandler(&manifestHandler, ODF_MANIFEST_XML);
- collector.addDocumentHandler(&metaHandler, ODF_META_XML);
- collector.addDocumentHandler(&stylesHandler, ODF_STYLES_XML);
- }
- if (!EtonyekDocument::parse(&input, &collector))
- return false;
- if (isFlat)
- {
- printf("%s\n", contentHandler.cstr());
- return true;
- }
-
- static const char s_mimetypeStr[] = "application/vnd.oasis.opendocument.text";
- if (!writeChildFile("mimetype", s_mimetypeStr, (char)0) ||
- !writeChildFile("META-INF/manifest.xml", manifestHandler.cstr()) ||
- !writeChildFile("content.xml", contentHandler.cstr()) ||
- !writeChildFile("meta.xml", metaHandler.cstr()) ||
- !writeChildFile("styles.xml", stylesHandler.cstr()))
- return false;
-
- librevenge::RVNGStringVector objects=collector.getObjectNames();
- for (unsigned i=0; i<objects.size(); ++i)
- {
- StringDocumentHandler objectHandler;
- if (collector.getObjectContent(objects[i], &objectHandler))
- writeChildFile(objects[i].cstr(), objectHandler.cstr());
- }
- return true;
- }
-
-
- EtonyekDocument::Confidence isSupportedFormat(librevenge::RVNGInputStream &input, EtonyekDocument::Type *type = 0)
- {
- return EtonyekDocument::isSupported(&input, type);
- }
-
-};
-
-
-int printUsage(const char *name)
-{
- UsageHelper usage(name, "converts Apple Pages documents to ODF.");
- usage.addToDescription("If OUTPUT is omitted, the result is printed as Flat ODF to standard output.\n");
- usage.addStdoutOption();
- return usage.printUsage();
-}
-
-
+using namespace writerperfectrvngodf;
int main(int argc, char *argv[])
{
- if (argc < 2)
- return printUsage(TOOLNAME);
-
- char *szInputFile = 0;
- char *szOutFile = 0;
- bool stdOutput = false;
-
- for (int i = 1; i < argc; i++)
- {
- if (!strcmp(argv[i], "--stdout"))
- stdOutput = true;
- else if (!strcmp(argv[i], "--help"))
- return printUsage(TOOLNAME);
- else if (!strcmp(argv[i], "--version"))
- return UsageHelper::printVersion(TOOLNAME);
- else if (!szInputFile && strncmp(argv[i], "--", 2))
- szInputFile = argv[i];
- else if (szInputFile && !szOutFile && strncmp(argv[i], "--", 2))
- szOutFile = argv[i];
- else
- return printUsage(TOOLNAME);
- }
-
- if (!szInputFile)
- return printUsage(TOOLNAME);
-
- if (szOutFile && stdOutput)
- szOutFile = 0;
-
- OdtOutputFileHelper helper(szOutFile);
-
- shared_ptr<librevenge::RVNGInputStream> input;
- if (librevenge::RVNGDirectoryStream::isDirectory(szInputFile))
- input.reset(new librevenge::RVNGDirectoryStream(szInputFile));
- else
- input.reset(new librevenge::RVNGFileStream(szInputFile));
-
- EtonyekDocument::Type type = EtonyekDocument::TYPE_UNKNOWN;
- const EtonyekDocument::Confidence confidence = helper.isSupportedFormat(*input, &type);
- if ((EtonyekDocument::CONFIDENCE_NONE == confidence) || (EtonyekDocument::TYPE_PAGES != type))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Keynote Document.\n");
- return 1;
- }
-
- if (EtonyekDocument::CONFIDENCE_SUPPORTED_PART == confidence)
- {
- input.reset(librevenge::RVNGDirectoryStream::createForParent(szInputFile));
-
- if (EtonyekDocument::CONFIDENCE_EXCELLENT != helper.isSupportedFormat(*input))
- {
- fprintf(stderr, "ERROR: We have no confidence that you are giving us a valid Keynote Document.\n");
- return 1;
- }
- }
-
- if (!helper.convertDocument(*input, szOutFile==0))
- {
- fprintf(stderr, "ERROR : Couldn't convert the document\n");
- return 1;
- }
-
- return 0;
+ shared_ptr<UserOptions> options(new UserOptions);
+ options->m_standartOuputOption=true;
+ writerperfect::WPWrapperETONYEK wrapper(options, writerperfect::WPWrapper::Text);
+ OdfConverter converter(options, TOOLNAME, "converts Apple Pages documents to ODF.");
+ return converter.convert(wrapper, argc, argv);
}
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
diff --git a/src/conv/odf/pmd2odg.cxx b/src/conv/odf/pmd2odg.cxx
index 4988e1d..acc1152 100644
--- a/src/conv/odf/pmd2odg.cxx
+++ b/src/conv/odf/pmd2odg.cxx
@@ -20,124 +20,21 @@
* For further information visit http://libwpd.sourceforge.net
*/
-#include <stdio.h>
-#include <string.h>
+#include "WPWrapperPAGEMAKER.hxx"
+#include "OdfConverter.hxx"
-#include <libpagemaker/libpagemaker.h>
-#include <libodfgen/libodfgen.hxx>
-
-#include "OutputFileHelper.hxx"
-#include "StringDocume