diff options
author | David Wagner <david.wagner@intel.com> | 2014-02-20 12:17:39 +0100 |
---|---|---|
committer | David Wagner <david.wagner@intel.com> | 2014-02-20 14:09:22 +0100 |
commit | c083330f9538f1bac8045c0660775efe63055696 (patch) | |
tree | d64362ad288736e54c8f45c99ac3d2eaa031a5c6 | |
parent | 7ab2809a1caf90155e789bf818ace60f21387a6a (diff) | |
download | external_parameter-framework-c083330f9538f1bac8045c0660775efe63055696.zip external_parameter-framework-c083330f9538f1bac8045c0660775efe63055696.tar.gz external_parameter-framework-c083330f9538f1bac8045c0660775efe63055696.tar.bz2 |
CMake: detect the XInclude feature in libxml2
xmlserializer needs the XInclude feature (its usage in structure files is
optional but xmlserializer needs the symbols for compiling).
Verbosely fail if libxml2 has not been configured with XInclude support.
Signed-off-by: David Wagner <david.wagner@intel.com>
-rw-r--r-- | xmlserializer/CMakeLists.txt | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/xmlserializer/CMakeLists.txt b/xmlserializer/CMakeLists.txt index 420055f..6ba2768 100644 --- a/xmlserializer/CMakeLists.txt +++ b/xmlserializer/CMakeLists.txt @@ -16,8 +16,16 @@ if(NOT LIBXML2_FOUND) libxml2 NOT found. The parameter-framework wont compile. Please install the development package (e.g. libxml2-dev on debian-based Linux distributions).") +else(NOT LIBXML2_FOUND) + # libxml2 has been found, but does it support XInclude ? + include(CheckLibraryExists) + check_library_exists(xml2 xmlXIncludeProcess "" XML2_XINCLUDE_SUPPORT) + if(NOT XML2_XINCLUDE_SUPPORT) + message(SEND_ERROR " + libxml2 has not been built with support for XInclude. xmlserializer needs + that feature; please install a version of libxml2 supporting it.") + endif(NOT XML2_XINCLUDE_SUPPORT) endif(NOT LIBXML2_FOUND) -# TODO: check for the "XInclude" feature in libxml2 (how to ?) include_directories(${LIBXML2_INCLUDE_DIR}) target_link_libraries(xmlserializer ${LIBXML2_LIBRARIES}) |