- xmlversion.h.in win32config.h win32/libxml2/*: applied
  Igor Zlatkovic patches for MSC compilation and added his
  updates
Daniel
diff --git a/ChangeLog b/ChangeLog
index b525458..2618d4a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Mon Apr 16 19:44:36 CEST 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
+
+	* xmlversion.h.in win32config.h win32/libxml2/*: applied 
+	  Igor Zlatkovic patches for MSC compilation and added his
+	  updates
+
 Tue Apr 17 10:08:19 CEST 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
 
 	* xpath.c: fixed xmlXPathNodeCollectAndTest() to do proper
diff --git a/Makefile.am b/Makefile.am
index fae499b..e0fb485 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -410,7 +410,9 @@
 	     $(man_MANS) libxml-2.0.pc.in xmlversion.h.in \
 	     win32/README.MSDev win32/Makefile.mingw \
 	     win32/libxml2/libxml2.dsp win32/libxml2/libxml2_so.dsp \
-	     win32/libxml2/libxml2_a.dsp vms/build_libxml.com vms/config.vms \
+	     win32/libxml2/libxml2_a.dsp win32/libxml2/xmllint.dsp \
+	     win32/libxml2/libxml2.def.src \
+	     vms/build_libxml.com vms/config.vms \
              trio.h strio.h
 
 pkgconfigdir = $(libdir)/pkgconfig
diff --git a/include/libxml/xmlversion.h.in b/include/libxml/xmlversion.h.in
index c1dffbb..211a5e2 100644
--- a/include/libxml/xmlversion.h.in
+++ b/include/libxml/xmlversion.h.in
@@ -17,7 +17,9 @@
  * use those to be sure nothing nasty will happen if
  * your library and includes mismatch
  */
+#ifndef LIBXML2_COMPILING_MSCCDEF
 extern void xmlCheckVersion(int version);
+#endif /* LIBXML2_COMPILING_MSCCDEF */
 #define LIBXML_DOTTED_VERSION "@VERSION@"
 #define LIBXML_VERSION @LIBXML_VERSION_NUMBER@
 #define LIBXML_VERSION_STRING "@LIBXML_VERSION_NUMBER@"
diff --git a/include/win32config.h b/include/win32config.h
index ea2cd50..14c9e9e 100644
--- a/include/win32config.h
+++ b/include/win32config.h
@@ -88,5 +88,13 @@
 
 #include <direct.h>
 
-#define HAVE_SYS_STAT_H                                                         #define HAVE__STAT
+#define HAVE_SYS_STAT_H
+#define HAVE__STAT
+
+/* Microsoft's C runtime names all non-ANSI functions with a leading
+   underscore. Since functionality is still the same, they can be used. */
+#ifdef _MSC_VER
+#define snprintf _snprintf
+#define vsnprintf _vsnprintf
+#endif /* _MSC_VER */
 
