Lee Doron created XERCESC-2034:
----------------------------------

             Summary: Unify Xerces headers in binary distributions
                 Key: XERCESC-2034
                 URL: https://issues.apache.org/jira/browse/XERCESC-2034
             Project: Xerces-C++
          Issue Type: Improvement
          Components: Miscellaneous
    Affects Versions: 3.1.1
         Environment: All
            Reporter: Lee Doron
            Priority: Minor
             Fix For: 3.2.0


The header files in the binary distributions for various platforms currently 
vary, containing some platform-specific files that are not included on other 
platforms. For example, some headers for Mac OS X are not included in the 
Windows distributions. This gets in the way when using Xerces from a 
multi-platform project.

I suggest that you create the union of all the headers, and include the same 
set with all binary distributions. The only really troublesome one that 
overlaps the platforms is util/Xerces_autoconf_config.hpp. I suggest that you 
do as I did. I moved each one into a platform-specific subdirectory, and 
created a new version of the file that uses conditional compilations as follows 
(using some symbols defined by our project):

{code}
#if !defined(_I86_)
  #error "Must customize util/Xerces_autoconf_config.hpp for architecture."
#endif

#if defined(__WIN32__) && defined(__MICROSOFT__)
  #include "xercesc/util/Win32/Xerces_autoconf_config.hpp"
#elif defined(_MACINTOSH_) && defined(__GNUC__)
  #include "xercesc/util/Mac/Xerces_autoconf_config.hpp"
#elif defined(_UNIX_) && defined(__GNUC__)
  #include "xercesc/util/Linux/Xerces_autoconf_config.hpp"
#else
  #error "Must customize util/Xerces_autoconf_config.hpp for OS & compiler."
#endif
{code}




--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to