The open source OpenXR runtime
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

comp: Fix VkDisplayKHR direct mode build without libx11-xcb

+28 -12
+6 -5
src/xrt/auxiliary/vk/vk_helpers.h
··· 81 81 #endif 82 82 83 83 #ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT 84 + PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT; 85 + PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT; 86 + PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT; 87 + #endif 88 + 89 + #if defined(VK_USE_PLATFORM_XLIB_XRANDR_EXT) || defined(VK_USE_PLATFORM_DISPLAY_KHR) 84 90 PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR; 85 91 PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR; 86 92 87 - // This doesn't strictly require VK_USE_PLATFORM_XLIB_XRANDR_EXT, 88 - // but it's only used in the NVIDIA X direct mode path that does require it. 89 93 PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR; 90 94 PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR; 91 95 PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR; 92 - PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT; 93 - PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT; 94 - PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT; 95 96 #endif 96 97 97 98 #ifdef VK_USE_PLATFORM_ANDROID_KHR
+5 -1
src/xrt/compositor/CMakeLists.txt
··· 109 109 endif() 110 110 if(XRT_HAVE_XCB AND XRT_HAVE_XLIB) 111 111 list(APPEND MAIN_SOURCE_FILES 112 - main/comp_window_direct.c 113 112 main/comp_window_direct_randr.c 114 113 main/comp_window_direct_nvidia.c 115 114 ) ··· 122 121 if (VK_USE_PLATFORM_DISPLAY_KHR) 123 122 list(APPEND MAIN_SOURCE_FILES 124 123 main/comp_window_vk_display.c 124 + ) 125 + endif() 126 + if (VK_USE_PLATFORM_DISPLAY_KHR OR XRT_HAVE_XCB) 127 + list(APPEND MAIN_SOURCE_FILES 128 + main/comp_window_direct.c 125 129 ) 126 130 endif() 127 131
+4
src/xrt/compositor/main/comp_window_direct.c
··· 205 205 return result; 206 206 } 207 207 208 + #ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT 209 + 208 210 int 209 211 comp_window_direct_connect(struct comp_target_swapchain *cts, Display **dpy) 210 212 { ··· 258 260 259 261 return true; 260 262 } 263 + 264 + #endif
+4
src/xrt/compositor/main/comp_window_direct.h
··· 25 25 uint32_t width, 26 26 uint32_t height); 27 27 28 + #ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT 29 + 28 30 int 29 31 comp_window_direct_connect(struct comp_target_swapchain *cts, Display **dpy); 30 32 ··· 34 36 bool 35 37 comp_window_direct_init_swapchain( 36 38 struct comp_target_swapchain *cts, Display *dpy, VkDisplayKHR display, uint32_t width, uint32_t height); 39 + 40 + #endif 37 41 38 42 #ifdef __cplusplus 39 43 }
+9 -6
src/xrt/compositor/meson.build
··· 36 36 37 37 compile_args = [] 38 38 39 - if build_vk_khr_display 40 - compositor_srcs += ['main/comp_window_vk_display.c'] 41 - endif 42 - 43 39 if build_xcb 44 40 compositor_srcs += ['main/comp_window_xcb.c'] 45 41 compositor_deps += [xcb] 42 + endif 43 + 44 + if build_vk_khr_display 45 + compositor_srcs += ['main/comp_window_vk_display.c'] 46 46 endif 47 47 48 48 if build_xcb_xrandr_direct 49 - compositor_srcs += ['main/comp_window_direct.c', 50 - 'main/comp_window_direct_randr.c', 49 + compositor_srcs += ['main/comp_window_direct_randr.c', 51 50 'main/comp_window_direct_nvidia.c'] 52 51 compositor_deps += [xcb_randr, x11_xcb] 52 + endif 53 + 54 + if build_vk_khr_display or build_xcb_xrandr_direct 55 + compositor_srcs += ['main/comp_window_direct.c'] 53 56 endif 54 57 55 58 if build_opengl or build_opengles