diff --git a/win32/libxml2/libxml2.def.src b/win32/libxml2/libxml2.def.src
new file mode 100644
index 0000000..3223a8c
--- /dev/null
+++ b/win32/libxml2/libxml2.def.src
@@ -0,0 +1,911 @@
+/* win32/libxml2/libxml2.def.src
+   Pseudo-source used to create a .DEF file for proper dynamic 
+   linkage under MSCC. 
+   
+   Assuming you use Microsoft's C compiler, you run a
+   
+       cl /nologo /EP libxml2.def.src > libxml2.def
+       
+   in order to get the right .DEF file. Basically, all you do is
+   preprocess this file using a C/C++ preprocessor and the right
+   .DEF file should come out. 
+   
+   Should you need a function which does not seem to be exported
+   from the libxml2.dll, its name is most certainly missing here.
+   Add the name of the offending function to this file and rebuild.
+
+   14.04.2001, Igor Zlatkovic (igor@stud.fh-frankfurt.de)
+*/
+
+#define LIBXML2_COMPILING_MSCCDEF
+#include "../../include/libxml/xmlversion.h"
+
+LIBRARY libxml2
+EXPORTS
+
+/* 
+ * debugXML.h 
+ */
+#ifdef LIBXML_DEBUG_ENABLED
+	xmlDebugDumpString
+	xmlDebugDumpAttr
+	xmlDebugDumpAttrList
+	xmlDebugDumpOneNode
+	xmlDebugDumpNode
+	xmlDebugDumpNodeList
+	xmlDebugDumpDocumentHead
+	xmlDebugDumpDocument
+	xmlDebugDumpDTD
+	xmlDebugDumpEntities
+	xmlLsOneNode
+	xmlShell
+#endif
+
+/* 
+ * encoding.h 
+ */
+	xmlInitCharEncodingHandlers
+	xmlCleanupCharEncodingHandlers
+	xmlRegisterCharEncodingHandler
+	xmlGetCharEncodingHandler
+	xmlFindCharEncodingHandler
+	xmlAddEncodingAlias
+	xmlDelEncodingAlias
+	xmlGetEncodingAlias
+	xmlCleanupEncodingAliases
+	xmlParseCharEncoding
+	xmlGetCharEncodingName
+	xmlDetectCharEncoding
+	xmlCheckUTF8
+	xmlCharEncOutFunc
+	xmlCharEncInFunc
+	xmlCharEncFirstLine
+	xmlCharEncCloseFunc
+	UTF8Toisolat1
+	isolat1ToUTF8
+
+/* 
+ * entities.h 
+ */
+	xmlInitializePredefinedEntities
+	xmlAddDocEntity
+	xmlAddDtdEntity
+	xmlGetPredefinedEntity
+	xmlGetDocEntity
+	xmlGetDtdEntity
+	xmlGetParameterEntity
+	xmlEncodeEntities
+	xmlEncodeEntitiesReentrant
+	xmlEncodeSpecialChars
+	xmlCreateEntitiesTable
+	xmlCopyEntitiesTable
+	xmlFreeEntitiesTable
+	xmlDumpEntitiesTable
+	xmlDumpEntityDecl
+	xmlCopyEntitiesTable
+	xmlCleanupPredefinedEntities
+
+/* 
+ * hash.h 
+ */
+	xmlHashCreate
+	xmlHashFree
+	xmlHashAddEntry
+	xmlHashUpdateEntry
+	xmlHashAddEntry2
+	xmlHashUpdateEntry2
+	xmlHashAddEntry3
+	xmlHashUpdateEntry3
+	xmlHashRemoveEntry
+	xmlHashRemoveEntry2
+	xmlHashRemoveEntry3
+	xmlHashLookup
+	xmlHashLookup2
+	xmlHashLookup3
+	xmlHashCopy
+	xmlHashSize
+	xmlHashScan
+	xmlHashScan3
+
+/* 
+ * HTMLparser.h 
+ */
+#ifdef LIBXML_HTML_ENABLED
+	htmlTagLookup
+	htmlEntityLookup
+	htmlEntityValueLookup
+	htmlIsAutoClosed
+	htmlAutoCloseTag
+	htmlParseEntityRef
+	htmlParseCharRef
+	htmlParseElement
+	htmlSAXParseDoc
+	htmlParseDoc
+	htmlSAXParseFile
+	htmlParseFile
+	UTF8ToHtml
+	htmlEncodeEntities
+	htmlIsScriptAttribute
+	htmlHandleOmittedElem
+	htmlFreeParserCtxt
+	htmlCreatePushParserCtxt
+	htmlParseChunk
+#endif /* LIBXML_HTML_ENABLED */
+
+/* 
+ * HTMLtree.h 
+ */
+#ifdef LIBXML_HTML_ENABLED
+	htmlNewDoc
+	htmlNewDocNoDtD
+	htmlGetMetaEncoding
+	htmlSetMetaEncoding
+	htmlDocDumpMemory
+	htmlDocDump
+	htmlSaveFile
+	htmlNodeDump
+	htmlNodeDumpFile
+	htmlSaveFileEnc
+#endif /* LIBXML_HTML_ENABLED */
+
+/* 
+ * list.h 
+ */
+	xmlListCreate
+	xmlListDelete
+	xmlListSearch
+	xmlListReverseSearch
+	xmlListInsert
+	xmlListAppend
+	xmlListRemoveFirst
+	xmlListRemoveLast
+	xmlListRemoveAll
+	xmlListClear
+	xmlListEmpty
+	xmlListFront
+	xmlListEnd
+	xmlListSize
+	xmlListPopFront
+	xmlListPopBack
+	xmlListPushFront
+	xmlListPushBack
+	xmlListReverse
+	xmlListSort
+	xmlListWalk
+	xmlListReverseWalk
+	xmlListMerge
+	xmlListDup
+	xmlListCopy
+	xmlLinkGetData
+
+/* 
+ * nanoftp.h 
+ */
+#ifdef LIBXML_FTP_ENABLED
+	xmlNanoFTPInit
+	xmlNanoFTPCleanup
+	xmlNanoFTPNewCtxt
+	xmlNanoFTPFreeCtxt
+	xmlNanoFTPConnectTo
+	xmlNanoFTPOpen
+	xmlNanoFTPConnect
+	xmlNanoFTPClose
+	xmlNanoFTPQuit
+	xmlNanoFTPScanProxy
+	xmlNanoFTPProxy
+	xmlNanoFTPUpdateURL
+	xmlNanoFTPGetResponse
+	xmlNanoFTPCheckResponse
+	xmlNanoFTPCwd
+	xmlNanoFTPGetConnection
+	xmlNanoFTPCloseConnection
+	xmlNanoFTPList
+	xmlNanoFTPGetSocket
+	xmlNanoFTPGet
+	xmlNanoFTPRead
+#endif /* LIBXML_FTP_ENABLED */
+
+/* 
+ * nanohttp.h 
+ */
+#ifdef LIBXML_HTTP_ENABLED
+	xmlNanoHTTPInit
+	xmlNanoHTTPCleanup
+	xmlNanoHTTPScanProxy
+	xmlNanoHTTPFetch
+	xmlNanoHTTPMethod
+	xmlNanoHTTPOpen
+	xmlNanoHTTPReturnCode
+	xmlNanoHTTPAuthHeader
+	xmlNanoHTTPRead
+	xmlNanoHTTPSave
+	xmlNanoHTTPClose
+#endif /* LIBXML_HTTP_ENABLED */
+
+/* 
+ * parser.h 
+ */
+	xmlInitParser
+	xmlCleanupParser
+	xmlParserInputRead
+	xmlParserInputGrow
+	xmlStrdup
+	xmlStrndup
+	xmlCharStrndup
+	xmlCharStrdup
+	xmlStrsub
+	xmlStrchr
+	xmlStrstr
+	xmlStrcasestr
+	xmlStrcmp
+	xmlStrncmp
+	xmlStrcasecmp
+	xmlStrncasecmp
+	xmlStrEqual
+	xmlStrlen
+	xmlStrcat
+	xmlStrncat
+	xmlParseDoc
+	xmlParseMemory
+	xmlParseFile
+	xmlSubstituteEntitiesDefault
+	xmlKeepBlanksDefault
+	xmlStopParser
+	xmlPedanticParserDefault
+	xmlRecoverDoc
+	xmlRecoverMemory
+	xmlRecoverFile
+	xmlParseDocument
+	xmlParseExtParsedEnt
+	xmlSAXParseDoc
+	xmlSAXUserParseFile
+	xmlSAXUserParseMemory
+	xmlSAXParseMemory
+	xmlSAXParseFile
+	xmlSAXParseEntity
+	xmlParseEntity
+	xmlParseDTD
+	xmlSAXParseDTD
+	xmlIOParseDTD
+	xmlParseBalancedChunkMemory
+	xmlParseExternalEntity
+	xmlParseCtxtExternalEntity
+	xmlDefaultSAXHandlerInit
+	htmlDefaultSAXHandlerInit
+	xmlInitParserCtxt
+	xmlClearParserCtxt
+	xmlFreeParserCtxt
+	xmlSetupParserForBuffer
+	xmlCreateDocParserCtxt
+	xmlGetFeaturesList
+	xmlGetFeature
+	xmlSetFeature
+	xmlCreatePushParserCtxt
+	xmlParseChunk
+	xmlCreateIOParserCtxt
+	xmlNewIOInputStream
+	xmlParserFindNodeInfo
+	xmlInitNodeInfoSeq
+	xmlClearNodeInfoSeq
+	xmlParserFindNodeInfoIndex
+	xmlParserAddNodeInfo
+	xmlSetExternalEntityLoader
+	xmlGetExternalEntityLoader
+	xmlLoadExternalEntity
+
+/* 
+ * parserinternals.h 
+ */
+	xmlIsBaseChar
+	xmlIsBlank
+	xmlIsPubidChar
+	xmlIsLetter
+	xmlIsDigit
+	xmlIsIdeographic
+	xmlIsCombining
+	xmlIsExtender
+	xmlIsCombining
+	xmlIsChar
+	xmlCreateDocParserCtxt
+	xmlCreateFileParserCtxt
+	xmlCreateMemoryParserCtxt
+	xmlNewParserCtxt
+	xmlCreateEntityParserCtxt
+	xmlSwitchEncoding
+	xmlSwitchToEncoding
+	xmlFreeParserCtxt
+	xmlHandleEntity
+	xmlNewStringInputStream
+	xmlNewEntityInputStream
+	xmlPushInput
+	xmlPopInput
+	xmlFreeInputStream
+	xmlNewInputFromFile
+	xmlNewInputStream
+	xmlSplitQName
+	xmlNamespaceParseNCName
+	xmlNamespaceParseQName
+	xmlNamespaceParseNSDef
+	xmlParseQuotedString
+	xmlParseNamespace
+	xmlScanName
+	xmlParseName
+	xmlParseNmtoken
+	xmlParseEntityValue
+	xmlParseAttValue
+	xmlParseSystemLiteral
+	xmlParsePubidLiteral
+	xmlParseCharData
+	xmlParseExternalID
+	xmlParseComment
+	xmlParsePITarget
+	xmlParsePI
+	xmlParseNotationDecl
+	xmlParseEntityDecl
+	xmlParseDefaultDecl
+	xmlParseNotationType
+	xmlParseEnumerationType
+	xmlParseEnumeratedType
+	xmlParseAttributeType
+	xmlParseAttributeListDecl
+	xmlParseElementChildrenContentDecl
+	xmlParseElementContentDecl
+	xmlParseElementDecl
+	xmlParseMarkupDecl
+	xmlParseCharRef
+	xmlParseEntityRef
+	xmlParseReference
+	xmlParsePEReference
+	xmlParseDocTypeDecl
+	xmlParseAttribute
+	xmlParseStartTag
+	xmlParseEndTag
+	xmlParseCDSect
+	xmlParseContent
+	xmlParseElement
+	xmlParseVersionNum
+	xmlParseVersionInfo
+	xmlParseEncName
+	xmlParseEncodingDecl
+	xmlParseSDDecl
+	xmlParseXMLDecl
+	xmlParseTextDecl
+	xmlParseMisc
+	xmlParseExternalSubset
+	xmlDecodeEntities
+	xmlStringDecodeEntities
+	nodePush
+	nodePop
+	inputPush
+	inputPop
+	namePop
+	namePush
+	xmlSkipBlankChars
+	xmlStringCurrentChar
+	xmlParserHandlePEReference
+	xmlParserHandleReference
+	xmlCheckLanguageID
+	xmlCurrentChar
+	xmlCopyCharMultiByte
+	xmlCopyChar
+	xmlNextChar
+	xmlParserInputShrink
+#ifdef LIBXML_HTML_ENABLED
+	htmlInitAutoClose
+	htmlCreateFileParserCtxt
+#endif /* LIBXML_HTML_ENABLED */
+
+/*
+ * SAX.h 
+ */
+	getPublicId
+	getSystemId
+	setDocumentLocator
+	getLineNumber
+	getColumnNumber
+	isStandalone
+	hasInternalSubset
+	hasExternalSubset
+	internalSubset
+	externalSubset
+	getEntity
+	getParameterEntity
+	resolveEntity
+	entityDecl
+	attributeDecl
+	elementDecl
+	notationDecl
+	unparsedEntityDecl
+	startDocument
+	endDocument
+	attribute
+	startElement
+	endElement
+	reference
+	characters
+	ignorableWhitespace
+	processingInstruction
+	globalNamespace
+	setNamespace
+	getNamespace
+	checkNamespace
+	namespaceDecl
+	comment
+	cdataBlock
+	xmlDefaultSAXHandlerInit
+	htmlDefaultSAXHandlerInit
+	sgmlDefaultSAXHandlerInit
+
+/* 
+ * strio.h 
+ */
+#ifdef WITH_TRIO
+	StrAppendMax
+	StrCopyMax
+	StrDuplicate
+	StrDuplicateMax
+	StrEqual
+	StrEqualCase
+	StrEqualCaseMax
+	StrEqualMax
+	StrError
+	StrFormatDateMax
+	StrHash
+	StrMatch
+	StrMatchCase
+	StrSpanFunction
+	StrSubstringMax
+	StrToFloat
+	StrToDouble
+	StrToUpper
+#endif /* WITH_TRIO */
+
+/* 
+ * tree.h 
+ */
+	oldXMLWDcompatibility
+	xmlIndentTreeOutput
+	xmlBufferAllocScheme
+	xmlSaveNoEmptyTags
+	xmlDefaultBufferSize
+	xmlSetBufferAllocationScheme
+	xmlGetBufferAllocationScheme
+	xmlBufferCreate
+	xmlBufferCreateSize
+	xmlBufferResize
+	xmlBufferFree
+	xmlBufferDump
+	xmlBufferAdd
+	xmlBufferAddHead
+	xmlBufferCat
+	xmlBufferCCat
+	xmlBufferShrink
+	xmlBufferGrow
+	xmlBufferEmpty
+	xmlBufferContent
+	xmlBufferSetAllocationScheme
+	xmlBufferLength
+	xmlCreateIntSubset
+	xmlNewDtd
+	xmlGetIntSubset
+	xmlFreeDtd
+	xmlNewGlobalNs
+	xmlNewNs
+	xmlFreeNs
+	xmlFreeNsList
+	xmlNewDoc
+	xmlFreeDoc
+	xmlNewDocProp
+	xmlNewProp
+	xmlNewNsProp
+	xmlFreePropList
+	xmlFreeProp
+	xmlCopyProp
+	xmlCopyPropList
+	xmlCopyDtd
+	xmlCopyDoc
+	xmlNewDocNode
+	xmlNewDocRawNode
+	xmlNewNode
+	xmlNewChild
+	xmlNewTextChild
+	xmlNewDocText
+	xmlNewText
+	xmlNewPI
+	xmlNewDocTextLen
+	xmlNewTextLen
+	xmlNewDocComment
+	xmlNewComment
+	xmlNewCDataBlock
+	xmlNewCharRef
+	xmlNewReference
+	xmlCopyNode
+	xmlCopyNodeList
+	xmlNewDocFragment
+	xmlDocGetRootElement
+	xmlGetLastChild
+	xmlNodeIsText
+	xmlIsBlankNode
+	xmlDocSetRootElement
+	xmlNodeSetName
+	xmlAddChild
+	xmlAddChildList
+	xmlReplaceNode
+	xmlAddSibling
+	xmlAddPrevSibling
+	xmlAddNextSibling
+	xmlUnlinkNode
+	xmlTextMerge
+	xmlTextConcat
+	xmlFreeNodeList
+	xmlFreeNode
+	xmlSetTreeDoc
+	xmlSetListDoc
+	xmlSearchNs
+	xmlSearchNsByHref
+	xmlGetNsList
+	xmlSetNs
+	xmlCopyNamespace
+	xmlCopyNamespaceList
+	xmlSetProp
+	xmlGetProp
+	xmlHasProp
+	xmlSetNsProp
+	xmlGetNsProp
+	xmlStringGetNodeList
+	xmlStringLenGetNodeList
+	xmlNodeListGetString
+	xmlNodeListGetRawString
+	xmlNodeSetContent
+	xmlNodeSetContentLen
+	xmlNodeAddContent
+	xmlNodeAddContentLen
+	xmlNodeGetContent
+	xmlNodeGetLang
+	xmlNodeSetLang
+	xmlNodeGetSpacePreserve
+	xmlNodeSetSpacePreserve
+	xmlNodeGetBase
+	xmlNodeSetBase
+	xmlRemoveProp
+	xmlBufferWriteCHAR
+	xmlBufferWriteChar
+	xmlBufferWriteQuotedString
+	xmlReconciliateNs
+	xmlDocDumpFormatMemory
+	xmlDocDumpMemory
+	xmlDocDumpMemoryEnc
+	xmlDocDumpFormatMemoryEnc
+	xmlDocDump
+	xmlElemDump
+	xmlSaveFile
+	xmlNodeDump
+	xmlSaveFileTo
+	xmlSaveFileEnc
+	xmlGetDocCompressMode
+	xmlSetDocCompressMode
+	xmlGetCompressMode
+	xmlSetCompressMode
+
+/* 
+ * uri.h 
+ */
+	xmlCreateURI
+	xmlBuildURI
+	xmlParseURI
+	xmlParseURIReference
+	xmlSaveUri
+	xmlPrintURI
+	xmlURIUnescapeString
+	xmlNormalizeURIPath
+	xmlURIEscape
+	xmlFreeURI
+
+/* 
+ * valid.h 
+ */
+	xmlSplitQName2
+	xmlAddNotationDecl
+	xmlCopyNotationTable
+	xmlFreeNotationTable
+	xmlDumpNotationDecl
+	xmlDumpNotationTable
+	xmlNewElementContent
+	xmlCopyElementContent
+	xmlFreeElementContent
+	xmlSprintfElementContent
+	xmlAddElementDecl
+	xmlCopyElementTable
+	xmlFreeElementTable
+	xmlDumpElementTable
+	xmlDumpElementDecl
+	xmlCreateEnumeration
+	xmlFreeEnumeration
+	xmlCopyEnumeration
+	xmlAddAttributeDecl
+	xmlCopyAttributeTable
+	xmlFreeAttributeTable
+	xmlDumpAttributeTable
+	xmlDumpAttributeDecl
+	xmlAddID
+	xmlFreeIDTable
+	xmlGetID
+	xmlIsID
+	xmlRemoveID
+	xmlAddRef
+	xmlFreeRefTable
+	xmlIsRef
+	xmlRemoveRef
+	xmlGetRefs
+	xmlValidateRoot
+	xmlValidateElementDecl
+	xmlValidNormalizeAttributeValue
+	xmlValidateAttributeDecl
+	xmlValidateAttributeValue
+	xmlValidateNotationDecl
+	xmlValidateDtd
+	xmlValidateDtdFinal
+	xmlValidateDocument
+	xmlValidateElement
+	xmlValidateOneElement
+	xmlValidateOneAttribute
+	xmlValidateDocumentFinal
+	xmlValidateNotationUse
+	xmlIsMixedElement
+	xmlGetDtdAttrDesc
+	xmlGetDtdNotationDesc
+	xmlGetDtdElementDesc
+	xmlValidGetValidElements
+	xmlValidGetPotentialChildren
+
+/* 
+ * xinclude.h 
+ */
+#ifdef LIBXML_XINCLUDE_ENABLED
+	xmlXIncludeProcess
+#endif /* LIBXML_XINCLUDE_ENABLED */
+
+/* 
+ * xlink.h 
+ */
+	xlinkGetDefaultDetect
+	xlinkSetDefaultDetect
+	xlinkGetDefaultHandler
+	xlinkSetDefaultHandler
+	xlinkIsLink
+
+/* 
+ * xmlerror.h 
+ */
+	xmlGenericError
+	xmlGenericErrorContext
+	xmlSetGenericErrorFunc
+	xmlParserError
+	xmlParserWarning
+	xmlParserValidityError
+	xmlParserValidityWarning
+	xmlParserPrintFileInfo
+	xmlParserPrintFileContext
+
+/* 
+ * xmlIO.h 
+ */
+	xmlRegisterDefaultInputCallbacks
+	xmlAllocParserInputBuffer
+	xmlParserInputBufferCreateFilename
+	xmlParserInputBufferCreateFile
+	xmlParserInputBufferCreateFd
+	xmlParserInputBufferCreateMem
+	xmlParserInputBufferCreateIO
+	xmlParserInputBufferRead
+	xmlParserInputBufferGrow
+	xmlParserInputBufferPush
+	xmlFreeParserInputBuffer
+	xmlParserGetDirectory
+	xmlRegisterInputCallbacks
+	xmlRegisterDefaultOutputCallbacks
+	xmlAllocOutputBuffer
+	xmlOutputBufferCreateFilename
+	xmlOutputBufferCreateFile
+	xmlOutputBufferCreateFd
+	xmlOutputBufferCreateIO
+	xmlOutputBufferWrite
+	xmlOutputBufferWriteString
+	xmlOutputBufferFlush
+	xmlOutputBufferClose
+	xmlRegisterOutputCallbacks
+	xmlSaveFileTo
+	xmlNodeDumpOutput
+	htmlDocContentDumpOutput
+
+/* 
+ * xmlmemory.h 
+ */
+	xmlFree
+	xmlMalloc
+	xmlRealloc
+	xmlMemStrdup
+	xmlMemSetup
+	xmlMemGet
+	xmlInitMemory
+	xmlMemUsed
+	xmlMemDisplay
+	xmlMemShow
+	xmlMemoryDump
+	xmlInitMemory
+#ifdef DEBUG_MEMORY_LOCATION
+	xmlMallocLoc
+	xmlReallocLoc
+	xmlMemStrdupLoc
+#endif /* DEBUG_MEMORY_LOCATION */
+
+/* 
+ * xmlversion.h 
+ */
+	xmlCheckVersion
+
+/* 
+ * xpath.h 
+ */
+#ifdef LIBXML_XPATH_ENABLED
+	xmlXPathFreeObject
+	xmlXPathNodeSetCreate
+	xmlXPathFreeNodeSetList
+	xmlXPathFreeNodeSet
+	xmlXPathObjectCopy
+	xmlXPathCmpNodes
+	xmlXPathConvertBoolean
+	xmlXPathConvertNumber
+	xmlXPathConvertString
+	xmlXPathInit
+	xmlXPathNewContext
+	xmlXPathFreeContext
+	xmlXPathEval
+	xmlXPathEvalExpression
+	xmlXPathEvalPredicate
+	xmlXPathCompile
+	xmlXPathCompiledEval
+	xmlXPathFreeCompExpr
+#endif /* LIBXML_XPATH_ENABLED */
+
+/* 
+ * xpathinternals.h 
+ */
+#ifdef LIBXML_XPATH_ENABLED
+	xmlXPathRegisterVariableLookup
+	xmlXPatherror
+	xmlXPathRegisterNs
+	xmlXPathNsLookup
+	xmlXPathRegisteredNsCleanup
+	xmlXPathRegisterFunc
+	xmlXPathRegisterFuncNS
+	xmlXPathRegisterVariable
+	xmlXPathRegisterVariableNS
+	xmlXPathFunctionLookup
+	xmlXPathFunctionLookupNS
+	xmlXPathRegisteredFuncsCleanup
+	xmlXPathVariableLookup
+	xmlXPathVariableLookupNS
+	xmlXPathRegisteredVariablesCleanup
+	xmlXPathNewParserContext
+	xmlXPathFreeParserContext
+	valuePop
+	valuePush
+	xmlXPathNewString
+	xmlXPathNewCString
+	xmlXPathNewFloat
+	xmlXPathNewBoolean
+	xmlXPathNewNodeSet
+	xmlXPathNewValueTree
+	xmlXPathNodeSetAdd
+	xmlXPathNodeSetAddUnique
+	xmlXPathNodeSetSort
+	xmlXPathIdFunction
+	xmlXPathRoot
+	xmlXPathEvalExpr
+	xmlXPathParseName
+	xmlXPathParseNCName
+	xmlXPathStringEvalNumber
+#ifdef LIBXML_DEBUG_ENABLED
+	xmlXPathDebugDumpObject
+	xmlXPathDebugDumpCompExpr
+#endif /* LIBXML_DEBUG_ENABLED */
+	xmlXPathEvaluatePredicateResult
+	xmlXPathInit
+	xmlXPathStringFunction
+	xmlXPathRegisterAllFunctions
+	xmlXPathNodeSetCreate
+	xmlXPathNodeSetAdd
+	xmlXPathNodeSetMerge
+	xmlXPathNodeSetDel
+	xmlXPathNodeSetRemove
+	xmlXPathFreeNodeSet
+	xmlXPathNewNodeSet
+	xmlXPathNewNodeSetList
+	xmlXPathWrapNodeSet
+	xmlXPathFreeNodeSetList
+	xmlXPathNewFloat
+	xmlXPathNewBoolean
+	xmlXPathNewString
+	xmlXPathNewCString
+	xmlXPathFreeObject
+	xmlXPathNewContext
+	xmlXPathFreeContext
+	xmlXPathEqualValues
+	xmlXPathCompareValues
+	xmlXPathValueFlipSign
+	xmlXPathAddValues
+	xmlXPathSubValues
+	xmlXPathMultValues
+	xmlXPathDivValues
+	xmlXPathModValues
+	xmlXPathIsNodeType
+	xmlXPathNextSelf
+	xmlXPathNextChild
+	xmlXPathNextDescendant
+	xmlXPathNextDescendantOrSelf
+	xmlXPathNextParent
+	xmlXPathNextAncestorOrSelf
+	xmlXPathNextFollowingSibling
+	xmlXPathNextFollowing
+	xmlXPathNextNamespace
+	xmlXPathNextAttribute
+	xmlXPathNextPreceding
+	xmlXPathNextAncestor
+	xmlXPathNextPrecedingSibling
+	xmlXPathRoot
+	xmlXPathLastFunction
+	xmlXPathPositionFunction
+	xmlXPathCountFunction
+	xmlXPathIdFunction
+	xmlXPathLocalNameFunction
+	xmlXPathNamespaceURIFunction
+	xmlXPathStringFunction
+	xmlXPathStringLengthFunction
+	xmlXPathConcatFunction
+	xmlXPathContainsFunction
+	xmlXPathStartsWithFunction
+	xmlXPathSubstringFunction
+	xmlXPathSubstringBeforeFunction
+	xmlXPathSubstringAfterFunction
+	xmlXPathNormalizeFunction
+	xmlXPathTranslateFunction
+	xmlXPathNotFunction
+	xmlXPathTrueFunction
+	xmlXPathFalseFunction
+	xmlXPathLangFunction
+	xmlXPathNumberFunction
+	xmlXPathSumFunction
+	xmlXPathFloorFunction
+	xmlXPathCeilingFunction
+	xmlXPathRoundFunction
+	xmlXPathBooleanFunction
+#endif /* LIBXML_XPATH_ENABLED */
+
+/* 
+ * xpointer.h 
+ */
+#ifdef LIBXML_XPTR_ENABLED
+	xmlXPtrLocationSetCreate
+	xmlXPtrFreeLocationSet
+	xmlXPtrLocationSetMerge
+	xmlXPtrNewRange
+	xmlXPtrNewRangePoints
+	xmlXPtrNewRangeNodePoint
+	xmlXPtrNewRangePointNode
+	xmlXPtrNewRangeNodes
+	xmlXPtrNewLocationSetNodes
+	xmlXPtrNewLocationSetNodeSet
+	xmlXPtrNewRangeNodeObject
+	xmlXPtrNewCollapsedRange
+	xmlXPtrLocationSetAdd
+	xmlXPtrWrapLocationSet
+	xmlXPtrLocationSetDel
+	xmlXPtrLocationSetRemove
+	xmlXPtrNewContext
+	xmlXPtrEval
+	xmlXPtrRangeToFunction
+	xmlXPtrBuildNodeList
+	xmlXPtrEvalRangePredicate
+#endif /* LIBXML_XPTR_ENABLED */
+
diff --git a/win32/libxml2/libxml2_a.dsp b/win32/libxml2/libxml2_a.dsp
index 481be43..ceea658 100644
--- a/win32/libxml2/libxml2_a.dsp
+++ b/win32/libxml2/libxml2_a.dsp
@@ -1,180 +1,292 @@
-# Microsoft Developer Studio Project File - Name="libxml2_a" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Static Library" 0x0104
-
-CFG=libxml2_a - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "libxml2_a.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "libxml2_a.mak" CFG="libxml2_a - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "libxml2_a - Win32 Release" (based on "Win32 (x86) Static Library")
-!MESSAGE "libxml2_a - Win32 Debug" (based on "Win32 (x86) Static Library")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "libxml2_a - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "libxml2_a___Win32_Release"
-# PROP BASE Intermediate_Dir "libxml2_a___Win32_Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "release_a"
-# PROP Intermediate_Dir "release_a"
-# PROP Target_Dir ""
-F90=df.exe
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /D "STATIC" /FD /c
-# SUBTRACT CPP /YX
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo
-# ADD LIB32 /nologo /out:"release_a\libxml2.lib"
-
-!ELSEIF  "$(CFG)" == "libxml2_a - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "libxml2_a___Win32_Debug"
-# PROP BASE Intermediate_Dir "libxml2_a___Win32_Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "debug_a"
-# PROP Intermediate_Dir "debug_a"
-# PROP Target_Dir ""
-F90=df.exe
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ  /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /D "STATIC" /FD /GZ  /c
-# SUBTRACT CPP /YX
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo
-# ADD LIB32 /nologo /out:"debug_a\libxml2.lib"
-
-!ENDIF 
-
-# Begin Target
-
-# Name "libxml2_a - Win32 Release"
-# Name "libxml2_a - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=..\..\debugXML.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\encoding.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\entities.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\error.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\hash.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\HTMLparser.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\HTMLtree.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\nanoftp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\nanohttp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\parser.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\parserInternals.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\SAX.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\tree.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\uri.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\valid.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xlink.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xmlIO.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xmlmemory.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xpath.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xpointer.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=..\..\include\libxml\xmlversion.h
-# End Source File
-# End Group
-# End Target
-# End Project
+# Microsoft Developer Studio Project File - Name="libxml2_a" - Package Owner=<4>

