From 4a8ac6ebeded2c5868f69efb77257e1b89cf64b7 Mon Sep 17 00:00:00 2001
From: Jakob Bornecrantz <jakob@collabora.com>
Date: Mon, 10 Aug 2020 20:14:37 +0100
Subject: [PATCH] cmake: Add build flags for OpenXR layers

---
 CMakeLists.txt                                  | 14 +++++++++++---
 src/xrt/include/xrt/xrt_config_build.h.cmake_in |  8 ++++++++
 2 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9d3b10f5d..86dd0b938 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -95,6 +95,10 @@ cmake_dependent_option(XRT_FEATURE_SERVICE "Enable separate service module for O
 cmake_dependent_option(XRT_HAVE_SYSTEMD "Enable systemd support (for socket activation of service)" ON "Systemd_FOUND AND XRT_FEATURE_SERVICE" OFF)
 cmake_dependent_option(XRT_INSTALL_SYSTEMD_UNIT_FILES "Install user unit files for systemd socket activation on installation" ON "XRT_HAVE_SYSTEMD" OFF)
 cmake_dependent_option(XRT_INSTALL_ABSOLUTE_SYSTEMD_UNIT_FILES "Use an absolute path to monado-system in installed user unit files for systemd socket activation" ON "XRT_INSTALL_SYSTEMD_UNIT_FILES" OFF)
+set(XRT_FEATURE_OPENXR_LAYER_DEPTH OFF)
+set(XRT_FEATURE_OPENXR_LAYER_CUBE OFF)
+set(XRT_FEATURE_OPENXR_LAYER_CYLINDER OFF)
+set(XRT_FEATURE_OPENXR_LAYER_EQUIRECT OFF)
 
 # Most users won't touch these.
 mark_as_advanced(XRT_FEATURE_COMPOSITOR_MAIN XRT_FEATURE_OPENXR)
@@ -214,9 +218,13 @@ message(STATUS "#    FFMPEG:       ${XRT_HAVE_FFMPEG}")
 message(STATUS "#    SDL2:         ${XRT_HAVE_SDL2}")
 message(STATUS "#    SYSTEM_CJSON: ${XRT_HAVE_SYSTEM_CJSON}")
 message(STATUS "#")
-message(STATUS "#    FEATURE_COMPOSITOR_MAIN: ${XRT_FEATURE_COMPOSITOR_MAIN}")
-message(STATUS "#    FEATURE_OPENXR:          ${XRT_FEATURE_OPENXR}")
-message(STATUS "#    FEATURE_SERVICE:         ${XRT_FEATURE_SERVICE}")
+message(STATUS "#    FEATURE_COMPOSITOR_MAIN:       ${XRT_FEATURE_COMPOSITOR_MAIN}")
+message(STATUS "#    FEATURE_SERVICE:               ${XRT_FEATURE_SERVICE}")
+message(STATUS "#    FEATURE_OPENXR:                ${XRT_FEATURE_OPENXR}")
+message(STATUS "#    FEATURE_OPENXR_LAYER_DEPTH:    ${XRT_FEATURE_OPENXR_LAYER_DEPTH}")
+message(STATUS "#    FEATURE_OPENXR_LAYER_CUBE:     ${XRT_FEATURE_OPENXR_LAYER_CUBE}")
+message(STATUS "#    FEATURE_OPENXR_LAYER_CYLINDER: ${XRT_FEATURE_OPENXR_LAYER_CYLINDER}")
+message(STATUS "#    FEATURE_OPENXR_LAYER_EQUIRECT: ${XRT_FEATURE_OPENXR_LAYER_EQUIRECT}")
 message(STATUS "#")
 message(STATUS "#    DRIVER_ARDUINO:  ${XRT_BUILD_DRIVER_ARDUINO}")
 message(STATUS "#    DRIVER_DAYDREAM: ${XRT_BUILD_DRIVER_DAYDREAM}")
diff --git a/src/xrt/include/xrt/xrt_config_build.h.cmake_in b/src/xrt/include/xrt/xrt_config_build.h.cmake_in
index 5e7d7b1f3..50d3e5713 100644
--- a/src/xrt/include/xrt/xrt_config_build.h.cmake_in
+++ b/src/xrt/include/xrt/xrt_config_build.h.cmake_in
@@ -10,3 +10,11 @@
 #pragma once
 
 #cmakedefine XRT_FEATURE_SERVICE
+
+#cmakedefine XRT_FEATURE_OPENXR_LAYER_CUBE
+
+#cmakedefine XRT_FEATURE_OPENXR_LAYER_CYLINDER
+
+#cmakedefine XRT_FEATURE_OPENXR_LAYER_DEPTH
+
+#cmakedefine XRT_FEATURE_OPENXR_LAYER_EQUIRECT