diff options
author | Tiziano Müller <dev-zero@gentoo.org> | 2012-05-24 19:37:01 +0000 |
---|---|---|
committer | Tiziano Müller <dev-zero@gentoo.org> | 2012-05-24 19:37:01 +0000 |
commit | 1997984cdb89650406b8a4e53f2526703003db50 (patch) | |
tree | 580e0e994a6c6837297e4e75a81c8f4bfeb31c2b /dev-libs/xerces-c | |
parent | Whitespace to shutup repoman. (diff) | |
download | gentoo-2-1997984cdb89650406b8a4e53f2526703003db50.tar.gz gentoo-2-1997984cdb89650406b8a4e53f2526703003db50.tar.bz2 gentoo-2-1997984cdb89650406b8a4e53f2526703003db50.zip |
Dropped old unused versions and it's patches (fixes bug #248966).
(Portage version: 2.1.10.56/cvs/Linux x86_64)
Diffstat (limited to 'dev-libs/xerces-c')
-rw-r--r-- | dev-libs/xerces-c/ChangeLog | 9 | ||||
-rw-r--r-- | dev-libs/xerces-c/files/3.0.1-disable-thread-tests.patch | 47 | ||||
-rw-r--r-- | dev-libs/xerces-c/files/xerces-c-3.0.1-CVE-2009-2625.patch | 649 | ||||
-rw-r--r-- | dev-libs/xerces-c/files/xerces-c-3.0.1-libicu.patch | 29 | ||||
-rw-r--r-- | dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild | 90 | ||||
-rw-r--r-- | dev-libs/xerces-c/xerces-c-3.0.0.ebuild | 94 | ||||
-rw-r--r-- | dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild | 98 | ||||
-rw-r--r-- | dev-libs/xerces-c/xerces-c-3.0.1.ebuild | 87 |
8 files changed, 8 insertions, 1095 deletions
diff --git a/dev-libs/xerces-c/ChangeLog b/dev-libs/xerces-c/ChangeLog index aacfc0db827a..76135426b2aa 100644 --- a/dev-libs/xerces-c/ChangeLog +++ b/dev-libs/xerces-c/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-libs/xerces-c # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/ChangeLog,v 1.98 2012/05/23 12:58:08 ranger Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/ChangeLog,v 1.99 2012/05/24 19:37:01 dev-zero Exp $ + + 24 May 2012; Tiziano Müller <dev-zero@gentoo.org> + -files/3.0.1-disable-thread-tests.patch, -xerces-c-3.0.0.ebuild, + -xerces-c-3.0.0-r1.ebuild, -xerces-c-3.0.1.ebuild, -xerces-c-3.0.1-r1.ebuild, + -files/xerces-c-3.0.1-CVE-2009-2625.patch, + -files/xerces-c-3.0.1-libicu.patch: + Dropped old unused versions and it's patches (fixes bug #248966). 23 May 2012; Brent Baude <ranger@gentoo.org> xerces-c-3.1.1-r1.ebuild: Marking xerces-c-3.1.1-r1 ppc64 for bug 409545 diff --git a/dev-libs/xerces-c/files/3.0.1-disable-thread-tests.patch b/dev-libs/xerces-c/files/3.0.1-disable-thread-tests.patch deleted file mode 100644 index 68144cc10694..000000000000 --- a/dev-libs/xerces-c/files/3.0.1-disable-thread-tests.patch +++ /dev/null @@ -1,47 +0,0 @@ -diff -ru origscripts/sanityTest_ExpectedResult.log scripts/sanityTest_ExpectedResult.log ---- origscripts/sanityTest_ExpectedResult.log 2008-09-17 05:06:33.000000000 +0200 -+++ scripts/sanityTest_ExpectedResult.log 2010-01-18 19:45:39.000000000 +0100 -@@ -1146,42 +1146,7 @@ - 1Test Run Successfully - 2Test Run Successfully - 3Test Run Successfully --No input XML file specified on command line. --usage: ThreadTest [-v] [-threads nnn] [-time nnn] [-quiet] [-verbose] xmlfile... -- -v=xxx Validation scheme [always | never | auto]. Default is AUTO. -- -n Enable namespace processing. Defaults to off. -- -s Enable schema processing. Defaults to off. -- -f Enable full schema constraint checking. Defaults to off. -- -parser=xxx Parser Type [dom | sax | sax2]. Default is SAX (SAX1). -- -p Enable namespace prefixes. Defaults to off. -- (Only used with -parser=sax2, ignored otherwise.) -- -quiet Suppress periodic status display. -- -verbose Display extra messages. -- -reuse Retain and reuse parser. Default creates new for each parse. -- -threads nnn Number of threads. Default is 2. -- -time nnn Total time to run, in seconds. Default is forever. -- -parses nnn Run for nnn parses instead of time. Default is to use time -- -dump Dump DOM tree on error. -- -mem Read files into memory once only, and parse them from there. -- -gc Enable grammar caching (i.e. grammar cached and used in subsequent parses). Defaults to off. -- -init Perform an initial parse of the file(s) before starting up the individual threads. -- --1Test Run Successfully --2Test Run Successfully --3Test Run Successfully --4Test Run Successfully --5Test Run Successfully --6Test Run Successfully --7Test Run Successfully --8Test Run Successfully --9Test Run Successfully --10Test Run Successfully --11Test Run Successfully --12Test Run Successfully --13Test Run Successfully --14Test Run Successfully --15Test Run Successfully -- -+123456789101112131415 - Usage: - MemHandlerTest [options] <XML file | List file> - diff --git a/dev-libs/xerces-c/files/xerces-c-3.0.1-CVE-2009-2625.patch b/dev-libs/xerces-c/files/xerces-c-3.0.1-CVE-2009-2625.patch deleted file mode 100644 index d3ab8ed32722..000000000000 --- a/dev-libs/xerces-c/files/xerces-c-3.0.1-CVE-2009-2625.patch +++ /dev/null @@ -1,649 +0,0 @@ ---- xerces/c/trunk/src/xercesc/validators/DTD/DTDScanner.cpp 2009/06/03 17:26:39 781487 -+++ xerces/c/trunk/src/xercesc/validators/DTD/DTDScanner.cpp 2009/06/03 17:27:07 781488 -@@ -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 - -@@ -1041,338 +1042,354 @@ - // Check for a PE ref here, but don't require spaces - checkForPERef(false, true); - -- // We have to check entity nesting here -- XMLSize_t 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 XMLSize_t 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->getValidationScheme() == XMLScanner::Val_Always) -- 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)) - { -- if (!curNode->getSecond()) -+ checkForPERef(false, true); -+ } -+ else if (fReaderMgr->skippedSpace()) -+ { -+ // 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 XMLSize_t 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->getValidationScheme() == XMLScanner::Val_Always) -+ 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->getValidationScheme() == XMLScanner::Val_Always) -- 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(); - -- // Check for a repetition character after the leaf -- const XMLCh repCh = fReaderMgr->peekNextChar(); -- ContentSpecNode* tmpLeaf2 = makeRepNode(repCh, tmpLeaf, fGrammarPoolMemoryManager); -- if (tmpLeaf != tmpLeaf2) -- fReaderMgr->getNextChar(); -+ // prepare for recursion -+ if(arrNestedDecl==NULL) -+ break; -+ else -+ { -+ // If that failed, no need to go further, return failure -+ if (!curNode) -+ return 0; - -- // -- // 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 -+ const XMLSize_t curReader = arrNestedDecl->pop(); -+ if (curReader != fReaderMgr->getCurrentReaderNum() && fScanner->getValidationScheme() == XMLScanner::Val_Always) -+ fScanner->getValidator()->emitError(XMLValid::PartialMarkupInPE); -+ -+ 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; - } - - diff --git a/dev-libs/xerces-c/files/xerces-c-3.0.1-libicu.patch b/dev-libs/xerces-c/files/xerces-c-3.0.1-libicu.patch deleted file mode 100644 index 263c5f8f12e3..000000000000 --- a/dev-libs/xerces-c/files/xerces-c-3.0.1-libicu.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- src/xercesc/util/MsgLoaders/ICU/resources/Makefile.in.orig 2009-09-01 20:29:37.000000000 +0200 -+++ src/xercesc/util/MsgLoaders/ICU/resources/Makefile.in 2009-09-01 20:30:21.000000000 +0200 -@@ -50,8 +50,8 @@ PKGDATA=$(ICU_PREFIX)/bin/pkgdata - - # Add -v if you want to see more verbose output. - # --PKGDATAOPTS=-d . -M '"CC=$(CC)" "CXX=$(CXX)" "AR=$(AR)" "RANLIB=$(RANLIB)" \ --"CPPFLAGS=$(CPPFLAGS)" "CFLAGS=$(CFLAGS)" "CXXFLAGS=$(CXXFLAGS)" "LDFLAGS=$(LDFLAGS)"' -+PKGDATAOPTSSHARED=-d . -r 3.0.1 -+PKGDATAOPTSSTATIC=-d . - - # Resource shortname - PKGNAME=xercesc_messages_$(INTERFACE_VER_U) -@@ -78,13 +78,13 @@ all: xercesc_messages.lo - xercesc_messages.lo: $(RESFILES) - ifeq ($(BUILD_SHARED),yes) - @rm -f $(PKGNAME)_dat.o root_res.o -- $(PKGDATA) --name $(PKGNAME) --mode dll $(PKGDATAOPTS) $(RESLIST) -+ $(PKGDATA) --name $(PKGNAME) --mode dll $(PKGDATAOPTSSHARED) $(RESLIST) - mv $(PKGNAME)_dat.o $(PKGNAME)_dat-pic.o - @if test -f root_res.o; then mv root_res.o root_res-pic.o; fi - endif - ifeq ($(BUILD_STATIC),yes) - @rm -f $(PKGNAME)_dat.o $(PKGNAME)_dat.ao root_res.o root_res.ao -- $(PKGDATA) --name $(PKGNAME) --mode static $(PKGDATAOPTS) $(RESLIST) -+ $(PKGDATA) --name $(PKGNAME) --mode static $(PKGDATAOPTSSTATIC) $(RESLIST) - @if test -f $(PKGNAME)_dat.ao; then mv $(PKGNAME)_dat.ao $(PKGNAME)_dat.o; fi - @if test -f root_res.ao; then mv root_res.ao root_res.o; fi - endif diff --git a/dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild b/dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild deleted file mode 100644 index 74695aff15ab..000000000000 --- a/dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild +++ /dev/null @@ -1,90 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild,v 1.9 2008/12/14 12:43:46 maekke Exp $ - -inherit eutils - -DESCRIPTION="A validating XML parser written in a portable subset of C++." -HOMEPAGE="http://xerces.apache.org/xerces-c/" -SRC_URI="mirror://apache/xerces/c/3/sources/${P}.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="alpha amd64 ~hppa ppc ppc64 sparc x86 ~x86-fbsd" -IUSE="curl debug doc iconv icu libwww threads elibc_Darwin elibc_FreeBSD" - -RDEPEND="icu? ( dev-libs/icu ) - curl? ( net-misc/curl ) - libwww? ( net-libs/libwww ) - virtual/libiconv" -DEPEND="${RDEPEND} - doc? ( app-doc/doxygen )" - -pkg_setup() { - export ICUROOT="/usr" - - if use iconv && use icu ; then - ewarn "This package can use iconv or icu for loading messages" - ewarn "and transcoding, but not both. ICU will precede." - fi -} - -src_unpack() { - unpack ${A} - cd "${S}" - - sed -i \ - -e 's|$(prefix)/msg|$(DESTDIR)/$(prefix)/share/xerces-c/msg|' \ - src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in || die "sed failed" -} - -src_compile() { - local mloader="inmemory" - use iconv && mloader="iconv" - use icu && mloader="icu" - - local transcoder="gnuiconv" - use elibc_FreeBSD && transcoder="iconv" - use elibc_Darwin && transcoder="macosunicodeconverter" - use icu && transcoder="icu" - - # 'cfurl' is only available on OSX and 'socket' isn't supposed to work. - # But the docs aren't clear about it, so we would need some testing... - local netaccessor="socket" - use elibc_Darwin && netaccessor="cfurl" - use libwww && netaccessor="libwww" - use curl && netaccessor="curl" - - econf \ - $(use_enable debug) \ - $(use_enable threads) \ - --enable-msgloader-${mloader} \ - --enable-netaccessor-${netaccessor} \ - --enable-transcoder-${transcoder} \ - || die "econf failed" - - emake || die "emake failed" - - if use doc ; then - cd "${S}/doc" - doxygen || die "making docs failed" - fi -} - -src_install () { - emake DESTDIR="${D}" install || die "emake failed" - - cd "${S}" - doenvd "${FILESDIR}/50xerces-c" - - if use doc; then - insinto /usr/share/doc/${PF} - rm -rf samples/config* samples/Makefile* samples/runConfigure \ - samples/install-sh samples/*/Makefile* samples/.libs - rm samples/* - doins -r samples - dohtml -r doc/html/* - fi - - dodoc CREDITS KEYS NOTICE README version.incl -} diff --git a/dev-libs/xerces-c/xerces-c-3.0.0.ebuild b/dev-libs/xerces-c/xerces-c-3.0.0.ebuild deleted file mode 100644 index a752517852df..000000000000 --- a/dev-libs/xerces-c/xerces-c-3.0.0.ebuild +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/xerces-c-3.0.0.ebuild,v 1.3 2008/10/18 09:30:53 griffon26 Exp $ - -EAPI="2" - -inherit eutils - -DESCRIPTION="A validating XML parser written in a portable subset of C++." -HOMEPAGE="http://xerces.apache.org/xerces-c/" -SRC_URI="mirror://apache/xerces/c/3/sources/${P}.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" -IUSE="curl debug doc iconv icu libwww +threads elibc_Darwin elibc_FreeBSD" - -RDEPEND="icu? ( dev-libs/icu ) - curl? ( net-misc/curl ) - libwww? ( net-libs/libwww ) - virtual/libiconv" -DEPEND="${RDEPEND} - doc? ( app-doc/doxygen )" - -S=${WORKDIR}/${P} - -pkg_setup() { - export ICUROOT="/usr" - - if use iconv && use icu ; then - ewarn "This package can use iconv or icu for loading messages" - ewarn "and transcoding, but not both. ICU will precede." - fi -} - -src_prepare() { - # disable building broken samples - sed -i \ - -e 's|src tests samples|src tests|' \ - Makefile.in || die "sed failed" - - sed -i \ - -e 's|$(prefix)/msg|$(DESTDIR)/$(prefix)/share/xerces-c/msg|' \ - src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in || die "sed failed" -} - -src_compile() { - local mloader="inmemory" - use iconv && mloader="iconv" - use icu && mloader="icu" - - local transcoder="gnuiconv" - use elibc_FreeBSD && transcoder="iconv" - use elibc_Darwin && transcoder="macosunicodeconverter" - use icu && transcoder="icu" - - # 'cfurl' is only available on OSX and 'socket' isn't supposed to work. - # But the docs aren't clear about it, so we would need some testing... - local netaccessor="socket" - use elibc_Darwin && netaccessor="cfurl" - use libwww && netaccessor="libwww" - use curl && netaccessor="curl" - - econf \ - $(use_enable debug) \ - $(use_enable threads) \ - --enable-msgloader-${mloader} \ - --enable-netaccessor-${netaccessor} \ - --enable-transcoder-${transcoder} \ - || die "econf failed" - - emake || die "emake failed" - - if use doc ; then - cd "${S}/doc" - doxygen || die "making docs failed" - fi -} - -src_install () { - emake DESTDIR="${D}" install || die "emake failed" - - cd "${S}" - doenvd "${FILESDIR}/50xerces-c" - - if use doc; then - insinto /usr/share/doc/${PF} - rm -rf samples/config* samples/Makefile* samples/runConfigure samples/install-sh samples/*/Makefile* - doins -r samples - dohtml -r doc/html/* - fi - - dodoc CREDITS KEYS NOTICE README version.incl -} diff --git a/dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild b/dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild deleted file mode 100644 index 95886e2c7726..000000000000 --- a/dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild +++ /dev/null @@ -1,98 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild,v 1.8 2010/06/18 18:54:58 pacho Exp $ - -EAPI="2" - -inherit eutils - -DESCRIPTION="A validating XML parser written in a portable subset of C++." -HOMEPAGE="http://xerces.apache.org/xerces-c/" -SRC_URI="mirror://apache/xerces/c/3/sources/${P}.tar.gz" -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="alpha amd64 hppa ppc ~ppc64 sparc x86 ~x86-fbsd" -IUSE="curl debug doc iconv icu libwww test threads elibc_Darwin elibc_FreeBSD" - -RDEPEND="icu? ( >=dev-libs/icu-4.2 ) - curl? ( net-misc/curl ) - libwww? ( net-libs/libwww ) - virtual/libiconv" -DEPEND="${RDEPEND} - doc? ( app-doc/doxygen )" - -pkg_setup() { - export ICUROOT="/usr" - - if use iconv && use icu ; then - ewarn "This package can use iconv or icu for loading messages" - ewarn "and transcoding, but not both. ICU will precede." - fi -} - -src_prepare() { - sed -i \ - -e 's|$(prefix)/msg|$(DESTDIR)/$(prefix)/share/xerces-c/msg|' \ - src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in || die "sed failed" - - epatch \ - "${FILESDIR}/${P}-CVE-2009-2625.patch" \ - "${FILESDIR}/${P}-libicu.patch" - - if use test && ! use threads ; then - epatch "${FILESDIR}/${PV}-disable-thread-tests.patch" - sed -i \ - -e 's|ThreadTest$(EXEEXT) XSerializerTest$(EXEEXT)|XSerializerTest$(EXEEXT)|g' \ - tests/Makefile.in || die "sed failed" - fi -} - -src_configure() { - local mloader="inmemory" - use iconv && mloader="iconv" - use icu && mloader="icu" - - local transcoder="gnuiconv" - use elibc_FreeBSD && transcoder="iconv" - use elibc_Darwin && transcoder="macosunicodeconverter" - use icu && transcoder="icu" - - # 'cfurl' is only available on OSX and 'socket' isn't supposed to work. - # But the docs aren't clear about it, so we would need some testing... - local netaccessor="socket" - use elibc_Darwin && netaccessor="cfurl" - use libwww && netaccessor="libwww" - use curl && netaccessor="curl" - - econf \ - $(use_enable debug) \ - $(use_enable threads) \ - --enable-msgloader-${mloader} \ - --enable-netaccessor-${netaccessor} \ - --enable-transcoder-${transcoder} -} - -src_compile() { - default - - if use doc ; then - cd "${S}/doc" - doxygen || die "making docs failed" - fi -} - -src_install () { - emake DESTDIR="${D}" install || die "emake failed" - - cd "${S}" - doenvd "${FILESDIR}/50xerces-c" - - if use doc; then - insinto /usr/share/doc/${PF} - rm -rf samples/Makefile* samples/runConfigure samples/src/*/Makefile* samples/.libs - doins -r samples - dohtml -r doc/html/* - fi - - dodoc CREDITS KEYS NOTICE README version.incl -} diff --git a/dev-libs/xerces-c/xerces-c-3.0.1.ebuild b/dev-libs/xerces-c/xerces-c-3.0.1.ebuild deleted file mode 100644 index 329e49bcd7f1..000000000000 --- a/dev-libs/xerces-c/xerces-c-3.0.1.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/xerces-c-3.0.1.ebuild,v 1.1 2009/03/02 08:58:57 dev-zero Exp $ - -EAPI="2" - -inherit eutils - -DESCRIPTION="A validating XML parser written in a portable subset of C++." -HOMEPAGE="http://xerces.apache.org/xerces-c/" -SRC_URI="mirror://apache/xerces/c/3/sources/${P}.tar.gz" -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" -IUSE="curl debug doc iconv icu libwww threads elibc_Darwin elibc_FreeBSD" - -RDEPEND="icu? ( dev-libs/icu ) - curl? ( net-misc/curl ) - libwww? ( net-libs/libwww ) - virtual/libiconv" -DEPEND="${RDEPEND} - doc? ( app-doc/doxygen )" - -pkg_setup() { - export ICUROOT="/usr" - - if use iconv && use icu ; then - ewarn "This package can use iconv or icu for loading messages" - ewarn "and transcoding, but not both. ICU will precede." - fi -} - -src_prepare() { - sed -i \ - -e 's|$(prefix)/msg|$(DESTDIR)/$(prefix)/share/xerces-c/msg|' \ - src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in || die "sed failed" -} - -src_configure() { - local mloader="inmemory" - use iconv && mloader="iconv" - use icu && mloader="icu" - - local transcoder="gnuiconv" - use elibc_FreeBSD && transcoder="iconv" - use elibc_Darwin && transcoder="macosunicodeconverter" - use icu && transcoder="icu" - - # 'cfurl' is only available on OSX and 'socket' isn't supposed to work. - # But the docs aren't clear about it, so we would need some testing... - local netaccessor="socket" - use elibc_Darwin && netaccessor="cfurl" - use libwww && netaccessor="libwww" - use curl && netaccessor="curl" - - econf \ - $(use_enable debug) \ - $(use_enable threads) \ - --enable-msgloader-${mloader} \ - --enable-netaccessor-${netaccessor} \ - --enable-transcoder-${transcoder} -} - -src_compile() { - default - - if use doc ; then - cd "${S}/doc" - doxygen || die "making docs failed" - fi -} - -src_install () { - emake DESTDIR="${D}" install || die "emake failed" - - cd "${S}" - doenvd "${FILESDIR}/50xerces-c" - - if use doc; then - insinto /usr/share/doc/${PF} - rm -rf samples/Makefile* samples/runConfigure samples/src/*/Makefile* samples/.libs - doins -r samples - dohtml -r doc/html/* - fi - - dodoc CREDITS KEYS NOTICE README version.incl -} |