+# Microsoft Developer Studio Generated Build File, Format Version 6.00

+# ** DO NOT EDIT **

+

+# TARGTYPE "Win32 (x86) Static Library" 0x0104

+

+CFG=libxml2_a - Win32 Debug

+!MESSAGE This is not a valid makefile. To build this project using NMAKE,

+!MESSAGE use the Export Makefile command and run

+!MESSAGE 

+!MESSAGE NMAKE /f "libxml2_a.mak".

+!MESSAGE 

+!MESSAGE You can specify a configuration when running NMAKE

+!MESSAGE by defining the macro CFG on the command line. For example:

+!MESSAGE 

+!MESSAGE NMAKE /f "libxml2_a.mak" CFG="libxml2_a - Win32 Debug"

+!MESSAGE 

+!MESSAGE Possible choices for configuration are:

+!MESSAGE 

+!MESSAGE "libxml2_a - Win32 Release" (based on "Win32 (x86) Static Library")

+!MESSAGE "libxml2_a - Win32 Debug" (based on "Win32 (x86) Static Library")

+!MESSAGE 

+

+# Begin Project

+# PROP AllowPerConfigDependencies 0

+# PROP Scc_ProjName ""

+# PROP Scc_LocalPath ""

+CPP=cl.exe

+RSC=rc.exe

