ENH: fix bug where sharedforward would not work if there was a space in the path...
[cmake.git] / Modules / FindLibXml2.cmake
blob42c554ce3bfc65b62145e179248049775c6f494f
1 # - Try to find LibXml2
2 # Once done this will define
4 #  LIBXML2_FOUND - System has LibXml2
5 #  LIBXML2_INCLUDE_DIR - The LibXml2 include directory
6 #  LIBXML2_LIBRARIES - The libraries needed to use LibXml2
7 #  LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2
8 #  LIBXML2_XMLLINT_EXECUTABLE - The XML checking tool xmllint coming with LibXml2
10 # Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
12 # Redistribution and use is allowed according to the terms of the BSD license.
13 # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
16 IF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES)
17    # in cache already
18    SET(LibXml2_FIND_QUIETLY TRUE)
19 ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES)
21 IF (NOT WIN32)
22    # use pkg-config to get the directories and then use these values
23    # in the FIND_PATH() and FIND_LIBRARY() calls
24    INCLUDE(UsePkgConfig)
25    PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags)
26    SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags})
27 ENDIF (NOT WIN32)
29 FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h
30    PATHS
31    ${_LibXml2IncDir}
32    PATH_SUFFIXES libxml2
33    )
35 FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2
36    PATHS
37    ${_LibXml2LinkDir}
38    )
40 FIND_PROGRAM(LIBXML2_XMLLINT_EXECUTABLE xmllint)
41 # for backwards compat. with KDE 4.0.x:
42 SET(XMLLINT_EXECUTABLE "${LIBXML2_XMLLINT_EXECUTABLE}")
44 INCLUDE(FindPackageHandleStandardArgs)
46 # handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if 
47 # all listed variables are TRUE
48 FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR)
50 MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES LIBXML2_XMLLINT_EXECUTABLE)