aboutsummaryrefslogtreecommitdiff
path: root/modules/FindLibXslt.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'modules/FindLibXslt.cmake')
-rw-r--r--modules/FindLibXslt.cmake76
1 files changed, 45 insertions, 31 deletions
diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake
index d33fca26..bf49814d 100644
--- a/modules/FindLibXslt.cmake
+++ b/modules/FindLibXslt.cmake
@@ -7,40 +7,54 @@
# LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt
#
-IF (NOT WIN32)
- # use pkg-config to get the directories and then use these values
- # in the FIND_PATH() and FIND_LIBRARY() calls
- INCLUDE(UsePkgConfig)
- PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags)
- set(LIBXSLT_DEFINITIONS ${_LibXsltCflags})
-ENDIF (NOT WIN32)
+IF (CACHED_LIBXSLT)
-FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h
- ${_LibXsltIncDir}
- /usr/include
- /usr/local/include
-)
+ # in cache already
+ IF ("${CACHED_LIBXSLT}" STREQUAL "YES")
+ SET(LIBXSLT_FOUND TRUE)
+ ENDIF ("${CACHED_LIBXSLT}" STREQUAL "YES")
-FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt
- PATHS
- ${_LibXsltLinkDir}
- /usr/lib
- /usr/local/lib
-)
+ELSE (CACHED_LIBXSLT)
-if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES)
- set(LIBXSLT_FOUND TRUE)
-endif (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES)
+ IF (NOT WIN32)
+ # use pkg-config to get the directories and then use these values
+ # in the FIND_PATH() and FIND_LIBRARY() calls
+ INCLUDE(UsePkgConfig)
+ PKGCONFIG(libxslt _LibXsltIncDir _LibXsltLinkDir _LibXsltLinkFlags _LibXsltCflags)
+ set(LIBXSLT_DEFINITIONS ${_LibXsltCflags})
+ ENDIF (NOT WIN32)
-if (LIBXSLT_FOUND)
- if (NOT LibXslt_FIND_QUIETLY)
+ FIND_PATH(LIBXSLT_INCLUDE_DIR libxslt/xslt.h
+ ${_LibXsltIncDir}
+ /usr/include
+ /usr/local/include
+ )
+
+ FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt
+ PATHS
+ ${_LibXsltLinkDir}
+ /usr/lib
+ /usr/local/lib
+ )
+
+ if (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES)
+ set(LIBXSLT_FOUND TRUE)
+ set(CACHED_LIBXSLT "YES")
+ else (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES)
+ set(CACHED_LIBXSLT "NO")
+ endif (LIBXSLT_INCLUDE_DIR AND LIBXSLT_LIBRARIES)
+
+ if (LIBXSLT_FOUND)
+ if (NOT LibXslt_FIND_QUIETLY)
message(STATUS "Found LibXslt: ${LIBXSLT_LIBRARIES}")
- endif (NOT LibXslt_FIND_QUIETLY)
-else (LIBXSLT_FOUND)
- if (LibXslt_FIND_REQUIRED)
+ endif (NOT LibXslt_FIND_QUIETLY)
+ else (LIBXSLT_FOUND)
+ if (LibXslt_FIND_REQUIRED)
message(FATAL_ERROR "Could NOT find LibXslt")
- endif (LibXslt_FIND_REQUIRED)
-endif (LIBXSLT_FOUND)
-
-MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES)
-
+ endif (LibXslt_FIND_REQUIRED)
+ endif (LIBXSLT_FOUND)
+
+ set(CACHED_LIBXSLT ${CACHED_LIBXSLT} CACHE INTERNAL "If libxslt was checked")
+ MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES)
+
+ENDIF (CACHED_LIBXSLT)