+

+!IF  "$(CFG)" == "libxml2_a - Win32 Release"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 0

+# PROP BASE Output_Dir "libxml2_a___Win32_Release"

+# PROP BASE Intermediate_Dir "libxml2_a___Win32_Release"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 0

+# PROP Output_Dir "release_a"

+# PROP Intermediate_Dir "release_a"

+# PROP Target_Dir ""

+F90=df.exe

+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c

+# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /D "STATIC" /FD /c

+# SUBTRACT CPP /YX

+# ADD BASE RSC /l 0x409 /d "NDEBUG"

+# ADD RSC /l 0x409 /d "NDEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LIB32=link.exe -lib

+# ADD BASE LIB32 /nologo

+# ADD LIB32 /nologo /out:"release_a\libxml2.lib"

+

+!ELSEIF  "$(CFG)" == "libxml2_a - Win32 Debug"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 1

+# PROP BASE Output_Dir "libxml2_a___Win32_Debug"

+# PROP BASE Intermediate_Dir "libxml2_a___Win32_Debug"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 1

+# PROP Output_Dir "debug_a"

+# PROP Intermediate_Dir "debug_a"

+# PROP Target_Dir ""

+F90=df.exe

+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c

+# ADD CPP /nologo /MD /W3 /Gm /GX /Zi /Od /I "..\..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /D "STATIC" /FD /GZ /c

