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)
18 SET(LibXml2_FIND_QUIETLY TRUE)
19 ENDIF (LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES)
22 # use pkg-config to get the directories and then use these values
23 # in the FIND_PATH() and FIND_LIBRARY() calls
24 FIND_PACKAGE(PkgConfig)
25 PKG_CHECK_MODULES(PC_LIBXML libxml-2.0)
26 SET(LIBXML2_DEFINITIONS ${PC_LIBXML_CFLAGS_OTHER})
29 FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h
31 ${PC_LIBXML_INCLUDEDIR}
32 ${PC_LIBXML_INCLUDE_DIRS}
36 FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2
39 ${PC_LIBXML_LIBRARY_DIRS}
42 FIND_PROGRAM(LIBXML2_XMLLINT_EXECUTABLE xmllint)
43 # for backwards compat. with KDE 4.0.x:
44 SET(XMLLINT_EXECUTABLE "${LIBXML2_XMLLINT_EXECUTABLE}")
46 INCLUDE(FindPackageHandleStandardArgs)
48 # handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if
49 # all listed variables are TRUE
50 FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR)
52 MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES LIBXML2_XMLLINT_EXECUTABLE)