diff options
author | Bastiaan Olij <mux213@gmail.com> | 2023-07-19 00:02:47 +1000 |
---|---|---|
committer | Bastiaan Olij <mux213@gmail.com> | 2023-07-19 00:02:47 +1000 |
commit | a9c8feeba00906c4df5f85dc6efaf1ece608cd6b (patch) | |
tree | 31791d9473e0969db369753035be3985f0ec4067 | |
parent | 279732539f7ba253b42a1dc953861306efc63d60 (diff) | |
download | redot-engine-a9c8feeba00906c4df5f85dc6efaf1ece608cd6b.tar.gz |
Compile OpenXR into MacOS build
-rw-r--r-- | modules/openxr/SCsub | 7 | ||||
-rw-r--r-- | modules/openxr/config.py | 2 | ||||
-rw-r--r-- | modules/openxr/openxr_api.cpp | 6 |
3 files changed, 10 insertions, 5 deletions
diff --git a/modules/openxr/SCsub b/modules/openxr/SCsub index d5abbe4c72..fbff4c7f8f 100644 --- a/modules/openxr/SCsub +++ b/modules/openxr/SCsub @@ -28,6 +28,11 @@ elif env["platform"] == "linuxbsd": env_openxr.AppendUnique(CPPDEFINES=["HAVE_SECURE_GETENV"]) elif env["platform"] == "windows": env_openxr.AppendUnique(CPPDEFINES=["XR_OS_WINDOWS", "NOMINMAX", "XR_USE_PLATFORM_WIN32"]) +elif env["platform"] == "macos": + env_openxr.AppendUnique(CPPDEFINES=["XR_OS_APPLE"]) + + # There does not seem to be a XR_USE_PLATFORM_XYZ for Apple + # may need to check and set: # - XR_USE_TIMESPEC @@ -95,7 +100,7 @@ if env["platform"] == "android": env_openxr.add_source_files(module_obj, "extensions/openxr_android_extension.cpp") if env["vulkan"]: env_openxr.add_source_files(module_obj, "extensions/openxr_vulkan_extension.cpp") -if env["opengl3"]: +if env["opengl3"] and env["platform"] != "macos": env_openxr.add_source_files(module_obj, "extensions/openxr_opengl_extension.cpp") env_openxr.add_source_files(module_obj, "extensions/openxr_palm_pose_extension.cpp") diff --git a/modules/openxr/config.py b/modules/openxr/config.py index e503f12739..8ed06a1606 100644 --- a/modules/openxr/config.py +++ b/modules/openxr/config.py @@ -1,5 +1,5 @@ def can_build(env, platform): - if platform in ("linuxbsd", "windows", "android"): + if platform in ("linuxbsd", "windows", "android", "macos"): return env["openxr"] and not env["disable_3d"] else: # not supported on these platforms diff --git a/modules/openxr/openxr_api.cpp b/modules/openxr/openxr_api.cpp index 4ab280f3c3..c5efe609c2 100644 --- a/modules/openxr/openxr_api.cpp +++ b/modules/openxr/openxr_api.cpp @@ -47,7 +47,7 @@ #ifdef VULKAN_ENABLED #define XR_USE_GRAPHICS_API_VULKAN #endif -#ifdef GLES3_ENABLED +#if defined(GLES3_ENABLED) && !defined(MACOS_ENABLED) #ifdef ANDROID_ENABLED #define XR_USE_GRAPHICS_API_OPENGL_ES #include <EGL/egl.h> @@ -72,7 +72,7 @@ #include "extensions/openxr_vulkan_extension.h" #endif -#ifdef GLES3_ENABLED +#if defined(GLES3_ENABLED) && !defined(MACOS_ENABLED) #include "extensions/openxr_opengl_extension.h" #endif @@ -1306,7 +1306,7 @@ bool OpenXRAPI::initialize(const String &p_rendering_driver) { ERR_FAIL_V(false); #endif } else if (p_rendering_driver == "opengl3") { -#ifdef GLES3_ENABLED +#if defined(GLES3_ENABLED) && !defined(MACOS_ENABLED) graphics_extension = memnew(OpenXROpenGLExtension); register_extension_wrapper(graphics_extension); #else |