The following patch implements a basic API for dynamically loading shared objects (.so/.dll files). The API is as follows: XMLPUBFUN xmlModulePtr XMLCALL xmlModuleOpen (const char *filename); XMLPUBFUN void* XMLCALL xmlModuleSymbol (xmlModulePtr module, const char* name); XMLPUBFUN int XMLCALL xmlModuleClose(xmlModulePtr module); XMLPUBFUN int XMLCALL xmlModuleFree (xmlModulePtr module); The guts of the patch can be found in the following files: libxml2/xmlmodule.c libxml2/xmlmodule-beos.c libxml2/xmlmodule-dlopen.c libxml2/xmlmodule-os2.c libxml2/xmlmodule-shlload.c libxml2/xmlmodule-win32.c Thus far, only xmlmodule-dlopen.c has been tested. I plan on testing xmlmodule-win32.c next. People with access to beos, os2, shlload-based platforms - please test out the patch & provide improvements. I'm posting this for review, and hope that at some point it can be included into CVS. I've got a 2nd patch to post which uses libxml2 module support to implement XSLT extensions as modules. jr
Attachment:
xmlmodules.patch
Description: Text document