Il 04/06/13 22:43, Huantes, Dan F (TASC) ha scritto:
Mike,
I extracted the following from the CMakeLists.txt file I created for
Xerces 3.1.1 for generation of Visual Studio 8,9,10, and 11 project
files. Might help you get started.... Unfortunately I didn't write
down what they were all for...
set (Xerces_DEFINES
-DXERCES_BUILDING_LIBRARY
defined on Windows to use the proper __declspec(dllexport)/(dllimport)
in the headers; but, if XERCES_STATIC_LIBRARY is defined, they are not
generated as the final product is not a DLL but a LIB file
-DXERCES_USE_TRANSCODER_WINDOWS
enable the transcoder that uses the Windows APIs; other choices are
XERCES_USE_TRANSCODER_ICU, XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER,
XERCES_USE_TRANSCODER_GNUICONV, or XERCES_USE_TRANSCODER_ICONV
-DXERCES_USE_WIN32_MSGLOADER
enable the message loader that uses the Windows resources; other
choices are XERCES_USE_MSGLOADER_ICU, XERCES_USE_MSGLOADER_ICONV or
XERCES_USE_MSGLOADER_INMEMORY
-DXERCES_USE_NETACCESSOR_WINSOCK
enable the network accessor that uses the Winsock API; other choices are
XERCES_USE_NETACCESSOR_CURL, XERCES_USE_NETACCESSOR_CFURL, or
XERCES_USE_NETACCESSOR_SOCKET
-DXERCES_USE_FILEMGR_WINDOWS
enable the file manager for Windows file system; the other option is
XERCES_USE_FILEMGR_POSIX
-DXERCES_USE_MUTEXMGR_WINDOWS
enable the mutex manager that uses the Windows APIs; other choices are
XERCES_USE_MUTEXMGR_NOTHREAD and XERCES_USE_MUTEXMGR_POSIX
-DXERCES_PATH_DELIMITER_BACKSLASH
define the \ character as path separator
WITH_IPV6 enables the IPv6 addresses in the network accessor
XERCES_HAVE_SSE2_INTRINSIC enables the usage of assembly-like SIMD
instructions to speed up processing
The HAVE_xxxx macros define whether the compiler has a specific header
file (limits.h, sys/timeb.h) or functions (stricmp, strnicmp..)
-DHAVE_STRICMP
-DHAVE_STRNICMP
-DHAVE_LIMITS_H
-DHAVE_SYS_TIMEB_H
-DHAVE_FTIME
-DHAVE_WCSUPR
-DHAVE_WCSLWR
-DHAVE_WCSICMP
-DHAVE_WCSNICMP
)
If XERCES_TMPLSINC is defined, the code for the templates is included in
the header file where they are declared, otherwise they are compiled
from a separacte C file (necessary for some very old and odd compiler)
The PROJ_xxxx macros were used in v2.8 to include/exclude part of the
code, e.g. excluding DOM or SAX from the built library.
Hope this helps,
Alberto