Changes 3.1.1:
This version is interface-incompatible with Xerces-C++ 2.8.0 and contains a large number of improvements, bug fixes, and clean-ups, including: * Autotools-based build system for the UNIX/Linux/Mac OS X platforms * Project files for VC++ 9 * Support for the ICU transcoder in VC++ 7.1, 8, and 9 project files * libcurl-based net accessor * Support for XInclude in DOM * Support for both XPath 1 and XPath 2 models in the DOM XPath interface * Support for the XML Schema subset of XPath 1 in DOM * Conformance to the final DOM Level 3 interface specification * Ability to provide custom DOM memory manager as well as tune the global DOM heap parameters * All public and widely used interfaces as well as a large portion of the implementation were converted to be 64-bit safe * Various XML Schema fixes including the fix for the large maxOccurs and minOccurs bug as well as for the changed ##other interpretation * Reviewed and cleaned up diagnostics messages * Optimizations for SAX/SAX2 and DOM parsing as well as XML Schema validation
This commit is contained in:
parent
f54a0ea6c3
commit
2a7bf9dd9e
24 changed files with 79 additions and 1500 deletions
|
@ -1,74 +1,33 @@
|
|||
# $NetBSD: Makefile,v 1.38 2009/08/28 05:24:34 hasso Exp $
|
||||
#
|
||||
# $NetBSD: Makefile,v 1.39 2011/02/23 08:31:13 adam Exp $
|
||||
|
||||
DISTNAME= xerces-c-src_2_8_0
|
||||
PKGREVISION= 1
|
||||
PKGNAME= ${DISTNAME:S/-src_/-/:S/_/./g}
|
||||
DISTNAME= xerces-c-3.1.1
|
||||
CATEGORIES= textproc
|
||||
MASTER_SITES= ${MASTER_SITE_APACHE:=xerces/c/2/sources/}
|
||||
MASTER_SITES= ${MASTER_SITE_APACHE:=xerces/c/3/sources/}
|
||||
|
||||
MAINTAINER= pkgsrc-users@NetBSD.org
|
||||
HOMEPAGE= http://xerces.apache.org/xerces-c/
|
||||
HOMEPAGE= http://xerces.apache.org/
|
||||
COMMENT= Validating C++ XML parser with DOM and SAX support
|
||||
LICENSE= apache-2.0
|
||||
|
||||
PKG_INSTALLATION_TYPES= overwrite pkgviews
|
||||
PKG_DESTDIR_SUPPORT= user-destdir
|
||||
|
||||
WRKSRC= ${WRKDIR}/${DISTNAME}/src/xercesc
|
||||
USE_TOOLS+= gmake
|
||||
USE_LANGUAGES= c c++
|
||||
|
||||
MAKE_JOBS_SAFE= no
|
||||
USE_LIBTOOL= yes
|
||||
USE_TOOLS+= gmake
|
||||
PKGCONFIG_OVERRIDE= ${WRKSRC}/xerces-c.pc.in
|
||||
GNU_CONFIGURE= yes
|
||||
|
||||
.include "../../mk/bsd.prefs.mk"
|
||||
.if ${OPSYS} == "SunOS"
|
||||
XERCES_PLATFORM= solaris
|
||||
.elif ${OPSYS} == "Darwin"
|
||||
XERCES_PLATFORM= macosx
|
||||
.else
|
||||
XERCES_PLATFORM= ${LOWER_OPSYS}
|
||||
.endif
|
||||
XERCES_ENV+= XERCESCROOT="${WRKDIR}/${DISTNAME}"
|
||||
|
||||
HAS_CONFIGURE= YES
|
||||
CONFIGURE_SCRIPT= ./runConfigure
|
||||
CONFIGURE_ARGS+= -P ${PREFIX} # installation prefix
|
||||
CONFIGURE_ARGS+= -p ${XERCES_PLATFORM} # platform
|
||||
CONFIGURE_ARGS+= -n socket # net accessor
|
||||
CONFIGURE_ARGS+= -m inmem # message loader
|
||||
CONFIGURE_ARGS+= -r none # threading
|
||||
CONFIGURE_ARGS+= ${CONFIGURE_ARGS.${ICONV_TYPE}-iconv}
|
||||
PLIST_VARS+= gnuiconv macunicode
|
||||
|
||||
PLIST_VARS+= gnu-iconv native-iconv
|
||||
|
||||
CONFIGURE_ARGS.gnu-iconv+= -t IconvGNU # transcoder
|
||||
|
||||
CONFIGURE_ARGS.native-iconv+= -t native # transcoder
|
||||
|
||||
CONFIGURE_ENV+= ${XERCES_ENV}
|
||||
MAKE_ENV+= ${XERCES_ENV}
|
||||
|
||||
# On Darwin, we have to use native (not libiconv) converter. see MacOSPlatformUtils.cpp.
|
||||
.if ${OPSYS} == "Darwin"
|
||||
ICONV_TYPE= native
|
||||
CFLAGS.Darwin+= -DXML_USE_MACOS_UNICODECONVERTER -I${WRKDIR}/${DISTNAME}/src
|
||||
PLIST.macunicode= yes
|
||||
.else
|
||||
.include "../../converters/libiconv/buildlink3.mk"
|
||||
PLIST.gnuiconv= yes
|
||||
.endif
|
||||
|
||||
post-extract:
|
||||
${MKDIR} ${WRKSRC}/util/Platforms/DragonFly
|
||||
${CP} ${WRKSRC}/util/Platforms/NetBSD/NetBSDPlatformUtils.cpp ${WRKSRC}/util/Platforms/DragonFly/DragonFlyPlatformUtils.cpp
|
||||
|
||||
pre-configure:
|
||||
${CP} ${PKGSRCDIR}/mk/gnu-config/config.guess ${WRKSRC}
|
||||
${CP} ${PKGSRCDIR}/mk/gnu-config/config.sub ${WRKSRC}
|
||||
|
||||
post-install:
|
||||
${INSTALL_DATA} ${WRKSRC}/dom/impl/*.hpp \
|
||||
${DESTDIR}${PREFIX}/include/xercesc/dom/impl
|
||||
|
||||
.include "../../converters/libiconv/buildlink3.mk"
|
||||
.include "../../mk/pthread.buildlink3.mk"
|
||||
.include "../../mk/bsd.pkg.mk"
|
||||
|
||||
# Must be after bsd.pkg.mk
|
||||
PLIST.${ICONV_TYPE}-iconv= yes
|
||||
|
|
|
@ -1,7 +1,22 @@
|
|||
@comment $NetBSD: PLIST,v 1.8 2009/06/14 18:17:34 joerg Exp $
|
||||
@comment $NetBSD: PLIST,v 1.9 2011/02/23 08:31:13 adam Exp $
|
||||
bin/CreateDOMDocument
|
||||
bin/DOMCount
|
||||
bin/DOMPrint
|
||||
bin/EnumVal
|
||||
bin/MemParse
|
||||
bin/PParse
|
||||
bin/PSVIWriter
|
||||
bin/Redirect
|
||||
bin/SAX2Count
|
||||
bin/SAX2Print
|
||||
bin/SAXCount
|
||||
bin/SAXPrint
|
||||
bin/SCMPrint
|
||||
bin/SEnumVal
|
||||
bin/StdInParse
|
||||
bin/XInclude
|
||||
include/xercesc/dom/DOM.hpp
|
||||
include/xercesc/dom/DOMAttr.hpp
|
||||
include/xercesc/dom/DOMBuilder.hpp
|
||||
include/xercesc/dom/DOMCDATASection.hpp
|
||||
include/xercesc/dom/DOMCharacterData.hpp
|
||||
include/xercesc/dom/DOMComment.hpp
|
||||
|
@ -14,16 +29,24 @@ include/xercesc/dom/DOMDocumentType.hpp
|
|||
include/xercesc/dom/DOMElement.hpp
|
||||
include/xercesc/dom/DOMEntity.hpp
|
||||
include/xercesc/dom/DOMEntityReference.hpp
|
||||
include/xercesc/dom/DOMEntityResolver.hpp
|
||||
include/xercesc/dom/DOMError.hpp
|
||||
include/xercesc/dom/DOMErrorHandler.hpp
|
||||
include/xercesc/dom/DOMException.hpp
|
||||
include/xercesc/dom/DOMImplementation.hpp
|
||||
include/xercesc/dom/DOMImplementationLS.hpp
|
||||
include/xercesc/dom/DOMImplementationList.hpp
|
||||
include/xercesc/dom/DOMImplementationRegistry.hpp
|
||||
include/xercesc/dom/DOMImplementationSource.hpp
|
||||
include/xercesc/dom/DOMInputSource.hpp
|
||||
include/xercesc/dom/DOMLSException.hpp
|
||||
include/xercesc/dom/DOMLSInput.hpp
|
||||
include/xercesc/dom/DOMLSOutput.hpp
|
||||
include/xercesc/dom/DOMLSParser.hpp
|
||||
include/xercesc/dom/DOMLSParserFilter.hpp
|
||||
include/xercesc/dom/DOMLSResourceResolver.hpp
|
||||
include/xercesc/dom/DOMLSSerializer.hpp
|
||||
include/xercesc/dom/DOMLSSerializerFilter.hpp
|
||||
include/xercesc/dom/DOMLocator.hpp
|
||||
include/xercesc/dom/DOMMemoryManager.hpp
|
||||
include/xercesc/dom/DOMNamedNodeMap.hpp
|
||||
include/xercesc/dom/DOMNode.hpp
|
||||
include/xercesc/dom/DOMNodeFilter.hpp
|
||||
|
@ -34,12 +57,11 @@ include/xercesc/dom/DOMPSVITypeInfo.hpp
|
|||
include/xercesc/dom/DOMProcessingInstruction.hpp
|
||||
include/xercesc/dom/DOMRange.hpp
|
||||
include/xercesc/dom/DOMRangeException.hpp
|
||||
include/xercesc/dom/DOMStringList.hpp
|
||||
include/xercesc/dom/DOMText.hpp
|
||||
include/xercesc/dom/DOMTreeWalker.hpp
|
||||
include/xercesc/dom/DOMTypeInfo.hpp
|
||||
include/xercesc/dom/DOMUserDataHandler.hpp
|
||||
include/xercesc/dom/DOMWriter.hpp
|
||||
include/xercesc/dom/DOMWriterFilter.hpp
|
||||
include/xercesc/dom/DOMXPathEvaluator.hpp
|
||||
include/xercesc/dom/DOMXPathException.hpp
|
||||
include/xercesc/dom/DOMXPathExpression.hpp
|
||||
|
@ -47,34 +69,6 @@ include/xercesc/dom/DOMXPathNSResolver.hpp
|
|||
include/xercesc/dom/DOMXPathNamespace.hpp
|
||||
include/xercesc/dom/DOMXPathResult.hpp
|
||||
include/xercesc/dom/StDOMNode.hpp
|
||||
include/xercesc/dom/deprecated/DOM.hpp
|
||||
include/xercesc/dom/deprecated/DOMParser.hpp
|
||||
include/xercesc/dom/deprecated/DOMString.hpp
|
||||
include/xercesc/dom/deprecated/DOM_Attr.hpp
|
||||
include/xercesc/dom/deprecated/DOM_CDATASection.hpp
|
||||
include/xercesc/dom/deprecated/DOM_CharacterData.hpp
|
||||
include/xercesc/dom/deprecated/DOM_Comment.hpp
|
||||
include/xercesc/dom/deprecated/DOM_DOMException.hpp
|
||||
include/xercesc/dom/deprecated/DOM_DOMImplementation.hpp
|
||||
include/xercesc/dom/deprecated/DOM_Document.hpp
|
||||
include/xercesc/dom/deprecated/DOM_DocumentFragment.hpp
|
||||
include/xercesc/dom/deprecated/DOM_DocumentType.hpp
|
||||
include/xercesc/dom/deprecated/DOM_Element.hpp
|
||||
include/xercesc/dom/deprecated/DOM_Entity.hpp
|
||||
include/xercesc/dom/deprecated/DOM_EntityReference.hpp
|
||||
include/xercesc/dom/deprecated/DOM_NamedNodeMap.hpp
|
||||
include/xercesc/dom/deprecated/DOM_Node.hpp
|
||||
include/xercesc/dom/deprecated/DOM_NodeFilter.hpp
|
||||
include/xercesc/dom/deprecated/DOM_NodeIterator.hpp
|
||||
include/xercesc/dom/deprecated/DOM_NodeList.hpp
|
||||
include/xercesc/dom/deprecated/DOM_Notation.hpp
|
||||
include/xercesc/dom/deprecated/DOM_ProcessingInstruction.hpp
|
||||
include/xercesc/dom/deprecated/DOM_Range.hpp
|
||||
include/xercesc/dom/deprecated/DOM_RangeException.hpp
|
||||
include/xercesc/dom/deprecated/DOM_Text.hpp
|
||||
include/xercesc/dom/deprecated/DOM_TreeWalker.hpp
|
||||
include/xercesc/dom/deprecated/DOM_XMLDecl.hpp
|
||||
include/xercesc/dom/deprecated/DomMemDebug.hpp
|
||||
include/xercesc/dom/impl/DOMAttrImpl.hpp
|
||||
include/xercesc/dom/impl/DOMAttrMapImpl.hpp
|
||||
include/xercesc/dom/impl/DOMAttrNSImpl.hpp
|
||||
|
@ -96,6 +90,10 @@ include/xercesc/dom/impl/DOMEntityImpl.hpp
|
|||
include/xercesc/dom/impl/DOMEntityReferenceImpl.hpp
|
||||
include/xercesc/dom/impl/DOMErrorImpl.hpp
|
||||
include/xercesc/dom/impl/DOMImplementationImpl.hpp
|
||||
include/xercesc/dom/impl/DOMImplementationListImpl.hpp
|
||||
include/xercesc/dom/impl/DOMLSInputImpl.hpp
|
||||
include/xercesc/dom/impl/DOMLSOutputImpl.hpp
|
||||
include/xercesc/dom/impl/DOMLSSerializerImpl.hpp
|
||||
include/xercesc/dom/impl/DOMLocatorImpl.hpp
|
||||
include/xercesc/dom/impl/DOMNamedNodeMapImpl.hpp
|
||||
include/xercesc/dom/impl/DOMNodeIDMap.hpp
|
||||
|
@ -108,11 +106,14 @@ include/xercesc/dom/impl/DOMNotationImpl.hpp
|
|||
include/xercesc/dom/impl/DOMParentNode.hpp
|
||||
include/xercesc/dom/impl/DOMProcessingInstructionImpl.hpp
|
||||
include/xercesc/dom/impl/DOMRangeImpl.hpp
|
||||
include/xercesc/dom/impl/DOMStringListImpl.hpp
|
||||
include/xercesc/dom/impl/DOMStringPool.hpp
|
||||
include/xercesc/dom/impl/DOMTextImpl.hpp
|
||||
include/xercesc/dom/impl/DOMTreeWalkerImpl.hpp
|
||||
include/xercesc/dom/impl/DOMTypeInfoImpl.hpp
|
||||
include/xercesc/dom/impl/DOMWriterImpl.hpp
|
||||
include/xercesc/dom/impl/DOMXPathExpressionImpl.hpp
|
||||
include/xercesc/dom/impl/DOMXPathNSResolverImpl.hpp
|
||||
include/xercesc/dom/impl/DOMXPathResultImpl.hpp
|
||||
include/xercesc/dom/impl/XSDElementNSImpl.hpp
|
||||
include/xercesc/framework/BinOutputStream.hpp
|
||||
include/xercesc/framework/LocalFileFormatTarget.hpp
|
||||
|
@ -124,7 +125,7 @@ include/xercesc/framework/StdInInputSource.hpp
|
|||
include/xercesc/framework/StdOutFormatTarget.hpp
|
||||
include/xercesc/framework/URLInputSource.hpp
|
||||
include/xercesc/framework/ValidationContext.hpp
|
||||
include/xercesc/framework/Wrapper4DOMInputSource.hpp
|
||||
include/xercesc/framework/Wrapper4DOMLSInput.hpp
|
||||
include/xercesc/framework/Wrapper4InputSource.hpp
|
||||
include/xercesc/framework/XMLAttDef.hpp
|
||||
include/xercesc/framework/XMLAttDefList.hpp
|
||||
|
@ -142,6 +143,7 @@ include/xercesc/framework/XMLErrorReporter.hpp
|
|||
include/xercesc/framework/XMLFormatter.hpp
|
||||
include/xercesc/framework/XMLGrammarDescription.hpp
|
||||
include/xercesc/framework/XMLGrammarPool.hpp
|
||||
include/xercesc/framework/XMLGrammarPoolImpl.hpp
|
||||
include/xercesc/framework/XMLNotationDecl.hpp
|
||||
include/xercesc/framework/XMLPScanToken.hpp
|
||||
include/xercesc/framework/XMLRecognizer.hpp
|
||||
|
@ -185,7 +187,6 @@ include/xercesc/internal/ElemStack.hpp
|
|||
include/xercesc/internal/EndOfEntityException.hpp
|
||||
include/xercesc/internal/IANAEncodings.hpp
|
||||
include/xercesc/internal/IGXMLScanner.hpp
|
||||
include/xercesc/internal/MemoryManagerArrayImpl.hpp
|
||||
include/xercesc/internal/MemoryManagerImpl.hpp
|
||||
include/xercesc/internal/ReaderMgr.hpp
|
||||
include/xercesc/internal/SGXMLScanner.hpp
|
||||
|
@ -193,7 +194,6 @@ include/xercesc/internal/ValidationContextImpl.hpp
|
|||
include/xercesc/internal/VecAttrListImpl.hpp
|
||||
include/xercesc/internal/VecAttributesImpl.hpp
|
||||
include/xercesc/internal/WFXMLScanner.hpp
|
||||
include/xercesc/internal/XMLGrammarPoolImpl.hpp
|
||||
include/xercesc/internal/XMLInternalErrorHandler.hpp
|
||||
include/xercesc/internal/XMLReader.hpp
|
||||
include/xercesc/internal/XMLScanner.hpp
|
||||
|
@ -206,7 +206,7 @@ include/xercesc/internal/XSerializationException.hpp
|
|||
include/xercesc/internal/XSerializeEngine.hpp
|
||||
include/xercesc/internal/XTemplateSerializer.hpp
|
||||
include/xercesc/parsers/AbstractDOMParser.hpp
|
||||
include/xercesc/parsers/DOMBuilderImpl.hpp
|
||||
include/xercesc/parsers/DOMLSParserImpl.hpp
|
||||
include/xercesc/parsers/SAX2XMLFilterImpl.hpp
|
||||
include/xercesc/parsers/SAX2XMLReaderImpl.hpp
|
||||
include/xercesc/parsers/SAXParser.hpp
|
||||
|
@ -231,7 +231,6 @@ include/xercesc/sax2/SAX2XMLFilter.hpp
|
|||
include/xercesc/sax2/SAX2XMLReader.hpp
|
||||
include/xercesc/sax2/XMLReaderFactory.hpp
|
||||
include/xercesc/util/ArrayIndexOutOfBoundsException.hpp
|
||||
include/xercesc/util/AutoSense.hpp
|
||||
include/xercesc/util/Base64.hpp
|
||||
include/xercesc/util/BaseRefVectorOf.c
|
||||
include/xercesc/util/BaseRefVectorOf.hpp
|
||||
|
@ -240,35 +239,17 @@ include/xercesc/util/BinInputStream.hpp
|
|||
include/xercesc/util/BinMemInputStream.hpp
|
||||
include/xercesc/util/BitOps.hpp
|
||||
include/xercesc/util/BitSet.hpp
|
||||
include/xercesc/util/Compilers/BorlandCDefs.hpp
|
||||
include/xercesc/util/Compilers/CSetDefs.hpp
|
||||
include/xercesc/util/Compilers/CodeWarriorDefs.hpp
|
||||
include/xercesc/util/Compilers/DECCXXDefs.hpp
|
||||
include/xercesc/util/Compilers/GCCDefs.hpp
|
||||
include/xercesc/util/Compilers/HPCCDefs.hpp
|
||||
include/xercesc/util/Compilers/IBMVAOS2Defs.hpp
|
||||
include/xercesc/util/Compilers/IBMVAW32Defs.hpp
|
||||
include/xercesc/util/Compilers/MIPSproDefs.hpp
|
||||
include/xercesc/util/Compilers/MVSCPPDefs.hpp
|
||||
include/xercesc/util/Compilers/OS400SetDefs.hpp
|
||||
include/xercesc/util/Compilers/PTXCCDefs.hpp
|
||||
include/xercesc/util/Compilers/QCCDefs.hpp
|
||||
include/xercesc/util/Compilers/SCOCCDefs.hpp
|
||||
include/xercesc/util/Compilers/SunCCDefs.hpp
|
||||
include/xercesc/util/Compilers/SunKaiDefs.hpp
|
||||
include/xercesc/util/Compilers/TandemCCDefs.hpp
|
||||
include/xercesc/util/Compilers/VCPPDefs.hpp
|
||||
include/xercesc/util/CountedPointer.c
|
||||
include/xercesc/util/CountedPointer.hpp
|
||||
include/xercesc/util/DefaultPanicHandler.hpp
|
||||
include/xercesc/util/EmptyStackException.hpp
|
||||
include/xercesc/util/EncodingValidator.hpp
|
||||
include/xercesc/util/FileManagers/PosixFileMgr.hpp
|
||||
include/xercesc/util/FlagJanitor.c
|
||||
include/xercesc/util/FlagJanitor.hpp
|
||||
include/xercesc/util/HashBase.hpp
|
||||
include/xercesc/util/HashCMStateSet.hpp
|
||||
include/xercesc/util/HashPtr.hpp
|
||||
include/xercesc/util/HashXMLCh.hpp
|
||||
include/xercesc/util/Hash2KeysSetOf.c
|
||||
include/xercesc/util/Hash2KeysSetOf.hpp
|
||||
include/xercesc/util/Hashers.hpp
|
||||
include/xercesc/util/HexBin.hpp
|
||||
include/xercesc/util/IOException.hpp
|
||||
include/xercesc/util/IllegalArgumentException.hpp
|
||||
|
@ -283,19 +264,21 @@ include/xercesc/util/KeyValuePair.hpp
|
|||
include/xercesc/util/LogicalPath.c
|
||||
include/xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.hpp
|
||||
include/xercesc/util/MsgLoaders/InMemory/XercesMessages_en_US.hpp
|
||||
include/xercesc/util/MutexManagers/PosixMutexMgr.hpp
|
||||
include/xercesc/util/Mutexes.hpp
|
||||
include/xercesc/util/NameIdPool.c
|
||||
include/xercesc/util/NameIdPool.hpp
|
||||
include/xercesc/util/NetAccessors/BinHTTPInputStreamCommon.hpp
|
||||
include/xercesc/util/NetAccessors/Socket/SocketNetAccessor.hpp
|
||||
include/xercesc/util/NetAccessors/Socket/UnixHTTPURLInputStream.hpp
|
||||
include/xercesc/util/NoSuchElementException.hpp
|
||||
include/xercesc/util/NullPointerException.hpp
|
||||
include/xercesc/util/NumberFormatException.hpp
|
||||
include/xercesc/util/OutOfMemoryException.hpp
|
||||
include/xercesc/util/PSVIUni.hpp
|
||||
include/xercesc/util/PanicHandler.hpp
|
||||
include/xercesc/util/ParseException.hpp
|
||||
include/xercesc/util/PlatformUtils.hpp
|
||||
include/xercesc/util/Platforms/${OPSYS}/${OPSYS}Defs.hpp
|
||||
include/xercesc/util/QName.hpp
|
||||
include/xercesc/util/RefArrayOf.c
|
||||
include/xercesc/util/RefArrayOf.hpp
|
||||
|
@ -319,8 +302,8 @@ include/xercesc/util/SynchronizedStringPool.hpp
|
|||
include/xercesc/util/TransENameMap.c
|
||||
include/xercesc/util/TransENameMap.hpp
|
||||
include/xercesc/util/TransService.hpp
|
||||
${PLIST.gnu-iconv}include/xercesc/util/Transcoders/IconvGNU/IconvGNUTransService.hpp
|
||||
${PLIST.native-iconv}include/xercesc/util/Transcoders/Iconv/IconvTransService.hpp
|
||||
${PLIST.gnuiconv}include/xercesc/util/Transcoders/IconvGNU/IconvGNUTransService.hpp
|
||||
${PLIST.macunicode}include/xercesc/util/Transcoders/MacOSUnicodeConverter/MacOSUnicodeConverter.hpp
|
||||
include/xercesc/util/TranscodingException.hpp
|
||||
include/xercesc/util/UTFDataFormatException.hpp
|
||||
include/xercesc/util/UnexpectedEOFException.hpp
|
||||
|
@ -343,25 +326,22 @@ include/xercesc/util/XMLChTranscoder.hpp
|
|||
include/xercesc/util/XMLChar.hpp
|
||||
include/xercesc/util/XMLDOMMsg.hpp
|
||||
include/xercesc/util/XMLDateTime.hpp
|
||||
include/xercesc/util/XMLDeleterFor.c
|
||||
include/xercesc/util/XMLDeleterFor.hpp
|
||||
include/xercesc/util/XMLDouble.hpp
|
||||
include/xercesc/util/XMLEBCDICTranscoder.hpp
|
||||
include/xercesc/util/XMLEntityResolver.hpp
|
||||
include/xercesc/util/XMLEnumerator.hpp
|
||||
include/xercesc/util/XMLExceptMsgs.hpp
|
||||
include/xercesc/util/XMLException.hpp
|
||||
include/xercesc/util/XMLFileMgr.hpp
|
||||
include/xercesc/util/XMLFloat.hpp
|
||||
include/xercesc/util/XMLHolder.c
|
||||
include/xercesc/util/XMLHolder.hpp
|
||||
include/xercesc/util/XMLIBM1047Transcoder.hpp
|
||||
include/xercesc/util/XMLIBM1140Transcoder.hpp
|
||||
include/xercesc/util/XMLInitializer.hpp
|
||||
include/xercesc/util/XMLInteger.hpp
|
||||
include/xercesc/util/XMLMsgLoader.hpp
|
||||
include/xercesc/util/XMLMutexMgr.hpp
|
||||
include/xercesc/util/XMLNetAccessor.hpp
|
||||
include/xercesc/util/XMLNumber.hpp
|
||||
include/xercesc/util/XMLRegisterCleanup.hpp
|
||||
include/xercesc/util/XMLResourceIdentifier.hpp
|
||||
include/xercesc/util/XMLString.hpp
|
||||
include/xercesc/util/XMLStringTokenizer.hpp
|
||||
|
@ -376,15 +356,14 @@ include/xercesc/util/XMLWin1252Transcoder.hpp
|
|||
include/xercesc/util/XMemory.hpp
|
||||
include/xercesc/util/XercesDefs.hpp
|
||||
include/xercesc/util/XercesVersion.hpp
|
||||
include/xercesc/util/Xerces_autoconf_config.hpp
|
||||
include/xercesc/util/regx/ASCIIRangeFactory.hpp
|
||||
include/xercesc/util/regx/BMPattern.hpp
|
||||
include/xercesc/util/regx/BlockRangeFactory.hpp
|
||||
include/xercesc/util/regx/CharToken.hpp
|
||||
include/xercesc/util/regx/ClosureToken.hpp
|
||||
include/xercesc/util/regx/ConcatToken.hpp
|
||||
include/xercesc/util/regx/ConditionToken.hpp
|
||||
include/xercesc/util/regx/Match.hpp
|
||||
include/xercesc/util/regx/ModifierToken.hpp
|
||||
include/xercesc/util/regx/Op.hpp
|
||||
include/xercesc/util/regx/OpFactory.hpp
|
||||
include/xercesc/util/regx/ParenToken.hpp
|
||||
|
@ -419,6 +398,7 @@ include/xercesc/validators/common/CMAny.hpp
|
|||
include/xercesc/validators/common/CMBinaryOp.hpp
|
||||
include/xercesc/validators/common/CMLeaf.hpp
|
||||
include/xercesc/validators/common/CMNode.hpp
|
||||
include/xercesc/validators/common/CMRepeatingLeaf.hpp
|
||||
include/xercesc/validators/common/CMStateSet.hpp
|
||||
include/xercesc/validators/common/CMUnaryOp.hpp
|
||||
include/xercesc/validators/common/ContentLeafNameTypeVector.hpp
|
||||
|
@ -501,9 +481,8 @@ include/xercesc/validators/schema/identity/XPathMatcher.hpp
|
|||
include/xercesc/validators/schema/identity/XPathMatcherStack.hpp
|
||||
include/xercesc/validators/schema/identity/XPathSymbols.hpp
|
||||
include/xercesc/validators/schema/identity/XercesXPath.hpp
|
||||
lib/libxerces-c.so
|
||||
lib/libxerces-c.so.28
|
||||
lib/libxerces-c.so.28.0
|
||||
lib/libxerces-depdom.so
|
||||
lib/libxerces-depdom.so.28
|
||||
lib/libxerces-depdom.so.28.0
|
||||
include/xercesc/xinclude/XIncludeDOMDocumentProcessor.hpp
|
||||
include/xercesc/xinclude/XIncludeLocation.hpp
|
||||
include/xercesc/xinclude/XIncludeUtils.hpp
|
||||
lib/libxerces-c.la
|
||||
lib/pkgconfig/xerces-c.pc
|
||||
|
|
|
@ -1,15 +1,14 @@
|
|||
# $NetBSD: buildlink3.mk,v 1.11 2009/05/10 11:24:26 hasso Exp $
|
||||
# $NetBSD: buildlink3.mk,v 1.12 2011/02/23 08:31:13 adam Exp $
|
||||
|
||||
BUILDLINK_TREE+= xerces-c
|
||||
|
||||
.if !defined(XERCES_C_BUILDLINK3_MK)
|
||||
XERCES_C_BUILDLINK3_MK:=
|
||||
|
||||
BUILDLINK_API_DEPENDS.xerces-c+= xerces-c>=2.8.0
|
||||
BUILDLINK_ABI_DEPENDS.xerces-c?= xerces-c>=2.8.0
|
||||
BUILDLINK_PKGSRCDIR.xerces-c?= ../../textproc/xerces-c
|
||||
BUILDLINK_API_DEPENDS.xerces-c+= xerces-c>=3.1.1
|
||||
BUILDLINK_PKGSRCDIR.xerces-c?= ../../textproc/xerces-c3
|
||||
|
||||
.include "../../converters/libiconv/buildlink3.mk"
|
||||
.endif # XERCES_C_BUILDLINK3_MK
|
||||
.endif # XERCES_C_BUILDLINK3_MK
|
||||
|
||||
BUILDLINK_TREE+= -xerces-c
|
||||
|
|
|
@ -1,25 +1,5 @@
|
|||
$NetBSD: distinfo,v 1.13 2009/08/28 05:24:34 hasso Exp $
|
||||
$NetBSD: distinfo,v 1.14 2011/02/23 08:31:13 adam Exp $
|
||||
|
||||
SHA1 (xerces-c-src_2_8_0.tar.gz) = f0803b1330daec3f44b17dee64c3c99de6b3cd3e
|
||||
RMD160 (xerces-c-src_2_8_0.tar.gz) = d576df7870b043a338358834a0e1180dca39e838
|
||||
Size (xerces-c-src_2_8_0.tar.gz) = 7893039 bytes
|
||||
SHA1 (patch-aa) = fe4865a320c5a8690e41d8e4a6c8465bfc989b96
|
||||
SHA1 (patch-ab) = 581a7fb3faa93fd390af939d110c90d4b350910b
|
||||
SHA1 (patch-ac) = 8fe9f17f1a8be5e251885efe1bcf7466cbea7714
|
||||
SHA1 (patch-ad) = 4ba3a565455cbc5202f309b36365297396221f51
|
||||
SHA1 (patch-af) = b67265ad5ad7b3a5eb1d6eadf53265dea28a03db
|
||||
SHA1 (patch-ag) = 778c1f35e20d98336c1aabe968cd673ee80f8c16
|
||||
SHA1 (patch-ah) = fe86675faa35e458e7729d12c1c343fc1976c9ba
|
||||
SHA1 (patch-ai) = 1259dc3f5f69a7a218199825cd085a80563c04f6
|
||||
SHA1 (patch-aj) = f3ebf6265573f93ff1b75eee55fb3698f7cdb841
|
||||
SHA1 (patch-ak) = d9fba073a165e8b5cfebe546afc35efd6c74f150
|
||||
SHA1 (patch-al) = ee9aeff252afec1eba6316118e825ef27f187a2d
|
||||
SHA1 (patch-am) = d9fea604b7b34654ff6cb69d155f2d5e9ccde25b
|
||||
SHA1 (patch-an) = 168ee08b79bba4cb5e0c8ec8567dbde09e8408f3
|
||||
SHA1 (patch-ao) = 6d72b85c9883797d80d469554817e5034a77b97b
|
||||
SHA1 (patch-ap) = ff9169b12d936c9ca093e7e3ee30aa84a1c8ae7f
|
||||
SHA1 (patch-aq) = 9e25a396655fe11a068ddb4a48c23902214273e6
|
||||
SHA1 (patch-ar) = 8b8055056afdb0c3d8a556211bf44aec496727a1
|
||||
SHA1 (patch-as) = 3eaec415b91dcd129eaa7c5c6e0b5b417ad651bc
|
||||
SHA1 (patch-at) = 31682536fccb69cbf29872793b2eb798e15e3bda
|
||||
SHA1 (patch-ba) = 5bf2099aa80dfa3c91d5297fd7238a5a049131d9
|
||||
SHA1 (xerces-c-3.1.1.tar.gz) = 177ec838c5119df57ec77eddec9a29f7e754c8b2
|
||||
RMD160 (xerces-c-3.1.1.tar.gz) = bbb7ceac470db901d77926cdf21a254df0d8d1db
|
||||
Size (xerces-c-3.1.1.tar.gz) = 5051308 bytes
|
||||
|
|
|
@ -1,25 +0,0 @@
|
|||
$NetBSD: patch-aa,v 1.5 2009/05/10 11:24:27 hasso Exp $
|
||||
|
||||
--- ../../samples/Makefile.incl.orig 2007-08-28 21:47:02 +0300
|
||||
+++ ../../samples/Makefile.incl 2009-05-08 12:50:45 +0300
|
||||
@@ -270,6 +270,20 @@ ifeq (${PLATFORM}, FREEBSD)
|
||||
endif
|
||||
endif
|
||||
|
||||
+#=============== DRAGONFLY SPECIFIC OPTIONS =========================
|
||||
+ifeq (${PLATFORM}, DRAGONFLY)
|
||||
+ CMP= -c ${CXXFLAGS}
|
||||
+ CC= ${COMPILER} -c -D${PLATFORM} -fPIC
|
||||
+ LINK = ${COMPILER} -D${PLATFORM} -fPIC ${LDFLAGS}
|
||||
+ PLATFORM_LIB_LINK_OPTIONS=-Wl,-rpath,${XERCESCROOT}/lib
|
||||
+ ifdef ICUROOT
|
||||
+ PLATFORM_LIB_LINK_OPTIONS+=-L${ICUROOT} -Wl,-rpath,${ICUROOT}
|
||||
+ EXTRA_LINK_OPTIONS=-licudata -lstdc++ ${EXTRA_LIBS}
|
||||
+ else
|
||||
+ EXTRA_LINK_OPTIONS=${EXTRA_LIBS} -lstdc++
|
||||
+ endif
|
||||
+endif
|
||||
+
|
||||
#=============== NETBSD SPECIFIC OPTIONS =========================
|
||||
ifeq (${PLATFORM}, NETBSD)
|
||||
CMP= -c ${CXXFLAGS}
|
|
@ -1,12 +0,0 @@
|
|||
$NetBSD: patch-ab,v 1.5 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- ../../samples/configure.orig 2005-09-07 16:56:50.000000000 +0100
|
||||
+++ ../../samples/configure
|
||||
@@ -1363,6 +1363,7 @@ case "${host}" in
|
||||
*-*-linux*) platform=LINUX ;;
|
||||
*-*-nto*) platform=QNX ;;
|
||||
*-*-freebsd*) platform=FREEBSD ;;
|
||||
+ *-*-dragonfly*) platform=DRAGONFLY ;;
|
||||
*-*-netbsd*) platform=NETBSD ;;
|
||||
*-*-irix*) platform=IRIX ;;
|
||||
*-*-aix*) platform=AIX ;;
|
|
@ -1,14 +0,0 @@
|
|||
$NetBSD: patch-ac,v 1.4 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- ../../samples/runConfigure.orig 2005-09-07 16:56:50.000000000 +0100
|
||||
+++ ../../samples/runConfigure
|
||||
@@ -266,6 +266,9 @@ else
|
||||
elif test $platform = "freebsd"; then
|
||||
threadingLibs="-pthread -lc_r"
|
||||
threadingDefines="-D_THREAD_SAFE -DXML_USE_PTHREADS"
|
||||
+ elif test $platform = "dragonfly"; then
|
||||
+ threadingLibs="-pthread -lc_r"
|
||||
+ threadingDefines="-D_THREAD_SAFE -DXML_USE_PTHREADS"
|
||||
elif test $platform = "netbsd"; then
|
||||
threadingLibs="-pthread"
|
||||
threadingDefines="-D_THREAD_SAFE -DXML_USE_PTHREADS"
|
|
@ -1,74 +0,0 @@
|
|||
$NetBSD: patch-ad,v 1.5 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- util/Platforms/DragonFly/DragonFlyDefs.hpp.orig 2006-04-26 14:02:54.000000000 +0100
|
||||
+++ util/Platforms/DragonFly/DragonFlyDefs.hpp
|
||||
@@ -0,0 +1,69 @@
|
||||
+/*
|
||||
+ * The Apache Software License, Version 1.1
|
||||
+ *
|
||||
+ * Copyright (c) 1999-2000 The Apache Software Foundation. All rights
|
||||
+ * reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions
|
||||
+ * are met:
|
||||
+ *
|
||||
+ * 1. Redistributions of source code must retain the above copyright
|
||||
+ * notice, this list of conditions and the following disclaimer.
|
||||
+ *
|
||||
+ * 2. Redistributions in binary form must reproduce the above copyright
|
||||
+ * notice, this list of conditions and the following disclaimer in
|
||||
+ * the documentation and/or other materials provided with the
|
||||
+ * distribution.
|
||||
+ *
|
||||
+ * 3. The end-user documentation included with the redistribution,
|
||||
+ * if any, must include the following acknowledgment:
|
||||
+ * "This product includes software developed by the
|
||||
+ * Apache Software Foundation (http://www.apache.org/)."
|
||||
+ * Alternately, this acknowledgment may appear in the software itself,
|
||||
+ * if and wherever such third-party acknowledgments normally appear.
|
||||
+ *
|
||||
+ * 4. The names "Xerces" and "Apache Software Foundation" must
|
||||
+ * not be used to endorse or promote products derived from this
|
||||
+ * software without prior written permission. For written
|
||||
+ * permission, please contact apache\@apache.org.
|
||||
+ *
|
||||
+ * 5. Products derived from this software may not be called "Apache",
|
||||
+ * nor may "Apache" appear in their name, without prior written
|
||||
+ * permission of the Apache Software Foundation.
|
||||
+ *
|
||||
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
||||
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
+ * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
|
||||
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
||||
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
+ * SUCH DAMAGE.
|
||||
+ * ====================================================================
|
||||
+ *
|
||||
+ * This software consists of voluntary contributions made by many
|
||||
+ * individuals on behalf of the Apache Software Foundation, and was
|
||||
+ * originally based on software copyright (c) 1999, International
|
||||
+ * Business Machines, Inc., http://www.ibm.com . For more information
|
||||
+ * on the Apache Software Foundation, please see
|
||||
+ * <http://www.apache.org/>.
|
||||
+ */
|
||||
+
|
||||
+/*
|
||||
+ *
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+
|
||||
+#define ENDIANMODE_LITTLE
|
||||
+
|
||||
+typedef void* FileHandle;
|
||||
+
|
||||
+#ifndef DRAGONFLY
|
||||
+#define DRAGONFLY
|
||||
+#endif
|
|
@ -1,46 +0,0 @@
|
|||
$NetBSD: patch-af,v 1.7 2009/05/10 11:24:27 hasso Exp $
|
||||
|
||||
--- Makefile.incl.orig 2007-08-30 15:10:20 +0300
|
||||
+++ Makefile.incl 2009-05-08 12:55:42 +0300
|
||||
@@ -603,6 +603,30 @@ ifeq (${PLATFORM}, FREEBSD)
|
||||
LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
|
||||
endif
|
||||
|
||||
+#=============== DRAGONFLY SPECIFIC OPTIONS =========================
|
||||
+ifeq (${PLATFORM}, DRAGONFLY)
|
||||
+ PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
|
||||
+
|
||||
+ ifeq (${LIBTYPE},shared)
|
||||
+ PLATFORM_COMPILE_OPTIONS += -fPIC
|
||||
+ MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
|
||||
+ MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
|
||||
+ endif
|
||||
+
|
||||
+ ifeq (${TRANSCODER}, ICU)
|
||||
+ PLATFORM_COMPILE_OPTIONS += -I/usr/local/include
|
||||
+ ALLLIBS = ${LIBS} -L/usr/local/lib -L${ICUROOT} -licuuc -licudata -lgcc
|
||||
+ else
|
||||
+ ALLLIBS = ${LIBS}
|
||||
+ endif
|
||||
+
|
||||
+ SHLIBSUFFIX=.so
|
||||
+ ICUSHLIBSUFFIX=.so
|
||||
+ ## Compiler switch to embed a library name
|
||||
+ LD_SONAME = -Wl,-soname,${SO_NAME}
|
||||
+ LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
|
||||
+endif
|
||||
+
|
||||
#=============== NETBSD SPECIFIC OPTIONS =========================
|
||||
ifeq (${PLATFORM}, NETBSD)
|
||||
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
|
||||
@@ -969,6 +993,10 @@ LINK_LIBNAME=xercesc
|
||||
LIBDEPDOM=libxercesdepdom
|
||||
endif
|
||||
|
||||
+ifeq (${TRANSCODER}, IconvGNU)
|
||||
+ ALLLIBS += -liconv
|
||||
+endif
|
||||
+
|
||||
###################### A_NAME ####################################
|
||||
#
|
||||
#
|
|
@ -1,29 +0,0 @@
|
|||
$NetBSD: patch-ag,v 1.6 2009/05/10 11:24:27 hasso Exp $
|
||||
|
||||
--- configure.orig 2007-08-28 21:44:56 +0300
|
||||
+++ configure 2009-05-08 12:58:10 +0300
|
||||
@@ -3943,6 +3943,7 @@ case "${host}" in
|
||||
*-*-nto*) platform=QNX ;;
|
||||
*-*-linux*) platform=LINUX ;;
|
||||
*-*-freebsd*) platform=FREEBSD ;;
|
||||
+ *-*-dragonfly*) platform=DRAGONFLY ;;
|
||||
*-*-netbsd*) platform=NETBSD ;;
|
||||
*-*-irix*) platform=IRIX ;;
|
||||
*-*-aix*) platform=AIX
|
||||
@@ -4024,7 +4025,7 @@ libtype=${LIBTYPE}
|
||||
bitstobuild=${BITSTOBUILD}
|
||||
|
||||
|
||||
-ac_config_files="$ac_config_files Makefile util/Makefile util/Transcoders/Cygwin/Makefile util/Transcoders/Win32/Makefile util/Transcoders/ICU/Makefile util/Transcoders/Iconv/Makefile util/Transcoders/Iconv390/Makefile util/Transcoders/Uniconv390/Makefile util/Transcoders/Iconv400/Makefile util/Transcoders/IconvFBSD/Makefile util/Transcoders/IconvGNU/Makefile util/Transcoders/MacOSUnicodeConverter/Makefile util/Platforms/Makefile util/Platforms/Solaris/Makefile util/Platforms/AIX/Makefile util/Platforms/BeOS/Makefile util/Platforms/QNX/Makefile util/Platforms/Linux/Makefile util/Platforms/FreeBSD/Makefile util/Platforms/NetBSD/Makefile util/Platforms/HPUX/Makefile util/Platforms/OS390/Makefile util/Platforms/OS400/Makefile util/Platforms/IRIX/Makefile util/Platforms/PTX/Makefile util/Platforms/OpenServer/Makefile util/Platforms/UnixWare/Makefile util/Platforms/Tru64/Makefile util/Platforms/MacOS/Makefile util/Platforms/Win32/Makefile util/Platforms/Cygwin/Makefile util/Compilers/Makefile util/MsgLoaders/InMemory/Makefile util/MsgLoaders/ICU/Makefile util/MsgLoaders/ICU/resources/Makefile util/MsgLoaders/MsgCatalog/Makefile util/MsgLoaders/MsgFile/Makefile util/NetAccessors/Socket/Makefile util/NetAccessors/WinSock/Makefile util/NetAccessors/libWWW/Makefile util/NetAccessors/MacOSURLAccessCF/Makefile util/regx/Makefile validators/Makefile validators/common/Makefile validators/datatype/Makefile validators/DTD/Makefile validators/schema/Makefile validators/schema/identity/Makefile framework/Makefile framework/psvi/Makefile dom/Makefile dom/impl/Makefile dom/deprecated/Makefile parsers/Makefile internal/Makefile sax/Makefile sax2/Makefile ../../obj/Makefile"
|
||||
+ac_config_files="$ac_config_files Makefile util/Makefile util/Transcoders/Cygwin/Makefile util/Transcoders/Win32/Makefile util/Transcoders/ICU/Makefile util/Transcoders/Iconv/Makefile util/Transcoders/Iconv390/Makefile util/Transcoders/Uniconv390/Makefile util/Transcoders/Iconv400/Makefile util/Transcoders/IconvFBSD/Makefile util/Transcoders/IconvGNU/Makefile util/Transcoders/MacOSUnicodeConverter/Makefile util/Platforms/Makefile util/Platforms/Solaris/Makefile util/Platforms/AIX/Makefile util/Platforms/BeOS/Makefile util/Platforms/QNX/Makefile util/Platforms/Linux/Makefile util/Platforms/FreeBSD/Makefile util/Platforms/DragonFly/Makefile util/Platforms/NetBSD/Makefile util/Platforms/HPUX/Makefile util/Platforms/OS390/Makefile util/Platforms/OS400/Makefile util/Platforms/IRIX/Makefile util/Platforms/PTX/Makefile util/Platforms/OpenServer/Makefile util/Platforms/UnixWare/Makefile util/Platforms/Tru64/Makefile util/Platforms/MacOS/Makefile util/Platforms/Win32/Makefile util/Platforms/Cygwin/Makefile util/Compilers/Makefile util/MsgLoaders/InMemory/Makefile util/MsgLoaders/ICU/Makefile util/MsgLoaders/ICU/resources/Makefile util/MsgLoaders/MsgCatalog/Makefile util/MsgLoaders/MsgFile/Makefile util/NetAccessors/Socket/Makefile util/NetAccessors/WinSock/Makefile util/NetAccessors/libWWW/Makefile util/NetAccessors/MacOSURLAccessCF/Makefile util/regx/Makefile validators/Makefile validators/common/Makefile validators/datatype/Makefile validators/DTD/Makefile validators/schema/Makefile validators/schema/identity/Makefile framework/Makefile framework/psvi/Makefile dom/Makefile dom/impl/Makefile dom/deprecated/Makefile parsers/Makefile internal/Makefile sax/Makefile sax2/Makefile ../../obj/Makefile"
|
||||
|
||||
ac_config_commands="$ac_config_commands default"
|
||||
|
||||
@@ -4624,6 +4625,7 @@ do
|
||||
"util/Platforms/QNX/Makefile") CONFIG_FILES="$CONFIG_FILES util/Platforms/QNX/Makefile" ;;
|
||||
"util/Platforms/Linux/Makefile") CONFIG_FILES="$CONFIG_FILES util/Platforms/Linux/Makefile" ;;
|
||||
"util/Platforms/FreeBSD/Makefile") CONFIG_FILES="$CONFIG_FILES util/Platforms/FreeBSD/Makefile" ;;
|
||||
+ "util/Platforms/DragonFly/Makefile") CONFIG_FILES="$CONFIG_FILES util/Platforms/DragonFly/Makefile" ;;
|
||||
"util/Platforms/NetBSD/Makefile") CONFIG_FILES="$CONFIG_FILES util/Platforms/NetBSD/Makefile" ;;
|
||||
"util/Platforms/HPUX/Makefile") CONFIG_FILES="$CONFIG_FILES util/Platforms/HPUX/Makefile" ;;
|
||||
"util/Platforms/OS390/Makefile") CONFIG_FILES="$CONFIG_FILES util/Platforms/OS390/Makefile" ;;
|
|
@ -1,14 +0,0 @@
|
|||
$NetBSD: patch-ah,v 1.5 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- dom/impl/DOMDeepNodeListPool.c.orig 2005-09-07 16:54:58.000000000 +0100
|
||||
+++ dom/impl/DOMDeepNodeListPool.c
|
||||
@@ -97,6 +97,9 @@ DOMDeepNodeListPool<TVal>::DOMDeepNodeLi
|
||||
|
||||
fIdPtrs = (TVal**) fMemoryManager->allocate(fIdPtrsCount * sizeof(TVal*));//new TVal*[fIdPtrsCount];
|
||||
fIdPtrs[0] = 0;
|
||||
+
|
||||
+ // create default hasher
|
||||
+ fHash = new (fMemoryManager) HashPtr();
|
||||
}
|
||||
|
||||
template <class TVal>
|
|
@ -1,23 +0,0 @@
|
|||
$NetBSD: patch-ai,v 1.5 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- runConfigure.orig 2005-09-07 16:55:53.000000000 +0100
|
||||
+++ runConfigure
|
||||
@@ -251,7 +251,7 @@ echo "Extra configure options: $configur
|
||||
#
|
||||
|
||||
case $platform in
|
||||
- aix | openserver | unixware | beos | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | os400 | os390 | irix | ptx | tru64 | macosx | cygwin | qnx | interix | mingw-msys)
|
||||
+ aix | openserver | unixware | beos | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | os400 | os390 | irix | ptx | tru64 | macosx | cygwin | qnx | interix | mingw-msys | dragonfly)
|
||||
# platform has been recognized
|
||||
;;
|
||||
*)
|
||||
@@ -334,6 +334,9 @@ else
|
||||
elif test $platform = "freebsd"; then
|
||||
threadingLibs="-pthread -lc_r"
|
||||
threadingDefines="-D_THREAD_SAFE -DXML_USE_PTHREADS"
|
||||
+ elif test $platform = "dragonfly"; then
|
||||
+ threadingLibs="-pthread -lc_r"
|
||||
+ threadingDefines="-D_THREAD_SAFE -DXML_USE_PTHREADS"
|
||||
elif test $platform = "netbsd"; then
|
||||
threadingLibs="-pthread -lpthread"
|
||||
threadingDefines="-D_THREAD_SAFE -DXML_USE_PTHREADS"
|
|
@ -1,14 +0,0 @@
|
|||
$NetBSD: patch-aj,v 1.4 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- util/AutoSense.hpp.orig 2005-09-07 16:55:50.000000000 +0100
|
||||
+++ util/AutoSense.hpp
|
||||
@@ -61,6 +61,9 @@
|
||||
#elif defined(__FreeBSD__)
|
||||
#define XML_FREEBSD
|
||||
#define XML_UNIX
|
||||
+#elif defined(__DragonFly__)
|
||||
+ #define XML_DRAGONFLY
|
||||
+ #define XML_UNIX
|
||||
#elif defined(IRIX) || defined(__sgi)
|
||||
#define XML_IRIX
|
||||
#define XML_UNIX
|
|
@ -1,89 +0,0 @@
|
|||
$NetBSD: patch-ak,v 1.4 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- util/Platforms/DragonFly/Makefile.in.orig 2006-04-26 14:02:54.000000000 +0100
|
||||
+++ util/Platforms/DragonFly/Makefile.in
|
||||
@@ -0,0 +1,84 @@
|
||||
+#
|
||||
+# The Apache Software License, Version 1.1
|
||||
+#
|
||||
+# Copyright (c) 2001 The Apache Software Foundation. All rights
|
||||
+# reserved.
|
||||
+#
|
||||
+# Redistribution and use in source and binary forms, with or without
|
||||
+# modification, are permitted provided that the following conditions
|
||||
+# are met:
|
||||
+#
|
||||
+# 1. Redistributions of source code must retain the above copyright
|
||||
+# notice, this list of conditions and the following disclaimer.
|
||||
+#
|
||||
+# 2. Redistributions in binary form must reproduce the above copyright
|
||||
+# notice, this list of conditions and the following disclaimer in
|
||||
+# the documentation and/or other materials provided with the
|
||||
+# distribution.
|
||||
+#
|
||||
+# 3. The end-user documentation included with the redistribution,
|
||||
+# if any, must include the following acknowledgment:
|
||||
+# "This product includes software developed by the
|
||||
+# Apache Software Foundation (http://www.apache.org/)."
|
||||
+# Alternately, this acknowledgment may appear in the software itself,
|
||||
+# if and wherever such third-party acknowledgments normally appear.
|
||||
+#
|
||||
+# 4. The names "Xerces" and "Apache Software Foundation" must
|
||||
+# not be used to endorse or promote products derived from this
|
||||
+# software without prior written permission. For written
|
||||
+# permission, please contact apache\@apache.org.
|
||||
+#
|
||||
+# 5. Products derived from this software may not be called "Apache",
|
||||
+# nor may "Apache" appear in their name, without prior written
|
||||
+# permission of the Apache Software Foundation.
|
||||
+#
|
||||
+# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
||||
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
+# DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
|
||||
+# ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
||||
+# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
+# SUCH DAMAGE.
|
||||
+# ====================================================================
|
||||
+#
|
||||
+# This software consists of voluntary contributions made by many
|
||||
+# individuals on behalf of the Apache Software Foundation, and was
|
||||
+# originally based on software copyright (c) 2001, International
|
||||
+# Business Machines, Inc., http://www.ibm.com . For more information
|
||||
+# on the Apache Software Foundation, please see
|
||||
+# <http://www.apache.org/>.
|
||||
+#
|
||||
+#
|
||||
+
|
||||
+PLATFORM = @platform@
|
||||
+CC = @cc@
|
||||
+CXX = @cxx@
|
||||
+GCC = @GCC@
|
||||
+GXX = @GXX@
|
||||
+CXXFLAGS = @cxxflags@
|
||||
+CFLAGS = @cflags@
|
||||
+PREFIX = @prefix@
|
||||
+PREFIX_INCLUDE = @prefix_include@
|
||||
+LDFLAGS = @ldflags@
|
||||
+LIBS = @libs@
|
||||
+OSVER = @osver@
|
||||
+USELIBWWW = @uselibwww@
|
||||
+MESSAGELOADER = @messageloader@
|
||||
+TRANSCODER = @transcoder@
|
||||
+THREADS = @threads@
|
||||
+
|
||||
+MODULE = util
|
||||
+
|
||||
+include ../../../Makefile.incl
|
||||
+
|
||||
+SUBMODULE = Platforms/DragonFly
|
||||
+CXXFLAGS += -D_GNU_SOURCE -D__USE_GNU
|
||||
+CPP_PUBHEADERS = DragonFlyDefs.hpp
|
||||
+CPP_OBJECTS = DragonFlyPlatformUtils.$(TO)
|
||||
+
|
||||
+include ../../Makefile.util.submodule
|
|
@ -1,14 +0,0 @@
|
|||
$NetBSD: patch-al,v 1.4 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- util/Platforms/Makefile.in.orig 2005-09-07 16:55:34.000000000 +0100
|
||||
+++ util/Platforms/Makefile.in
|
||||
@@ -149,6 +149,9 @@ endif
|
||||
ifeq (${PLATFORM}, FREEBSD)
|
||||
SUBMODULE = FreeBSD
|
||||
endif
|
||||
+ifeq (${PLATFORM}, DRAGONFLY)
|
||||
+ SUBMODULE = DragonFly
|
||||
+endif
|
||||
ifeq (${PLATFORM}, NETBSD)
|
||||
SUBMODULE = NetBSD
|
||||
endif
|
|
@ -1,22 +0,0 @@
|
|||
$NetBSD: patch-am,v 1.4 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- util/Platforms/NetBSD/NetBSDPlatformUtils.cpp.orig 2005-09-07 16:55:30.000000000 +0100
|
||||
+++ util/Platforms/NetBSD/NetBSDPlatformUtils.cpp
|
||||
@@ -54,6 +54,8 @@
|
||||
|
||||
#if defined(XML_USE_ICU_TRANSCODER)
|
||||
#include <xercesc/util/Transcoders/ICU/ICUTransService.hpp>
|
||||
+#elif defined (XML_USE_GNU_TRANSCODER)
|
||||
+ #include <xercesc/util/Transcoders/IconvGNU/IconvGNUTransService.hpp>
|
||||
#else
|
||||
// Use native transcoder. Same as -DXML_USE_NATIVE_TRANSCODER
|
||||
#include <xercesc/util/Transcoders/Iconv/IconvTransService.hpp>
|
||||
@@ -62,6 +64,8 @@
|
||||
|
||||
#if defined(XML_USE_ICU_MESSAGELOADER)
|
||||
#include <xercesc/util/MsgLoaders/ICU/ICUMsgLoader.hpp>
|
||||
+#elif defined(XML_USE_ICONV_MESSAGELOADER)
|
||||
+ #include <xercesc/util/MsgLoaders/MsgCatalog/MsgCatalogLoader.hpp>
|
||||
#else
|
||||
// Same as -DXML_USE_INMEM_MESSAGELOADER
|
||||
#include <xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.hpp>
|
|
@ -1,168 +0,0 @@
|
|||
$NetBSD: patch-an,v 1.4 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- util/RefArrayOf.c.orig 2005-09-07 16:55:50.000000000 +0100
|
||||
+++ util/RefArrayOf.c
|
||||
@@ -39,9 +39,9 @@ RefArrayOf<TElem>::RefArrayOf(const unsi
|
||||
, fArray(0)
|
||||
, fMemoryManager(manager)
|
||||
{
|
||||
- fArray = (TElem**) fMemoryManager->allocate(fSize * sizeof(TElem*));//new TElem*[fSize];
|
||||
- for (unsigned int index = 0; index < fSize; index++)
|
||||
- fArray[index] = 0;
|
||||
+ this->fArray = (TElem**) this->fMemoryManager->allocate(fSize * sizeof(TElem*));//new TElem*[fSize];
|
||||
+ for (unsigned int index = 0; index < this->fSize; index++)
|
||||
+ this->fArray[index] = 0;
|
||||
}
|
||||
|
||||
template <class TElem>
|
||||
@@ -53,9 +53,9 @@ RefArrayOf<TElem>::RefArrayOf(TElem* val
|
||||
, fArray(0)
|
||||
, fMemoryManager(manager)
|
||||
{
|
||||
- fArray = (TElem**) fMemoryManager->allocate(fSize * sizeof(TElem*));//new TElem*[fSize];
|
||||
- for (unsigned int index = 0; index < fSize; index++)
|
||||
- fArray[index] = values[index];
|
||||
+ this->fArray = (TElem**) this->fMemoryManager->allocate(this->fSize * sizeof(TElem*));//new TElem*[fSize];
|
||||
+ for (unsigned int index = 0; index < this->fSize; index++)
|
||||
+ this->fArray[index] = values[index];
|
||||
}
|
||||
|
||||
template <class TElem> RefArrayOf<TElem>::
|
||||
@@ -65,14 +65,14 @@ RefArrayOf(const RefArrayOf<TElem>& sour
|
||||
, fArray(0)
|
||||
, fMemoryManager(source.fMemoryManager)
|
||||
{
|
||||
- fArray = (TElem**) fMemoryManager->allocate(fSize * sizeof(TElem*));//new TElem*[fSize];
|
||||
- for (unsigned int index = 0; index < fSize; index++)
|
||||
- fArray[index] = source.fArray[index];
|
||||
+ this->fArray = (TElem**) this->fMemoryManager->allocate(fSize * sizeof(TElem*));//new TElem*[fSize];
|
||||
+ for (unsigned int index = 0; index < this->fSize; index++)
|
||||
+ this->fArray[index] = source.fArray[index];
|
||||
}
|
||||
|
||||
template <class TElem> RefArrayOf<TElem>::~RefArrayOf()
|
||||
{
|
||||
- fMemoryManager->deallocate(fArray);//delete [] fArray;
|
||||
+ this->fMemoryManager->deallocate(this->fArray);//delete [] fArray;
|
||||
}
|
||||
|
||||
|
||||
@@ -84,7 +84,7 @@ operator[](const unsigned int index)
|
||||
{
|
||||
if (index >= fSize)
|
||||
ThrowXMLwithMemMgr(ArrayIndexOutOfBoundsException, XMLExcepts::Array_BadIndex, fMemoryManager);
|
||||
- return fArray[index];
|
||||
+ return this->fArray[index];
|
||||
}
|
||||
|
||||
template <class TElem> const TElem* RefArrayOf<TElem>::
|
||||
@@ -92,7 +92,7 @@ operator[](const unsigned int index) con
|
||||
{
|
||||
if (index >= fSize)
|
||||
ThrowXMLwithMemMgr(ArrayIndexOutOfBoundsException, XMLExcepts::Array_BadIndex, fMemoryManager);
|
||||
- return fArray[index];
|
||||
+ return this->fArray[index];
|
||||
}
|
||||
|
||||
template <class TElem> RefArrayOf<TElem>& RefArrayOf<TElem>::
|
||||
@@ -104,14 +104,14 @@ operator=(const RefArrayOf<TElem>& toAss
|
||||
// Reallocate if not the same size
|
||||
if (toAssign.fSize != fSize)
|
||||
{
|
||||
- fMemoryManager->deallocate(fArray);//delete [] fArray;
|
||||
- fSize = toAssign.fSize;
|
||||
- fArray = (TElem**) fMemoryManager->allocate(fSize * sizeof(TElem*));//new TElem*[fSize];
|
||||
+ this->fMemoryManager->deallocate(this->fArray);//delete [] fArray;
|
||||
+ this->fSize = toAssign.fSize;
|
||||
+ this->fArray = (TElem**) this->fMemoryManager->allocate(this->fSize * sizeof(TElem*));//new TElem*[fSize];
|
||||
}
|
||||
|
||||
// Copy over the source elements
|
||||
for (unsigned int index = 0; index < fSize; index++)
|
||||
- fArray[index] = toAssign.fArray[index];
|
||||
+ this->fArray[index] = toAssign.fArray[index];
|
||||
|
||||
return *this;
|
||||
}
|
||||
@@ -182,16 +182,16 @@ template <class TElem> void RefArrayOf<T
|
||||
if (index >= fSize)
|
||||
ThrowXMLwithMemMgr(ArrayIndexOutOfBoundsException, XMLExcepts::Array_BadIndex, fMemoryManager);
|
||||
|
||||
- delete fArray[index];
|
||||
- fArray[index] = 0;
|
||||
+ delete this->fArray[index];
|
||||
+ this->fArray[index] = 0;
|
||||
}
|
||||
|
||||
template <class TElem> void RefArrayOf<TElem>::deleteAllElements()
|
||||
{
|
||||
- for (unsigned int index = 0; index < fSize; index++)
|
||||
+ for (unsigned int index = 0; index < this->fSize; index++)
|
||||
{
|
||||
delete fArray[index];
|
||||
- fArray[index] = 0;
|
||||
+ this->fArray[index] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -204,7 +204,7 @@ template <class TElem> void RefArrayOf<T
|
||||
ThrowXMLwithMemMgr(IllegalArgumentException, XMLExcepts::Array_BadNewSize, fMemoryManager);
|
||||
|
||||
// Allocate the new array
|
||||
- TElem** newArray = (TElem**) fMemoryManager->allocate
|
||||
+ TElem** newArray = (TElem**) this->fMemoryManager->allocate
|
||||
(
|
||||
newSize * sizeof(TElem*)
|
||||
);//new TElem*[newSize];
|
||||
@@ -212,15 +212,15 @@ template <class TElem> void RefArrayOf<T
|
||||
// Copy the existing values
|
||||
unsigned int index = 0;
|
||||
for (; index < fSize; index++)
|
||||
- newArray[index] = fArray[index];
|
||||
+ newArray[index] = this->fArray[index];
|
||||
|
||||
for (; index < newSize; index++)
|
||||
newArray[index] = 0;
|
||||
|
||||
// Delete the old array and udpate our members
|
||||
- fMemoryManager->deallocate(fArray);//delete [] fArray;
|
||||
- fArray = newArray;
|
||||
- fSize = newSize;
|
||||
+ this->fMemoryManager->deallocate(fArray);//delete [] fArray;
|
||||
+ this->fArray = newArray;
|
||||
+ this->fSize = newSize;
|
||||
}
|
||||
|
||||
|
||||
@@ -241,7 +241,7 @@ RefArrayEnumerator( RefArrayOf<T
|
||||
template <class TElem> RefArrayEnumerator<TElem>::~RefArrayEnumerator()
|
||||
{
|
||||
if (fAdopted)
|
||||
- delete fToEnum;
|
||||
+ delete this->fToEnum;
|
||||
}
|
||||
|
||||
|
||||
@@ -250,19 +250,19 @@ template <class TElem> RefArrayEnumerato
|
||||
// ---------------------------------------------------------------------------
|
||||
template <class TElem> bool RefArrayEnumerator<TElem>::hasMoreElements() const
|
||||
{
|
||||
- if (fCurIndex >= fToEnum->length())
|
||||
+ if (fCurIndex >= this->fToEnum->length())
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
template <class TElem> TElem& RefArrayEnumerator<TElem>::nextElement()
|
||||
{
|
||||
- return *(*fToEnum)[fCurIndex++];
|
||||
+ return *(*this->fToEnum)[this->fCurIndex++];
|
||||
}
|
||||
|
||||
template <class TElem> void RefArrayEnumerator<TElem>::Reset()
|
||||
{
|
||||
- fCurIndex = 0;
|
||||
+ this->fCurIndex = 0;
|
||||
}
|
||||
|
||||
XERCES_CPP_NAMESPACE_END
|
|
@ -1,14 +0,0 @@
|
|||
$NetBSD: patch-ao,v 1.4 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- util/RefHash3KeysIdPool.c.orig 2005-09-07 16:55:51.000000000 +0100
|
||||
+++ util/RefHash3KeysIdPool.c
|
||||
@@ -97,6 +97,9 @@ RefHash3KeysIdPool<TVal>::RefHash3KeysId
|
||||
fIdPtrsCount = 256;
|
||||
fIdPtrs = (TVal**) fMemoryManager->allocate(fIdPtrsCount * sizeof(TVal*)); //new TVal*[fIdPtrsCount];
|
||||
fIdPtrs[0] = 0;
|
||||
+
|
||||
+ // create default hasher
|
||||
+ fHash = new (fMemoryManager) HashXMLCh();
|
||||
}
|
||||
|
||||
template <class TVal>
|
|
@ -1,61 +0,0 @@
|
|||
$NetBSD: patch-ap,v 1.4 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- util/Transcoders/IconvGNU/IconvGNUTransService.cpp.orig 2005-09-07 16:55:44.000000000 +0100
|
||||
+++ util/Transcoders/IconvGNU/IconvGNUTransService.cpp
|
||||
@@ -26,7 +26,11 @@
|
||||
#include <locale.h>
|
||||
#include <iconv.h>
|
||||
#include <errno.h>
|
||||
+#ifdef __NetBSD__
|
||||
+#include <machine/endian.h>
|
||||
+#else
|
||||
#include <endian.h>
|
||||
+#endif
|
||||
|
||||
#include <xercesc/util/XMLString.hpp>
|
||||
#include <xercesc/util/XMLUniDefs.hpp>
|
||||
@@ -243,7 +247,7 @@ XMLCh IconvGNUWrapper::toUpper (const
|
||||
xmlChToMbc (ch, wcbuf);
|
||||
|
||||
char tmpArr[4];
|
||||
- char* ptr = wcbuf;
|
||||
+ const char* ptr = wcbuf;
|
||||
size_t len = fUChSize;
|
||||
char *pTmpArr = tmpArr;
|
||||
size_t bLen = 2;
|
||||
@@ -275,7 +279,7 @@ XMLCh IconvGNUWrapper::toLower (const
|
||||
xmlChToMbc (ch, wcbuf);
|
||||
|
||||
char tmpArr[4];
|
||||
- char* ptr = wcbuf;
|
||||
+ const char* ptr = wcbuf;
|
||||
size_t len = fUChSize;
|
||||
char *pTmpArr = tmpArr;
|
||||
size_t bLen = 2;
|
||||
@@ -307,7 +311,7 @@ bool IconvGNUWrapper::isSpace(const X
|
||||
char tmpArr[4];
|
||||
|
||||
xmlChToMbc (toCheck, wcbuf);
|
||||
- char* ptr = wcbuf;
|
||||
+ const char* ptr = wcbuf;
|
||||
size_t len = fUChSize;
|
||||
char *pTmpArr = tmpArr;
|
||||
size_t bLen = 2;
|
||||
@@ -408,7 +412,7 @@ size_t IconvGNUWrapper::iconvFrom ( c
|
||||
size_t toLen ) const
|
||||
{
|
||||
ICONV_LOCK;
|
||||
- char ** tmpPtr = (char**)&fromPtr;
|
||||
+ const char ** tmpPtr = &fromPtr;
|
||||
return ::iconv (fCDFrom, tmpPtr, fromLen, toPtr, &toLen);
|
||||
}
|
||||
|
||||
@@ -418,7 +422,7 @@ size_t IconvGNUWrapper::iconvTo ( con
|
||||
size_t toLen ) const
|
||||
{
|
||||
ICONV_LOCK;
|
||||
- char ** tmpPtr = (char**)&fromPtr;
|
||||
+ const char ** tmpPtr = &fromPtr;
|
||||
return ::iconv (fCDTo, tmpPtr, fromLen, toPtr, &toLen);
|
||||
}
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
$NetBSD: patch-aq,v 1.2 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- util/XercesDefs.hpp.orig 2005-09-07 16:55:50.000000000 +0100
|
||||
+++ util/XercesDefs.hpp
|
||||
@@ -266,6 +266,10 @@
|
||||
#include <xercesc/util/Platforms/FreeBSD/FreeBSDDefs.hpp>
|
||||
#endif
|
||||
|
||||
+#if defined(XML_DRAGONFLY)
|
||||
+#include <xercesc/util/Platforms/DragonFly/DragonFlyDefs.hpp>
|
||||
+#endif
|
||||
+
|
||||
#if defined(XML_OS390)
|
||||
#include <xercesc/util/Platforms/OS390/OS390Defs.hpp>
|
||||
#endif
|
|
@ -1,25 +0,0 @@
|
|||
$NetBSD: patch-ar,v 1.3 2009/05/10 11:24:27 hasso Exp $
|
||||
|
||||
--- ../../tests/Makefile.incl.orig 2007-08-28 21:46:48 +0300
|
||||
+++ ../../tests/Makefile.incl 2009-05-08 13:00:19 +0300
|
||||
@@ -269,6 +269,20 @@ ifeq (${PLATFORM}, FREEBSD)
|
||||
endif
|
||||
endif
|
||||
|
||||
+#=============== DRAGONFLY SPECIFIC OPTIONS =========================
|
||||
+ifeq (${PLATFORM}, DRAGONFLY)
|
||||
+ CMP= -c ${CXXFLAGS}
|
||||
+ CC= ${COMPILER} -c -D${PLATFORM} -fPIC
|
||||
+ LINK = ${COMPILER} -D${PLATFORM} -fPIC ${LDFLAGS}
|
||||
+ PLATFORM_LIB_LINK_OPTIONS=-Wl,-rpath,${XERCESCROOT}/lib
|
||||
+ ifdef ICUROOT
|
||||
+ PLATFORM_LIB_LINK_OPTIONS+=-L${ICUROOT} -Wl,-rpath,${ICUROOT}
|
||||
+ EXTRA_LINK_OPTIONS=-licudata -lstdc++ ${EXTRA_LIBS}
|
||||
+ else
|
||||
+ EXTRA_LINK_OPTIONS=${EXTRA_LIBS} -lstdc++
|
||||
+ endif
|
||||
+endif
|
||||
+
|
||||
#=============== NETBSD SPECIFIC OPTIONS =========================
|
||||
ifeq (${PLATFORM}, NETBSD)
|
||||
CMP= -c ${CXXFLAGS}
|
|
@ -1,12 +0,0 @@
|
|||
$NetBSD: patch-as,v 1.2 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- ../../tests/configure.orig 2005-09-07 16:56:40.000000000 +0100
|
||||
+++ ../../tests/configure
|
||||
@@ -1363,6 +1363,7 @@ case "${host}" in
|
||||
*-*-linux*) platform=LINUX ;;
|
||||
*-*-nto*) platform=QNX ;;
|
||||
*-*-freebsd*) platform=FREEBSD ;;
|
||||
+ *-*-dragonfly*) platform=DRAGONFLY ;;
|
||||
*-*-netbsd*) platform=NETBSD ;;
|
||||
*-*-irix*) platform=IRIX ;;
|
||||
*-*-aix*) platform=AIX ;;
|
|
@ -1,14 +0,0 @@
|
|||
$NetBSD: patch-at,v 1.2 2006/08/10 13:44:22 abs Exp $
|
||||
|
||||
--- ../../tests/runConfigure.orig 2005-09-07 16:56:40.000000000 +0100
|
||||
+++ ../../tests/runConfigure
|
||||
@@ -265,6 +265,9 @@ else
|
||||
elif test $platform = "freebsd"; then
|
||||
threadingLibs="-pthread -lc_r"
|
||||
threadingDefines="-D_THREAD_SAFE -DXML_USE_PTHREADS"
|
||||
+ elif test $platform = "dragonfly"; then
|
||||
+ threadingLibs="-pthread -lc_r"
|
||||
+ threadingDefines="-D_THREAD_SAFE -DXML_USE_PTHREADS"
|
||||
elif test $platform = "netbsd"; then
|
||||
threadingLibs="-pthread"
|
||||
threadingDefines="-D_THREAD_SAFE -DXML_USE_PTHREADS"
|
|
@ -1,653 +0,0 @@
|
|||
$NetBSD: patch-ba,v 1.1 2009/08/28 05:24:34 hasso Exp $
|
||||
|
||||
Fix for CVE-2009-1885 from upstream subversion repo.
|
||||
|
||||
--- ../../src/xercesc/validators/DTD/DTDScanner.cpp 2008/05/21 16:42:53 658750
|
||||
+++ ../../src/xercesc/validators/DTD/DTDScanner.cpp 2009/08/24 14:03:57 807224
|
||||
@@ -27,7 +27,9 @@
|
||||
#include <xercesc/util/FlagJanitor.hpp>
|
||||
#include <xercesc/util/Janitor.hpp>
|
||||
#include <xercesc/util/XMLUniDefs.hpp>
|
||||
+#include <xercesc/util/ValueStackOf.hpp>
|
||||
#include <xercesc/util/UnexpectedEOFException.hpp>
|
||||
+#include <xercesc/util/OutOfMemoryException.hpp>
|
||||
#include <xercesc/sax/InputSource.hpp>
|
||||
#include <xercesc/framework/XMLDocumentHandler.hpp>
|
||||
#include <xercesc/framework/XMLEntityHandler.hpp>
|
||||
@@ -39,7 +41,6 @@
|
||||
#include <xercesc/validators/DTD/DTDEntityDecl.hpp>
|
||||
#include <xercesc/validators/DTD/DocTypeHandler.hpp>
|
||||
#include <xercesc/validators/DTD/DTDScanner.hpp>
|
||||
-#include <xercesc/util/OutOfMemoryException.hpp>
|
||||
|
||||
XERCES_CPP_NAMESPACE_BEGIN
|
||||
|
||||
@@ -1046,338 +1047,354 @@
|
||||
// Check for a PE ref here, but don't require spaces
|
||||
checkForPERef(false, true);
|
||||
|
||||
- // We have to check entity nesting here
|
||||
- unsigned int curReader;
|
||||
-
|
||||
+ ValueStackOf<XMLSize_t>* arrNestedDecl=NULL;
|
||||
//
|
||||
// We know that the caller just saw an opening parenthesis, so we need
|
||||
- // to parse until we hit the end of it, recursing for other nested
|
||||
- // parentheses we see.
|
||||
+ // to parse until we hit the end of it; if we find several parenthesis,
|
||||
+ // store them in an array to be processed later.
|
||||
//
|
||||
// We have to check for one up front, since it could be something like
|
||||
// (((a)*)) etc...
|
||||
//
|
||||
ContentSpecNode* curNode = 0;
|
||||
- if (fReaderMgr->skippedChar(chOpenParen))
|
||||
+ while(fReaderMgr->skippedChar(chOpenParen))
|
||||
{
|
||||
- curReader = fReaderMgr->getCurrentReaderNum();
|
||||
+ // to check entity nesting
|
||||
+ const unsigned int curReader = fReaderMgr->getCurrentReaderNum();
|
||||
+ if(arrNestedDecl==NULL)
|
||||
+ arrNestedDecl=new (fMemoryManager) ValueStackOf<XMLSize_t>(5, fMemoryManager);
|
||||
+ arrNestedDecl->push(curReader);
|
||||
|
||||
- // Lets call ourself and get back the resulting node
|
||||
- curNode = scanChildren(elemDecl, bufToUse);
|
||||
+ // Check for a PE ref here, but don't require spaces
|
||||
+ checkForPERef(false, true);
|
||||
+ }
|
||||
|
||||
- // If that failed, no need to go further, return failure
|
||||
- if (!curNode)
|
||||
- return 0;
|
||||
+ // We must find a leaf node here, either standalone or nested in the parenthesis
|
||||
+ if (!fReaderMgr->getName(bufToUse))
|
||||
+ {
|
||||
+ fScanner->emitError(XMLErrs::ExpectedElementName);
|
||||
+ return 0;
|
||||
+ }
|
||||
|
||||
- if (curReader != fReaderMgr->getCurrentReaderNum() && fScanner->getDoValidation())
|
||||
- fScanner->getValidator()->emitError(XMLValid::PartialMarkupInPE);
|
||||
+ //
|
||||
+ // Create a leaf node for it. If we can find the element id for
|
||||
+ // this element, then use it. Else, we have to fault in an element
|
||||
+ // decl, marked as created because of being in a content model.
|
||||
+ //
|
||||
+ XMLElementDecl* decl = fDTDGrammar->getElemDecl(fEmptyNamespaceId, 0, bufToUse.getRawBuffer(), Grammar::TOP_LEVEL_SCOPE);
|
||||
+ if (!decl)
|
||||
+ {
|
||||
+ decl = new (fGrammarPoolMemoryManager) DTDElementDecl
|
||||
+ (
|
||||
+ bufToUse.getRawBuffer()
|
||||
+ , fEmptyNamespaceId
|
||||
+ , DTDElementDecl::Any
|
||||
+ , fGrammarPoolMemoryManager
|
||||
+ );
|
||||
+ decl->setCreateReason(XMLElementDecl::InContentModel);
|
||||
+ decl->setExternalElemDeclaration(isReadingExternalEntity());
|
||||
+ fDTDGrammar->putElemDecl(decl);
|
||||
}
|
||||
- else
|
||||
+ curNode = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
+ (
|
||||
+ decl->getElementName()
|
||||
+ , fGrammarPoolMemoryManager
|
||||
+ );
|
||||
+
|
||||
+ // Check for a PE ref here, but don't require spaces
|
||||
+ const bool gotSpaces = checkForPERef(false, true);
|
||||
+
|
||||
+ // Check for a repetition character after the leaf
|
||||
+ XMLCh repCh = fReaderMgr->peekNextChar();
|
||||
+ ContentSpecNode* tmpNode = makeRepNode(repCh, curNode, fGrammarPoolMemoryManager);
|
||||
+ if (tmpNode != curNode)
|
||||
{
|
||||
- // Not a nested paren, so it must be a leaf node
|
||||
- if (!fReaderMgr->getName(bufToUse))
|
||||
+ if (gotSpaces)
|
||||
{
|
||||
- fScanner->emitError(XMLErrs::ExpectedElementName);
|
||||
- return 0;
|
||||
+ if (fScanner->emitErrorWillThrowException(XMLErrs::UnexpectedWhitespace))
|
||||
+ {
|
||||
+ delete tmpNode;
|
||||
+ }
|
||||
+ fScanner->emitError(XMLErrs::UnexpectedWhitespace);
|
||||
}
|
||||
+ fReaderMgr->getNextChar();
|
||||
+ curNode = tmpNode;
|
||||
+ }
|
||||
|
||||
+ while(arrNestedDecl==NULL || !arrNestedDecl->empty())
|
||||
+ {
|
||||
+ // Check for a PE ref here, but don't require spaces
|
||||
+ checkForPERef(false, true);
|
||||
+
|
||||
//
|
||||
- // Create a leaf node for it. If we can find the element id for
|
||||
- // this element, then use it. Else, we have to fault in an element
|
||||
- // decl, marked as created because of being in a content model.
|
||||
+ // Ok, the next character tells us what kind of content this particular
|
||||
+ // model this particular parentesized section is. Its either a choice if
|
||||
+ // we see ',', a sequence if we see '|', or a single leaf node if we see
|
||||
+ // a closing paren.
|
||||
+ //
|
||||
+ const XMLCh opCh = fReaderMgr->peekNextChar();
|
||||
+
|
||||
+ if ((opCh != chComma)
|
||||
+ && (opCh != chPipe)
|
||||
+ && (opCh != chCloseParen))
|
||||
+ {
|
||||
+ // Not a legal char, so delete our node and return failure
|
||||
+ delete curNode;
|
||||
+ fScanner->emitError(XMLErrs::ExpectedSeqChoiceLeaf);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
//
|
||||
- XMLElementDecl* decl = fDTDGrammar->getElemDecl(fEmptyNamespaceId, 0, bufToUse.getRawBuffer(), Grammar::TOP_LEVEL_SCOPE);
|
||||
- if (!decl)
|
||||
+ // Create the head node of the correct type. We need this to remember
|
||||
+ // the top of the local tree. If it was a single subexpr, then just
|
||||
+ // set the head node to the current node. For the others, we'll build
|
||||
+ // the tree off the second child as we move across.
|
||||
+ //
|
||||
+ ContentSpecNode* headNode = 0;
|
||||
+ ContentSpecNode::NodeTypes curType = ContentSpecNode::UnknownType;
|
||||
+ if (opCh == chComma)
|
||||
{
|
||||
- decl = new (fGrammarPoolMemoryManager) DTDElementDecl
|
||||
+ curType = ContentSpecNode::Sequence;
|
||||
+ headNode = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
(
|
||||
- bufToUse.getRawBuffer()
|
||||
- , fEmptyNamespaceId
|
||||
- , DTDElementDecl::Any
|
||||
+ curType
|
||||
+ , curNode
|
||||
+ , 0
|
||||
+ , true
|
||||
+ , true
|
||||
, fGrammarPoolMemoryManager
|
||||
);
|
||||
- decl->setCreateReason(XMLElementDecl::InContentModel);
|
||||
- decl->setExternalElemDeclaration(isReadingExternalEntity());
|
||||
- fDTDGrammar->putElemDecl(decl);
|
||||
+ curNode = headNode;
|
||||
}
|
||||
- curNode = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
- (
|
||||
- decl->getElementName()
|
||||
- , fGrammarPoolMemoryManager
|
||||
- );
|
||||
-
|
||||
- // Check for a PE ref here, but don't require spaces
|
||||
- const bool gotSpaces = checkForPERef(false, true);
|
||||
-
|
||||
- // Check for a repetition character after the leaf
|
||||
- const XMLCh repCh = fReaderMgr->peekNextChar();
|
||||
- ContentSpecNode* tmpNode = makeRepNode(repCh, curNode, fGrammarPoolMemoryManager);
|
||||
- if (tmpNode != curNode)
|
||||
+ else if (opCh == chPipe)
|
||||
{
|
||||
- if (gotSpaces)
|
||||
- {
|
||||
- if (fScanner->emitErrorWillThrowException(XMLErrs::UnexpectedWhitespace))
|
||||
- {
|
||||
- delete tmpNode;
|
||||
- }
|
||||
- fScanner->emitError(XMLErrs::UnexpectedWhitespace);
|
||||
- }
|
||||
+ curType = ContentSpecNode::Choice;
|
||||
+ headNode = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
+ (
|
||||
+ curType
|
||||
+ , curNode
|
||||
+ , 0
|
||||
+ , true
|
||||
+ , true
|
||||
+ , fGrammarPoolMemoryManager
|
||||
+ );
|
||||
+ curNode = headNode;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ headNode = curNode;
|
||||
fReaderMgr->getNextChar();
|
||||
- curNode = tmpNode;
|
||||
}
|
||||
- }
|
||||
-
|
||||
- // Check for a PE ref here, but don't require spaces
|
||||
- checkForPERef(false, true);
|
||||
|
||||
- //
|
||||
- // Ok, the next character tells us what kind of content this particular
|
||||
- // model this particular parentesized section is. Its either a choice if
|
||||
- // we see ',', a sequence if we see '|', or a single leaf node if we see
|
||||
- // a closing paren.
|
||||
- //
|
||||
- const XMLCh opCh = fReaderMgr->peekNextChar();
|
||||
-
|
||||
- if ((opCh != chComma)
|
||||
- && (opCh != chPipe)
|
||||
- && (opCh != chCloseParen))
|
||||
- {
|
||||
- // Not a legal char, so delete our node and return failure
|
||||
- delete curNode;
|
||||
- fScanner->emitError(XMLErrs::ExpectedSeqChoiceLeaf);
|
||||
- return 0;
|
||||
- }
|
||||
-
|
||||
- //
|
||||
- // Create the head node of the correct type. We need this to remember
|
||||
- // the top of the local tree. If it was a single subexpr, then just
|
||||
- // set the head node to the current node. For the others, we'll build
|
||||
- // the tree off the second child as we move across.
|
||||
- //
|
||||
- ContentSpecNode* headNode = 0;
|
||||
- ContentSpecNode::NodeTypes curType = ContentSpecNode::UnknownType;
|
||||
- if (opCh == chComma)
|
||||
- {
|
||||
- curType = ContentSpecNode::Sequence;
|
||||
- headNode = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
- (
|
||||
- curType
|
||||
- , curNode
|
||||
- , 0
|
||||
- , true
|
||||
- , true
|
||||
- , fGrammarPoolMemoryManager
|
||||
- );
|
||||
- curNode = headNode;
|
||||
- }
|
||||
- else if (opCh == chPipe)
|
||||
- {
|
||||
- curType = ContentSpecNode::Choice;
|
||||
- headNode = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
- (
|
||||
- curType
|
||||
- , curNode
|
||||
- , 0
|
||||
- , true
|
||||
- , true
|
||||
- , fGrammarPoolMemoryManager
|
||||
- );
|
||||
- curNode = headNode;
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- headNode = curNode;
|
||||
- fReaderMgr->getNextChar();
|
||||
- }
|
||||
-
|
||||
- //
|
||||
- // If it was a sequence or choice, we just loop until we get to the
|
||||
- // end of our section, adding each new leaf or sub expression to the
|
||||
- // right child of the current node, and making that new node the current
|
||||
- // node.
|
||||
- //
|
||||
- if ((opCh == chComma) || (opCh == chPipe))
|
||||
- {
|
||||
- ContentSpecNode* lastNode = 0;
|
||||
- while (true)
|
||||
+ //
|
||||
+ // If it was a sequence or choice, we just loop until we get to the
|
||||
+ // end of our section, adding each new leaf or sub expression to the
|
||||
+ // right child of the current node, and making that new node the current
|
||||
+ // node.
|
||||
+ //
|
||||
+ if ((opCh == chComma) || (opCh == chPipe))
|
||||
{
|
||||
- //
|
||||
- // The next thing must either be another | or , character followed
|
||||
- // by another leaf or subexpression, or a closing parenthesis, or a
|
||||
- // PE ref.
|
||||
- //
|
||||
- if (fReaderMgr->lookingAtChar(chPercent))
|
||||
- {
|
||||
- checkForPERef(false, true);
|
||||
- }
|
||||
- else if (fReaderMgr->skippedSpace())
|
||||
- {
|
||||
- // Just skip whitespace
|
||||
- fReaderMgr->skipPastSpaces();
|
||||
- }
|
||||
- else if (fReaderMgr->skippedChar(chCloseParen))
|
||||
+ ContentSpecNode* lastNode = 0;
|
||||
+ while (true)
|
||||
{
|
||||
//
|
||||
- // We've hit the end of this section, so break out. But, we
|
||||
- // need to see if we left a partial sequence of choice node
|
||||
- // without a second node. If so, we have to undo that and
|
||||
- // put its left child into the right node of the previous
|
||||
- // node.
|
||||
+ // The next thing must either be another | or , character followed
|
||||
+ // by another leaf or subexpression, or a closing parenthesis, or a
|
||||
+ // PE ref.
|
||||
//
|
||||
- if ((curNode->getType() == ContentSpecNode::Choice)
|
||||
- || (curNode->getType() == ContentSpecNode::Sequence))
|
||||
+ if (fReaderMgr->lookingAtChar(chPercent))
|
||||
+ {
|
||||
+ checkForPERef(false, true);
|
||||
+ }
|
||||
+ else if (fReaderMgr->skippedSpace())
|
||||
{
|
||||
- if (!curNode->getSecond())
|
||||
+ // Just skip whitespace
|
||||
+ fReaderMgr->skipPastSpaces();
|
||||
+ }
|
||||
+ else if (fReaderMgr->skippedChar(chCloseParen))
|
||||
+ {
|
||||
+ //
|
||||
+ // We've hit the end of this section, so break out. But, we
|
||||
+ // need to see if we left a partial sequence of choice node
|
||||
+ // without a second node. If so, we have to undo that and
|
||||
+ // put its left child into the right node of the previous
|
||||
+ // node.
|
||||
+ //
|
||||
+ if ((curNode->getType() == ContentSpecNode::Choice)
|
||||
+ || (curNode->getType() == ContentSpecNode::Sequence))
|
||||
{
|
||||
- ContentSpecNode* saveFirst = curNode->orphanFirst();
|
||||
- lastNode->setSecond(saveFirst);
|
||||
- curNode = lastNode;
|
||||
+ if (!curNode->getSecond())
|
||||
+ {
|
||||
+ ContentSpecNode* saveFirst = curNode->orphanFirst();
|
||||
+ lastNode->setSecond(saveFirst);
|
||||
+ curNode = lastNode;
|
||||
+ }
|
||||
}
|
||||
+ break;
|
||||
}
|
||||
- break;
|
||||
- }
|
||||
- else if (fReaderMgr->skippedChar(opCh))
|
||||
- {
|
||||
- // Check for a PE ref here, but don't require spaces
|
||||
- checkForPERef(false, true);
|
||||
-
|
||||
- if (fReaderMgr->skippedChar(chOpenParen))
|
||||
+ else if (fReaderMgr->skippedChar(opCh))
|
||||
{
|
||||
- curReader = fReaderMgr->getCurrentReaderNum();
|
||||
+ // Check for a PE ref here, but don't require spaces
|
||||
+ checkForPERef(false, true);
|
||||
|
||||
- // Recurse to handle this new guy
|
||||
- ContentSpecNode* subNode;
|
||||
- try {
|
||||
- subNode = scanChildren(elemDecl, bufToUse);
|
||||
- }
|
||||
- catch (const XMLErrs::Codes)
|
||||
+ if (fReaderMgr->skippedChar(chOpenParen))
|
||||
{
|
||||
- delete headNode;
|
||||
- throw;
|
||||
- }
|
||||
+ const unsigned int curReader = fReaderMgr->getCurrentReaderNum();
|
||||
|
||||
- // If it failed, we are done, clean up here and return failure
|
||||
- if (!subNode)
|
||||
- {
|
||||
- delete headNode;
|
||||
- return 0;
|
||||
+ // Recurse to handle this new guy
|
||||
+ ContentSpecNode* subNode;
|
||||
+ try {
|
||||
+ subNode = scanChildren(elemDecl, bufToUse);
|
||||
+ }
|
||||
+ catch (const XMLErrs::Codes)
|
||||
+ {
|
||||
+ delete headNode;
|
||||
+ throw;
|
||||
+ }
|
||||
+
|
||||
+ // If it failed, we are done, clean up here and return failure
|
||||
+ if (!subNode)
|
||||
+ {
|
||||
+ delete headNode;
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ if (curReader != fReaderMgr->getCurrentReaderNum() && fScanner->getDoValidation())
|
||||
+ fScanner->getValidator()->emitError(XMLValid::PartialMarkupInPE);
|
||||
+
|
||||
+ // Else patch it in and make it the new current
|
||||
+ ContentSpecNode* newCur = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
+ (
|
||||
+ curType
|
||||
+ , subNode
|
||||
+ , 0
|
||||
+ , true
|
||||
+ , true
|
||||
+ , fGrammarPoolMemoryManager
|
||||
+ );
|
||||
+ curNode->setSecond(newCur);
|
||||
+ lastNode = curNode;
|
||||
+ curNode = newCur;
|
||||
}
|
||||
+ else
|
||||
+ {
|
||||
+ //
|
||||
+ // Got to be a leaf node, so get a name. If we cannot get
|
||||
+ // one, then clean up and get outa here.
|
||||
+ //
|
||||
+ if (!fReaderMgr->getName(bufToUse))
|
||||
+ {
|
||||
+ delete headNode;
|
||||
+ fScanner->emitError(XMLErrs::ExpectedElementName);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ //
|
||||
+ // Create a leaf node for it. If we can find the element
|
||||
+ // id for this element, then use it. Else, we have to
|
||||
+ // fault in an element decl, marked as created because
|
||||
+ // of being in a content model.
|
||||
+ //
|
||||
+ XMLElementDecl* decl = fDTDGrammar->getElemDecl(fEmptyNamespaceId, 0, bufToUse.getRawBuffer(), Grammar::TOP_LEVEL_SCOPE);
|
||||
+ if (!decl)
|
||||
+ {
|
||||
+ decl = new (fGrammarPoolMemoryManager) DTDElementDecl
|
||||
+ (
|
||||
+ bufToUse.getRawBuffer()
|
||||
+ , fEmptyNamespaceId
|
||||
+ , DTDElementDecl::Any
|
||||
+ , fGrammarPoolMemoryManager
|
||||
+ );
|
||||
+ decl->setCreateReason(XMLElementDecl::InContentModel);
|
||||
+ decl->setExternalElemDeclaration(isReadingExternalEntity());
|
||||
+ fDTDGrammar->putElemDecl(decl);
|
||||
+ }
|
||||
|
||||
- if (curReader != fReaderMgr->getCurrentReaderNum() && fScanner->getDoValidation())
|
||||
- fScanner->getValidator()->emitError(XMLValid::PartialMarkupInPE);
|
||||
+ ContentSpecNode* tmpLeaf = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
+ (
|
||||
+ decl->getElementName()
|
||||
+ , fGrammarPoolMemoryManager
|
||||
+ );
|
||||
|
||||
- // Else patch it in and make it the new current
|
||||
- ContentSpecNode* newCur = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
- (
|
||||
- curType
|
||||
- , subNode
|
||||
- , 0
|
||||
- , true
|
||||
- , true
|
||||
- , fGrammarPoolMemoryManager
|
||||
- );
|
||||
- curNode->setSecond(newCur);
|
||||
- lastNode = curNode;
|
||||
- curNode = newCur;
|
||||
+ // Check for a repetition character after the leaf
|
||||
+ const XMLCh repCh = fReaderMgr->peekNextChar();
|
||||
+ ContentSpecNode* tmpLeaf2 = makeRepNode(repCh, tmpLeaf, fGrammarPoolMemoryManager);
|
||||
+ if (tmpLeaf != tmpLeaf2)
|
||||
+ fReaderMgr->getNextChar();
|
||||
+
|
||||
+ //
|
||||
+ // Create a new sequence or choice node, with the leaf
|
||||
+ // (or rep surrounding it) we just got as its first node.
|
||||
+ // Make the new node the second node of the current node,
|
||||
+ // and then make it the current node.
|
||||
+ //
|
||||
+ ContentSpecNode* newCur = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
+ (
|
||||
+ curType
|
||||
+ , tmpLeaf2
|
||||
+ , 0
|
||||
+ , true
|
||||
+ , true
|
||||
+ , fGrammarPoolMemoryManager
|
||||
+ );
|
||||
+ curNode->setSecond(newCur);
|
||||
+ lastNode = curNode;
|
||||
+ curNode = newCur;
|
||||
+ }
|
||||
}
|
||||
else
|
||||
{
|
||||
- //
|
||||
- // Got to be a leaf node, so get a name. If we cannot get
|
||||
- // one, then clean up and get outa here.
|
||||
- //
|
||||
- if (!fReaderMgr->getName(bufToUse))
|
||||
+ // Cannot be valid
|
||||
+ delete headNode; // emitError may do a throw so need to clean-up first
|
||||
+ if (opCh == chComma)
|
||||
{
|
||||
- delete headNode;
|
||||
- fScanner->emitError(XMLErrs::ExpectedElementName);
|
||||
- return 0;
|
||||
+ fScanner->emitError(XMLErrs::ExpectedChoiceOrCloseParen);
|
||||
}
|
||||
-
|
||||
- //
|
||||
- // Create a leaf node for it. If we can find the element
|
||||
- // id for this element, then use it. Else, we have to
|
||||
- // fault in an element decl, marked as created because
|
||||
- // of being in a content model.
|
||||
- //
|
||||
- XMLElementDecl* decl = fDTDGrammar->getElemDecl(fEmptyNamespaceId, 0, bufToUse.getRawBuffer(), Grammar::TOP_LEVEL_SCOPE);
|
||||
- if (!decl)
|
||||
+ else
|
||||
{
|
||||
- decl = new (fGrammarPoolMemoryManager) DTDElementDecl
|
||||
+ fScanner->emitError
|
||||
(
|
||||
- bufToUse.getRawBuffer()
|
||||
- , fEmptyNamespaceId
|
||||
- , DTDElementDecl::Any
|
||||
- , fGrammarPoolMemoryManager
|
||||
+ XMLErrs::ExpectedSeqOrCloseParen
|
||||
+ , elemDecl.getFullName()
|
||||
);
|
||||
- decl->setCreateReason(XMLElementDecl::InContentModel);
|
||||
- decl->setExternalElemDeclaration(isReadingExternalEntity());
|
||||
- fDTDGrammar->putElemDecl(decl);
|
||||
- }
|
||||
+ }
|
||||
+ return 0;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
|
||||
- ContentSpecNode* tmpLeaf = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
- (
|
||||
- decl->getElementName()
|
||||
- , fGrammarPoolMemoryManager
|
||||
- );
|
||||
+ //
|
||||
+ // We saw the terminating parenthesis so lets check for any repetition
|
||||
+ // character, and create a node for that, making the head node the child
|
||||
+ // of it.
|
||||
+ //
|
||||
+ const XMLCh repCh = fReaderMgr->peekNextChar();
|
||||
+ curNode = makeRepNode(repCh, headNode, fGrammarPoolMemoryManager);
|
||||
+ if (curNode != headNode)
|
||||
+ fReaderMgr->getNextChar();
|
||||
+
|
||||
+ // prepare for recursion
|
||||
+ if(arrNestedDecl==NULL)
|
||||
+ break;
|
||||
+ else
|
||||
+ {
|
||||
+ // If that failed, no need to go further, return failure
|
||||
+ if (!curNode)
|
||||
+ return 0;
|
||||
|
||||
- // Check for a repetition character after the leaf
|
||||
- const XMLCh repCh = fReaderMgr->peekNextChar();
|
||||
- ContentSpecNode* tmpLeaf2 = makeRepNode(repCh, tmpLeaf, fGrammarPoolMemoryManager);
|
||||
- if (tmpLeaf != tmpLeaf2)
|
||||
- fReaderMgr->getNextChar();
|
||||
+ const unsigned int curReader = arrNestedDecl->pop();
|
||||
+ if (curReader != fReaderMgr->getCurrentReaderNum() && fScanner->getValidationScheme() == XMLScanner::Val_Always)
|
||||
+ fScanner->getValidator()->emitError(XMLValid::PartialMarkupInPE);
|
||||
|
||||
- //
|
||||
- // Create a new sequence or choice node, with the leaf
|
||||
- // (or rep surrounding it) we just got as its first node.
|
||||
- // Make the new node the second node of the current node,
|
||||
- // and then make it the current node.
|
||||
- //
|
||||
- ContentSpecNode* newCur = new (fGrammarPoolMemoryManager) ContentSpecNode
|
||||
- (
|
||||
- curType
|
||||
- , tmpLeaf2
|
||||
- , 0
|
||||
- , true
|
||||
- , true
|
||||
- , fGrammarPoolMemoryManager
|
||||
- );
|
||||
- curNode->setSecond(newCur);
|
||||
- lastNode = curNode;
|
||||
- curNode = newCur;
|
||||
- }
|
||||
- }
|
||||
- else
|
||||
+ if(arrNestedDecl->empty())
|
||||
{
|
||||
- // Cannot be valid
|
||||
- delete headNode; // emitError may do a throw so need to clean-up first
|
||||
- if (opCh == chComma)
|
||||
- {
|
||||
- fScanner->emitError(XMLErrs::ExpectedChoiceOrCloseParen);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- fScanner->emitError
|
||||
- (
|
||||
- XMLErrs::ExpectedSeqOrCloseParen
|
||||
- , elemDecl.getFullName()
|
||||
- );
|
||||
- }
|
||||
- return 0;
|
||||
+ delete arrNestedDecl;
|
||||
+ arrNestedDecl=NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
- //
|
||||
- // We saw the terminating parenthesis so lets check for any repetition
|
||||
- // character, and create a node for that, making the head node the child
|
||||
- // of it.
|
||||
- //
|
||||
- XMLCh repCh = fReaderMgr->peekNextChar();
|
||||
- ContentSpecNode* retNode = makeRepNode(repCh, headNode, fGrammarPoolMemoryManager);
|
||||
- if (retNode != headNode)
|
||||
- fReaderMgr->getNextChar();
|
||||
-
|
||||
- return retNode;
|
||||
+ return curNode;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in a new issue