aboutsummaryrefslogtreecommitdiff
path: root/modules/FindLibXml2.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'modules/FindLibXml2.cmake')
-rw-r--r--modules/FindLibXml2.cmake38
1 files changed, 23 insertions, 15 deletions
diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake
index b40635c8..0ccd8ca2 100644
--- a/modules/FindLibXml2.cmake
+++ b/modules/FindLibXml2.cmake
@@ -3,7 +3,7 @@
#
# LIBXML2_FOUND - system has LibXml2
# LIBXML2_INCLUDE_DIR - the LibXml2 include directory
-# LIBXML2_LIBRARY - Link these to use OpenGL and GLU
+# LIBXML2_LIBRARIES - the libraries needed to use LibXml2
# LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2
#
# use pkg-config to get the directories and then use these values
@@ -15,24 +15,31 @@ INCLUDE(UsePkgConfig)
PKGCONFIG(libxml-2.0 _LibXml2IncDir _LibXml2LinkDir _LibXml2LinkFlags _LibXml2Cflags)
SET(LIBXML2_DEFINITIONS ${_LibXml2Cflags})
-
-# this is a hack dealing with lists in CMAKE_INCLUDE_PATH
-foreach(incDir ${CMAKE_INCLUDE_PATH})
- FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h
- ${incDir}/libxml2
- ${_LibXml2IncDir}/libxml2
- /usr/include/libxml2
- /usr/local/include/libxml2
- )
-endforeach(incDir ${CMAKE_INCLUDE_PATH})
-
-IF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARY)
+
+FIND_PACKAGE(GNUWIN32)
+
+FIND_PATH(LIBXML2_INCLUDE_DIR libxml/xpath.h
+ ${_LibXml2IncDir}/libxml2
+ /usr/include/libxml2
+ /usr/local/include/libxml2
+ ${GNUWIN32_DIR}/include/libxml2
+)
+
+FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2
+ PATHS
+ ${_LibXml2LinkDir}
+ /usr/lib
+ /usr/local/lib
+ ${GNUWIN32_DIR}/lib
+)
+
+IF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES)
SET(LIBXML2_FOUND TRUE)
-ENDIF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARY)
+ENDIF(LIBXML2_INCLUDE_DIR AND LIBXML2_LIBRARIES)
IF(LIBXML2_FOUND)
IF(NOT LibXml2_FIND_QUIETLY)
- MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARY}")
+ MESSAGE(STATUS "Found LibXml2: ${LIBXML2_LIBRARIES}")
ENDIF(NOT LibXml2_FIND_QUIETLY)
ELSE(LIBXML2_FOUND)
IF(LibXml2_FIND_REQUIRED)
@@ -40,3 +47,4 @@ ELSE(LIBXML2_FOUND)
ENDIF(LibXml2_FIND_REQUIRED)
ENDIF(LIBXML2_FOUND)
+MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES) \ No newline at end of file