aboutsummaryrefslogtreecommitdiff
path: root/CMake/FindWaylandProtocols.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'CMake/FindWaylandProtocols.cmake')
-rw-r--r--CMake/FindWaylandProtocols.cmake39
1 files changed, 39 insertions, 0 deletions
diff --git a/CMake/FindWaylandProtocols.cmake b/CMake/FindWaylandProtocols.cmake
new file mode 100644
index 00000000..8a8129b5
--- /dev/null
+++ b/CMake/FindWaylandProtocols.cmake
@@ -0,0 +1,39 @@
+#.rst:
+# FindWaylandProtocols
+# -------
+#
+# Find wayland protocol description files
+#
+# Try to find wayland protocol files. The following values are defined
+#
+# ::
+#
+# WAYLANDPROTOCOLS_FOUND - True if wayland protocol files are available
+# WAYLANDPROTOCOLS_PATH - Path to wayland protocol files
+#
+#=============================================================================
+# Copyright (c) 2015 Jari Vetoniemi
+#
+# Distributed under the OSI-approved BSD License (the "License");
+#
+# This software is distributed WITHOUT ANY WARRANTY; without even the
+# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# See the License for more information.
+#=============================================================================
+
+include(FeatureSummary)
+set_package_properties(WaylandProtocols PROPERTIES
+ URL "https://cgit.freedesktop.org/wayland/wayland-protocols"
+ DESCRIPTION "Wayland protocol development")
+
+unset(WAYLANDPROTOCOLS_PATH)
+
+find_package(PkgConfig)
+if (PKG_CONFIG_FOUND)
+ execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=pkgdatadir wayland-protocols
+ OUTPUT_VARIABLE WAYLANDPROTOCOLS_PATH OUTPUT_STRIP_TRAILING_WHITESPACE)
+endif ()
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(WaylandProtocols DEFAULT_MSG WAYLANDPROTOCOLS_PATH)
+mark_as_advanced(WAYLANDPROTOCOLS_PATH)