diff options
author | Brad King <brad.king@kitware.com> | 2010-06-23 11:38:33 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2010-06-23 11:38:33 (GMT) |
commit | 1819d9d61794a0783c30c1b8144391e8dba2392a (patch) | |
tree | 5a9796210b0a812594e793283f4a47317d706a2c | |
parent | 8c0e79f8240067918891cd9f406b3ff0ee721d79 (diff) | |
download | CMake-1819d9d61794a0783c30c1b8144391e8dba2392a.zip CMake-1819d9d61794a0783c30c1b8144391e8dba2392a.tar.gz CMake-1819d9d61794a0783c30c1b8144391e8dba2392a.tar.bz2 |
Run CMake.HTML test with older xmllint (#10857)
Old versions of xmllint do not have --nonet or --path options.
Fall back to the network-access form in this case.
-rw-r--r-- | Utilities/CMakeLists.txt | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/Utilities/CMakeLists.txt b/Utilities/CMakeLists.txt index 4aa8719..4c9202c 100644 --- a/Utilities/CMakeLists.txt +++ b/Utilities/CMakeLists.txt @@ -138,16 +138,24 @@ if(BUILD_TESTING) endif() mark_as_advanced(LIBXML2_XMLLINT_EXECUTABLE) if(LIBXML2_XMLLINT_EXECUTABLE) - # We provide the XHTML DTD and its dependencies in the 'xml' - # directory so that xmllint can run without network access. - # However, it's --path option accepts a space-separated list of - # paths so it cannot handle spaces in the path to the source tree. - # Therefore we run the tool with the current work directory set to - # the 'xml' directory and use '.' as the path. - add_test(CMake.HTML - ${CMAKE_CMAKE_COMMAND} -E chdir ${CMAKE_CURRENT_SOURCE_DIR}/xml - ${LIBXML2_XMLLINT_EXECUTABLE} --valid --noout --nonet --path . - ${HTML_FILES} - ) + execute_process(COMMAND ${LIBXML2_XMLLINT_EXECUTABLE} --help + OUTPUT_VARIABLE _help ERROR_VARIABLE _err) + if("${_help}" MATCHES "--path" AND "${_help}" MATCHES "--nonet") + # We provide the XHTML DTD and its dependencies in the 'xml' + # directory so that xmllint can run without network access. + # However, it's --path option accepts a space-separated list of + # paths so it cannot handle spaces in the path to the source tree. + # Therefore we run the tool with the current work directory set to + # the 'xml' directory and use '.' as the path. + add_test(CMake.HTML + ${CMAKE_CMAKE_COMMAND} -E chdir ${CMAKE_CURRENT_SOURCE_DIR}/xml + ${LIBXML2_XMLLINT_EXECUTABLE} --valid --noout --nonet --path . + ${HTML_FILES} + ) + else() + add_test(CMake.HTML + ${LIBXML2_XMLLINT_EXECUTABLE} --valid --noout ${HTML_FILES} + ) + endif() endif() endif() |