+# SUBTRACT CPP /YX

+# ADD BASE RSC /l 0x409 /d "_DEBUG"

+# ADD RSC /l 0x409 /d "_DEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LIB32=link.exe -lib

+# ADD BASE LIB32 /nologo

+# ADD LIB32 /nologo /out:"debug_a\libxml2.lib"

+

+!ENDIF 

+

+# Begin Target

+

+# Name "libxml2_a - Win32 Release"

+# Name "libxml2_a - Win32 Debug"

+# Begin Group "Source Files"

+

+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"

+# Begin Source File

+

+SOURCE=..\..\debugXML.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\encoding.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\entities.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\error.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\hash.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\HTMLparser.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\HTMLtree.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\list.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\nanoftp.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\nanohttp.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\parser.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\parserInternals.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\SAX.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\strio.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\tree.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\uri.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\valid.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xinclude.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xlink.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xmlIO.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xmlmemory.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xpath.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xpointer.c

+# End Source File

+# End Group

+# Begin Group "Header Files"

+

+# PROP Default_Filter "h;hpp;hxx;hm;inl"

+# Begin Source File

+

+SOURCE=..\..\include\libxml\debugXML.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\encoding.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\entities.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\hash.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\HTMLparser.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\HTMLtree.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\list.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\nanoftp.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\nanohttp.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\parser.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\parserInternals.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\SAX.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\strio.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\tree.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\uri.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\valid.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\win32config.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xinclude.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xlink.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xmlerror.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xmlIO.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xmlmemory.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xmlversion.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xpath.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xpathInternals.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xpointer.h

