summaryrefslogtreecommitdiff
path: root/textproc/xerces-c
diff options
context:
space:
mode:
authorabs <abs>2006-08-10 13:44:21 +0000
committerabs <abs>2006-08-10 13:44:21 +0000
commit9162731052858d6f789439bf29b2079b298a737c (patch)
tree8d14066ac7915e42c4963d1ad0e705b4ba5802ee /textproc/xerces-c
parentc2b88bba653694462bbff578523af6d0db6f3dd1 (diff)
downloadpkgsrc-9162731052858d6f789439bf29b2079b298a737c.tar.gz
Update xerces-c to 2.7.0:
2.7.0: Update table used for patterns to the Unicode 4.0.1 level. For time schema datatypes, ensure milisecond only contains 0-9 OS400 updates Modify runConfigure to accept the names of C++ compilers that it doesn't recognize Change for loop control variable for compilers that don't enforce for scope. Update XSValue to handle float and double the same way the main library does Update HP 64 bit options Fix for Jira issue XERCESC-1416 Fix for Jira issue XERCESC-1391 Patch for Jira issue XERCESC-1407 Patch for Jira issue XERCESC-1390 Move implementation of setDocument to the cpp file, where DOMDocumentImpl is a known class (jira 968) Fix for problem on Solaris where open may return 0 as a valid FileHandle. Check for -1 instead. Fix for xercesc-1413: invalid operator equal template signature Schema updates to match spec Prefix mapping update to handle schema correctly. Remove collaboration graph from apiDocs Patch for Jira issue XERCESC-1411 Use isspace instead of isSpace as data is char not xmlch Patch for Jira issue XERCESC-1410 Add support for ucs-2 Fix Jira 1406. Added include Fix compiler errors on IRIX (jira 1405) Update chars table with an NCName char mask instead of an XML letter mask appendChild now throws an exception when a NULL pointer is given (jira# 1401) Update XSValue to handle leading and trailing whitespace Change platform mutex code to do a panic Performance: do not make a copy of the expression to match Implement version of lowercase that only check a to z Update Redirect sample to use newer entity resolver callback Implement support for disabling default entity resolution skip DTD validation feature Fix thread safety issues Fix for jira 1397. *Much* nicer make output Fix for Jira 1396. make distclean now removes all files Fix a problem where illegal qualified names were not reported as errors Fix memory leak when deserializing grammars Add support for not creating xsannotations when deserializing a grammar Fix for Jira issue XERCESC-1389: memory manager In case of a mixed-case standalone value, the flag was always set to false Don't invoke the resolver when an empty xs:import is found Allow XSAnnotation generation to be controlled by a feature Begin work on adding some new features by checking in the feature handling support On Windows, export the class from the DLL Perf patches for Xercesc-1369 and 1370 Implement versions of uppercase and compareIstring that only check a to z Add FLOAT(IEEE) to list of 390 compiler options so XSValueTest will compile [jira 1381] Memory leak in GrammarResolver Aligned method declaration (jira# 1386) Updated doc to refect real behaviour with adoptBuffer Remove variable declaration from 'if' statement (jira# 1379) Fully qualify enum (jira# 1383) Aligned method declaration (jira# 1384) Fix possible overflow problem Fix for Jira 1376: wrong memory manager Fix to Jira 1375. Removed space char between #! and /. XERCESC-1345: Reset fDTDElemeNonDeclPool in scanreset XERCESC-1363: Increase size of BaseRefVectorOf based on size of data not by 32 Protected getSrcOffset to avoid crashing when parsing has finished; updated documentation Redeclare a namespace binding if the prefix is already bound to a different namespace (jira# 1371) Improve performances of XMLString::tokenizeString (jira# 1363) Eliminate lazy creation of attribute lists Initialize ICU to avoid multithreading problems The URL fragments were leaked (jira# 1362) Update samples to use XERCESCOUT instead of XERCESCROOT Removing makefile project, as BCB6 users should use the .bpr project (jira# 1347) Removed superfluous const qualifiers Attempt to fix compiler errors Performance improvements Fixing spelling errors Fix for compile under gcc 4 Fix thread safety issues. Jira #30380. Thanks to David Bertoni Various PSVI fixes Allow ICU to be used for transcoding and casing Copy performance change made to XMLUTF8Transcoder.cpp to the 390 version Bugfix: XERCESC-1074; get rid of warnings Doc updates, including xercesc-1352 Performance fixes Updated makefile (bug# 1346) Update error message from regular expressions Prefix mapping fix Store key for recreating table instead of using enclosingscope Update release plan with tenative 3.0 list Fix spelling of fgMacLCPEncodingName Remove from project obsolete files XObjectComparator and XTemplateComparator. Explicitly create a unicode collator for Mac AStatic builds had incomplete MIDL command lines Enable building of tests and samples under Interix (jira# 1330) Mark global variables for this module as static (jira# 1331) Added rehashing capabilities If the option /Zc:wchar_t is specified, map XMLCh to wchar_t (jira# 413) XMemory updates Xercesc-1326: Documentation update for getTextContext. Xercesc-1328: Fix spelling of XMLUni::fgXercesUseCachedGrammarInParse (missing an a in parse) Delete memory for parser and grammarpool When entity reference creation was on, the document created by the parser was leaked (jira# 490) Support for UnixWare 7.1.1 (jira# 1148) Fix for xercesc-1219 Remove warning messages. Fixes to compile with Visual Studio 2005 (jira# 1253) Fix for Xercesc-1283: incorrect case for xmluni predefined constant in doc Fix for Xercesc-1314: clarify what is xercescroot. Updated Borland makefile scanReset() should always clear the maps used to detect duplicate attributes Removed warnings When emitting a "duplicate attribute" error, we were using an unitialized pointer variable Update SAX2Print sample project files to add new files recently added to sample Add icpc to the list of C++ compilers (jira# 1311) Add support for use of ICU with Mac OS X version maps used to detect duplicate attributes are now cleaned Fixed name of include file [jira#1321] Notify advanced handlers of the whitespace before and after the root document element (jira# 729) Delete the user data informations only after invoking all the NODE_DELETED handlers (jira# 620) Added API to remove all entries having the same primary key The second call to ucnv_fromUChars was causing the buffer not to be terminated (jira#1300) Add support for use of sockets netaccessor on Mac OS X. Fix syntax error caught by GCC 4 DOMDocument::cloneNode can clone the element definitions (bug# 647) Store fAxisType as an integer, not as a XMLCh (bug# 1177) Add support for SAX2 filters (jira# 1133) XSValue Updates Use correct prefix on end tag Attempt to fix various apidoc problems Add assert to avoid memory violation Performance improvement Take into account the fExpandEntityReferences setting [jira# 1303] Fix problem with hexbin::decode and use XMLByte instead of XMLCh for output of decoding. DOM L3: pass schema normalized value only when datatype-normalization feature is enabled. Fxi for jira392 An option to ignore a cached DTD grammar Fixed memory leak in operator= [jira# 1307] Take into account the fExpandEntityReferences setting [jira# 1303] Clean-up error text for a message that said unsupported Added XMLString::release(void**, MemoryManager*) [jira# 1301] entity resolver behaviour Avoid throwing an exception when orphaning a cached grammar that has not been used yet Update two error messages: add missing parameter, remove extra parameter Update ccsid.h for new release of icu Fix for bug xercesc-1304 Update MS VC7.1 build options Remove XObjectComparator and XTemplateComparator. These are debug files that aren't used. Fix for synthetic annotation generation on 'extension' element of simpleContent Fix problem with an All content model with minOccurs of 0. Fix to correctly report the boundaries of an external subset Memory improvement to utility classes Changes for linker problems with linux build using xlc. Performance improvement to utility classes. Add build target for VC7.1 to create a static library XSValue updates Fix for validate annotations. Fix multi threading problem. To build ICU3.2 and on Linux/xlC_r Storer_NewerThan_Loader MSVC 7.1 Fix for jira#1298: NetBSD uses r+ to open files for reading read/write Storer level Msg build versioning [Jira#1294] Compiler Warnings on IRIX with MIPSpro compiler ver 7.4 Handling OutOfMemory exception Add missing parameter to three error messages. Data member reshuffle and store/load Optimized alignment for various data types MacOS build updates Maintain consistent order among multiple store/load session to allow comparison Fixed version number Allow option of initializing static data in XMLPlatformUtils::Initialize XercesC2_6_0 updates: build debuged libary on Windows/VC6 [Jira#1287] new deprecated DOM libraries not included in .spec file for Linux Performance improvement Fix for jira bug 1234. Infinite loop in XSComplexTypeDefinition::derviedFromType. using ValueHashTableOf to reduce footprint Fix for jira bug 1282: empty exception message being generated Serialization fix, fPVSIScope not serialized. Change attribute number threshold to 100 Support to build ICU3.0 on Solaris2.8 64-bit Fix for Jira 866 Bug 1209 Mark SAXParser as deprecated. jira1217 jira1207 Performance: improve src offset calculation. Optimized duplicated attributes checking for large number of attributes BCC 511 updates Update sample to use an error handler and only generate xsmodel when a schema document has been loaded successfully. Update documentation to describe new features Validate annotations Reset datatype validator XERCESC-1277 [Bug 1197] Fix to 1264. All refererences to public headers now use the include files. Fix documentation generation problem. jira1259 Add support for generating synthetic XSAnnotations. Fix memory leak in PSVIWriter sample. Bug fixes Remove unused variable and data member. Reorder initialization of variables in constructor Do not build/ship debug version lib on Windows Change lib name on Windows from 2_5_0 to 2_5 Documentation Updates. Handle partial PSVIElement Mac updates Added a setCreateSchemaInfo method to the DOM parsers, to store PSVI informations in element and attribute nodes Mark some methods as deprecated Remove XercesMessages_en_US.hpp from the Win32 projects (they use the WinRC MsgLoader) provide default implementation for CreateDocumentType Don't include icudata.lib to the Windows projects: ICU 3.0 has renamed and it's no more needed since ICU 2.0 Updated error message for UPA to also state the complex type that is failing the test jira 855) jira1248 jira1261 new method: getActualValue() Performance improvement fix to more efficiently findattdef. Return bool as described in the interface for cacheGrammar instead of throwing an exception. 0S/390 build updates Apache License Version 2.0 XercesC-1269 Fix: Remove extra comma. Fix API Doc warning message OS400 Build updates Specify bmaxdata for AIX samples and tests. Add OutOfMemoryException block to samples and tests. Thread safety change for getTypeLocalName and getTypeUri Reduce memory footprint of DOMNode::setUserData Don't allocate a DOMTypeInfo object if there is no type info to store Added transferElement API getXSModel fix Jira bug XERCESC-1257 Add XSValue test Fixing Xerces-C crash when creating a MixedContentModel Externalised validation, actual/canonical value production for Schema built-in data types build on aix xlC_r v6 with v5 comptiable name mangling scheme reset() was not resetting the stack of types (jira1245) calcRequiredSize assumed all the characters were of the same size (jira1142) jira1179 jira1206 A global mutex was not cleaned up jira 862 jira1186 Use file static instance instead of local static instance Eliminate the need to create a temporary content model when performing UPA checking use the supplied memory manager Enable libWWW on Solaris Fixed bugzilla bug 23100. Increment patnIndex only when a match is found IGXMLScanner::fErrorStack not cleared if an exception is thrown Build on HP-Itanium, aCC A.05.52 jira957 jira1236 Force the destruction of an XMLBuffer before terminating Xerces ThreadTest updates Upgrade to ICU3.0 Fix for jira1170 Fir for jira1136 Fix for jira1226 Fix for jira1238 Fix for jira1210 Rename VALUE_CONSTRAINT enumeration names Initialize memory manager to default. Schema-Errata fix for compilation under gcc 3.5 Fix for jira1181 don't switch grammars unnecessarily Fixed memory leak (jira1228) Memory Leakage Fixed make sure tables are properly aligned supported C++ namespaces doc update Consolidated End Of Line Handling Fixed null pointer bug Fix bug where scanners would accept malformed tags and perf improvements Fix memory leak. XML 1.1 Performance fix: clearing the undeclared attribute maps on start tags normalizeURI() added XMLString::removeChar added [jira1216] GrammarResolver never clears internal cache of Grammar instances MingGW updates UTF-8 new error message The net accessor input source now can be used to get data using PUT or POST Performance: push a new map on the namespace stack only when an element has a xmlns attribute Enable libWWW on Linux Added error message for the HTTP NetAccessor xlat doesn't compile on Windows Enable IDs to work on all kinds of schema components To resolveGrammar correctly not all 390 processors support the new transcoding instructions Misc fix to update fCount in the correct place. Schema bug with group redefined Misc doc updates xlat generate code for private default constructor XML1.0 3rd Edition Updates Add "UTF16" as a synonym for UTF-16 (bug #XERCESC-1198) Doc updates for Jira Various MAC fixes Various PSVI Fixes Identity Constraints Doc updates Add createDocumentType Grammar caching of DTD internal subsets fix for file resolution problems on OS/390 DTDs included from XML Schema were not opened using the entity resolver specified by the user (bug# 27008) make comparison case insensitive, typo in error message corrected. Annotation reporting improvements item() was could only return items found in the first non-empty bucket Add Messages to DOMExceptions packageBinaries.pl improvements importNode bug fix Serialization Changes Deprecated DOM Inside attribute values, new lines must be escaped (bug#20858) Added support for MinGW (bug#23176) Fix documentation for binToText (bug# 9207) Serialization changes DOMNamedNodeMap Performance Improvements PSVI Fixes The maps inside the DTD are declared of the right type, removing the need for casts Removed unnecessary inclusion of implementation headers DOMNodeVector is used only to store attributes; save memory WFXMLScanner was throwing an index out of bound exception [bug# 7051] The "hash" argument clashes with STL hash save/load TypeUri/TypeLocalName more accurately eliminate leakage Check for errors when saving a document to a file (bug# 2594) OS/390 transcoder update Added test for bug# 26919 If insertBefore(A,A) is invoked, a crash would occur (bug# 26919) When cloning a DOMDocument, clone also the encoding, version and standalone info (bug#13056) Instantiate XSerializeEngine with GrammarPool Fix for UPA checking new getter: getHashModulus Revise the Mac OS Transcoder to use the Mac Text Encoding Converter Update Mac OS Projects for newly added files Fixed memory leaks Fix for bug# 27263 (extra = in registration script The COM wrapper doesn't use the deprecated DOM anymore Fixed typo in documentation Bug#27209: Xerces 2.5.0 does not build with option -t IconvGNU because of syntax errors! XercesDeprecatedDOMLib Bug#27046 Doxyfile update to 2.5.0 fix for bug 25035: cygwin support fix potential memory leak 2.5.0: Here is the list of fixed bugzilla bugs that are resolved in this release, Xerces-C++ 2.5.0. Description make first parameter of BinOutputStream::writeBytes const * const; bug 26936 Remove the limitation on providing PSVI information Update threadtest to accept -init option instead of using compiler directive. Remove unnecessary if statement Bug#26900 fix, remove virtual on destructor Xercesc2_5_0 Updates Xercesc2_5_0 Updates PSVIWriter documentation updates Bug#26607 fix Bug#21965: A substitution group with no type is always valid SCMPrint build error fix Xercesc2_5_0: com updates Implemented setTextContent Project SUMPrint PSVIWriter to build with intel PSVIWriter to build on AIX Bug#26648 fix Bug#26131fix. Bug#25541fix PSVIWriter build fix Bug#20684 fix PSVIWriter build fix and usage update Project PSVIWriter Misc 390 changes. Intrinsic transcoding support for 390. Fix a seg fault with PSVI and set basetype of anysimpletype to be anytype. Code cleanup changes to get rid of various compiler diagnostic messages. Added support for the Interix platform (Windows Services for Unix 3.5) Bug#26426 fix Bug#26315 fix put back the parameter to build debug Update script to flush buffer Update sanity tests so that each test result can be uniquely identified Code cleanup changes to get rid of various compiler diagnostic messages. Add include for unistd.h Define away some gcc garbage so that /usr/include/unistd.h will compile with the CodeWarrior MachO target Add a check for a corner-case buffer condition Bug #26419 fix Step around CodeWarrior compiler warning Update Mac OS Xcode project to reflect recent file additions Update Mac OS CodeWarrior project to reflect recent file additions Bug#25751fix WideCharToMultiByte and MultiByteToWideChar return 0 on failure, not -1 maintain the same size on both 32/64 bit architecture Project XSerializerTest In the Win32LCPTranscoder, don't use wcstombs or mbstowcs, as they don't pick up the correct local code page; use the Win32 API using CP_ACP as the code page Removed usage of undeclared macro MIN proper allignment for built-in datatype read/write HP compiler (after upgrade) is no longer complaining about placement delete Bug#18341 fix Bug#24929 fix revert code back to previous version Remove unnecessary local static data set optimization level#2 on hp aCC Misc build updates Undo previous change memory management changes. Misc memory management changes For sanity, use class name to qualify method Fix wrong size of allocation remove unused static member update Copyright year Minor performance change for handling reserved and unreserved characters. Fix 390 compilation errors. Use a global static mutex for locking when creating local static mutexes instead of compareAndSwap remove use of static buffers Avoid throwing malformedurl exceptions in XMLURL to avoid a threading problem on AIX. PSVI: inherit facets from base type Bug#25660 fix Bug#25542 fix Bug#25768 fix: Replaced the call to wcstombs using a NULL target buffer with the equivalent call to WideCharToMultiByte () Bug#25412 fix Fix segfault when adding S4S Reset list of grammars after building XSModel using the no-exception-thrown ctor Bug#28517 static initialization problems make sure locally-declared attributes have declarations in the PSVI On some platforms, it is problematic to throw a different exception from inside the catch block of another exception Various PSVI fixes using ctor/parseContent to avoid exception thrown from ctor Update AIX build to generate .a libraries as -brtl is no longer used so that a build generated without using packageBinaires.pl will be clean. Release memory when an error is encountered. Updated project for BCC551 Made virtual function checkAdditionalFacet 'const', so that it matches the declaration in a derived class Even if the resolver has no grammars, since all schema processors are aware of the schema-for-schemas, an XSModel should be produced. fix one more buffer overrun, affecting boolean lists enable production of canonical representations for dates with negative years, or years >9999 ensure an XSModel even if there are no grammars to add to an XSModel, the S4S grammar must be included do not report anything about default/fixed values for non-global attribute declarations use a null-terminated string when tokenizing pattern facets more PSVI bug fixes some indices in the PSVIAttributeList were 1 off fix segfault when validation of a union type fails initialize undeclared attribute registry appropriately for its local use in scanStartTag allow schema normalized values to be associated with a PSVIAttribute after it is reset use the original memory manager to deallocate in assignment operator PSVI: return value constraint only if global declaration PSVI: add whitespace facet if missing More PSVI updates When parsing a new element, clear the maps holding the unparsed attribute we have seen. This because these maps keep pointers to the name of the attributes object that gets recycled for every element (and their name is deallocated when recycled) Memory management update. Improved algorithm for finding derivedFrom. More updates to memory management so that the static memory manager. Absorb exception thrown in getCanonicalRepresentation and return 0, only validate when required Bug#18611 fix. Bug #25699 fix: made getRootElemID const. Bug#25164: Patch for doc enhancement add attribute names to PSVIAttributeList and fix some problems with calculation of canonical values in element content fix canonical representation production store name/namespace of corresponding attribute in PSVIAttributeList; not all PSVIAttributes have XSAttributeDeclarations Fix compiler messages on OS390. More memory management updates. PSVI: process 'final' information when validating a skipped element or attribute, we should not look for a declaration. remove a throw clause inserted during debugging do not assert memorymanager in placement delete. Fix AIX compiler error. PSVI: Use complex type info if present, otherwise use datatype validator PSVI: fix for annotation of attributes in attributeGroup/derived types fix two overflow conditions fix a segfault and a possible buffer overflow condition Update for memory management so that the static memory manager (one used to call Initialize) is only for static data. Check for NULL when building XSParticle fix compilation error ensure all uses of ArrayJanitor use a memory manager add default memory manager parameter to loadMsg method that uses char * parameters Fix memhandlertest failure (memory not deleted). XSerializerTest updates exception thrown upon invalid number, thanks Gareth Reakes. Make IC_Field stateless, fMayMatch is no longer a data member of IC_Field Add nextElementKey method BinMemOutputStream The DOMTypeInfo should have a NULL namespace and type name when DTD validation is used, not empty strings don't expand ContextSpecNode when deserilized update Change a conditional expression to an if-else to avoid a compiler problem. fix segfault when a writeAnnotation() method was called psvi updates; cleanup revisits and bug fixes make use of XMLDocumentHandler::elementTypeInfo instead of non-thread-safe XMLElementDecl methods Bug#25494 fix fix compilation errors under gcc configure scripts need to be told about XSerializerTests before they can build its Makefile fix small bugs that made sanity tests fails Project XSerializerTest trailing zeros for double/float w/o decimal point fixes for the URI implementation to take registry names into account Canonical Representation Support Store non schema attributes from parent in XSAnnotation OS/390 updates make documentation accord with what Xerces-C supports ICU has deprecated the -s390 encoding suffix. This patch uses the new convention for XML documents that make use of this suffix make CreateDOMDocument sample more robust fixes for canonical value production; memory management was not implemented correctly Eliminate the preparsing stage change some hash constants fix seg fault caused when a complex type had simple content; we were not processing the complex type itself, only its base Remove GCC2 build styles from xcode samples Bug #25343 Add xcode project for SEnumVal sample Bug#25337: Enable DEPLOYMENT_POSTPROCESSING for Mac OS X GCC3 Deployment Build. fix bug in PSVI where a segfault would occur if an attribute was not defined fix duplicate attribute detection when namespaces are disabled PSVI fix: cannot allow validator to reset its element content buffer before exposing it to the application uninitialize panic handlers so they will be ready for subsequent initalizations when an empty element is valid, it will not have a datatype validator Bug#25118, additional fix once again since there are certain things, such as schemaLocation attributes, that have a datatype and which we nonetheless do not validate, make canonical-value production dependent on validity being valid fix for ArrayIndexOutOfBoundsException in PSVIAttributeList Bug#20169, openFile was opening the file for read and write, while only read was required Removed /version option from the linker Don't use the word "exception" as a variable name, as VC 7.1 complains about it Bug#16055 fix, Make the code compilable on Windows when UNICODE is defined Properly set fAnnotation data member 2.4.0: Here is the list of fixed bugzilla bugs that are resolved in this release, Xerces-C++ 2.4.0. Description fix Doxygen warnings; bug 25118 fix bug 28084 Set root element if not previpusly set, Use memory manager when creating root element name in preparation for stateless DOMTypeInfo for elements Fix state-ful duplicate attribute detection when the integrated scanner is in use and namespaces are off. Also, implement change to PSVIHandler interface to remove prefix passing. PSVIElement implementation implement writeAnnotation create XSModels if a PSVIHandler has been set on the scanner. Make PSVI production more robust implement isSpecified fixes for segfaults and infinite loops in schema component model implementation; mark DOMTypeInfo-related methods on XMLElementDecl deprecated since they are not thread-safe Bug#24983: Proposed changes of bcc.551 and bcb6 project files for forthcoming 2.4.0 release DOMPrint run result updated. more complete implementation of PSVIAttributeList; remove some problematic const-ness Store XSModel. remove XMLIBM1047Transcoder's dependence on iostream Add a method to return the XSObject mapped to a schema grammar component Update Mac OS Codewarrior project, Cleanup build errors/warnings from CodeWarrior Serialize enclosing complex type, Check for out of memory exception and document updates Make XSObjectFactory inherit from XMemory Misc. PSVI updates Update expected result Fix AIX linking error Add Mac OS project for Xcode, Revise build instructions to reflect deprecation of Project Builder projects, and elevation of the Xcode projects. Eliminate some compiler warnings concerning comments inside of comments add IBM1047 to the list of intrinsic transcoders allow classes derived from XMLTransService to tailor the intrinsic maps to their taste. Reset memory manager in Terminate PSVI: finish construction of XSSimpleTypeDefinition added in support for xml-declaration feature. Fix for bug 22917 update method documentation DatatypeValidator support for PSVI PSVI updates Enable grammar pools and grammar resolvers to manufacture XSModels. This also cleans up handling in the parser classes by eliminating the need to tell the grammar pool that schema compoments need to be produced. Setting the stage for PSVI (element and attribute) implementation: pointing out all places in scanners where validation updates need to occur More schema component model implementation, In particular, this cleans up and completes the XSModel, XSNamespaceItem, XSAttributeDeclaration and XSAttributeGroup implementations. PSVI: Use XSObjectFactory to create various components. insertElementAt was not checking if there was room for the new element (bug#24714) Wrong filename in error messages (bug#24883) Protect getEntityDeclPool from invoking a method on a NULL pointer (bug#24881) Updated COM for xerces-c_2_4_0 Updated project to copy xerces-c_2_4_0, not xerces-c_2_3_0 PSVI: element declaration, content model, PSVIutil Updated Borland makefile PSVI: store name and namespace information build xercesc2_4_0 with icu2.6.1 increment version to 2.4.0 in docs build xercesc2_4_0 PSVIAttributeList needs to be included by PSVIHandler Fix to #4556 Fix for bug 23930 Fixed documentation bug#24746 changes in support of second phase of XSModel implementation removed methods made unnecessary by new XSModel implementation design PSVI updates When invoking resolveEntity, specify the current document as the base URI Fix to bug #4556 Pass correct initSize to container during deserialization Solve Compilation/Linkage error on AIX/Solaris/HP/Linux Stateless Grammar: Validation Context Serialization of XSAnnotation. implementation for new stateless means of traversing attribute definition lists Fixed memory leak fix for bug 24287 PSVI/schema component model implementation fix compilation errors on AIX and HPUX For PSVI support, distinguish wildcard elements with namespace lists. update KEYS file with public key as newly-signed by two other Apache-ites Add Mac OS X DYLD_LIBRARY_PATH notes to unix build instructions update grammar pool interface so that cacheGrammar(Grammar) can tell the caller whether the grammar was accepted. Also fix some documentation errors. Patch to Solaris compiler error PSVI support for annotations. first part of PSVI/schema component model implementation. Grammar Pool Specification updates don't serialize built-in baseValidator, and don't serialize localName/uriName When invoking resolveEntity, specify the base URI When loading a grammar that's going to be cached, re-use the grammars already in the cache A version of lastIndexOf would crash the application if the character to be searched was not found in the string Updated BCB6 project Serialization test fix Enhanced Entity Resolver Support. GrammarPool serialization/deserialization Support for Template serialization/deserialization added XObjectComparator/XTemplateComparator Add comment regarding permissible values for XML_PLATFORM_NEW_BLOCK_ALIGNMENT. Fix for bug #24207 Fix memory leak Annotation support Fixed memory leak [bug 23073] Update COM project files update XercesLib.mak Inside a schema, the properties "fixed" and "default" for a reference to an attribute were ignored unless the "required" property were also present [bug 11767] Fix multithreading problem Pass in memory manager to constructors and use for creation of enumerators. Open files for reading as "r", not "r+". on MacOS Support for Template class serialization/deserialization Fix multithreading problem for regular expression. Implementation of Serialization/Deserialization for Schema components update XSModel and XSObject interface so that IDs can be used to query components in XSModels, and so that those IDs can be recovered from components Implementation of Serialization/Deserialization for Grammar components fix for bug 21780 Synchronized StringPool for thread-safe updates. Synchronize ContentSpec/ContentModel/FormattedModel API for Template_Class Object Serialization/Deserialization Fix #23413 Rewrite packageSources Stateless Grammar Implementation of Serialization/Deserialization for Datatype Validators Removed ^Z from end of files which was preventing compilation under gcc 2.96. improve handling of out of memory conditions, bug #23415 Refactoring of some code to improve performance. Synchronize ContentSpecNode and formattedModel fix for bug #23427 Loose the assert condition so that Serializable class need NOT to check the actual string length before read/write. useImplementation should use memory maneger. Inplementation for Serialization/Deserialization Macro re-organized: provide create/nocreate macros for abstract and nonabstract classes change Grammar::putElemDecl(XMLElementDecl, bool) so that it does not require the Grammar object to be const. Also, mark findOrAddGrammar as being dangerous in multithreaded situations doc fix OSU: Object Serialization Utilities updated the distribution directory. make Grammar pool be responsible for creating and owning URI string pools. This is one more step towards having grammars be independent of the parsers involved in their creation PSVI/schema component model classes enable MemParse to work on OS400. fix compiler warnings on ISeries; add Apache copyright notice Restore pre2.3 constructors Fix bug #22938. Deletion of void* is illegal. Fix for bug #22008. Removed the ability to adopt the DOMObject. Fix bug #19605. Problem with CDATA END TAG added API to get an enumerator for the cached grammars. Fix for bug 21990 If a type was explicitly declared as anyType that now gets set in DOMTypeInfo. Added test cases. Add new static global that always points to array-allocating memory manager Fixed a bug where multiple invalid elements with the same name/uri were not being set with appropriate PSVI info. Added a test case to expose the problem. Add new memory allocator that allocates using new[], for use where returned memory must be able to be deleted using delete []. This saves duplicated code in cases where a routine is optionally called with a specific memory manager, such as in the case of transcode fix compilation errors on HPUX and Solaris Fix bug #22697; transcodeFrom incorrectly throws on kTECOutputBufferFullStatus. fix for bug 22178 keep the fGrammarFromPool in sync to avoid problems when parseing multiple times. Not all unknown attributes are faulted in. In these cases the DOMTypeINfo should report AnySimpleType, not AnyURI as they were. add the Apache license to various Perl scripts that did not have it use PlatformUtils::panic() Added a method for use in XercesDOMParser (and others derived from AbstractDOMParser) and a feature in DOMBuilder that allows the creation of the document during parse to be from an DOMImplementation other than the default. Changed constuctors to protected to be derivatable Reorderd initializer list to prevent compiler warning. A basic perl script that takes a DOM header file and creates the format used in HTML bindings file. Added Level 3 XPath interfaces. fix for bug 22565 fixing bug 21001 fix for bug 22537 fix for bug 22457. Union types that are restrictions of other union types were previously considered not to inherit their parents member types. This is at variance with the behaviour of the Java parser and apparently with the spec. Method added to allow serilization of custom nodes from derived classes. patch for bug 16933 Code refactoring to improve performance of validation. fix to bug 22177 fix for bug 20058 Added serialization for attribute nodes fixes to make OS390PlatformUtils.cpp compile fix segmentation faults that may arise when the parser throws exceptions during document parsing. In general, XMLPlatformUtils::Terminate() should not be called from within a catch statement. Update Win32 CodeWarrior project for recent file additions/deletions; Update Mac OS ProjectBuilder project for recent file additions/deletions Resolve bug #21623; document that XMLParsePath... routines may fail if the file doesn't exist GrammarPool fix to permit the samples source to be copied from a non-writable to a writable part of the filesystem, then compiled. Binaries will also be dropped in a writable directory. This should make experimentation easier on multi-user systems. The patch fixes Bugzilla #19787, #20006, #20009, #20010 and #20287, and several other issues. Fix for bug #20005 Patch for bug #20530 - Attributes which have the same expanded name are not considered duplicates. getTextContent fix Fix build under VC7 fixing bug 21573 fix for bug 18860 Documentation on system call, strtod patch to bug 20353 patch to bug 21527 Stateless Grammar: create grammar components with grammarPool's memory Manager Stateless Grammar: Initialize scanner with grammarResolver specify library with version on AIX GrammarPool to solve unresolved symbol on Solaris clean up temporary XMLGrammarDescription to make MemoryTest happy Stateless Grammar Pool :: Part I update xerces-c.spec file Add support to threadtest for Mac OS X Add DYLIB_LIBRARY_PATH directions for running samples under Mac OS X. Bug#20552 Updated VC7 Project files. for build on WinXP.NET and Intel Electron new test for the pluggable memory management mechanism. fix for bug #20092 Bug 20413 Xerces 2.3 does not compile under NetBSD 1.6 Fixes so we compile under VC7.1. Use new macros for iostream.h and std:: issues. fix to bug #20350. Fix 2 typos. fixed typo for version number Fix memory leak when using deprecated dom. Fix to bug #16817. Non leaf nodes and attributes now get notified of release fix to bug #20325. Removed unused file and updated Projects. Added macros in so we can determine whether to do things like iostream as opposed to iostream.h and whether to use std:: or not. update copyright notice upload public key used for signing releases fix typo that could have been impacting correct operation of reference counting. Use memory manager embedded in rather than the one passed in to de-allocate memory. fix segfault on GCC 2.9x. The depreacted DOM attribute implementation had a cute trick where a void * field could be either a NodeChild pointer or a DOMString; the latter played havoc with the new memory management paradigm. Now a union of a DOMString * and a ChildNode * is used. make GCC happy and make it clearer what we actually use alignPointerForNewBlockAllocation() for in our code. Move pointer alignment functionality into XMLPlatform header; revise XMemory and DOMDocumentImpl to return blocks aligned by this function removal of isOwnerDocSingleton Build memory manager on hp PanicHandler interface should not inherit from XMemory Removed usage of std to compile under gcc and other platforms Fix another case where use of fallback characters during transcode could cause undesired failure of transcode Ensure proper block alignment for blocks allocated with XMemory new operators Handle allocation of document types not created by a DOM document Fix to HP-UX compiler's complaint about the duplicate overload of delete fix to gcc 2.95.x internal error for some template definitions release document Mac OS LCP transcoder fix CodeWarrior Mac OS Project File updates CodeWarror Win32 Project File updates First cut at Mac OS X Project Builder changes Apply Memory Manager to Base64 Initialize ValueVectorOf NetBSD compilation fix
Diffstat (limited to 'textproc/xerces-c')
-rw-r--r--textproc/xerces-c/Makefile11
-rw-r--r--textproc/xerces-c/PLIST80
-rw-r--r--textproc/xerces-c/buildlink3.mk6
-rw-r--r--textproc/xerces-c/distinfo52
-rw-r--r--textproc/xerces-c/patches/patch-aa80
-rw-r--r--textproc/xerces-c/patches/patch-ab89
-rw-r--r--textproc/xerces-c/patches/patch-ac45
-rw-r--r--textproc/xerces-c/patches/patch-ad94
-rw-r--r--textproc/xerces-c/patches/patch-ae689
-rw-r--r--textproc/xerces-c/patches/patch-af12
-rw-r--r--textproc/xerces-c/patches/patch-ag49
-rw-r--r--textproc/xerces-c/patches/patch-ah24
-rw-r--r--textproc/xerces-c/patches/patch-ai32
-rw-r--r--textproc/xerces-c/patches/patch-aj38
-rw-r--r--textproc/xerces-c/patches/patch-ak111
-rw-r--r--textproc/xerces-c/patches/patch-al24
-rw-r--r--textproc/xerces-c/patches/patch-am43
-rw-r--r--textproc/xerces-c/patches/patch-an194
-rw-r--r--textproc/xerces-c/patches/patch-ao33
-rw-r--r--textproc/xerces-c/patches/patch-ap73
-rw-r--r--textproc/xerces-c/patches/patch-aq27
-rw-r--r--textproc/xerces-c/patches/patch-ar35
-rw-r--r--textproc/xerces-c/patches/patch-as84
-rw-r--r--textproc/xerces-c/patches/patch-at679
-rw-r--r--textproc/xerces-c/patches/patch-au89
-rw-r--r--textproc/xerces-c/patches/patch-av13
-rw-r--r--textproc/xerces-c/patches/patch-aw21
-rw-r--r--textproc/xerces-c/patches/patch-ax171
28 files changed, 1393 insertions, 1505 deletions
diff --git a/textproc/xerces-c/Makefile b/textproc/xerces-c/Makefile
index 0d3ce669d20..f0d9ae67485 100644
--- a/textproc/xerces-c/Makefile
+++ b/textproc/xerces-c/Makefile
@@ -1,11 +1,10 @@
-# $NetBSD: Makefile,v 1.28 2006/03/04 21:30:52 jlam Exp $
+# $NetBSD: Makefile,v 1.29 2006/08/10 13:44:21 abs Exp $
#
-DISTNAME= xerces-c-src_2_3_0
+DISTNAME= xerces-c-src_2_7_0
PKGNAME= ${DISTNAME:S/-src_/-/:S/_/./g}
-PKGREVISION= 3
CATEGORIES= textproc
-MASTER_SITES= http://xml.apache.org/dist/xerces-c/stable/archives/Xerces-C_2_3_0/
+MASTER_SITES= http://apache.rmplc.co.uk/xml/xerces-c/source/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://xml.apache.org/xerces-c/
@@ -51,8 +50,8 @@ PLIST_SUBST+= ${PLIST_SUBST.${ICONV_TYPE}-iconv}
.include "../../converters/libiconv/buildlink3.mk"
pre-configure:
- @${CP} ${PKGSRCDIR}/mk/gnu-config/config.guess ${WRKSRC}
- @${CP} ${PKGSRCDIR}/mk/gnu-config/config.sub ${WRKSRC}
+ ${CP} ${PKGSRCDIR}/mk/gnu-config/config.guess ${WRKSRC}
+ ${CP} ${PKGSRCDIR}/mk/gnu-config/config.sub ${WRKSRC}
post-install:
${INSTALL_DATA} ${WRKSRC}/dom/impl/*.hpp \
diff --git a/textproc/xerces-c/PLIST b/textproc/xerces-c/PLIST
index 2ce48568e42..64b42884aa8 100644
--- a/textproc/xerces-c/PLIST
+++ b/textproc/xerces-c/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.3 2004/02/11 04:06:04 minskim Exp $
+@comment $NetBSD: PLIST,v 1.4 2006/08/10 13:44:21 abs Exp $
include/xercesc/dom/DOM.hpp
include/xercesc/dom/DOMAttr.hpp
include/xercesc/dom/DOMBuilder.hpp
@@ -30,6 +30,7 @@ include/xercesc/dom/DOMNodeFilter.hpp
include/xercesc/dom/DOMNodeIterator.hpp
include/xercesc/dom/DOMNodeList.hpp
include/xercesc/dom/DOMNotation.hpp
+include/xercesc/dom/DOMPSVITypeInfo.hpp
include/xercesc/dom/DOMProcessingInstruction.hpp
include/xercesc/dom/DOMRange.hpp
include/xercesc/dom/DOMRangeException.hpp
@@ -39,6 +40,12 @@ 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
+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
@@ -107,6 +114,7 @@ include/xercesc/dom/impl/DOMTreeWalkerImpl.hpp
include/xercesc/dom/impl/DOMTypeInfoImpl.hpp
include/xercesc/dom/impl/DOMWriterImpl.hpp
include/xercesc/dom/impl/XSDElementNSImpl.hpp
+include/xercesc/framework/BinOutputStream.hpp
include/xercesc/framework/LocalFileFormatTarget.hpp
include/xercesc/framework/LocalFileInputSource.hpp
include/xercesc/framework/MemBufFormatTarget.hpp
@@ -115,6 +123,7 @@ include/xercesc/framework/MemoryManager.hpp
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/Wrapper4InputSource.hpp
include/xercesc/framework/XMLAttDef.hpp
@@ -123,6 +132,7 @@ include/xercesc/framework/XMLAttr.hpp
include/xercesc/framework/XMLBuffer.hpp
include/xercesc/framework/XMLBufferMgr.hpp
include/xercesc/framework/XMLContentModel.hpp
+include/xercesc/framework/XMLDTDDescription.hpp
include/xercesc/framework/XMLDocumentHandler.hpp
include/xercesc/framework/XMLElementDecl.hpp
include/xercesc/framework/XMLEntityDecl.hpp
@@ -130,30 +140,74 @@ include/xercesc/framework/XMLEntityHandler.hpp
include/xercesc/framework/XMLErrorCodes.hpp
include/xercesc/framework/XMLErrorReporter.hpp
include/xercesc/framework/XMLFormatter.hpp
+include/xercesc/framework/XMLGrammarDescription.hpp
+include/xercesc/framework/XMLGrammarPool.hpp
include/xercesc/framework/XMLNotationDecl.hpp
include/xercesc/framework/XMLPScanToken.hpp
include/xercesc/framework/XMLRecognizer.hpp
include/xercesc/framework/XMLRefInfo.hpp
+include/xercesc/framework/XMLSchemaDescription.hpp
include/xercesc/framework/XMLValidator.hpp
include/xercesc/framework/XMLValidityCodes.hpp
+include/xercesc/framework/psvi/PSVIAttribute.hpp
+include/xercesc/framework/psvi/PSVIAttributeList.hpp
+include/xercesc/framework/psvi/PSVIElement.hpp
+include/xercesc/framework/psvi/PSVIHandler.hpp
+include/xercesc/framework/psvi/PSVIItem.hpp
+include/xercesc/framework/psvi/XSAnnotation.hpp
+include/xercesc/framework/psvi/XSAttributeDeclaration.hpp
+include/xercesc/framework/psvi/XSAttributeGroupDefinition.hpp
+include/xercesc/framework/psvi/XSAttributeUse.hpp
+include/xercesc/framework/psvi/XSComplexTypeDefinition.hpp
+include/xercesc/framework/psvi/XSConstants.hpp
+include/xercesc/framework/psvi/XSElementDeclaration.hpp
+include/xercesc/framework/psvi/XSFacet.hpp
+include/xercesc/framework/psvi/XSIDCDefinition.hpp
+include/xercesc/framework/psvi/XSModel.hpp
+include/xercesc/framework/psvi/XSModelGroup.hpp
+include/xercesc/framework/psvi/XSModelGroupDefinition.hpp
+include/xercesc/framework/psvi/XSMultiValueFacet.hpp
+include/xercesc/framework/psvi/XSNamedMap.c
+include/xercesc/framework/psvi/XSNamedMap.hpp
+include/xercesc/framework/psvi/XSNamespaceItem.hpp
+include/xercesc/framework/psvi/XSNotationDeclaration.hpp
+include/xercesc/framework/psvi/XSObject.hpp
+include/xercesc/framework/psvi/XSParticle.hpp
+include/xercesc/framework/psvi/XSSimpleTypeDefinition.hpp
+include/xercesc/framework/psvi/XSTypeDefinition.hpp
+include/xercesc/framework/psvi/XSValue.hpp
+include/xercesc/framework/psvi/XSWildcard.hpp
+include/xercesc/internal/BinFileOutputStream.hpp
+include/xercesc/internal/BinMemOutputStream.hpp
include/xercesc/internal/CharTypeTables.hpp
include/xercesc/internal/DGXMLScanner.hpp
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
+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
include/xercesc/internal/XMLScannerResolver.hpp
+include/xercesc/internal/XProtoType.hpp
+include/xercesc/internal/XSAXMLScanner.hpp
+include/xercesc/internal/XSObjectFactory.hpp
+include/xercesc/internal/XSerializable.hpp
+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/SAX2XMLFilterImpl.hpp
include/xercesc/parsers/SAX2XMLReaderImpl.hpp
include/xercesc/parsers/SAXParser.hpp
include/xercesc/parsers/XercesDOMParser.hpp
@@ -173,6 +227,7 @@ include/xercesc/sax2/ContentHandler.hpp
include/xercesc/sax2/DeclHandler.hpp
include/xercesc/sax2/DefaultHandler.hpp
include/xercesc/sax2/LexicalHandler.hpp
+include/xercesc/sax2/SAX2XMLFilter.hpp
include/xercesc/sax2/SAX2XMLReader.hpp
include/xercesc/sax2/XMLReaderFactory.hpp
include/xercesc/util/ArrayIndexOutOfBoundsException.hpp
@@ -233,10 +288,10 @@ include/xercesc/util/NameIdPool.c
include/xercesc/util/NameIdPool.hpp
include/xercesc/util/NetAccessors/Socket/SocketNetAccessor.hpp
include/xercesc/util/NetAccessors/Socket/UnixHTTPURLInputStream.hpp
-include/xercesc/util/NoDefTranscoderException.hpp
include/xercesc/util/NoSuchElementException.hpp
include/xercesc/util/NullPointerException.hpp
include/xercesc/util/NumberFormatException.hpp
+include/xercesc/util/OutOfMemoryException.hpp
include/xercesc/util/PanicHandler.hpp
include/xercesc/util/ParseException.hpp
include/xercesc/util/PlatformUtils.hpp
@@ -260,11 +315,12 @@ include/xercesc/util/RuntimeException.hpp
include/xercesc/util/SchemaDateTimeException.hpp
include/xercesc/util/SecurityManager.hpp
include/xercesc/util/StringPool.hpp
+include/xercesc/util/SynchronizedStringPool.hpp
include/xercesc/util/TransENameMap.c
include/xercesc/util/TransENameMap.hpp
include/xercesc/util/TransService.hpp
-${NATIVEICONV}include/xercesc/util/Transcoders/Iconv/IconvTransService.hpp
${GNUICONV}include/xercesc/util/Transcoders/IconvGNU/IconvGNUTransService.hpp
+${NATIVEICONV}include/xercesc/util/Transcoders/Iconv/IconvTransService.hpp
include/xercesc/util/TranscodingException.hpp
include/xercesc/util/UTFDataFormatException.hpp
include/xercesc/util/UnexpectedEOFException.hpp
@@ -291,16 +347,22 @@ 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/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/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
include/xercesc/util/XMLUCS4Transcoder.hpp
@@ -351,6 +413,7 @@ include/xercesc/validators/DTD/DTDGrammar.hpp
include/xercesc/validators/DTD/DTDScanner.hpp
include/xercesc/validators/DTD/DTDValidator.hpp
include/xercesc/validators/DTD/DocTypeHandler.hpp
+include/xercesc/validators/DTD/XMLDTDDescriptionImpl.hpp
include/xercesc/validators/common/AllContentModel.hpp
include/xercesc/validators/common/CMAny.hpp
include/xercesc/validators/common/CMBinaryOp.hpp
@@ -398,6 +461,7 @@ include/xercesc/validators/datatype/QNameDatatypeValidator.hpp
include/xercesc/validators/datatype/StringDatatypeValidator.hpp
include/xercesc/validators/datatype/TimeDatatypeValidator.hpp
include/xercesc/validators/datatype/UnionDatatypeValidator.hpp
+include/xercesc/validators/datatype/XMLCanRepGroup.hpp
include/xercesc/validators/datatype/YearDatatypeValidator.hpp
include/xercesc/validators/datatype/YearMonthDatatypeValidator.hpp
include/xercesc/validators/schema/ComplexTypeInfo.hpp
@@ -413,6 +477,7 @@ include/xercesc/validators/schema/SchemaSymbols.hpp
include/xercesc/validators/schema/SchemaValidator.hpp
include/xercesc/validators/schema/SubstitutionGroupComparator.hpp
include/xercesc/validators/schema/TraverseSchema.hpp
+include/xercesc/validators/schema/XMLSchemaDescriptionImpl.hpp
include/xercesc/validators/schema/XSDDOMParser.hpp
include/xercesc/validators/schema/XSDErrorReporter.hpp
include/xercesc/validators/schema/XSDLocator.hpp
@@ -428,6 +493,7 @@ include/xercesc/validators/schema/identity/IC_KeyRef.hpp
include/xercesc/validators/schema/identity/IC_Selector.hpp
include/xercesc/validators/schema/identity/IC_Unique.hpp
include/xercesc/validators/schema/identity/IdentityConstraint.hpp
+include/xercesc/validators/schema/identity/IdentityConstraintHandler.hpp
include/xercesc/validators/schema/identity/ValueStore.hpp
include/xercesc/validators/schema/identity/ValueStoreCache.hpp
include/xercesc/validators/schema/identity/XPathException.hpp
@@ -436,8 +502,8 @@ 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.23
-lib/libxerces-c.so.23.0
+lib/libxerces-c.so.27
+lib/libxerces-c.so.27.0
@dirrm include/xercesc/validators/schema/identity
@dirrm include/xercesc/validators/schema
@dirrm include/xercesc/validators/datatype
@@ -452,14 +518,16 @@ ${NATIVEICONV}@dirrm include/xercesc/util/Transcoders/Iconv
@dirrm include/xercesc/util/Platforms
@dirrm include/xercesc/util/NetAccessors/Socket
@dirrm include/xercesc/util/NetAccessors
-@dirrm include/xercesc/util/Compilers
@dirrm include/xercesc/util/MsgLoaders/InMemory
@dirrm include/xercesc/util/MsgLoaders
+@dirrm include/xercesc/util/Compilers
@dirrm include/xercesc/util
@dirrm include/xercesc/sax2
@dirrm include/xercesc/sax
@dirrm include/xercesc/parsers
@dirrm include/xercesc/internal
+@dirrm include/xercesc/framework/psvi
+@dirrm include/xercesc/framework
@dirrm include/xercesc/framework
@dirrm include/xercesc/dom/impl
@dirrm include/xercesc/dom/deprecated
diff --git a/textproc/xerces-c/buildlink3.mk b/textproc/xerces-c/buildlink3.mk
index dffc1c8516c..c81c2d39e5c 100644
--- a/textproc/xerces-c/buildlink3.mk
+++ b/textproc/xerces-c/buildlink3.mk
@@ -1,4 +1,4 @@
-# $NetBSD: buildlink3.mk,v 1.8 2006/07/08 23:11:11 jlam Exp $
+# $NetBSD: buildlink3.mk,v 1.9 2006/08/10 13:44:21 abs Exp $
BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+
XERCES_C_BUILDLINK3_MK:= ${XERCES_C_BUILDLINK3_MK}+
@@ -12,8 +12,8 @@ BUILDLINK_PACKAGES+= xerces-c
BUILDLINK_ORDER:= ${BUILDLINK_ORDER} ${BUILDLINK_DEPTH}xerces-c
.if !empty(XERCES_C_BUILDLINK3_MK:M+)
-BUILDLINK_API_DEPENDS.xerces-c+= xerces-c>=2.3.0
-BUILDLINK_ABI_DEPENDS.xerces-c?= xerces-c>=2.3.0nb3
+BUILDLINK_API_DEPENDS.xerces-c+= xerces-c>=2.7.0
+BUILDLINK_ABI_DEPENDS.xerces-c?= xerces-c>=2.7.0
BUILDLINK_PKGSRCDIR.xerces-c?= ../../textproc/xerces-c
.endif # XERCES_C_BUILDLINK3_MK
diff --git a/textproc/xerces-c/distinfo b/textproc/xerces-c/distinfo
index 0ce6cfc1ef4..20e10259a2f 100644
--- a/textproc/xerces-c/distinfo
+++ b/textproc/xerces-c/distinfo
@@ -1,29 +1,25 @@
-$NetBSD: distinfo,v 1.9 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: distinfo,v 1.10 2006/08/10 13:44:21 abs Exp $
-SHA1 (xerces-c-src_2_3_0.tar.gz) = ea47e1899d569344e7ff1ca09f31f725bbe92033
-RMD160 (xerces-c-src_2_3_0.tar.gz) = 65234d5b0a3a53ad088108710adbf6d419aa61b5
-Size (xerces-c-src_2_3_0.tar.gz) = 6885335 bytes
-SHA1 (patch-aa) = e72de819f840a867d17db1a8b5d0198213497c54
-SHA1 (patch-ab) = 673eee8137b79deae52297424a68293a00b53a91
-SHA1 (patch-ac) = fb187d0c5b7dbc09d31be8dea09c88bea755f87d
-SHA1 (patch-ad) = 9e6afe4ac10a34201f05198bb62829438de5dc7c
-SHA1 (patch-ae) = 8e9abade53b8b390fe1e0d00bfa037ebc01f9deb
-SHA1 (patch-af) = 232a0a8520df9896154a6de1c180558a41f9cce8
-SHA1 (patch-ag) = 1fc655d5271a7608db6b9c487936370f1a5e07f6
-SHA1 (patch-ah) = ea7118f8fbdcb8f74338bd3df8852c9b003ed9fb
-SHA1 (patch-ai) = b17973cc69bc118ad4104e76a47a4623bd5aa469
-SHA1 (patch-aj) = d6c554ab31426bc14767945038aeeee7de460fd9
-SHA1 (patch-ak) = 7b5e5f45897e7b90c650df5c915c5e1565d72757
-SHA1 (patch-al) = 7521f31697a9898e2fa1de54e75aa408d00c4926
-SHA1 (patch-am) = 89ae1533f714a6bca9522c01c932d265b7eb6823
-SHA1 (patch-an) = a5163709320872b5d4c35be8fc33fc1cea237bae
-SHA1 (patch-ao) = 1670e577ed0f4ae2d62383a3ec774a3089da9145
-SHA1 (patch-ap) = 3be27f7bdb09177af13360e9a7cddd97d4382b52
-SHA1 (patch-aq) = 34366da43cbea723c502e131fce2e5919193b885
-SHA1 (patch-ar) = 50b16ef061bc35bcc78d7b10fb8b12cbbf87274c
-SHA1 (patch-as) = fc62935c5653e9ae9a0a8e53c910e8c57753d8cb
-SHA1 (patch-at) = e153dc19474c0c2668c97dbd705d51fdc6dc1071
-SHA1 (patch-au) = d689cb28a58a60390bc046d56b507a7855182650
-SHA1 (patch-av) = 2eb019a7492e470d128ae4bc4332c7f85dc5ad84
-SHA1 (patch-aw) = ff41b39f0fca3f512362b51d1dec5c9113ca5f9d
-SHA1 (patch-ax) = 7728907cc7a2ccfcbd659fcb13440c8f3c02008c
+SHA1 (xerces-c-src_2_7_0.tar.gz) = 56f9587f33fca0a573a45f07762e3262a255d73f
+RMD160 (xerces-c-src_2_7_0.tar.gz) = 80914da4898c694bf0299d612164483f83857baf
+Size (xerces-c-src_2_7_0.tar.gz) = 7760004 bytes
+SHA1 (patch-aa) = 11485b77929a72c693bd9fa94c20dbbdd461fb3d
+SHA1 (patch-ab) = 581a7fb3faa93fd390af939d110c90d4b350910b
+SHA1 (patch-ac) = 8fe9f17f1a8be5e251885efe1bcf7466cbea7714
+SHA1 (patch-ad) = 4ba3a565455cbc5202f309b36365297396221f51
+SHA1 (patch-ae) = fffbbe311499bba29825b21d6eb28f6ad9957320
+SHA1 (patch-af) = d4456b93e3d867cc1275c8e5d0b33f0dc121083b
+SHA1 (patch-ag) = fac013068f8eae143995508352c0b0d8972ba0c9
+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) = 755c599abe9d28f1dac7fc53a61032debaede467
+SHA1 (patch-as) = 3eaec415b91dcd129eaa7c5c6e0b5b417ad651bc
+SHA1 (patch-at) = 31682536fccb69cbf29872793b2eb798e15e3bda
diff --git a/textproc/xerces-c/patches/patch-aa b/textproc/xerces-c/patches/patch-aa
index 9b7c2baefed..d7e9a52cf8f 100644
--- a/textproc/xerces-c/patches/patch-aa
+++ b/textproc/xerces-c/patches/patch-aa
@@ -1,58 +1,26 @@
-$NetBSD: patch-aa,v 1.3 2004/02/11 04:06:05 minskim Exp $
+$NetBSD: patch-aa,v 1.4 2006/08/10 13:44:22 abs Exp $
---- util/Platforms/NetBSD/NetBSDPlatformUtils.cpp.orig 2003-05-27 10:04:53.000000000 -0500
-+++ util/Platforms/NetBSD/NetBSDPlatformUtils.cpp
-@@ -92,6 +92,8 @@
+--- ../../samples/Makefile.incl.orig 2005-09-07 16:56:50.000000000 +0100
++++ ../../samples/Makefile.incl
+@@ -240,6 +240,21 @@ ifeq (${PLATFORM}, FREEBSD)
+ SHLIBSUFFIX=.so
+ endif
- #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>
-@@ -100,6 +102,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>
-@@ -172,6 +176,8 @@ XMLMsgLoader* XMLPlatformUtils::loadAMsg
- {
- #if defined (XML_USE_ICU_MESSAGELOADER)
- retVal = new ICUMsgLoader(msgDomain);
-+#elif defined (XML_USE_ICONV_MESSAGELOADER)
-+ retVal = new MsgCatalogLoader(msgDomain);
- #else
- // same as -DXML_USE_INMEM_MESSAGELOADER
- retVal = new InMemMsgLoader(msgDomain);
-@@ -199,6 +205,8 @@ XMLTransService* XMLPlatformUtils::makeT
- // Use ICU transcoding services.
- // same as -DXML_USE_ICU_MESSAGELOADER
- return new ICUTransService;
-+#elif defined (XML_USE_GNU_TRANSCODER)
-+ return new IconvGNUTransService;
- #else
- // Use native transcoding services.
- // same as -DXML_USE_INMEM_MESSAGELOADER
-@@ -421,7 +429,7 @@ unsigned long XMLPlatformUtils::getCurre
- return (unsigned long)(t.tv_sec*1000 + t.tv_usec);
- }
-
--XMLCh* XMLPlatformUtils::getFullPath(const XMLCh* const srcPath)
-+XMLCh* XMLPlatformUtils::getFullPath(const XMLCh* const srcPath, MemoryManager* const)
- {
-
- //
-@@ -463,7 +471,7 @@ bool XMLPlatformUtils::isRelative(const
- return true;
- }
-
--XMLCh* XMLPlatformUtils::getCurrentDirectory()
-+XMLCh* XMLPlatformUtils::getCurrentDirectory(MemoryManager* const)
- {
- char dirBuf[PATH_MAX + 1];
- char *curDir = getcwd(&dirBuf[0], PATH_MAX + 1);
++#=============== 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
++ SHLIBSUFFIX=.so
++endif
++
+ #=============== NETBSD SPECIFIC OPTIONS =========================
+ ifeq (${PLATFORM}, NETBSD)
+ CMP= -c ${CXXFLAGS}
diff --git a/textproc/xerces-c/patches/patch-ab b/textproc/xerces-c/patches/patch-ab
index c34a59cabcf..2b64c531ae3 100644
--- a/textproc/xerces-c/patches/patch-ab
+++ b/textproc/xerces-c/patches/patch-ab
@@ -1,79 +1,12 @@
-$NetBSD: patch-ab,v 1.4 2004/02/15 04:14:04 minskim Exp $
+$NetBSD: patch-ab,v 1.5 2006/08/10 13:44:22 abs Exp $
---- util/Transcoders/IconvGNU/IconvGNUTransService.cpp.orig 2003-05-27 10:04:57.000000000 -0500
-+++ util/Transcoders/IconvGNU/IconvGNUTransService.cpp
-@@ -94,7 +94,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>
-@@ -309,7 +313,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;
-@@ -341,7 +345,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;
-@@ -373,7 +377,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;
-@@ -474,7 +478,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);
- }
-
-@@ -484,7 +488,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);
- }
-
-@@ -1051,7 +1055,7 @@ XMLCh* IconvGNULCPTranscoder::transcode(
- if (*toTranscode) {
- const unsigned int wLent = calcRequiredSize(toTranscode);
- if (wLent == 0) {
-- retVal = (XMLCh*) manager->allocate(sizeof(XMLCh));/new XMLCh[1];
-+ retVal = (XMLCh*) manager->allocate(sizeof(XMLCh));//new XMLCh[1];
- retVal[0] = 0;
- return retVal;
- }
-@@ -1186,7 +1190,7 @@ IconvGNUTranscoder::IconvGNUTranscoder (
- , iconv_t cd_to
- , size_t uchsize
- , unsigned int ubo
-- , MemoryManger* const manager
-+ , MemoryManager* const manager
- )
- : XMLTranscoder(encodingName, blockSize, manager)
- , IconvGNUWrapper (cd_from, cd_to, uchsize, ubo)
+--- ../../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 ;;
diff --git a/textproc/xerces-c/patches/patch-ac b/textproc/xerces-c/patches/patch-ac
index 0e29fcfba04..45ae87abb59 100644
--- a/textproc/xerces-c/patches/patch-ac
+++ b/textproc/xerces-c/patches/patch-ac
@@ -1,33 +1,14 @@
-$NetBSD: patch-ac,v 1.3 2004/02/11 04:06:05 minskim Exp $
+$NetBSD: patch-ac,v 1.4 2006/08/10 13:44:22 abs Exp $
---- framework/StdOutFormatTarget.cpp.orig 2003-05-27 10:04:45.000000000 -0500
-+++ framework/StdOutFormatTarget.cpp
-@@ -80,7 +80,7 @@
- */
-
- #include <xercesc/framework/StdOutFormatTarget.hpp>
--#include <iostream.h>
-+#include <iostream>
-
- XERCES_CPP_NAMESPACE_BEGIN
-
-@@ -92,7 +92,7 @@ StdOutFormatTarget::~StdOutFormatTarget(
-
- void StdOutFormatTarget::flush()
- {
-- cout.flush();
-+ std::cout.flush();
- }
-
- void StdOutFormatTarget::writeChars(const XMLByte* const toWrite
-@@ -104,8 +104,8 @@ void StdOutFormatTarget::writeChars(cons
- // Without the cast, it was printing the pointer value in hex.
- // Quite annoying, considering every other platform printed
- // the string with the explicit cast to char* below.
-- cout.write((char *) toWrite, (int) count);
-- cout.flush();
-+ std::cout.write((char *) toWrite, (int) count);
-+ std::cout.flush();
-
- }
-
+--- ../../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"
diff --git a/textproc/xerces-c/patches/patch-ad b/textproc/xerces-c/patches/patch-ad
index 3ac7ffe32ac..0f4e85d470f 100644
--- a/textproc/xerces-c/patches/patch-ad
+++ b/textproc/xerces-c/patches/patch-ad
@@ -1,24 +1,74 @@
-$NetBSD: patch-ad,v 1.4 2004/03/22 17:04:13 kristerw Exp $
+$NetBSD: patch-ad,v 1.5 2006/08/10 13:44:22 abs Exp $
---- dom/impl/DOMDeepNodeListPool.c.orig Mon Mar 22 17:44:12 2004
-+++ dom/impl/DOMDeepNodeListPool.c Mon Mar 22 17:45:08 2004
-@@ -89,9 +89,6 @@
- {
- initialize(modulus);
-
-- // create default hasher
-- fHash = new (fMemoryManager) HashPtr();
--
- //
- // Allocate the initial id pointers array. We don't have to zero them
- // out since the fIdCounter value tells us which ones are valid. The
-@@ -102,6 +99,9 @@
-
- fIdPtrs = (TVal**) fMemoryManager->allocate(fIdPtrsCount * sizeof(TVal*));//new TVal*[fIdPtrsCount];
- fIdPtrs[0] = 0;
+--- 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/>.
++ */
+
-+ // create default hasher
-+ fHash = new (fMemoryManager) HashPtr();
- }
-
- template <class TVal>
++/*
++ *
++ *
++ */
++
++
++#define ENDIANMODE_LITTLE
++
++typedef void* FileHandle;
++
++#ifndef DRAGONFLY
++#define DRAGONFLY
++#endif
diff --git a/textproc/xerces-c/patches/patch-ae b/textproc/xerces-c/patches/patch-ae
index 8fb25be3076..1d48a8c8665 100644
--- a/textproc/xerces-c/patches/patch-ae
+++ b/textproc/xerces-c/patches/patch-ae
@@ -1,24 +1,667 @@
-$NetBSD: patch-ae,v 1.4 2004/03/22 17:04:13 kristerw Exp $
+$NetBSD: patch-ae,v 1.5 2006/08/10 13:44:22 abs Exp $
---- util/RefHash3KeysIdPool.c.orig Mon Mar 22 17:54:00 2004
-+++ util/RefHash3KeysIdPool.c Mon Mar 22 17:54:25 2004
-@@ -117,9 +117,6 @@
- {
- initialize(modulus);
-
-- // create default hasher
-- fHash = new (fMemoryManager) HashXMLCh();
--
- //
- // Allocate the initial id pointers array. We don't have to zero them
- // out since the fIdCounter value tells us which ones are valid. The
-@@ -129,6 +126,9 @@
- 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>
+--- util/Platforms/DragonFly/DragonFlyPlatformUtils.cpp.orig 2006-04-26 14:02:54.000000000 +0100
++++ util/Platforms/DragonFly/DragonFlyPlatformUtils.cpp
+@@ -0,0 +1,662 @@
++/*
++ * 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/>.
++ */
++
++/*
++ *
++ *
++ */
++
++
++// ---------------------------------------------------------------------------
++// Includes
++// ---------------------------------------------------------------------------
++
++#if !defined(APP_NO_THREADS)
++#include <pthread.h>
++#endif
++
++/* #ifndef __USE_UNIX98
++ #error __USE_UNIX98 is not defined in your compile settings
++#endif */
++
++#include <unistd.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <errno.h>
++#include <libgen.h>
++#include <sys/time.h>
++#include <string.h>
++#include <strings.h>/* for strcasecmp & strncasecmp */
++#include <wchar.h> /* for win_t */
++#include <xercesc/util/PlatformUtils.hpp>
++#include <xercesc/util/RuntimeException.hpp>
++#include <xercesc/util/Janitor.hpp>
++#include <xercesc/util/Mutexes.hpp>
++#include <xercesc/util/XMLString.hpp>
++#include <xercesc/util/XMLUniDefs.hpp>
++#include <xercesc/util/XMLUni.hpp>
++#include <xercesc/util/PanicHandler.hpp>
++
++#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>
++#endif
++
++
++#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>
++#endif
++
++
++#if defined (XML_USE_NETACCESSOR_SOCKET)
++ #include <xercesc/util/NetAccessors/Socket/SocketNetAccessor.hpp>
++#endif
++
++XERCES_CPP_NAMESPACE_BEGIN
++
++// ---------------------------------------------------------------------------
++// Local Methods
++// ---------------------------------------------------------------------------
++
++static void WriteCharStr( FILE* stream, const char* const toWrite)
++{
++ if (fputs(toWrite, stream) == EOF)
++ {
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::Strm_StdErrWriteFailure);
++ }
++}
++
++static void WriteUStrStdErr( const XMLCh* const toWrite)
++{
++ char* tmpVal = XMLString::transcode(toWrite);
++ ArrayJanitor<char> janText(tmpVal);
++ if (fputs(tmpVal, stderr) == EOF)
++ {
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::Strm_StdErrWriteFailure);
++ }
++}
++
++static void WriteUStrStdOut( const XMLCh* const toWrite)
++ {
++ char* tmpVal = XMLString::transcode(toWrite);
++ ArrayJanitor<char> janText(tmpVal);
++ if (fputs(tmpVal, stdout) == EOF)
++ {
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::Strm_StdOutWriteFailure);
++ }
++}
++
++XMLNetAccessor* XMLPlatformUtils::makeNetAccessor()
++{
++#if defined (XML_USE_NETACCESSOR_SOCKET)
++ return new SocketNetAccessor();
++#else
++ return 0;
++#endif
++}
++
++// ---------------------------------------------------------------------------
++// XMLPlatformUtils: Private Static Methods
++// ---------------------------------------------------------------------------
++
++//
++// This method is called by the platform independent part of this class
++// when client code asks to have one of the supported message sets loaded.
++//
++
++XMLMsgLoader* XMLPlatformUtils::loadAMsgSet(const XMLCh* const msgDomain)
++{
++ XMLMsgLoader* retVal;
++ try
++ {
++#if defined (XML_USE_ICU_MESSAGELOADER)
++ retVal = new ICUMsgLoader(msgDomain);
++#elif defined (XML_USE_ICONV_MESSAGELOADER)
++ retVal = new MsgCatalogLoader(msgDomain);
++#else
++ // same as -DXML_USE_INMEM_MESSAGELOADER
++ retVal = new InMemMsgLoader(msgDomain);
++#endif
++ }
++
++ catch(...)
++ {
++ panic(PanicHandler::Panic_CantLoadMsgDomain);
++ }
++ return retVal;
++}
++
++
++//
++// This method is called very early in the bootstrapping process. This guy
++// must create a transcoding service and return it. It cannot use any string
++// methods, any transcoding services, throw any exceptions, etc... It just
++// makes a transcoding service and returns it, or returns zero on failure.
++//
++
++XMLTransService* XMLPlatformUtils::makeTransService()
++{
++#if defined (XML_USE_ICU_TRANSCODER)
++ // Use ICU transcoding services.
++ // same as -DXML_USE_ICU_MESSAGELOADER
++ return new ICUTransService;
++#elif defined (XML_USE_GNU_TRANSCODER)
++ return new IconvGNUTransService;
++#else
++ // Use native transcoding services.
++ // same as -DXML_USE_INMEM_MESSAGELOADER
++ return new IconvTransService;
++
++#endif
++}
++
++// ---------------------------------------------------------------------------
++// XMLPlatformUtils: The panic method
++// ---------------------------------------------------------------------------
++void XMLPlatformUtils::panic(const PanicHandler::PanicReasons reason)
++{
++ fgUserPanicHandler? fgUserPanicHandler->panic(reason) : fgDefaultPanicHandler->panic(reason);
++}
++
++
++// ---------------------------------------------------------------------------
++// XMLPlatformUtils: File Methods
++// ---------------------------------------------------------------------------
++
++unsigned int XMLPlatformUtils::curFilePos(FileHandle theFile)
++{
++ if (theFile == NULL)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ int curPos = ftell( (FILE*)theFile);
++ if (curPos == -1)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotGetSize);
++
++ return (unsigned int)curPos;
++}
++
++void XMLPlatformUtils::closeFile(FileHandle theFile)
++{
++ if (theFile == NULL)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ if (fclose((FILE*)theFile))
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotCloseFile);
++}
++
++unsigned int XMLPlatformUtils::fileSize(FileHandle theFile)
++{
++ if (theFile == NULL)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ // Get the current position
++ long int curPos = ftell((FILE*) theFile);
++ if (curPos == -1)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotGetCurPos);
++
++ // Seek to the end and save that value for return
++ if (fseek((FILE*) theFile, 0, SEEK_END))
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotSeekToEnd);
++
++ long int retVal = ftell((FILE*)theFile);
++ if (retVal == -1)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotSeekToEnd);
++
++ // And put the pointer back
++
++ if (fseek( (FILE*)theFile, curPos, SEEK_SET) )
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotSeekToPos);
++
++ return (unsigned int)retVal;
++}
++
++FileHandle XMLPlatformUtils::openFile(const XMLCh* const fileName)
++{
++ if (fileName == NULL)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ const char* tmpFileName = XMLString::transcode(fileName);
++ ArrayJanitor<char> janText((char*)tmpFileName);
++ FileHandle retVal = (FILE*)fopen( tmpFileName , "r+" );
++
++ if (retVal == NULL)
++ return 0;
++ return retVal;
++}
++
++FileHandle XMLPlatformUtils::openFile(const char* const fileName)
++{
++ if (fileName == NULL)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ FileHandle retVal = (FILE*)fopen( fileName , "r+" );
++
++ if (retVal == NULL)
++ return 0;
++ return retVal;
++}
++
++FileHandle XMLPlatformUtils::openFileToWrite(const XMLCh* const fileName)
++{
++ if (fileName == NULL)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ const char* tmpFileName = XMLString::transcode(fileName);
++ ArrayJanitor<char> janText((char*)tmpFileName);
++
++ FileHandle retVal = (FILE*)fopen( tmpFileName, "r+" );
++ if (retVal == NULL)
++ return 0;
++ return retVal;
++}
++
++FileHandle XMLPlatformUtils::openFileToWrite(const char* const fileName)
++{
++ if (fileName == NULL)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ FileHandle retVal = (FILE*)fopen( fileName, "r+" );
++
++ if (retVal == NULL)
++ return 0;
++ return retVal;
++}
++
++FileHandle XMLPlatformUtils::openStdInHandle()
++{
++ int nfd = dup(0);
++ if (nfd == -1)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotDupHandle);
++ return (FileHandle)fdopen(dup(0), "r");
++}
++
++
++
++unsigned int
++XMLPlatformUtils::readFileBuffer( FileHandle theFile
++ , const unsigned int toRead
++ , XMLByte* const toFill)
++{
++ if ( !theFile || !toFill )
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ if (toRead == 0)
++ return 0;
++ size_t noOfItemsRead = fread((void*) toFill, 1, toRead, (FILE*)theFile);
++
++ if(ferror((FILE*)theFile))
++ {
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotReadFromFile);
++ }
++
++ return (unsigned int)noOfItemsRead;
++}
++
++void XMLPlatformUtils::writeBufferToFile( FileHandle const theFile
++ , long toWrite
++ , const XMLByte* const toFlush )
++{
++ if ( !theFile || !toFlush )
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ if ( toWrite <= 0 )
++ return;
++
++ const XMLByte* tmpFlush = (const XMLByte*) toFlush;
++ size_t bytesWritten = 0;
++
++ while (true)
++ {
++ bytesWritten = fwrite(tmpFlush, sizeof(XMLByte), toWrite, (FILE*)theFile);
++
++ if(ferror((FILE*)theFile))
++ {
++#if 0
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotWriteToFile);
++#else
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotReadFromFile);
++#endif
++ }
++
++ if (bytesWritten < (size_t) toWrite) //incomplete write
++ {
++ tmpFlush += bytesWritten;
++ toWrite -= bytesWritten;
++ bytesWritten = 0;
++ }
++ else
++ return;
++ }
++}
++
++void XMLPlatformUtils::resetFile(FileHandle theFile)
++{
++ if (theFile == NULL)
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::CPtr_PointerIsZero);
++ // Seek to the start of the file
++ if (fseek((FILE*)theFile, 0, SEEK_SET))
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotResetFile);
++}
++
++
++// ---------------------------------------------------------------------------
++// XMLPlatformUtils: Timing Methods
++// ---------------------------------------------------------------------------
++
++unsigned long XMLPlatformUtils::getCurrentMillis()
++{
++ struct timeval t;
++ struct timezone tz;
++
++ gettimeofday(&t, &tz);
++ return (unsigned long)(t.tv_sec*1000 + t.tv_usec);
++}
++
++XMLCh* XMLPlatformUtils::getFullPath(const XMLCh* const srcPath, MemoryManager* const)
++{
++
++ //
++ // NOTE: THe path provided has always already been opened successfully,
++ // so we know that its not some pathological freaky path. It comes in
++ // in native format, and goes out as Unicode always
++ //
++ char* newSrc = XMLString::transcode(srcPath);
++ ArrayJanitor<char> janText(newSrc);
++
++ // Use a local buffer that is big enough for the largest legal path
++ char *absPath = new char[1024];
++ // get the absolute path
++ char* retPath = realpath(newSrc, absPath);
++ ArrayJanitor<char> janText2(retPath);
++
++ if (!retPath)
++ {
++ ThrowXML(XMLPlatformUtilsException, XMLExcepts::File_CouldNotGetBasePathName);
++ }
++ return XMLString::transcode(absPath);
++}
++
++bool XMLPlatformUtils::isRelative(const XMLCh* const toCheck)
++{
++ // Check for pathological case of empty path
++ if (!toCheck[0])
++ return false;
++
++ //
++ // If it starts with a slash, then it cannot be relative. This covers
++ // both something like "\Test\File.xml" and an NT Lan type remote path
++ // that starts with a node like "\\MyNode\Test\File.xml".
++ //
++ if (toCheck[0] == XMLCh('/'))
++ return false;
++
++ // Else assume its a relative path
++ return true;
++}
++
++XMLCh* XMLPlatformUtils::getCurrentDirectory(MemoryManager* const)
++{
++ char dirBuf[PATH_MAX + 1];
++ char *curDir = getcwd(&dirBuf[0], PATH_MAX + 1);
++
++ if (!curDir)
++ {
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::File_CouldNotGetBasePathName);
++ }
++
++ return XMLString::transcode(curDir);
++}
++
++inline bool XMLPlatformUtils::isAnySlash(XMLCh c)
++{
++ return ( chBackSlash == c || chForwardSlash == c);
++}
++
++
++// -----------------------------------------------------------------------
++// Mutex methods
++// -----------------------------------------------------------------------
++
++#if !defined(APP_NO_THREADS)
++
++// ---------------------------------------------------------------------------
++// XMLPlatformUtils: Platform init method
++// ---------------------------------------------------------------------------
++
++static XMLMutex atomicOpsMutex;
++
++void XMLPlatformUtils::platformInit()
++{
++ //
++ // The atomicOps mutex needs to be created early.
++ // Normally, mutexes are created on first use, but there is a
++ // circular dependency between compareAndExchange() and
++ // mutex creation that must be broken.
++
++ if (atomicOpsMutex.fHandle == 0)
++ atomicOpsMutex.fHandle = XMLPlatformUtils::makeMutex();
++}
++
++void* XMLPlatformUtils::makeMutex()
++{
++ pthread_mutex_t* mutex = new pthread_mutex_t;
++ pthread_mutexattr_t* attr = new pthread_mutexattr_t;
++ pthread_mutexattr_init(attr);
++ pthread_mutexattr_settype(attr, PTHREAD_MUTEX_RECURSIVE);
++ if (pthread_mutex_init(mutex, attr))
++ {
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::Mutex_CouldNotCreate);
++ }
++ pthread_mutexattr_destroy(attr);
++ delete attr;
++ return (void*)(mutex);
++
++}
++
++void XMLPlatformUtils::closeMutex(void* const mtxHandle)
++{
++ if (mtxHandle != NULL)
++ {
++ if (pthread_mutex_destroy((pthread_mutex_t*) mtxHandle))
++ {
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::Mutex_CouldNotDestroy);
++ }
++ delete (pthread_mutex_t*)mtxHandle;
++ }
++}
++
++
++void XMLPlatformUtils::lockMutex(void* const mtxHandle)
++{
++ if (mtxHandle != NULL)
++ {
++ if (pthread_mutex_lock((pthread_mutex_t*) mtxHandle))
++ {
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::Mutex_CouldNotLock);
++ }
++ }
++}
++
++
++void XMLPlatformUtils::unlockMutex(void* const mtxHandle)
++{
++ if (mtxHandle != NULL)
++ {
++ if (pthread_mutex_unlock((pthread_mutex_t*) mtxHandle))
++ {
++ ThrowXML(XMLPlatformUtilsException,
++ XMLExcepts::Mutex_CouldNotUnlock);
++ }
++ }
++}
++
++
++// -----------------------------------------------------------------------
++// Miscellaneous synchronization methods
++// -----------------------------------------------------------------------
++
++void* XMLPlatformUtils::compareAndSwap(void** toFill
++ , const void* const newValue
++ , const void* const toCompare)
++{
++ XMLMutexLock lockMutex(&atomicOpsMutex);
++
++ void *retVal = *toFill;
++ if (*toFill == toCompare)
++ *toFill = (void *)newValue;
++
++ return retVal;
++}
++
++int XMLPlatformUtils::atomicIncrement(int &location)
++{
++ XMLMutexLock localLock(&atomicOpsMutex);
++
++ return ++location;
++}
++
++int XMLPlatformUtils::atomicDecrement(int &location)
++{
++ XMLMutexLock localLock(&atomicOpsMutex);
++
++ return --location;
++}
++
++#else // #if !defined (APP_NO_THREADS)
++
++void XMLPlatformUtils::platformInit()
++{
++}
++
++void* XMLPlatformUtils::makeMutex()
++{
++ return 0;
++}
++
++void XMLPlatformUtils::closeMutex(void* const mtxHandle)
++{
++}
++
++void XMLPlatformUtils::lockMutex(void* const mtxHandle)
++{
++}
++
++void XMLPlatformUtils::unlockMutex(void* const mtxHandle)
++{
++}
++
++void* XMLPlatformUtils::compareAndSwap (void** toFill,
++ const void* const newValue,
++ const void* const toCompare)
++{
++ void *retVal = *toFill;
++ if (*toFill == toCompare)
++ *toFill = (void *)newValue;
++ return retVal;
++}
++
++int XMLPlatformUtils::atomicIncrement(int &location)
++{
++ return ++location;
++}
++
++int XMLPlatformUtils::atomicDecrement(int &location)
++{
++ return --location;
++}
++
++#endif // APP_NO_THREADS
++
++void XMLPlatformUtils::platformTerm()
++{
++#if !defined(APP_NO_THREADS)
++ // delete the mutex we created
++ closeMutex(atomicOpsMutex.fHandle);
++ atomicOpsMutex.fHandle = 0;
++#endif
++}
++
++#include <xercesc/util/LogicalPath.c>
++
++XERCES_CPP_NAMESPACE_END
diff --git a/textproc/xerces-c/patches/patch-af b/textproc/xerces-c/patches/patch-af
index 1b22f2a4fb6..45e4bacc98b 100644
--- a/textproc/xerces-c/patches/patch-af
+++ b/textproc/xerces-c/patches/patch-af
@@ -1,9 +1,9 @@
-$NetBSD: patch-af,v 1.5 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-af,v 1.6 2006/08/10 13:44:22 abs Exp $
---- Makefile.incl.orig 2003-05-27 15:04:46.000000000 +0000
+--- Makefile.incl.orig 2005-09-07 16:55:53.000000000 +0100
+++ Makefile.incl
-@@ -373,6 +373,21 @@ SHLIBSUFFIX=.so
- LD_SONAME = -Wl,-soname,${SO_NAME}
+@@ -423,6 +423,21 @@ LD_SONAME = -Wl,-soname,${SO_NAME}
+ LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
endif
+#=============== DRAGONFLY SPECIFIC OPTIONS =========================
@@ -24,10 +24,10 @@ $NetBSD: patch-af,v 1.5 2005/12/31 00:56:42 joerg Exp $
#=============== NETBSD SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, NETBSD)
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
-@@ -579,6 +594,11 @@ ifeq (${PLATFORM}, CYGWIN)
+@@ -682,6 +697,11 @@ LINK_LIBNAME=xercesc
+ LIBDEPDOM=libxercesdepdom
endif
-
+ifeq (${TRANSCODER}, IconvGNU)
+ ALLLIBS += -liconv
+endif
diff --git a/textproc/xerces-c/patches/patch-ag b/textproc/xerces-c/patches/patch-ag
index c8655da362a..04480485c95 100644
--- a/textproc/xerces-c/patches/patch-ag
+++ b/textproc/xerces-c/patches/patch-ag
@@ -1,23 +1,28 @@
-$NetBSD: patch-ag,v 1.4 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-ag,v 1.5 2006/08/10 13:44:22 abs Exp $
---- ../../tests/runConfigure.orig 2005-12-30 23:54:50.000000000 +0000
-+++ ../../tests/runConfigure
-@@ -196,7 +196,7 @@ echo "Extra link options: $linkeroptions
- # Now check if the options are correct or not, bail out if incorrect
- #
- case $platform in
-- aix | openserver | unixware | beos | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | os400 | irix | ptx | tru64 | macosx | cygwin | qnx)
-+ aix | openserver | unixware | beos | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | os400 | irix | ptx | tru64 | macosx | cygwin | qnx | dragonfly)
- # platform has been recognized
- ;;
- *)
-@@ -264,6 +264,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"
+--- configure.orig 2005-09-07 16:55:53.000000000 +0100
++++ configure
+@@ -1309,6 +1309,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
+@@ -1520,6 +1521,7 @@ util/Platforms/BeOS/Makefile \
+ util/Platforms/QNX/Makefile \
+ util/Platforms/Interix/Makefile \
+ util/Platforms/Linux/Makefile \
++util/Platforms/DragonFly/Makefile \
+ util/Platforms/FreeBSD/Makefile \
+ util/Platforms/NetBSD/Makefile \
+ util/Platforms/HPUX/Makefile \
+@@ -1681,6 +1683,7 @@ util/Platforms/QNX/Makefile \
+ util/Platforms/Interix/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 \
diff --git a/textproc/xerces-c/patches/patch-ah b/textproc/xerces-c/patches/patch-ah
index 232ae2a3b29..0167e4fe7bd 100644
--- a/textproc/xerces-c/patches/patch-ah
+++ b/textproc/xerces-c/patches/patch-ah
@@ -1,12 +1,14 @@
-$NetBSD: patch-ah,v 1.4 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-ah,v 1.5 2006/08/10 13:44:22 abs Exp $
---- ../../tests/configure.orig 2005-12-30 23:55:36.000000000 +0000
-+++ ../../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 ;;
+--- 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>
diff --git a/textproc/xerces-c/patches/patch-ai b/textproc/xerces-c/patches/patch-ai
index c02b0f66ea9..a67eab06127 100644
--- a/textproc/xerces-c/patches/patch-ai
+++ b/textproc/xerces-c/patches/patch-ai
@@ -1,13 +1,23 @@
-$NetBSD: patch-ai,v 1.4 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-ai,v 1.5 2006/08/10 13:44:22 abs Exp $
---- ../../tests/ThreadTest/ThreadTest.cpp.orig 2005-12-30 23:56:17.000000000 +0000
-+++ ../../tests/ThreadTest/ThreadTest.cpp
-@@ -122,7 +122,7 @@ void ThreadFuncs::startThread(ThreadFunc
- }
+--- runConfigure.orig 2005-09-07 16:55:53.000000000 +0100
++++ runConfigure
+@@ -251,7 +251,7 @@ echo "Extra configure options: $configur
+ #
-
--#elif defined (AIX) || defined(SOLARIS) || defined(LINUX) || defined(HPUX) || defined (OS390) || defined(FREEBSD) || defined(__CYGWIN__) || defined(__QNXNTO__)
-+#elif defined (AIX) || defined(SOLARIS) || defined(LINUX) || defined(HPUX) || defined (OS390) || defined(FREEBSD) || defined(__CYGWIN__) || defined(__QNXNTO__) || defined(DRAGONFLY)
- #include <pthread.h>
- #include <unistd.h>
- #include <errno.h>
+ 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"
diff --git a/textproc/xerces-c/patches/patch-aj b/textproc/xerces-c/patches/patch-aj
index a8e97bdd44f..b9c67421a32 100644
--- a/textproc/xerces-c/patches/patch-aj
+++ b/textproc/xerces-c/patches/patch-aj
@@ -1,26 +1,14 @@
-$NetBSD: patch-aj,v 1.3 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-aj,v 1.4 2006/08/10 13:44:22 abs Exp $
---- ../../tests/Makefile.incl.orig 2005-12-30 23:56:39.000000000 +0000
-+++ ../../tests/Makefile.incl
-@@ -234,6 +234,21 @@ ifeq (${PLATFORM}, FREEBSD)
- SHLIBSUFFIX=.so
- 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
-+ SHLIBSUFFIX=.so
-+endif
-+
- #=============== NETBSD SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, NETBSD)
- CMP= -c ${CXXFLAGS}
+--- 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
diff --git a/textproc/xerces-c/patches/patch-ak b/textproc/xerces-c/patches/patch-ak
index 5b44bebd53b..de414d16a6d 100644
--- a/textproc/xerces-c/patches/patch-ak
+++ b/textproc/xerces-c/patches/patch-ak
@@ -1,26 +1,89 @@
-$NetBSD: patch-ak,v 1.3 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-ak,v 1.4 2006/08/10 13:44:22 abs Exp $
---- ../../samples/Makefile.incl.orig 2005-12-30 23:57:33.000000000 +0000
-+++ ../../samples/Makefile.incl
-@@ -235,6 +235,21 @@ ifeq (${PLATFORM}, FREEBSD)
- SHLIBSUFFIX=.so
- 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
-+ SHLIBSUFFIX=.so
-+endif
+--- 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/>.
++#
++#
+
- #=============== NETBSD SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, NETBSD)
- CMP= -c ${CXXFLAGS}
++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
diff --git a/textproc/xerces-c/patches/patch-al b/textproc/xerces-c/patches/patch-al
index e23d6962247..064e4ff62a1 100644
--- a/textproc/xerces-c/patches/patch-al
+++ b/textproc/xerces-c/patches/patch-al
@@ -1,12 +1,14 @@
-$NetBSD: patch-al,v 1.3 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-al,v 1.4 2006/08/10 13:44:22 abs Exp $
---- ../../samples/configure.orig 2005-12-30 23:58:23.000000000 +0000
-+++ ../../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 ;;
+--- 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
diff --git a/textproc/xerces-c/patches/patch-am b/textproc/xerces-c/patches/patch-am
index 28d1b39b5d9..59744537b16 100644
--- a/textproc/xerces-c/patches/patch-am
+++ b/textproc/xerces-c/patches/patch-am
@@ -1,23 +1,22 @@
-$NetBSD: patch-am,v 1.3 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-am,v 1.4 2006/08/10 13:44:22 abs Exp $
---- ../../samples/runConfigure.orig 2005-12-30 23:58:45.000000000 +0000
-+++ ../../samples/runConfigure
-@@ -196,7 +196,7 @@ echo "Extra link options: $linkeroptions
- # Now check if the options are correct or not, bail out if incorrect
- #
- case $platform in
-- aix | openserver | unixware | beos | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | os400 | irix | ptx | tru64 | macosx | cygwin)
-+ aix | openserver | unixware | beos | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | os400 | irix | ptx | tru64 | macosx | cygwin | dragonfly)
- # platform has been recognized
- ;;
- *)
-@@ -264,6 +264,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"
+--- 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>
diff --git a/textproc/xerces-c/patches/patch-an b/textproc/xerces-c/patches/patch-an
index 4a6fcfbd749..d790a2a8c9c 100644
--- a/textproc/xerces-c/patches/patch-an
+++ b/textproc/xerces-c/patches/patch-an
@@ -1,28 +1,168 @@
-$NetBSD: patch-an,v 1.3 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-an,v 1.4 2006/08/10 13:44:22 abs Exp $
---- configure.orig 2005-12-31 00:00:01.000000000 +0000
-+++ configure
-@@ -1309,6 +1309,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
-@@ -1512,6 +1513,7 @@ util/Platforms/AIX/Makefile \
- util/Platforms/BeOS/Makefile \
- util/Platforms/QNX/Makefile \
- util/Platforms/Linux/Makefile \
-+util/Platforms/DragonFly/Makefile \
- util/Platforms/FreeBSD/Makefile \
- util/Platforms/NetBSD/Makefile \
- util/Platforms/HPUX/Makefile \
-@@ -1669,6 +1671,7 @@ 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/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
diff --git a/textproc/xerces-c/patches/patch-ao b/textproc/xerces-c/patches/patch-ao
index da5ec432ad7..ac653a39d7d 100644
--- a/textproc/xerces-c/patches/patch-ao
+++ b/textproc/xerces-c/patches/patch-ao
@@ -1,23 +1,14 @@
-$NetBSD: patch-ao,v 1.3 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-ao,v 1.4 2006/08/10 13:44:22 abs Exp $
---- runConfigure.orig 2005-12-31 00:00:43.000000000 +0000
-+++ runConfigure
-@@ -227,7 +227,7 @@ echo "Extra configure options: $configur
- #
+--- 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();
+ }
- case $platform in
-- aix | openserver | unixware | beos | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | os400 | irix | ptx | tru64 | macosx | cygwin | qnx)
-+ aix | openserver | unixware | beos | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | os400 | irix | ptx | tru64 | macosx | cygwin | qnx | dragonfly)
- # platform has been recognized
- ;;
- *)
-@@ -305,6 +305,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"
+ template <class TVal>
diff --git a/textproc/xerces-c/patches/patch-ap b/textproc/xerces-c/patches/patch-ap
index f138af714c5..03c789a74a2 100644
--- a/textproc/xerces-c/patches/patch-ap
+++ b/textproc/xerces-c/patches/patch-ap
@@ -1,14 +1,61 @@
-$NetBSD: patch-ap,v 1.3 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-ap,v 1.4 2006/08/10 13:44:22 abs Exp $
---- util/AutoSense.hpp.orig 2005-12-31 00:01:35.000000000 +0000
-+++ util/AutoSense.hpp
-@@ -222,6 +222,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
+--- 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);
+ }
+
diff --git a/textproc/xerces-c/patches/patch-aq b/textproc/xerces-c/patches/patch-aq
index 71b7038ffb3..e7c33a6ab44 100644
--- a/textproc/xerces-c/patches/patch-aq
+++ b/textproc/xerces-c/patches/patch-aq
@@ -1,14 +1,15 @@
-$NetBSD: patch-aq,v 1.1 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-aq,v 1.2 2006/08/10 13:44:22 abs Exp $
---- util/Platforms/Makefile.in.orig 2005-12-31 00:12:22.000000000 +0000
-+++ util/Platforms/Makefile.in
-@@ -172,6 +172,9 @@ endif
- ifeq (${PLATFORM}, FREEBSD)
- SUBMODULE = FreeBSD
- endif
-+ifeq (${PLATFORM}, DRAGONFLY)
-+ SUBMODULE = DragonFly
-+endif
- ifeq (${PLATFORM}, NETBSD)
- SUBMODULE = NetBSD
- endif
+--- 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
diff --git a/textproc/xerces-c/patches/patch-ar b/textproc/xerces-c/patches/patch-ar
index 1d1ec1c6bbb..c5f0b954d7c 100644
--- a/textproc/xerces-c/patches/patch-ar
+++ b/textproc/xerces-c/patches/patch-ar
@@ -1,15 +1,26 @@
-$NetBSD: patch-ar,v 1.1 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-ar,v 1.2 2006/08/10 13:44:22 abs Exp $
---- util/XercesDefs.hpp.orig 2005-12-31 00:13:13.000000000 +0000
-+++ util/XercesDefs.hpp
-@@ -280,6 +280,10 @@
- #include <xercesc/util/Platforms/FreeBSD/FreeBSDDefs.hpp>
- #endif
+--- ../../tests/Makefile.incl.orig 2005-09-07 16:56:40.000000000 +0100
++++ ../../tests/Makefile.incl
+@@ -240,6 +240,21 @@ ifeq (${PLATFORM}, FREEBSD)
+ SHLIBSUFFIX=.so
+ endif
-+#if defined(XML_DRAGONFLY)
-+#include <xercesc/util/Platforms/DragonFly/DragonFlyDefs.hpp>
-+#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
++ SHLIBSUFFIX=.so
++endif
+
- #if defined(XML_OS390)
- #include <xercesc/util/Platforms/OS390/OS390Defs.hpp>
- #endif
+ #=============== NETBSD SPECIFIC OPTIONS =========================
+ ifeq (${PLATFORM}, NETBSD)
+ CMP= -c ${CXXFLAGS}
diff --git a/textproc/xerces-c/patches/patch-as b/textproc/xerces-c/patches/patch-as
index 19696bf4cdd..7bc63fc99a6 100644
--- a/textproc/xerces-c/patches/patch-as
+++ b/textproc/xerces-c/patches/patch-as
@@ -1,74 +1,12 @@
-$NetBSD: patch-as,v 1.1 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-as,v 1.2 2006/08/10 13:44:22 abs Exp $
---- /dev/null 2005-12-31 00:16:10.000000000 +0000
-+++ 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
+--- ../../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 ;;
diff --git a/textproc/xerces-c/patches/patch-at b/textproc/xerces-c/patches/patch-at
index 36077dc4109..adde0612e1e 100644
--- a/textproc/xerces-c/patches/patch-at
+++ b/textproc/xerces-c/patches/patch-at
@@ -1,667 +1,14 @@
-$NetBSD: patch-at,v 1.1 2005/12/31 00:56:42 joerg Exp $
+$NetBSD: patch-at,v 1.2 2006/08/10 13:44:22 abs Exp $
---- /dev/null 2005-12-31 00:16:30.000000000 +0000
-+++ util/Platforms/DragonFly/DragonFlyPlatformUtils.cpp
-@@ -0,0 +1,662 @@
-+/*
-+ * 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/>.
-+ */
-+
-+/*
-+ *
-+ *
-+ */
-+
-+
-+// ---------------------------------------------------------------------------
-+// Includes
-+// ---------------------------------------------------------------------------
-+
-+#if !defined(APP_NO_THREADS)
-+#include <pthread.h>
-+#endif
-+
-+/* #ifndef __USE_UNIX98
-+ #error __USE_UNIX98 is not defined in your compile settings
-+#endif */
-+
-+#include <unistd.h>
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <errno.h>
-+#include <libgen.h>
-+#include <sys/time.h>
-+#include <string.h>
-+#include <strings.h>/* for strcasecmp & strncasecmp */
-+#include <wchar.h> /* for win_t */
-+#include <xercesc/util/PlatformUtils.hpp>
-+#include <xercesc/util/RuntimeException.hpp>
-+#include <xercesc/util/Janitor.hpp>
-+#include <xercesc/util/Mutexes.hpp>
-+#include <xercesc/util/XMLString.hpp>
-+#include <xercesc/util/XMLUniDefs.hpp>
-+#include <xercesc/util/XMLUni.hpp>
-+#include <xercesc/util/PanicHandler.hpp>
-+
-+#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>
-+#endif
-+
-+
-+#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>
-+#endif
-+
-+
-+#if defined (XML_USE_NETACCESSOR_SOCKET)
-+ #include <xercesc/util/NetAccessors/Socket/SocketNetAccessor.hpp>
-+#endif
-+
-+XERCES_CPP_NAMESPACE_BEGIN
-+
-+// ---------------------------------------------------------------------------
-+// Local Methods
-+// ---------------------------------------------------------------------------
-+
-+static void WriteCharStr( FILE* stream, const char* const toWrite)
-+{
-+ if (fputs(toWrite, stream) == EOF)
-+ {
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::Strm_StdErrWriteFailure);
-+ }
-+}
-+
-+static void WriteUStrStdErr( const XMLCh* const toWrite)
-+{
-+ char* tmpVal = XMLString::transcode(toWrite);
-+ ArrayJanitor<char> janText(tmpVal);
-+ if (fputs(tmpVal, stderr) == EOF)
-+ {
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::Strm_StdErrWriteFailure);
-+ }
-+}
-+
-+static void WriteUStrStdOut( const XMLCh* const toWrite)
-+ {
-+ char* tmpVal = XMLString::transcode(toWrite);
-+ ArrayJanitor<char> janText(tmpVal);
-+ if (fputs(tmpVal, stdout) == EOF)
-+ {
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::Strm_StdOutWriteFailure);
-+ }
-+}
-+
-+XMLNetAccessor* XMLPlatformUtils::makeNetAccessor()
-+{
-+#if defined (XML_USE_NETACCESSOR_SOCKET)
-+ return new SocketNetAccessor();
-+#else
-+ return 0;
-+#endif
-+}
-+
-+// ---------------------------------------------------------------------------
-+// XMLPlatformUtils: Private Static Methods
-+// ---------------------------------------------------------------------------
-+
-+//
-+// This method is called by the platform independent part of this class
-+// when client code asks to have one of the supported message sets loaded.
-+//
-+
-+XMLMsgLoader* XMLPlatformUtils::loadAMsgSet(const XMLCh* const msgDomain)
-+{
-+ XMLMsgLoader* retVal;
-+ try
-+ {
-+#if defined (XML_USE_ICU_MESSAGELOADER)
-+ retVal = new ICUMsgLoader(msgDomain);
-+#elif defined (XML_USE_ICONV_MESSAGELOADER)
-+ retVal = new MsgCatalogLoader(msgDomain);
-+#else
-+ // same as -DXML_USE_INMEM_MESSAGELOADER
-+ retVal = new InMemMsgLoader(msgDomain);
-+#endif
-+ }
-+
-+ catch(...)
-+ {
-+ panic(PanicHandler::Panic_CantLoadMsgDomain);
-+ }
-+ return retVal;
-+}
-+
-+
-+//
-+// This method is called very early in the bootstrapping process. This guy
-+// must create a transcoding service and return it. It cannot use any string
-+// methods, any transcoding services, throw any exceptions, etc... It just
-+// makes a transcoding service and returns it, or returns zero on failure.
-+//
-+
-+XMLTransService* XMLPlatformUtils::makeTransService()
-+{
-+#if defined (XML_USE_ICU_TRANSCODER)
-+ // Use ICU transcoding services.
-+ // same as -DXML_USE_ICU_MESSAGELOADER
-+ return new ICUTransService;
-+#elif defined (XML_USE_GNU_TRANSCODER)
-+ return new IconvGNUTransService;
-+#else
-+ // Use native transcoding services.
-+ // same as -DXML_USE_INMEM_MESSAGELOADER
-+ return new IconvTransService;
-+
-+#endif
-+}
-+
-+// ---------------------------------------------------------------------------
-+// XMLPlatformUtils: The panic method
-+// ---------------------------------------------------------------------------
-+void XMLPlatformUtils::panic(const PanicHandler::PanicReasons reason)
-+{
-+ fgUserPanicHandler? fgUserPanicHandler->panic(reason) : fgDefaultPanicHandler->panic(reason);
-+}
-+
-+
-+// ---------------------------------------------------------------------------
-+// XMLPlatformUtils: File Methods
-+// ---------------------------------------------------------------------------
-+
-+unsigned int XMLPlatformUtils::curFilePos(FileHandle theFile)
-+{
-+ if (theFile == NULL)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ int curPos = ftell( (FILE*)theFile);
-+ if (curPos == -1)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotGetSize);
-+
-+ return (unsigned int)curPos;
-+}
-+
-+void XMLPlatformUtils::closeFile(FileHandle theFile)
-+{
-+ if (theFile == NULL)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ if (fclose((FILE*)theFile))
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotCloseFile);
-+}
-+
-+unsigned int XMLPlatformUtils::fileSize(FileHandle theFile)
-+{
-+ if (theFile == NULL)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ // Get the current position
-+ long int curPos = ftell((FILE*) theFile);
-+ if (curPos == -1)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotGetCurPos);
-+
-+ // Seek to the end and save that value for return
-+ if (fseek((FILE*) theFile, 0, SEEK_END))
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotSeekToEnd);
-+
-+ long int retVal = ftell((FILE*)theFile);
-+ if (retVal == -1)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotSeekToEnd);
-+
-+ // And put the pointer back
-+
-+ if (fseek( (FILE*)theFile, curPos, SEEK_SET) )
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotSeekToPos);
-+
-+ return (unsigned int)retVal;
-+}
-+
-+FileHandle XMLPlatformUtils::openFile(const XMLCh* const fileName)
-+{
-+ if (fileName == NULL)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ const char* tmpFileName = XMLString::transcode(fileName);
-+ ArrayJanitor<char> janText((char*)tmpFileName);
-+ FileHandle retVal = (FILE*)fopen( tmpFileName , "r+" );
-+
-+ if (retVal == NULL)
-+ return 0;
-+ return retVal;
-+}
-+
-+FileHandle XMLPlatformUtils::openFile(const char* const fileName)
-+{
-+ if (fileName == NULL)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ FileHandle retVal = (FILE*)fopen( fileName , "r+" );
-+
-+ if (retVal == NULL)
-+ return 0;
-+ return retVal;
-+}
-+
-+FileHandle XMLPlatformUtils::openFileToWrite(const XMLCh* const fileName)
-+{
-+ if (fileName == NULL)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ const char* tmpFileName = XMLString::transcode(fileName);
-+ ArrayJanitor<char> janText((char*)tmpFileName);
-+
-+ FileHandle retVal = (FILE*)fopen( tmpFileName, "r+" );
-+ if (retVal == NULL)
-+ return 0;
-+ return retVal;
-+}
-+
-+FileHandle XMLPlatformUtils::openFileToWrite(const char* const fileName)
-+{
-+ if (fileName == NULL)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ FileHandle retVal = (FILE*)fopen( fileName, "r+" );
-+
-+ if (retVal == NULL)
-+ return 0;
-+ return retVal;
-+}
-+
-+FileHandle XMLPlatformUtils::openStdInHandle()
-+{
-+ int nfd = dup(0);
-+ if (nfd == -1)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotDupHandle);
-+ return (FileHandle)fdopen(dup(0), "r");
-+}
-+
-+
-+
-+unsigned int
-+XMLPlatformUtils::readFileBuffer( FileHandle theFile
-+ , const unsigned int toRead
-+ , XMLByte* const toFill)
-+{
-+ if ( !theFile || !toFill )
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ if (toRead == 0)
-+ return 0;
-+ size_t noOfItemsRead = fread((void*) toFill, 1, toRead, (FILE*)theFile);
-+
-+ if(ferror((FILE*)theFile))
-+ {
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotReadFromFile);
-+ }
-+
-+ return (unsigned int)noOfItemsRead;
-+}
-+
-+void XMLPlatformUtils::writeBufferToFile( FileHandle const theFile
-+ , long toWrite
-+ , const XMLByte* const toFlush )
-+{
-+ if ( !theFile || !toFlush )
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ if ( toWrite <= 0 )
-+ return;
-+
-+ const XMLByte* tmpFlush = (const XMLByte*) toFlush;
-+ size_t bytesWritten = 0;
-+
-+ while (true)
-+ {
-+ bytesWritten = fwrite(tmpFlush, sizeof(XMLByte), toWrite, (FILE*)theFile);
-+
-+ if(ferror((FILE*)theFile))
-+ {
-+#if 0
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotWriteToFile);
-+#else
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotReadFromFile);
-+#endif
-+ }
-+
-+ if (bytesWritten < (size_t) toWrite) //incomplete write
-+ {
-+ tmpFlush += bytesWritten;
-+ toWrite -= bytesWritten;
-+ bytesWritten = 0;
-+ }
-+ else
-+ return;
-+ }
-+}
-+
-+void XMLPlatformUtils::resetFile(FileHandle theFile)
-+{
-+ if (theFile == NULL)
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::CPtr_PointerIsZero);
-+ // Seek to the start of the file
-+ if (fseek((FILE*)theFile, 0, SEEK_SET))
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotResetFile);
-+}
-+
-+
-+// ---------------------------------------------------------------------------
-+// XMLPlatformUtils: Timing Methods
-+// ---------------------------------------------------------------------------
-+
-+unsigned long XMLPlatformUtils::getCurrentMillis()
-+{
-+ struct timeval t;
-+ struct timezone tz;
-+
-+ gettimeofday(&t, &tz);
-+ return (unsigned long)(t.tv_sec*1000 + t.tv_usec);
-+}
-+
-+XMLCh* XMLPlatformUtils::getFullPath(const XMLCh* const srcPath, MemoryManager* const)
-+{
-+
-+ //
-+ // NOTE: THe path provided has always already been opened successfully,
-+ // so we know that its not some pathological freaky path. It comes in
-+ // in native format, and goes out as Unicode always
-+ //
-+ char* newSrc = XMLString::transcode(srcPath);
-+ ArrayJanitor<char> janText(newSrc);
-+
-+ // Use a local buffer that is big enough for the largest legal path
-+ char *absPath = new char[1024];
-+ // get the absolute path
-+ char* retPath = realpath(newSrc, absPath);
-+ ArrayJanitor<char> janText2(retPath);
-+
-+ if (!retPath)
-+ {
-+ ThrowXML(XMLPlatformUtilsException, XMLExcepts::File_CouldNotGetBasePathName);
-+ }
-+ return XMLString::transcode(absPath);
-+}
-+
-+bool XMLPlatformUtils::isRelative(const XMLCh* const toCheck)
-+{
-+ // Check for pathological case of empty path
-+ if (!toCheck[0])
-+ return false;
-+
-+ //
-+ // If it starts with a slash, then it cannot be relative. This covers
-+ // both something like "\Test\File.xml" and an NT Lan type remote path
-+ // that starts with a node like "\\MyNode\Test\File.xml".
-+ //
-+ if (toCheck[0] == XMLCh('/'))
-+ return false;
-+
-+ // Else assume its a relative path
-+ return true;
-+}
-+
-+XMLCh* XMLPlatformUtils::getCurrentDirectory(MemoryManager* const)
-+{
-+ char dirBuf[PATH_MAX + 1];
-+ char *curDir = getcwd(&dirBuf[0], PATH_MAX + 1);
-+
-+ if (!curDir)
-+ {
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::File_CouldNotGetBasePathName);
-+ }
-+
-+ return XMLString::transcode(curDir);
-+}
-+
-+inline bool XMLPlatformUtils::isAnySlash(XMLCh c)
-+{
-+ return ( chBackSlash == c || chForwardSlash == c);
-+}
-+
-+
-+// -----------------------------------------------------------------------
-+// Mutex methods
-+// -----------------------------------------------------------------------
-+
-+#if !defined(APP_NO_THREADS)
-+
-+// ---------------------------------------------------------------------------
-+// XMLPlatformUtils: Platform init method
-+// ---------------------------------------------------------------------------
-+
-+static XMLMutex atomicOpsMutex;
-+
-+void XMLPlatformUtils::platformInit()
-+{
-+ //
-+ // The atomicOps mutex needs to be created early.
-+ // Normally, mutexes are created on first use, but there is a
-+ // circular dependency between compareAndExchange() and
-+ // mutex creation that must be broken.
-+
-+ if (atomicOpsMutex.fHandle == 0)
-+ atomicOpsMutex.fHandle = XMLPlatformUtils::makeMutex();
-+}
-+
-+void* XMLPlatformUtils::makeMutex()
-+{
-+ pthread_mutex_t* mutex = new pthread_mutex_t;
-+ pthread_mutexattr_t* attr = new pthread_mutexattr_t;
-+ pthread_mutexattr_init(attr);
-+ pthread_mutexattr_settype(attr, PTHREAD_MUTEX_RECURSIVE);
-+ if (pthread_mutex_init(mutex, attr))
-+ {
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::Mutex_CouldNotCreate);
-+ }
-+ pthread_mutexattr_destroy(attr);
-+ delete attr;
-+ return (void*)(mutex);
-+
-+}
-+
-+void XMLPlatformUtils::closeMutex(void* const mtxHandle)
-+{
-+ if (mtxHandle != NULL)
-+ {
-+ if (pthread_mutex_destroy((pthread_mutex_t*) mtxHandle))
-+ {
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::Mutex_CouldNotDestroy);
-+ }
-+ delete (pthread_mutex_t*)mtxHandle;
-+ }
-+}
-+
-+
-+void XMLPlatformUtils::lockMutex(void* const mtxHandle)
-+{
-+ if (mtxHandle != NULL)
-+ {
-+ if (pthread_mutex_lock((pthread_mutex_t*) mtxHandle))
-+ {
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::Mutex_CouldNotLock);
-+ }
-+ }
-+}
-+
-+
-+void XMLPlatformUtils::unlockMutex(void* const mtxHandle)
-+{
-+ if (mtxHandle != NULL)
-+ {
-+ if (pthread_mutex_unlock((pthread_mutex_t*) mtxHandle))
-+ {
-+ ThrowXML(XMLPlatformUtilsException,
-+ XMLExcepts::Mutex_CouldNotUnlock);
-+ }
-+ }
-+}
-+
-+
-+// -----------------------------------------------------------------------
-+// Miscellaneous synchronization methods
-+// -----------------------------------------------------------------------
-+
-+void* XMLPlatformUtils::compareAndSwap(void** toFill
-+ , const void* const newValue
-+ , const void* const toCompare)
-+{
-+ XMLMutexLock lockMutex(&atomicOpsMutex);
-+
-+ void *retVal = *toFill;
-+ if (*toFill == toCompare)
-+ *toFill = (void *)newValue;
-+
-+ return retVal;
-+}
-+
-+int XMLPlatformUtils::atomicIncrement(int &location)
-+{
-+ XMLMutexLock localLock(&atomicOpsMutex);
-+
-+ return ++location;
-+}
-+
-+int XMLPlatformUtils::atomicDecrement(int &location)
-+{
-+ XMLMutexLock localLock(&atomicOpsMutex);
-+
-+ return --location;
-+}
-+
-+#else // #if !defined (APP_NO_THREADS)
-+
-+void XMLPlatformUtils::platformInit()
-+{
-+}
-+
-+void* XMLPlatformUtils::makeMutex()
-+{
-+ return 0;
-+}
-+
-+void XMLPlatformUtils::closeMutex(void* const mtxHandle)
-+{
-+}
-+
-+void XMLPlatformUtils::lockMutex(void* const mtxHandle)
-+{
-+}
-+
-+void XMLPlatformUtils::unlockMutex(void* const mtxHandle)
-+{
-+}
-+
-+void* XMLPlatformUtils::compareAndSwap (void** toFill,
-+ const void* const newValue,
-+ const void* const toCompare)
-+{
-+ void *retVal = *toFill;
-+ if (*toFill == toCompare)
-+ *toFill = (void *)newValue;
-+ return retVal;
-+}
-+
-+int XMLPlatformUtils::atomicIncrement(int &location)
-+{
-+ return ++location;
-+}
-+
-+int XMLPlatformUtils::atomicDecrement(int &location)
-+{
-+ return --location;
-+}
-+
-+#endif // APP_NO_THREADS
-+
-+void XMLPlatformUtils::platformTerm()
-+{
-+#if !defined(APP_NO_THREADS)
-+ // delete the mutex we created
-+ closeMutex(atomicOpsMutex.fHandle);
-+ atomicOpsMutex.fHandle = 0;
-+#endif
-+}
-+
-+#include <xercesc/util/LogicalPath.c>
-+
-+XERCES_CPP_NAMESPACE_END
+--- ../../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"
diff --git a/textproc/xerces-c/patches/patch-au b/textproc/xerces-c/patches/patch-au
deleted file mode 100644
index 170f644d614..00000000000
--- a/textproc/xerces-c/patches/patch-au
+++ /dev/null
@@ -1,89 +0,0 @@
-$NetBSD: patch-au,v 1.1 2005/12/31 00:56:42 joerg Exp $
-
---- /dev/null 2005-12-31 00:15:57.000000000 +0000
-+++ 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
diff --git a/textproc/xerces-c/patches/patch-av b/textproc/xerces-c/patches/patch-av
deleted file mode 100644
index a739b1abdb4..00000000000
--- a/textproc/xerces-c/patches/patch-av
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-av,v 1.1 2005/12/31 00:56:42 joerg Exp $
-
---- util/RefVectorOf.c.orig 2005-12-31 00:35:24.000000000 +0000
-+++ util/RefVectorOf.c
-@@ -136,7 +136,7 @@ template <class TElem> RefVectorOf<TElem
- for (unsigned int index = 0; index < this->fCurCount; index++)
- delete this->fElemList[index];
- }
-- fMemoryManager->deallocate(this->fElemList);//delete [] this->fElemList;
-+ this->fMemoryManager->deallocate(this->fElemList);//delete [] this->fElemList;
- }
-
-
diff --git a/textproc/xerces-c/patches/patch-aw b/textproc/xerces-c/patches/patch-aw
deleted file mode 100644
index 55901cf1a32..00000000000
--- a/textproc/xerces-c/patches/patch-aw
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD: patch-aw,v 1.1 2005/12/31 00:56:42 joerg Exp $
-
---- util/RefArrayVectorOf.c.orig 2005-12-31 00:36:54.000000000 +0000
-+++ util/RefArrayVectorOf.c
-@@ -22,12 +22,12 @@ RefArrayVectorOf<TElem>::RefArrayVectorO
-
- template <class TElem> RefArrayVectorOf<TElem>::~RefArrayVectorOf()
- {
-- if (fAdoptedElems)
-+ if (this->fAdoptedElems)
- {
-- for (unsigned int index = 0; index < fCurCount; index++)
-- fMemoryManager->deallocate(fElemList[index]);//delete[] fElemList[index];
-+ for (unsigned int index = 0; index < this->fCurCount; index++)
-+ this->fMemoryManager->deallocate(this->fElemList[index]);//delete[] fElemList[index];
- }
-- fMemoryManager->deallocate(fElemList);//delete [] fElemList;
-+ this->fMemoryManager->deallocate(this->fElemList);//delete [] fElemList;
- }
-
-
diff --git a/textproc/xerces-c/patches/patch-ax b/textproc/xerces-c/patches/patch-ax
deleted file mode 100644
index a5cef1208a7..00000000000
--- a/textproc/xerces-c/patches/patch-ax
+++ /dev/null
@@ -1,171 +0,0 @@
-$NetBSD: patch-ax,v 1.1 2005/12/31 00:56:42 joerg Exp $
-
---- util/RefArrayOf.c.orig 2005-12-31 00:39:18.000000000 +0000
-+++ util/RefArrayOf.c
-@@ -105,9 +105,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>
-@@ -119,9 +119,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>::
-@@ -131,14 +131,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;
- }
-
-
-@@ -148,9 +148,9 @@ template <class TElem> RefArrayOf<TElem>
- template <class TElem> TElem*& RefArrayOf<TElem>::
- operator[](const unsigned int index)
- {
-- if (index >= fSize)
-+ if (index >= this->fSize)
- ThrowXML(ArrayIndexOutOfBoundsException, XMLExcepts::Array_BadIndex);
-- return fArray[index];
-+ return this->fArray[index];
- }
-
- template <class TElem> const TElem* RefArrayOf<TElem>::
-@@ -158,7 +158,7 @@ operator[](const unsigned int index) con
- {
- if (index >= fSize)
- ThrowXML(ArrayIndexOutOfBoundsException, XMLExcepts::Array_BadIndex);
-- return fArray[index];
-+ return this->fArray[index];
- }
-
- template <class TElem> RefArrayOf<TElem>& RefArrayOf<TElem>::
-@@ -170,14 +170,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;
- }
-@@ -248,16 +248,16 @@ template <class TElem> void RefArrayOf<T
- if (index >= fSize)
- ThrowXML(ArrayIndexOutOfBoundsException, XMLExcepts::Array_BadIndex);
-
-- 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;
- }
- }
-
-@@ -270,7 +270,7 @@ template <class TElem> void RefArrayOf<T
- ThrowXML(IllegalArgumentException, XMLExcepts::Array_BadNewSize);
-
- // Allocate the new array
-- TElem** newArray = (TElem**) fMemoryManager->allocate
-+ TElem** newArray = (TElem**) this->fMemoryManager->allocate
- (
- newSize * sizeof(TElem*)
- );//new TElem*[newSize];
-@@ -278,15 +278,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;
- }
-
-
-@@ -307,7 +307,7 @@ RefArrayEnumerator( RefArrayOf<T
- template <class TElem> RefArrayEnumerator<TElem>::~RefArrayEnumerator()
- {
- if (fAdopted)
-- delete fToEnum;
-+ delete this->fToEnum;
- }
-
-
-@@ -316,19 +316,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