+ if(LIBXML2_LINKS_OK)
+ #check that xml headers can be included
+ set(CMAKE_REQUIRED_INCLUDES "${LIBXML2_INCLUDE_DIR}")
+ check_include_files("libxml/parser.h" LIBXML2_INCL_OK)
+ if(NOT LIBXML2_INCL_OK)
+ #xml headers depend on iconv.h. Test whether adding its path fixes the problem
+ find_path(ICONV_INCLUDE_DIR iconv.h)
+ if(ICONV_INCLUDE_DIR)
+ set(CMAKE_REQUIRED_INCLUDES "${LIBXML2_INCLUDE_DIR};${ICONV_INCLUDE_DIR}")
+ unset(LIBXML2_INCL_OK CACHE)
+ check_include_files("libxml/parser.h" LIBXML2_INCL_OK)
+ set(LIBXML2_INCLUDE_DIR "${LIBXML2_INCLUDE_DIR};${ICONV_INCLUDE_DIR}" CACHE PATH "Libxml2 include path" FORCE)
+ endif()
+ endif()
+ set(${VARIABLE} ${LIBXML2_INCL_OK} PARENT_SCOPE)
+ else()
+ set(${VARIABLE} OFF PARENT_SCOPE)
+ endif()