+# End Source File

+# End Group

+# End Target

+# End Project

diff --git a/win32/libxml2/libxml2_so.dsp b/win32/libxml2/libxml2_so.dsp
index 361f02f..22ddd5b 100644
--- a/win32/libxml2/libxml2_so.dsp
+++ b/win32/libxml2/libxml2_so.dsp
@@ -1,189 +1,335 @@
-# Microsoft Developer Studio Project File - Name="libxml2_so" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-
-CFG=libxml2_so - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "libxml2_so.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "libxml2_so.mak" CFG="libxml2_so - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "libxml2_so - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "libxml2_so - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "libxml2_so - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "libxml2_so___Win32_Release"
-# PROP BASE Intermediate_Dir "libxml2_so___Win32_Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "release_so"
-# PROP Intermediate_Dir "release_so"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "LIBXML2_SO_EXPORTS" /YX /FD /c
-# ADD CPP /nologo /MT /W3 /GX /O2 /I "..\..\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /FD /c
-# SUBTRACT CPP /YX
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"release_so/libxml2.dll"
-
-!ELSEIF  "$(CFG)" == "libxml2_so - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "libxml2_so___Win32_Debug"
-# PROP BASE Intermediate_Dir "libxml2_so___Win32_Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "debug_so"
-# PROP Intermediate_Dir "debug_so"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "LIBXML2_SO_EXPORTS" /YX /FD /GZ  /c
-# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "..\..\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /FD /GZ  /c
-# SUBTRACT CPP /YX
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /out:"debug_so/libxml2.dll" /pdbtype:sept
-
-!ENDIF 
-
-# Begin Target
-
-# Name "libxml2_so - Win32 Release"
-# Name "libxml2_so - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=..\..\debugXML.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\encoding.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\entities.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\error.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\hash.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\HTMLparser.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\HTMLtree.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\nanoftp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\nanohttp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\parser.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\parserInternals.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\SAX.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\tree.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\uri.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\valid.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xlink.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xmlIO.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xmlmemory.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xpath.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\xpointer.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=..\..\include\libxml\xmlversion.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
+# Microsoft Developer Studio Project File - Name="libxml2_so" - Package Owner=<4>

