|  |  |  | @ -43,6 +43,24 @@ subproject( | 
			
		
	
		
			
				
					|  |  |  |  | 	required: false, | 
			
		
	
		
			
				
					|  |  |  |  | 	version: wlroots_version, | 
			
		
	
		
			
				
					|  |  |  |  | ) | 
			
		
	
		
			
				
					|  |  |  |  | wlroots = dependency('wlroots', version: wlroots_version) | 
			
		
	
		
			
				
					|  |  |  |  | wlroots_features = { | 
			
		
	
		
			
				
					|  |  |  |  | 	'xwayland': false, | 
			
		
	
		
			
				
					|  |  |  |  | 	'libinput_backend': false, | 
			
		
	
		
			
				
					|  |  |  |  | 	'gles2_renderer': false, | 
			
		
	
		
			
				
					|  |  |  |  | 	'session': false, | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
		
			
				
					|  |  |  |  | foreach name, _ : wlroots_features | 
			
		
	
		
			
				
					|  |  |  |  | 	var_name = 'have_' + name.underscorify() | 
			
		
	
		
			
				
					|  |  |  |  | 	have = wlroots.get_variable(pkgconfig: var_name, internal: var_name) == 'true' | 
			
		
	
		
			
				
					|  |  |  |  | 	wlroots_features += { name: have } | 
			
		
	
		
			
				
					|  |  |  |  | endforeach | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | if get_option('xwayland').enabled() and not wlroots_features['xwayland'] | 
			
		
	
		
			
				
					|  |  |  |  | 	error('Cannot enable Xwayland in sway: wlroots has been built without Xwayland support') | 
			
		
	
		
			
				
					|  |  |  |  | endif | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | null_dep = dependency('', required: false) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | jsonc = dependency('json-c', version: '>=0.13') | 
			
		
	
		
			
				
					|  |  |  |  | pcre2 = dependency('libpcre2-8') | 
			
		
	
	
		
			
				
					|  |  |  | @ -50,14 +68,13 @@ wayland_server = dependency('wayland-server', version: '>=1.21.0') | 
			
		
	
		
			
				
					|  |  |  |  | wayland_client = dependency('wayland-client') | 
			
		
	
		
			
				
					|  |  |  |  | wayland_cursor = dependency('wayland-cursor') | 
			
		
	
		
			
				
					|  |  |  |  | wayland_protos = dependency('wayland-protocols', version: '>=1.24') | 
			
		
	
		
			
				
					|  |  |  |  | wlroots = dependency('wlroots', version: wlroots_version) | 
			
		
	
		
			
				
					|  |  |  |  | xkbcommon = dependency('xkbcommon') | 
			
		
	
		
			
				
					|  |  |  |  | cairo = dependency('cairo') | 
			
		
	
		
			
				
					|  |  |  |  | pango = dependency('pango') | 
			
		
	
		
			
				
					|  |  |  |  | pangocairo = dependency('pangocairo') | 
			
		
	
		
			
				
					|  |  |  |  | gdk_pixbuf = dependency('gdk-pixbuf-2.0', required: get_option('gdk-pixbuf')) | 
			
		
	
		
			
				
					|  |  |  |  | pixman = dependency('pixman-1') | 
			
		
	
		
			
				
					|  |  |  |  | glesv2 = dependency('glesv2') | 
			
		
	
		
			
				
					|  |  |  |  | glesv2 = wlroots_features['gles2_renderer'] ? dependency('glesv2') : null_dep | 
			
		
	
		
			
				
					|  |  |  |  | libevdev = dependency('libevdev') | 
			
		
	
		
			
				
					|  |  |  |  | libinput = dependency('libinput', version: '>=1.21.0') | 
			
		
	
		
			
				
					|  |  |  |  | xcb = dependency('xcb', required: get_option('xwayland')) | 
			
		
	
	
		
			
				
					|  |  |  | @ -71,18 +88,6 @@ rt = cc.find_library('rt') | 
			
		
	
		
			
				
					|  |  |  |  | xcb_icccm = dependency('xcb-icccm', required: get_option('xwayland')) | 
			
		
	
		
			
				
					|  |  |  |  | threads = dependency('threads') # for pthread_setschedparam | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | wlroots_features = { | 
			
		
	
		
			
				
					|  |  |  |  | 	'xwayland': false, | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
		
			
				
					|  |  |  |  | foreach name, _ : wlroots_features | 
			
		
	
		
			
				
					|  |  |  |  | 	var_name = 'have_' + name.underscorify() | 
			
		
	
		
			
				
					|  |  |  |  | 	have = wlroots.get_variable(pkgconfig: var_name, internal: var_name) == 'true' | 
			
		
	
		
			
				
					|  |  |  |  | 	wlroots_features += { name: have } | 
			
		
	
		
			
				
					|  |  |  |  | endforeach | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | if get_option('xwayland').enabled() and not wlroots_features['xwayland'] | 
			
		
	
		
			
				
					|  |  |  |  | 	error('Cannot enable Xwayland in sway: wlroots has been built without Xwayland support') | 
			
		
	
		
			
				
					|  |  |  |  | endif | 
			
		
	
		
			
				
					|  |  |  |  | have_xwayland = xcb.found() and wlroots_features['xwayland'] | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | if get_option('sd-bus-provider') == 'auto' | 
			
		
	
	
		
			
				
					|  |  |  | 
 |