You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2002/11/13 14:13:38 UTC

DO NOT REPLY [Bug 14501] New: - Cannot compile Xalan on Solaris with STLport

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14501>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14501

Cannot compile Xalan on Solaris with STLport

           Summary: Cannot compile Xalan on Solaris with STLport
           Product: XalanC
           Version: 1.4.x
          Platform: Other
        OS/Version: Other
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: XalanC
        AssignedTo: xalan-dev@xml.apache.org
        ReportedBy: dominik.stadler@gmx.at


Bug 6791 discussed compiling Xalan with STLport. The result was to change
documentation to not use STLport on Solaris any more. 

I cannot do that as all our software is built with STLport and therefore we get
problems during runtime if Xalan is not compiled with STLport.

In our tests, the following changes are required to compile Xalan 1.4 with
STLport 4.5.3:

1. std::streamsize is not defined anymore in _iosfwd.h of STLport 4.5.3;
   therefore it got replaced by int in file
   PlatformSupport/XalanStdOutputStream.hpp

2. The following classes don't allow/require to be qualified by
   namespace std in STLport 4.5.3:
     std::hex, std::cin, std::cout, std::cerr, std::endl
   so we just removed the using directive in files
     PlatformSupport/DOMStringHelper.cpp
     TestXSLT/process.cpp
     XalanExe/XalanExe.cpp
     XercesParserLiaison/XercesParserLiaison.cpp
     XPath/XPathEnvSupportDefault.cpp

3. In file XalanTransformer/XalanCAPI.cpp, the istrstream constructor
   requires a char * to be passed, whereas the functions
   XalanCompileStylesheetFromStream() and XalanParseSourceFromStream()
   receive a const char * parameter. Therefore we added an explicit
   cast, since we can be sure that istrstream doesn't change the
   specified string.

4. std::istream::readsome() is not available but used in 
   	PlatformSupport/StdBinInputStream.
   We changed this file to use the code that uses read().