+# Microsoft Developer Studio Generated Build File, Format Version 6.00

+# ** DO NOT EDIT **

+

+# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102

+

+CFG=libxml2_so - Win32 Debug

+!MESSAGE This is not a valid makefile. To build this project using NMAKE,

+!MESSAGE use the Export Makefile command and run

+!MESSAGE 

+!MESSAGE NMAKE /f "libxml2_so.mak".

+!MESSAGE 

+!MESSAGE You can specify a configuration when running NMAKE

+!MESSAGE by defining the macro CFG on the command line. For example:

+!MESSAGE 

+!MESSAGE NMAKE /f "libxml2_so.mak" CFG="libxml2_so - Win32 Debug"

+!MESSAGE 

+!MESSAGE Possible choices for configuration are:

+!MESSAGE 

+!MESSAGE "libxml2_so - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")

+!MESSAGE "libxml2_so - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")

+!MESSAGE 

+

+# Begin Project

+# PROP AllowPerConfigDependencies 0

+# PROP Scc_ProjName ""

+# PROP Scc_LocalPath ""

+CPP=cl.exe

+MTL=midl.exe

+RSC=rc.exe

+

+!IF  "$(CFG)" == "libxml2_so - Win32 Release"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 0

+# PROP BASE Output_Dir "libxml2_so___Win32_Release"

+# PROP BASE Intermediate_Dir "libxml2_so___Win32_Release"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 0

+# PROP Output_Dir "release_so"

+# PROP Intermediate_Dir "release_so"

+# PROP Ignore_Export_Lib 0

+# PROP Target_Dir ""

+# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "LIBXML2_SO_EXPORTS" /YX /FD /c

+# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /FD /c

+# SUBTRACT CPP /YX

+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32

+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32

+# ADD BASE RSC /l 0x409 /d "NDEBUG"

+# ADD RSC /l 0x409 /d "NDEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LINK32=link.exe

+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386

+# ADD LINK32 wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"release_so/libxml2.dll"

+

+!ELSEIF  "$(CFG)" == "libxml2_so - Win32 Debug"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 1

+# PROP BASE Output_Dir "libxml2_so___Win32_Debug"

+# PROP BASE Intermediate_Dir "libxml2_so___Win32_Debug"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 1

+# PROP Output_Dir "debug_so"

+# PROP Intermediate_Dir "debug_so"

+# PROP Ignore_Export_Lib 0

+# PROP Target_Dir ""

+# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "LIBXML2_SO_EXPORTS" /YX /FD /GZ /c

+# ADD CPP /nologo /MD /W3 /Gm /GX /Zi /Od /I "..\..\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /FR /FD /GZ /c

+# SUBTRACT CPP /YX

+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32

+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32

+# ADD BASE RSC /l 0x409 /d "_DEBUG"

+# ADD RSC /l 0x409 /d "_DEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LINK32=link.exe

+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept

+# ADD LINK32 wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /out:"debug_so/libxml2.dll" /pdbtype:sept

+

+!ENDIF 

+

+# Begin Target

+

+# Name "libxml2_so - Win32 Release"

+# Name "libxml2_so - Win32 Debug"

+# Begin Group "Source Files"

+

+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"

+# Begin Source File

+

+SOURCE=..\..\debugXML.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\encoding.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\entities.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\error.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\hash.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\HTMLparser.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\HTMLtree.c

+# End Source File

+# Begin Source File

+

+SOURCE=.\libxml2.def

+# End Source File

+# Begin Source File

+

+SOURCE=.\libxml2.def.src

+

+!IF  "$(CFG)" == "libxml2_so - Win32 Release"

+

+USERDEP__LIBXM="../../include/libxml/xmlversion.h"	

+# Begin Custom Build

+InputPath=.\libxml2.def.src

+

+"libxml2.def" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+	cl /nologo /EP $(InputPath) > libxml2.def

+

+# End Custom Build

+

+!ELSEIF  "$(CFG)" == "libxml2_so - Win32 Debug"

+

+# PROP Ignore_Default_Tool 1

+USERDEP__LIBXM="../../include/libxml/xmlversion.h"	

+# Begin Custom Build

+InputPath=.\libxml2.def.src

+

+"libxml2.def" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+	cl /nologo /EP $(InputPath) > libxml2.def

+

+# End Custom Build

+

+!ENDIF 

