You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

96 lines
3.2 KiB

# From https://code.google.com/p/libcitygml/source/browse/trunk/CMakeModules/FindXerces.cmake?r=95
# - 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)
ENDIF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
FIND_PATH(XERCESC_INCLUDE NAMES xercesc/util/XercesVersion.hpp
PATHS
$ENV{XERCESC_INCLUDE_DIR}
${XERCESC_INCLUDE_DIR}
/usr/local/include
/usr/include
)
IF (XERCESC_STATIC)
FIND_LIBRARY(XERCESC_LIBRARIES NAMES xerces-c_static_3 xerces-c-3.1 xerces-c
PATHS
$ENV{XERCESC_LIBRARY_DIR}
${XERCESC_LIBRARY_DIR}
/usr/lib
/usr/local/lib
)
FIND_LIBRARY(XERCESC_LIBRARIES_DEBUG NAMES xerces-c_static_3D xerces-c-3.1D
PATHS
$ENV{XERCESC_LIBRARY_DIR}
${XERCESC_LIBRARY_DIR}
/usr/lib
/usr/local/lib
)
ADD_DEFINITIONS( -DXERCES_STATIC_LIBRARY )
ELSE (XERCESC_STATIC)
FIND_LIBRARY(XERCESC_LIBRARY NAMES xerces-c_3
PATHS
$ENV{XERCESC_LIBRARY_DIR}
${XERCESC_LIBRARY_DIR}
)
FIND_LIBRARY(XERCESC_LIBRARIES_DEBUG NAMES xerces-c_3D
PATHS
$ENV{XERCESC_LIBRARY_DIR}
${XERCESC_LIBRARY_DIR}
)
ENDIF (XERCESC_STATIC)
IF (XERCESC_INCLUDE AND XERCESC_LIBRARIES)
SET(XERCESC_FOUND TRUE)
ELSE (XERCESC_INCLUDE AND XERCESC_LIBRARIES)
SET(XERCESC_FOUND FALSE)
ENDIF (XERCESC_INCLUDE AND XERCESC_LIBRARIES)
IF(XERCESC_FOUND)
FIND_PATH(XERCESC_XVERHPPPATH NAMES XercesVersion.hpp PATHS
${XERCESC_INCLUDE}
PATH_SUFFIXES xercesc/util)
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)
ENDIF(XERCESC_FOUND)
MARK_AS_ADVANCED(XERCESC_INCLUDE XERCESC_LIBRARIES)