Ok, so plugins work great on Unix, but not on win32. That's because Win32/MSVC 
expects the right usage of __declspec(dllimport) and __declspec(dllexport) 
before classes and structs that you want to export across DLL boundaries. 
That's fine, so I made a new macro and moved it to ut_types.h

ABI_EXPORT

so, for *every* class that you folks make from now on and forsee that it might 
somehow get used across a plugin boundary, declare it like this:

class ABI_EXPORT MyClassName

Win32 guys, when you're building a particular plugin, you need to #define 
ABI_DLL somewhere. There is some comments in src/af/util/xp/ut_types.h on all 
of this. I'm hoping to beef up my comments some more there.

I've converted the src/af/util/xp, src/text/ptbl/xp, src/text/fmt/xp, and 
src/wp/impexp/xp directories over. I'll want to also do the others, but there 
are a *lot* of classes there...

So I hope that this doesn't break anyone's build, esp. on win32 (should be 
harmless elsewhere). If it does, you've been forewarned - I've just eaten all 
the donuts.

Dom

CVS: ----------------------------------------------------------------------
CVS: Enter Log.  Lines beginning with `CVS:' are removed automatically
CVS:
CVS: Committing in .
CVS:
CVS: Modified Files:
CVS:    configure.in src/af/util/xp/GNUmakefile.am
CVS:    src/af/util/xp/Makefile src/af/util/xp/ut_AbiObject.h
CVS:    src/af/util/xp/ut_AdobeEncoding.h src/af/util/xp/ut_Encoding.h
CVS:    src/af/util/xp/ut_Language.h src/af/util/xp/ut_PerlBindings.h
CVS:    src/af/util/xp/ut_base64.h src/af/util/xp/ut_bijection.h
CVS:    src/af/util/xp/ut_bytebuf.h src/af/util/xp/ut_exception.h
CVS:    src/af/util/xp/ut_growbuf.h src/af/util/xp/ut_hash.h
CVS:    src/af/util/xp/ut_iconv.h src/af/util/xp/ut_idle.h
CVS:    src/af/util/xp/ut_mbtowc.h src/af/util/xp/ut_misc.h
CVS:    src/af/util/xp/ut_pair.h src/af/util/xp/ut_rbtree.h
CVS:    src/af/util/xp/ut_set.h src/af/util/xp/ut_stack.h
CVS:    src/af/util/xp/ut_string_class.h src/af/util/xp/ut_stringbuf.h
CVS:    src/af/util/xp/ut_svg.h src/af/util/xp/ut_timer.h
CVS:    src/af/util/xp/ut_types.h src/af/util/xp/ut_vector.h
CVS:    src/af/util/xp/ut_wctomb.h src/af/util/xp/ut_worker.h
CVS:    src/af/xap/xp/xap_Module.h src/text/fmt/xp/fb_Alignment.h
CVS:    src/text/fmt/xp/fb_ColumnBreaker.h
CVS:    src/text/fmt/xp/fb_LineBreaker.h src/text/fmt/xp/fg_Graphic.h
CVS:    src/text/fmt/xp/fg_GraphicRaster.h
CVS:    src/text/fmt/xp/fg_GraphicVector.h
CVS:    src/text/fmt/xp/fl_AutoNum.h src/text/fmt/xp/fl_BlockLayout.h
CVS:    src/text/fmt/xp/fl_DocLayout.h
CVS:    src/text/fmt/xp/fl_DocListener.h src/text/fmt/xp/fl_Layout.h
CVS:    src/text/fmt/xp/fl_SectionLayout.h src/text/fmt/xp/fp_Column.h
CVS:    src/text/fmt/xp/fp_FieldListLabelRun.h
CVS:    src/text/fmt/xp/fp_Line.h src/text/fmt/xp/fp_Page.h
CVS:    src/text/fmt/xp/fp_PageSize.h src/text/fmt/xp/fp_Run.h
CVS:    src/text/fmt/xp/fp_TextRun.h src/text/fmt/xp/fv_View.h
CVS:    src/text/ptbl/xp/fd_Field.h src/text/ptbl/xp/pd_Document.h
CVS:    src/text/ptbl/xp/pd_Style.h src/text/ptbl/xp/pf_Frag.h
CVS:    src/text/ptbl/xp/pf_Frag_FmtMark.h
CVS:    src/text/ptbl/xp/pf_Frag_Object.h
CVS:    src/text/ptbl/xp/pf_Frag_Strux.h
CVS:    src/text/ptbl/xp/pf_Frag_Strux_Block.h
CVS:    src/text/ptbl/xp/pf_Frag_Strux_Section.h
CVS:    src/text/ptbl/xp/pf_Frag_Text.h
CVS:    src/text/ptbl/xp/pf_Fragments.h src/text/ptbl/xp/pl_Listener.h
CVS:    src/text/ptbl/xp/pp_AttrProp.h src/text/ptbl/xp/pp_Property.h
CVS:    src/text/ptbl/xp/pp_TableAttrProp.h
CVS:    src/text/ptbl/xp/pt_PieceTable.h src/text/ptbl/xp/pt_Types.h
CVS:    src/text/ptbl/xp/pt_VarSet.h src/text/ptbl/xp/px_CR_FmtMark.h
CVS:    src/text/ptbl/xp/px_CR_FmtMarkChange.h
CVS:    src/text/ptbl/xp/px_CR_Glob.h src/text/ptbl/xp/px_CR_Object.h
CVS:    src/text/ptbl/xp/px_CR_ObjectChange.h
CVS:    src/text/ptbl/xp/px_CR_Span.h
CVS:    src/text/ptbl/xp/px_CR_SpanChange.h
CVS:    src/text/ptbl/xp/px_CR_Strux.h
CVS:    src/text/ptbl/xp/px_CR_StruxChange.h
CVS:    src/text/ptbl/xp/px_ChangeHistory.h
CVS:    src/text/ptbl/xp/px_ChangeRecord.h src/wp/impexp/xp/ie_exp.h
CVS:    src/wp/impexp/xp/ie_exp_AWT.h
CVS:    src/wp/impexp/xp/ie_exp_AbiWord_1.h
CVS:    src/wp/impexp/xp/ie_exp_Applix.h
CVS:    src/wp/impexp/xp/ie_exp_BZ2Abw.h
CVS:    src/wp/impexp/xp/ie_exp_DocBook.h
CVS:    src/wp/impexp/xp/ie_exp_HRText.h
CVS:    src/wp/impexp/xp/ie_exp_HTML.h src/wp/impexp/xp/ie_exp_ISCII.h
CVS:    src/wp/impexp/xp/ie_exp_KWord_1.h
CVS:    src/wp/impexp/xp/ie_exp_LaTeX.h src/wp/impexp/xp/ie_exp_MIF.h
CVS:    src/wp/impexp/xp/ie_exp_MsWord_97.h
CVS:    src/wp/impexp/xp/ie_exp_PalmDoc.h
CVS:    src/wp/impexp/xp/ie_exp_RTF.h
CVS:    src/wp/impexp/xp/ie_exp_RTF_AttrProp.h
CVS:    src/wp/impexp/xp/ie_exp_RTF_listenerGetProps.h
CVS:    src/wp/impexp/xp/ie_exp_RTF_listenerWriteDoc.h
CVS:    src/wp/impexp/xp/ie_exp_Text.h src/wp/impexp/xp/ie_exp_WML.h
CVS:    src/wp/impexp/xp/ie_exp_XSL-FO.h src/wp/impexp/xp/ie_imp.h
CVS:    src/wp/impexp/xp/ie_imp_AbiWord_1.h
CVS:    src/wp/impexp/xp/ie_imp_Applix.h
CVS:    src/wp/impexp/xp/ie_imp_BZ2Abw.h
CVS:    src/wp/impexp/xp/ie_imp_ClarisWorks.h
CVS:    src/wp/impexp/xp/ie_imp_DocBook.h
CVS:    src/wp/impexp/xp/ie_imp_GZipAbiWord.h
CVS:    src/wp/impexp/xp/ie_imp_ISCII.h
CVS:    src/wp/impexp/xp/ie_imp_KWord_1.h
CVS:    src/wp/impexp/xp/ie_imp_MIF.h
CVS:    src/wp/impexp/xp/ie_imp_MSWrite.h
CVS:    src/wp/impexp/xp/ie_imp_MsWord_97.h
CVS:    src/wp/impexp/xp/ie_imp_PalmDoc.h
CVS:    src/wp/impexp/xp/ie_imp_Psion.h src/wp/impexp/xp/ie_imp_RTF.h
CVS:    src/wp/impexp/xp/ie_imp_Text.h src/wp/impexp/xp/ie_imp_WML.h
CVS:    src/wp/impexp/xp/ie_imp_WordPerfect.h
CVS:    src/wp/impexp/xp/ie_imp_XHTML.h src/wp/impexp/xp/ie_imp_XML.h
CVS:    src/wp/impexp/xp/ie_imp_XSL-FO.h
CVS: Removed Files:
CVS:    src/af/util/xp/ut_pool.cpp src/af/util/xp/ut_pool.h
CVS: ----------------------------------------------------------------------


Reply via email to