+

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\list.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\nanoftp.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\nanohttp.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\parser.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\parserInternals.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\SAX.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\strio.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\tree.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\uri.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\valid.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xinclude.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xlink.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xmlIO.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xmlmemory.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xpath.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\xpointer.c

+# End Source File

+# End Group

+# Begin Group "Header Files"

+

+# PROP Default_Filter "h;hpp;hxx;hm;inl"

+# Begin Source File

+

+SOURCE=..\..\include\libxml\debugXML.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\encoding.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\entities.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\hash.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\HTMLparser.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\HTMLtree.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\list.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\nanoftp.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\nanohttp.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\parser.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\parserInternals.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\SAX.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\strio.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\tree.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\uri.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\valid.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\win32config.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xinclude.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xlink.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xmlerror.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xmlIO.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xmlmemory.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xmlversion.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xpath.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xpathInternals.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\include\libxml\xpointer.h

+# End Source File

+# End Group

+# Begin Group "Resource Files"

+

+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"

+# End Group

+# End Target

+# End Project

diff --git a/win32/libxml2/xmllint.dsp b/win32/libxml2/xmllint.dsp
new file mode 100644
index 0000000..a3f796e
--- /dev/null
+++ b/win32/libxml2/xmllint.dsp
@@ -0,0 +1,134 @@
+# Microsoft Developer Studio Project File - Name="xmllint" - Package Owner=<4>

+# Microsoft Developer Studio Generated Build File, Format Version 6.00

+# ** DO NOT EDIT **

+

+# TARGTYPE "Win32 (x86) Application" 0x0101

+

+CFG=xmllint - Win32 Debug

+!MESSAGE This is not a valid makefile. To build this project using NMAKE,

+!MESSAGE use the Export Makefile command and run

+!MESSAGE 

+!MESSAGE NMAKE /f "xmllint.mak".

+!MESSAGE 

+!MESSAGE You can specify a configuration when running NMAKE

+!MESSAGE by defining the macro CFG on the command line. For example:

+!MESSAGE 

+!MESSAGE NMAKE /f "xmllint.mak" CFG="xmllint - Win32 Debug"

+!MESSAGE 

+!MESSAGE Possible choices for configuration are:

+!MESSAGE 

+!MESSAGE "xmllint - Win32 Release" (based on "Win32 (x86) Application")

+!MESSAGE "xmllint - Win32 Debug" (based on "Win32 (x86) Application")

+!MESSAGE 

+

+# Begin Project

+# PROP AllowPerConfigDependencies 0

+# PROP Scc_ProjName ""

+# PROP Scc_LocalPath ""

+CPP=cl.exe

+MTL=midl.exe

+RSC=rc.exe

+

+!IF  "$(CFG)" == "xmllint - Win32 Release"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 0

+# PROP BASE Output_Dir "Release"

+# PROP BASE Intermediate_Dir "Release"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 0

+# PROP Output_Dir "Release"

+# PROP Intermediate_Dir "Release"

+# PROP Ignore_Export_Lib 0

+# PROP Target_Dir ""

+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c

+# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c

+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32

+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32

+# ADD BASE RSC /l 0x809 /d "NDEBUG"

+# ADD RSC /l 0x809 /d "NDEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LINK32=link.exe

+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386

+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386

+# SUBTRACT LINK32 /pdb:none

+

+!ELSEIF  "$(CFG)" == "xmllint - Win32 Debug"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 1

+# PROP BASE Output_Dir "Debug"

+# PROP BASE Intermediate_Dir "Debug"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 1

+# PROP Output_Dir "Debug"

+# PROP Intermediate_Dir "Debug"

+# PROP Target_Dir ""

+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c

+# ADD CPP /nologo /MD /W3 /Gm /GX /Zi /Od /I "..\..\include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c

+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32

+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32

+# ADD BASE RSC /l 0x809 /d "_DEBUG"

+# ADD RSC /l 0x809 /d "_DEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LINK32=link.exe

+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept

+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept

+# SUBTRACT LINK32 /pdb:none

+

+!ENDIF 

+

+# Begin Target

+

+# Name "xmllint - Win32 Release"

+# Name "xmllint - Win32 Debug"

+# Begin Group "Source Files"

+

+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"

+# Begin Source File

+

+SOURCE=..\..\xmllint.c

+# End Source File

+# End Group

+# Begin Group "Header Files"

+

+# PROP Default_Filter "h;hpp;hxx;hm;inl"

+# End Group

+# Begin Group "Resource Files"

+

+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"

+# End Group

+# Begin Source File

+

+SOURCE=.\debug_a\libxml2.lib

+

+!IF  "$(CFG)" == "xmllint - Win32 Release"

+

+# PROP Exclude_From_Build 1

+

+!ELSEIF  "$(CFG)" == "xmllint - Win32 Debug"

+

+!ENDIF 

+

+# End Source File

+# Begin Source File

+

+SOURCE=.\release_a\libxml2.lib

+

+!IF  "$(CFG)" == "xmllint - Win32 Release"

+

+!ELSEIF  "$(CFG)" == "xmllint - Win32 Debug"

+

+# PROP Exclude_From_Build 1

+

+!ENDIF 

+

+# End Source File

+# End Target

+# End Project

diff --git a/xmllint.c b/xmllint.c
index 0df7ceb..82f09ef 100644
--- a/xmllint.c
+++ b/xmllint.c
@@ -16,7 +16,15 @@
 #include <string.h>
 #include <stdio.h>
 #include <stdarg.h>
+#ifdef _WIN32
+#ifdef _MSC_VER
+#include <winsock2.h>
+#pragma comment(lib, "ws2_32.lib")
+#define gettimeofday(p1,p2)
+#endif /* _MSC_VER */
+#else /* _WIN32 */
 #include <sys/time.h>
+#endif /* _WIN32 */
 
 
 #ifdef HAVE_SYS_TYPES_H
diff --git a/xmlversion.h.in b/xmlversion.h.in
index c1dffbb..211a5e2 100644
--- a/xmlversion.h.in
+++ b/xmlversion.h.in
@@ -17,7 +17,9 @@
  * use those to be sure nothing nasty will happen if
  * your library and includes mismatch
  */
+#ifndef LIBXML2_COMPILING_MSCCDEF
 extern void xmlCheckVersion(int version);
+#endif /* LIBXML2_COMPILING_MSCCDEF */
 #define LIBXML_DOTTED_VERSION "@VERSION@"
 #define LIBXML_VERSION @LIBXML_VERSION_NUMBER@
 #define LIBXML_VERSION_STRING "@LIBXML_VERSION_NUMBER@"