mirror of
				https://github.com/swaywm/sway.git
				synced 2025-11-03 09:01:43 -05:00 
			
		
		
		
	Merge pull request #3464 from emersion/meson-check-wlroots-xwayland
Make sure wlroots has been built with xwayland
This commit is contained in:
		
						commit
						1cce14e7c7
					
				
					 1 changed files with 15 additions and 2 deletions
				
			
		
							
								
								
									
										17
									
								
								meson.build
									
										
									
									
									
								
							
							
						
						
									
										17
									
								
								meson.build
									
										
									
									
									
								
							| 
						 | 
					@ -36,7 +36,6 @@ endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
jsonc          = dependency('json-c', version: '>=0.13')
 | 
					jsonc          = dependency('json-c', version: '>=0.13')
 | 
				
			||||||
pcre           = dependency('libpcre')
 | 
					pcre           = dependency('libpcre')
 | 
				
			||||||
wlroots        = dependency('wlroots', fallback: ['wlroots', 'wlroots'])
 | 
					 | 
				
			||||||
wayland_server = dependency('wayland-server')
 | 
					wayland_server = dependency('wayland-server')
 | 
				
			||||||
wayland_client = dependency('wayland-client')
 | 
					wayland_client = dependency('wayland-client')
 | 
				
			||||||
wayland_cursor = dependency('wayland-cursor')
 | 
					wayland_cursor = dependency('wayland-cursor')
 | 
				
			||||||
| 
						 | 
					@ -57,7 +56,21 @@ math           = cc.find_library('m')
 | 
				
			||||||
rt             = cc.find_library('rt')
 | 
					rt             = cc.find_library('rt')
 | 
				
			||||||
git            = find_program('git', required: false)
 | 
					git            = find_program('git', required: false)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
have_xwayland = xcb.found()
 | 
					# Try first to find wlroots as a subproject, then as a system dependency
 | 
				
			||||||
 | 
					wlroots_proj = subproject('wlroots', required: false)
 | 
				
			||||||
 | 
					if wlroots_proj.found()
 | 
				
			||||||
 | 
						wlroots = wlroots_proj.get_variable('wlroots')
 | 
				
			||||||
 | 
						wlroots_conf = wlroots_proj.get_variable('conf_data')
 | 
				
			||||||
 | 
						wlroots_has_xwayland = wlroots_conf.get('WLR_HAS_XWAYLAND') == 1
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
						wlroots = dependency('wlroots')
 | 
				
			||||||
 | 
						wlroots_has_xwayland = cc.get_define('WLR_HAS_XWAYLAND', prefix: '#include <wlr/config.h>', dependencies: wlroots) == '1'
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if get_option('xwayland').enabled() and not wlroots_has_xwayland
 | 
				
			||||||
 | 
						error('Cannot enable Xwayland in sway: wlroots has been built without Xwayland support')
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					have_xwayland = xcb.found() and wlroots_has_xwayland
 | 
				
			||||||
 | 
					
 | 
				
			||||||
tray_deps_found = systemd.found() or elogind.found()
 | 
					tray_deps_found = systemd.found() or elogind.found()
 | 
				
			||||||
if get_option('tray').enabled() and not tray_deps_found
 | 
					if get_option('tray').enabled() and not tray_deps_found
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue