aboutsummaryrefslogtreecommitdiffstats
path: root/cmake/modules/FindXMLLINT.cmake
diff options
context:
space:
mode:
authorjmayer <jmayer@f5534014-38df-0310-8fa8-9805f1628bb7>2009-12-29 12:12:26 +0000
committerjmayer <jmayer@f5534014-38df-0310-8fa8-9805f1628bb7>2009-12-29 12:12:26 +0000
commitcd950b021972f9977fac2c82013188e6beb24cbd (patch)
treed6efe47a35ca8e4cf1be8ea0e61aae325dc29534 /cmake/modules/FindXMLLINT.cmake
parent80973f7158c1e72b2ae9b754233723fbafdd224b (diff)
- Beginnings of cmake in docbook directory
- Add note about "make help" - Move beginnings of packaging into its own file: CPackConfig.txt git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@31379 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'cmake/modules/FindXMLLINT.cmake')
-rw-r--r--cmake/modules/FindXMLLINT.cmake48
1 files changed, 48 insertions, 0 deletions
diff --git a/cmake/modules/FindXMLLINT.cmake b/cmake/modules/FindXMLLINT.cmake
new file mode 100644
index 0000000000..f5ac6459e2
--- /dev/null
+++ b/cmake/modules/FindXMLLINT.cmake
@@ -0,0 +1,48 @@
+#
+# $Id$
+#
+# - Find unix commands from cygwin
+# This module looks for some usual Unix commands.
+#
+
+INCLUDE(FindCygwin)
+
+FIND_PROGRAM(XMLLINT_EXECUTABLE
+ NAMES
+ xmllint
+ PATHS
+ ${CYGWIN_INSTALL_PATH}/bin
+ /bin
+ /usr/bin
+ /usr/local/bin
+ /sbin
+)
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(XMLLINT DEFAULT_MSG XMLLINT_EXECUTABLE)
+
+MARK_AS_ADVANCED(XMLLINT_EXECUTABLE)
+
+# Validate XML
+MACRO(VALIDATE_XML _validated _sources)
+ message(STATUS "Source(s): ${${_sources}}")
+ # FIXME: How do I extract the first element of a variable containing a
+ # list of values? Isn't there a "cleaner" solution?
+ FOREACH(_source ${${_sources}})
+ BREAK()
+ ENDFOREACH()
+ ADD_CUSTOM_COMMAND(
+ OUTPUT
+ ${CMAKE_CURRENT_BINARY_DIR}/${_validated}
+ COMMAND ${XMLLINT_EXECUTABLE}
+ --valid
+ --noout
+ --path "${CMAKE_CURRENT_BINARY_DIR}:${CMAKE_CURRENT_SOURCE_DIR}"
+ ${_source}
+ COMMAND touch
+ ${CMAKE_CURRENT_BINARY_DIR}/${_validated}
+ DEPENDS
+ ${_source}
+ svn_version.xml
+ )
+ENDMACRO(VALIDATE_XML)