>>Before submitting the changes, how about just giving everyone a discussion >>of what was required to make it work. This would give us a chance to >>comment on what you've done and, if we feel something needs to be changed >>before accepting it, that you can make those changes and test them out >>before submitting.
Sorry for the lack of info in the original post. I was none too sure what the protocol was and didn't want to bombard the list with a very lengthy (and probably unwanted) initial posting. (Takes a deep breath, here goes ...) The Tru64 port is currently being hosted on an AlphaServer 4100 5/400 running Digital Unix/Compaq Tru64 V4.0f (Rev 1229) with 2048Mb of physical memory. The latest version of Xerces-C was used (1.1.0). The build environment consists of :- Compaq C++ V6.2-024 for Digital Unix V40.f GNU Make V3.77 GNU autoconf V2.13 GNU m4 V1.4 1) Compiler Support Created src/util/Compilers/DECCXXDefs.hpp and DECCXXDefs.cpp Standard typedefs for XMLCh et al, plus implementation of stricmp & strnicmp. 2) Platform Support Created src/util/Platform/Tru64/Tru64Defs.hpp and Tru64PlatformUtils.cpp Defines ENDIANMODE_LITTLE (Tru64Defs.hpp) and the required Platform utilities. I based these on the Solaris version; the only major change required was to base XMLPlatformUtils::getCurrentMillis () on the use of clock_gettime (CLOCK_REALTIME, &) rather than ftime which requires _XOPEN_SOURCE_EXTENDED to be defined and thus messes up thread support. 3) Overall XML and Autosense Support Modified src/util/XML4CDefs.hpp Includes Tru64Defs.hpp and DECCXXDefs.hpp if XML_TRU64 is defined. Modified src/util/AutoSense.hpp Defines XML_TRU64 if __alpha and __osf__ are defined. Defines XML_DECCXX is XML_TRU64 and __DECCXX are defined. 4) Makefile Changes Modified src/util/Platforms/Makefile.in Added macro definitions for SUBMODULE, CPP_PUBHEADERS and CPP_OBJECTS if the PLATFORM macro is set to TRU64 Modified src/util/Compilers/Makefile.in Added DECCXXDefs.hpp to CPP_PUBHEADERS macro Added macro definition for CPP_OBJECTS if CXX macro is set to cxx and the PLATFORM macro is set to TRU64. Modified src/Makefile.incl Added compiler options if the PLATFORM macro is set to TRU64. The main additional compiler switch required was to create a (hidden) template instantiation directory ($XERCESCROOT/.cxx_repository using the -ptr switch. Other macro definition are as for Solaris. Modified src/configure.in Added trapping of *-*-osf* and setting the PLATFORM macro to TRU64 when checking for the host type. Modified src/runConfigure Added support for -p tru64 and -x cxx. 5) Building With the above changes in place I built the system as follows $ make distclean $ autoconf $ ./runConfigure -ptru64 -ccc -xcxx -minmem -nfileonly -tnative $ make $ make install 6) Samples Modified samples/runConfigure, configure.in and Makefile.incl. As discussed above. >>On the subject of the mixed signed/unsigned stuff, yes those are being >>removed as time goes by. I think that most of them are gone in the current >>code base. And, BTW, what code base have you been working against? We'd >>definitely want any submitted changes to be against the most recent code >>base. For the code base stuff see right at the top of this post. These are the source/header files that DEC CXX got stroppy about. Signed/unsigned integer conversions and pointless comparisons IConvTransService.cpp XMLScanner2.cpp XMLValidator.cpp DOMString.cpp NodeVector.cpp TextImpl.cpp CMNode.hpp CMLeaf.hpp DFAContentModel.cpp Unreachable statements: XMLReader.cpp XMLScanner2.cpp NamedNodeMapImpl.cpp DTDValidator2.cpp Let me know what you think. All the best Gary -- Gary Gale Mail: [EMAIL PROTECTED] UK Server Group Phone: +44 (0) 171 542 8814 Factiva, A Dow Jones & Reuters Company Web: www.factiva.com