You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-users@xalan.apache.org by "Bossom, John" <Jo...@Cognos.COM> on 2004/01/08 22:05:39 UTC

Building Xalan 1.2 on HP/UX with aCC A.03.33 and STLport 4.5

Xalan 1.2 has only one macro to enable or disable the use of namespaces...

i.e. XALAN_NO_NAMESPACES

This is all fine when building on HP/UX with either -AP (classic STL) or
-AA (standard STL) by defining XALAN_NO_NAMESPACES for -AP and undefining
it for -AA...

However, the combination of using -AP with STLport 4.5 (configured to use
old iostreams from the OS) results in the a mix.
Basically, the STL containers are all in the "std" namespace as defined by
STLport,
however, the IO entities are not, as they come directly from the OS...

As a result, the only way I can think of to get this to build is to
introduce
a new macro, XALAN_NO_IO_NAMESPACES to control the use of the namespace std
on io streams, etc...
By default XALAN_NO_IO_NAMESPACES is defined if XALAN_NO_NAMESPACES is
defined.

For HP-UX, if _HP_NAMESPACE_STD is defined, then -AA was used and everything
is
in the namespace 'std'; otherwise -AP is used (the default) and nothing is
in 'std'
as far as the os is concerned. If STLport is subsequently used, then I 
#undef XALAN_NO_NAMESPACES
#define XALAN_NO_IO_NAMESPACES

I had to go through many of the files to change the use of
XALAN_NO_NAMESPACES to
XALAN_NO_IO_NAMESPACES in order to affect this change.

Question: is there a better way? I am stuck with Xalan 1.2 and HP/UX 3.33
with -AP
          and I'm using STLport in order to work around old issues from the
OS' STL...

Comments?

Thanks,

John E. Bossom
John.Bossom@cognos.com
COGNOS Incorportated



This message may contain privileged and/or confidential information.  If you
have received this e-mail in error or are not the intended recipient, you
may not use, copy, disseminate or distribute it; do not open any
attachments, delete it immediately from your system and notify the sender
promptly by e-mail that you have done so.  Thank you.

Re: Building Xalan 1.2 on HP/UX with aCC A.03.33 and STLport 4.5

Posted by da...@us.ibm.com.



Hi John,

You can look at what we've done in the latest code, but it's pretty much
what you've concluded.  We now have a macro called XALAN_CLASSIC_IOSTREAMS
to differentiate between using the std  namespace and any particular
IOstreams implementation.

By the way, you really should plan an upgrade to a later version of Xalan
sometime soon.  Version 1.2 is quite long in the tooth, and has a number of
bugs.

Hope that helps...

Dave



                                                                                                                                 
                      "Bossom, John"                                                                                             
                      <John.Bossom@Cog         To:      "'xalan-c-users@xml.apache.org'" <xa...@xml.apache.org>          
                      nos.COM>                 cc:      "Rasmussen, Glenn" <Gl...@Cognos.COM>, "Bossom, John"          
                                               <Jo...@Cognos.COM>, (bcc: David N Bertoni/Cambridge/IBM)                    
                      01/08/2004 01:05         Subject: Building Xalan 1.2 on HP/UX with aCC A.03.33 and STLport 4.5             
                      PM                                                                                                         
                      Please respond                                                                                             
                      to xalan-c-users                                                                                           
                                                                                                                                 






Xalan 1.2 has only one macro to enable or disable the use of namespaces...


i.e. XALAN_NO_NAMESPACES


This is all fine when building on HP/UX with either -AP (classic STL) or
-AA (standard STL) by defining XALAN_NO_NAMESPACES for -AP and undefining
it for -AA...


However, the combination of using -AP with STLport 4.5 (configured to use
old iostreams from the OS) results in the a mix.
Basically, the STL containers are all in the "std" namespace as defined by
STLport,
however, the IO entities are not, as they come directly from the OS...


As a result, the only way I can think of to get this to build is to
introduce
a new macro, XALAN_NO_IO_NAMESPACES to control the use of the namespace std

on io streams, etc...
By default XALAN_NO_IO_NAMESPACES is defined if XALAN_NO_NAMESPACES is
defined.


For HP-UX, if _HP_NAMESPACE_STD is defined, then -AA was used and
everything is
in the namespace 'std'; otherwise -AP is used (the default) and nothing is
in 'std'
as far as the os is concerned. If STLport is subsequently used, then I
#undef XALAN_NO_NAMESPACES
#define XALAN_NO_IO_NAMESPACES


I had to go through many of the files to change the use of
XALAN_NO_NAMESPACES to
XALAN_NO_IO_NAMESPACES in order to affect this change.


Question: is there a better way? I am stuck with Xalan 1.2 and HP/UX 3.33
with -AP
          and I'm using STLport in order to work around old issues from the
OS' STL...


Comments?


Thanks,


John E. Bossom
John.Bossom@cognos.com
COGNOS Incorportated






This message may contain privileged and/or confidential information.  If
you have received this e-mail in error or are not the intended recipient,
you may not use, copy, disseminate or distribute it; do not open any
attachments, delete it immediately from your system and notify the sender
promptly by e-mail that you have done so.  Thank you.