|
|
@@ -5,6 +5,7 @@
|
|
|
# LIBXSLT_INCLUDE_DIR - the LibXslt include directory
|
|
|
# LIBXSLT_LIBRARIES - Link these to LibXslt
|
|
|
# LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt
|
|
|
+# LIBXSLT_VERSION_STRING - version of LibXslt found (since CMake 2.8.8)
|
|
|
# Additionally, the following two variables are set (but not required for using xslt):
|
|
|
# LIBXSLT_EXSLT_LIBRARIES - Link to these if you need to link against the exslt library
|
|
|
# LIBXSLT_XSLTPROC_EXECUTABLE - Contains the full path to the xsltproc executable if found
|
|
|
@@ -51,10 +52,21 @@ SET(LIBXSLT_EXSLT_LIBRARIES ${LIBXSLT_EXSLT_LIBRARY} )
|
|
|
|
|
|
FIND_PROGRAM(LIBXSLT_XSLTPROC_EXECUTABLE xsltproc)
|
|
|
|
|
|
-# handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if
|
|
|
-# all listed variables are TRUE
|
|
|
+IF(PC_LIBXSLT_VERSION)
|
|
|
+ SET(LIBXSLT_VERSION_STRING ${PC_LIBXSLT_VERSION})
|
|
|
+ELSEIF(LIBXSLT_INCLUDE_DIR AND EXISTS "${LIBXSLT_INCLUDE_DIR}/libxslt/xsltconfig.h")
|
|
|
+ FILE(STRINGS "${LIBXSLT_INCLUDE_DIR}/libxslt/xsltconfig.h" libxslt_version_str
|
|
|
+ REGEX "^#define[\t ]+LIBXSLT_DOTTED_VERSION[\t ]+\".*\"")
|
|
|
+
|
|
|
+ STRING(REGEX REPLACE "^#define[\t ]+LIBXSLT_DOTTED_VERSION[\t ]+\"([^\"]*)\".*" "\\1"
|
|
|
+ LIBXSLT_VERSION_STRING "${libxslt_version_str}")
|
|
|
+ UNSET(libxslt_version_str)
|
|
|
+ENDIF()
|
|
|
+
|
|
|
INCLUDE(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
|
|
|
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXslt DEFAULT_MSG LIBXSLT_LIBRARIES LIBXSLT_INCLUDE_DIR)
|
|
|
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXslt
|
|
|
+ REQUIRED_VARS LIBXSLT_LIBRARIES LIBXSLT_INCLUDE_DIR
|
|
|
+ VERSION_VAR LIBXSLT_VERSION_STRING)
|
|
|
|
|
|
MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR
|
|
|
LIBXSLT_LIBRARIES
|