Exportability taint of the headers
diff --git a/include/libxml/SAX2.h b/include/libxml/SAX2.h
index f2b1e19..37bfdc7 100644
--- a/include/libxml/SAX2.h
+++ b/include/libxml/SAX2.h
@@ -12,113 +12,115 @@
 
 #include <stdio.h>
 #include <stdlib.h>
+#include <libxml/xmlversion.h>
 #include <libxml/parser.h>
 #include <libxml/xlink.h>
 
 #ifdef __cplusplus
 extern "C" {
 #endif
-const xmlChar *	xmlSAX2GetPublicId		(void *ctx);
-const xmlChar *	xmlSAX2GetSystemId		(void *ctx);
-void		xmlSAX2SetDocumentLocator	(void *ctx,
+XMLPUBFUN const xmlChar * XMLCALL
+		xmlSAX2GetPublicId		(void *ctx);
+XMLPUBFUN const xmlChar * XMLCALL	xmlSAX2GetSystemId		(void *ctx);
+XMLPUBFUN void XMLCALL		xmlSAX2SetDocumentLocator	(void *ctx,
 						 xmlSAXLocatorPtr loc);
     
-int		xmlSAX2GetLineNumber		(void *ctx);
-int		xmlSAX2GetColumnNumber		(void *ctx);
+XMLPUBFUN int XMLCALL		xmlSAX2GetLineNumber		(void *ctx);
+XMLPUBFUN int XMLCALL		xmlSAX2GetColumnNumber		(void *ctx);
 
-int		xmlSAX2IsStandalone		(void *ctx);
-int		xmlSAX2HasInternalSubset	(void *ctx);
-int		xmlSAX2HasExternalSubset	(void *ctx);
+XMLPUBFUN int XMLCALL		xmlSAX2IsStandalone		(void *ctx);
+XMLPUBFUN int XMLCALL		xmlSAX2HasInternalSubset	(void *ctx);
+XMLPUBFUN int XMLCALL		xmlSAX2HasExternalSubset	(void *ctx);
 
-void		xmlSAX2InternalSubset		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2InternalSubset		(void *ctx,
 						 const xmlChar *name,
 						 const xmlChar *ExternalID,
 						 const xmlChar *SystemID);
-void		xmlSAX2ExternalSubset		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2ExternalSubset		(void *ctx,
 						 const xmlChar *name,
 						 const xmlChar *ExternalID,
 						 const xmlChar *SystemID);
-xmlEntityPtr	xmlSAX2GetEntity		(void *ctx,
+XMLPUBFUN xmlEntityPtr XMLCALL	xmlSAX2GetEntity		(void *ctx,
 						 const xmlChar *name);
-xmlEntityPtr	xmlSAX2GetParameterEntity	(void *ctx,
+XMLPUBFUN xmlEntityPtr XMLCALL	xmlSAX2GetParameterEntity	(void *ctx,
 						 const xmlChar *name);
-xmlParserInputPtr xmlSAX2ResolveEntity		(void *ctx,
+XMLPUBFUN xmlParserInputPtr XMLCALL xmlSAX2ResolveEntity		(void *ctx,
 						 const xmlChar *publicId,
 						 const xmlChar *systemId);
 
-void		xmlSAX2EntityDecl		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2EntityDecl		(void *ctx,
 						 const xmlChar *name,
 						 int type,
 						 const xmlChar *publicId,
 						 const xmlChar *systemId,
 						 xmlChar *content);
-void		xmlSAX2AttributeDecl		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2AttributeDecl		(void *ctx,
 						 const xmlChar *elem,
 						 const xmlChar *fullname,
 						 int type,
 						 int def,
 						 const xmlChar *defaultValue,
 						 xmlEnumerationPtr tree);
-void		xmlSAX2ElementDecl		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2ElementDecl		(void *ctx,
 						 const xmlChar *name,
 						 int type,
 						 xmlElementContentPtr content);
-void		xmlSAX2NotationDecl		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2NotationDecl		(void *ctx,
 						 const xmlChar *name,
 						 const xmlChar *publicId,
 						 const xmlChar *systemId);
-void		xmlSAX2UnparsedEntityDecl	(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2UnparsedEntityDecl	(void *ctx,
 						 const xmlChar *name,
 						 const xmlChar *publicId,
 						 const xmlChar *systemId,
 						 const xmlChar *notationName);
 
-void		xmlSAX2StartDocument		(void *ctx);
-void		xmlSAX2EndDocument		(void *ctx);
-void		xmlSAX2StartElement		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2StartDocument		(void *ctx);
+XMLPUBFUN void XMLCALL		xmlSAX2EndDocument		(void *ctx);
+XMLPUBFUN void XMLCALL		xmlSAX2StartElement		(void *ctx,
 						 const xmlChar *fullname,
 						 const xmlChar **atts);
-void		xmlSAX2EndElement		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2EndElement		(void *ctx,
 						 const xmlChar *name);
-void		xmlSAX2Reference		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2Reference		(void *ctx,
 						 const xmlChar *name);
-void		xmlSAX2Characters		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2Characters		(void *ctx,
 						 const xmlChar *ch,
 						 int len);
-void		xmlSAX2IgnorableWhitespace	(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2IgnorableWhitespace	(void *ctx,
 						 const xmlChar *ch,
 						 int len);
-void		xmlSAX2ProcessingInstruction	(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2ProcessingInstruction	(void *ctx,
 						 const xmlChar *target,
 						 const xmlChar *data);
-void		xmlSAX2GlobalNamespace		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2GlobalNamespace		(void *ctx,
 						 const xmlChar *href,
 						 const xmlChar *prefix);
-void		xmlSAX2SetNamespace		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2SetNamespace		(void *ctx,
 						 const xmlChar *name);
-xmlNsPtr	xmlSAX2GetNamespace		(void *ctx);
-int		xmlSAX2CheckNamespace		(void *ctx,
+XMLPUBFUN xmlNsPtr XMLCALL	xmlSAX2GetNamespace		(void *ctx);
+XMLPUBFUN int XMLCALL		xmlSAX2CheckNamespace		(void *ctx,
 						 xmlChar *nameSpace);
-void		xmlSAX2NamespaceDecl		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2NamespaceDecl		(void *ctx,
 						 const xmlChar *href,
 						 const xmlChar *prefix);
-void		xmlSAX2Comment			(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2Comment			(void *ctx,
 						 const xmlChar *value);
-void		xmlSAX2CDataBlock		(void *ctx,
+XMLPUBFUN void XMLCALL		xmlSAX2CDataBlock		(void *ctx,
 						 const xmlChar *value,
 						 int len);
 
-void		xmlSAX2InitDefaultSAXHandler    (xmlSAXHandler *hdlr,
+XMLPUBFUN void XMLCALL		xmlSAX2InitDefaultSAXHandler    (xmlSAXHandler *hdlr,
 						 int warning);
 #ifdef LIBXML_HTML_ENABLED
-void		xmlSAX2InitHtmlDefaultSAXHandler(xmlSAXHandler *hdlr);
+XMLPUBFUN void XMLCALL		xmlSAX2InitHtmlDefaultSAXHandler(xmlSAXHandler *hdlr);
 #endif
 #ifdef LIBXML_DOCB_ENABLED
-void		xmlSAX2InitDocbDefaultSAXHandler(xmlSAXHandler *hdlr);
+XMLPUBFUN void XMLCALL		xmlSAX2InitDocbDefaultSAXHandler(xmlSAXHandler *hdlr);
 #endif
-void		xmlDefaultSAXHandlerInit	(void);
-void		htmlDefaultSAXHandlerInit	(void);
-void		docbDefaultSAXHandlerInit	(void);
+XMLPUBFUN void XMLCALL		xmlDefaultSAXHandlerInit	(void);
+XMLPUBFUN void XMLCALL		htmlDefaultSAXHandlerInit	(void);
+XMLPUBFUN void XMLCALL		docbDefaultSAXHandlerInit	(void);
 #ifdef __cplusplus
 }
 #endif