mirror of
https://github.com/glest/glest-source.git
synced 2025-02-24 11:42:31 +01:00
159 lines
5.0 KiB
CMake
159 lines
5.0 KiB
CMake
# - Find Xerces-C
|
|
# Find the Xerces-C includes and library
|
|
#
|
|
# XERCESC_INCLUDE_DIR - Where to find xercesc include sub-directory.
|
|
# XERCESC_LIBRARIES - List of libraries when using Xerces-C.
|
|
# XERCESC_FOUND - True if Xerces-C found.
|
|
|
|
|
|
#IF (XERCESC_INCLUDE_DIR)
|
|
# Already in cache, be silent.
|
|
#SET(XERCESC_FIND_QUIETLY TRUE)
|
|
#ENDIF (XERCESC_INCLUDE_DIR)
|
|
|
|
#FIND_PATH(XERCESC_INCLUDE_DIR xercesc
|
|
# PATH_SUFFIXES DOM/dom.hpp)
|
|
|
|
#SET(XERCESC_NAMES xerces-c2_8_0 xerces-c xerces-c_3 xerces-c_2 Xerces)
|
|
#FIND_LIBRARY(XERCESC_LIBRARY NAMES ${XERCESC_NAMES} )
|
|
|
|
# Handle the QUIETLY and REQUIRED arguments and set XERCESC_FOUND to
|
|
# TRUE if all listed variables are TRUE.
|
|
#INCLUDE(FindPackageHandleStandardArgs)
|
|
#FIND_PACKAGE_HANDLE_STANDARD_ARGS(XercesC DEFAULT_MSG XERCESC_LIBRARY XERCESC_INCLUDE_DIR)
|
|
|
|
#IF(XERCESC_FOUND)
|
|
# SET( XERCESC_LIBRARIES ${XERCESC_LIBRARY} )
|
|
#ELSE(XERCESC_FOUND)
|
|
# SET( XERCESC_LIBRARIES )
|
|
#ENDIF(XERCESC_FOUND)
|
|
|
|
#MARK_AS_ADVANCED( XERCESC_LIBRARY XERCESC_INCLUDE_DIR )
|
|
|
|
########################### NEW CODE BELOW
|
|
|
|
# - Try to find Xerces-C
|
|
# Once done this will define
|
|
#
|
|
# XERCESC_FOUND - system has Xerces-C
|
|
# XERCESC_INCLUDE - the Xerces-C include directory
|
|
# XERCESC_LIBRARY - Link these to use Xerces-C
|
|
# XERCESC_VERSION - Xerces-C found version
|
|
|
|
IF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
|
|
# in cache already
|
|
SET(XERCESC_FIND_QUIETLY TRUE)
|
|
#MESSAGE(STATUS "Found cached Xerces-C lib [${XERCESC_LIBRARY}]")
|
|
ENDIF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
|
|
|
|
IF (NOT ${XERCESC_WAS_STATIC} STREQUAL ${STATIC_XercesC})
|
|
UNSET(XERCESC_LIBRARY CACHE)
|
|
UNSET(XERCESC_LIBRARY_DEBUG CACHE)
|
|
ENDIF (NOT ${XERCESC_WAS_STATIC} STREQUAL ${STATIC_XercesC})
|
|
|
|
SET(XERCESC_WAS_STATIC ${STATIC_XercesC} CACHE INTERNAL "" )
|
|
|
|
IF (XERCESC_INCLUDE_DIR)
|
|
SET(XERCESC_INCLUDE ${XERCESC_INCLUDE_DIR})
|
|
ENDIF()
|
|
|
|
IF (NOT XERCESC_INCLUDE)
|
|
FIND_PATH(XERCESC_INCLUDE NAMES xercesc/util/XercesVersion.hpp
|
|
PATHS
|
|
$ENV{XERCESC_INCLUDE_DIR}
|
|
${XERCESC_INCLUDE_DIR}
|
|
/usr/local/include
|
|
/usr/include
|
|
)
|
|
ENDIF()
|
|
|
|
#MESSAGE(STATUS "Current Xerces-C lib [${XERCESC_LIBRARY}] XERCESC_INCLUDE [${XERCESC_INCLUDE}")
|
|
|
|
IF (STATIC_XercesC AND NOT XERCESC_LIBRARY)
|
|
MESSAGE(STATUS "Looking for static Xerces-C lib...")
|
|
FIND_LIBRARY(XERCESC_LIBRARY NAMES xerces-c_static_3 libxerces-c.a libxerces-c_3.a libxerces-c2_8_0.a libxerces-c_2.a libXerces.a
|
|
PATHS
|
|
$ENV{XERCESC_LIBRARY_DIR}
|
|
${XERCESC_LIBRARY_DIR}
|
|
/usr/lib
|
|
/usr/local/lib
|
|
)
|
|
|
|
IF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
|
|
MESSAGE(STATUS "Found static Xerces-C lib [${XERCESC_LIBRARY}]")
|
|
ADD_DEFINITIONS( -DXERCES_STATIC_LIBRARY )
|
|
|
|
IF(UNIX AND NOT APPLE)
|
|
#SET(XERCESC_LIBRARY "-Bstatic ${XERCESC_LIBRARY} -Bdynamic -licuuc -licudata")
|
|
SET(XERCESC_LIBRARY "-Bstatic ${XERCESC_LIBRARY}")
|
|
ENDIF()
|
|
ENDIF()
|
|
ENDIF()
|
|
|
|
IF (NOT XERCESC_LIBRARY)
|
|
MESSAGE(STATUS "Looking for dynamic Xerces-C lib...")
|
|
FIND_LIBRARY(XERCESC_LIBRARY NAMES xerces-c_3 xerces-c xerces-c_3 xerces-c2_8_0 xerces-c_2 Xerces libxerces-c.dll libxerces-c_3.dll libxerces-c2_8_0.dll libxerces-c_2.dll libXerces.dll
|
|
PATHS
|
|
$ENV{XERCESC_LIBRARY_DIR}
|
|
${XERCESC_LIBRARY_DIR}
|
|
)
|
|
FIND_LIBRARY(XERCESC_LIBRARY_DEBUG NAMES xerces-c_3D
|
|
PATHS
|
|
$ENV{XERCESC_LIBRARY_DIR}
|
|
${XERCESC_LIBRARY_DIR}
|
|
)
|
|
MARK_AS_ADVANCED(XERCESC_LIBRARY_DEBUG)
|
|
|
|
IF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
|
|
MESSAGE(STATUS "Found dynamic Xerces-C lib [${XERCESC_LIBRARY}]")
|
|
ENDIF()
|
|
ENDIF()
|
|
|
|
IF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
|
|
SET(XERCESC_FOUND TRUE)
|
|
ELSE (XERCESC_INCLUDE AND XERCESC_LIBRARY)
|
|
SET(XERCESC_FOUND FALSE)
|
|
ENDIF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
|
|
|
|
IF(XERCESC_FOUND)
|
|
FIND_PATH(XERCESC_XVERHPPPATH NAMES XercesVersion.hpp PATHS
|
|
${XERCESC_INCLUDE}
|
|
PATH_SUFFIXES xercesc/util)
|
|
|
|
MARK_AS_ADVANCED(XERCESC_XVERHPPPATH)
|
|
|
|
IF ( ${XERCESC_XVERHPPPATH} STREQUAL XERCESC_XVERHPPPATH-NOTFOUND )
|
|
SET(XERCES_VERSION "0")
|
|
ELSE( ${XERCESC_XVERHPPPATH} STREQUAL XERCESC_XVERHPPPATH-NOTFOUND )
|
|
FILE(READ ${XERCESC_XVERHPPPATH}/XercesVersion.hpp XVERHPP)
|
|
|
|
STRING(REGEX MATCHALL "\n *#define XERCES_VERSION_MAJOR +[0-9]+" XVERMAJ
|
|
${XVERHPP})
|
|
STRING(REGEX MATCH "\n *#define XERCES_VERSION_MINOR +[0-9]+" XVERMIN
|
|
${XVERHPP})
|
|
STRING(REGEX MATCH "\n *#define XERCES_VERSION_REVISION +[0-9]+" XVERREV
|
|
${XVERHPP})
|
|
|
|
STRING(REGEX REPLACE "\n *#define XERCES_VERSION_MAJOR +" ""
|
|
XVERMAJ ${XVERMAJ})
|
|
STRING(REGEX REPLACE "\n *#define XERCES_VERSION_MINOR +" ""
|
|
XVERMIN ${XVERMIN})
|
|
STRING(REGEX REPLACE "\n *#define XERCES_VERSION_REVISION +" ""
|
|
XVERREV ${XVERREV})
|
|
|
|
SET(XERCESC_VERSION ${XVERMAJ}.${XVERMIN}.${XVERREV})
|
|
|
|
ENDIF ( ${XERCESC_XVERHPPPATH} STREQUAL XERCESC_XVERHPPPATH-NOTFOUND )
|
|
|
|
IF(NOT XERCESC_FIND_QUIETLY)
|
|
MESSAGE(STATUS "Found Xerces-C: ${XERCESC_LIBRARY}")
|
|
MESSAGE(STATUS " : ${XERCESC_INCLUDE}")
|
|
MESSAGE(STATUS " Version: ${XERCESC_VERSION}")
|
|
ENDIF(NOT XERCESC_FIND_QUIETLY)
|
|
ELSE(XERCESC_FOUND)
|
|
MESSAGE(FATAL_ERROR "Could not find Xerces-C !")
|
|
ENDIF(XERCESC_FOUND)
|
|
|
|
MARK_AS_ADVANCED(XERCESC_INCLUDE XERCESC_LIBRARY)
|
|
|