cmake: Add CMake build system
- Reimplement the entirely of the autoconf, automake, libtool and pkg-config logic, including all feature tests - Also include the MSVC logic missing from the above - Include a full set of unit tests to reimplement the logic in sanityTest.pl and the data in sanityTest_ExpectedResult.logs - Obtain versioning information from configure.ac and version.incl - Generate and install exported CMake configuration for use by downstream projects using CMake, to replace FindXercesC.cmake provided by the CMake upstream - Install documentation - Add targets to regenerate the HTML manual and the Doxygen API reference portably, replacing the shell script and batch file for generating the manual - Add targets for the documentation source files and substitute sources so that they are visible and editable in an IDE - Library versioning continues to use the existing libtool naming and numbering conventions on Unix platforms: On Unix, the name has a -3.1 suffix before the library extension to match the libtool -release versioning behaviour. The symlink remains xerces-c for build time linking - Library versioning continues to use the existing Visual Studio project file conventions on Windows: On Windows, the .lib and .dll names (and associated .exp, .ilk and .pdb files) use -3[D] and -3_1[D] suffixes This will allow building with any supported build system on any UNIX-like platform or upon Windows, as an alternative to the GNU autotools and MSVC version-specific project and solution files which will behave consistently across all platforms. The only feature of autoconf and automake which is not converted is "make dist", and that's absolutely possible should it be desired. git-svn-id: https://svn.apache.org/repos/asf/xerces/c/trunk@1797546 13f79535-47bb-0310-9956-ffa450edef68
Showing
- CMakeLists.txt 164 additions, 0 deletionsCMakeLists.txt
- Makefile.am 3 additions, 0 deletionsMakefile.am
- cmake/FindICU.cmake 359 additions, 0 deletionscmake/FindICU.cmake
- cmake/RunTest.cmake 88 additions, 0 deletionscmake/RunTest.cmake
- cmake/XercesBool.cmake 38 additions, 0 deletionscmake/XercesBool.cmake
- cmake/XercesConst.cmake 29 additions, 0 deletionscmake/XercesConst.cmake
- cmake/XercesDLL.cmake 63 additions, 0 deletionscmake/XercesDLL.cmake
- cmake/XercesFileMgrSelection.cmake 42 additions, 0 deletionscmake/XercesFileMgrSelection.cmake
- cmake/XercesFunctions.cmake 55 additions, 0 deletionscmake/XercesFunctions.cmake
- cmake/XercesICU.cmake 22 additions, 0 deletionscmake/XercesICU.cmake
- cmake/XercesIconvConst.cmake 42 additions, 0 deletionscmake/XercesIconvConst.cmake
- cmake/XercesIncludes.cmake 53 additions, 0 deletionscmake/XercesIncludes.cmake
- cmake/XercesInline.cmake 48 additions, 0 deletionscmake/XercesInline.cmake
- cmake/XercesIntTypes.cmake 142 additions, 0 deletionscmake/XercesIntTypes.cmake
- cmake/XercesLFS.cmake 27 additions, 0 deletionscmake/XercesLFS.cmake
- cmake/XercesLString.cmake 31 additions, 0 deletionscmake/XercesLString.cmake
- cmake/XercesMsgLoaderSelection.cmake 63 additions, 0 deletionscmake/XercesMsgLoaderSelection.cmake
- cmake/XercesMutexMgrSelection.cmake 61 additions, 0 deletionscmake/XercesMutexMgrSelection.cmake
- cmake/XercesNamespaces.cmake 37 additions, 0 deletionscmake/XercesNamespaces.cmake
- cmake/XercesNetAccessorSelection.cmake 96 additions, 0 deletionscmake/XercesNetAccessorSelection.cmake
Loading
Please register or sign in to comment