summaryrefslogtreecommitdiff
path: root/xwayland/meson.build
blob: 48df79efada9c64f91a16ad910c9104ed1041eeb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
if not get_option('xwayland')
	subdir_done()
endif

xwayland_dep = dependency('xwayland', required: false)
if xwayland_dep.found()
	if xwayland_dep.get_variable(pkgconfig: 'have_listenfd') == 'true'
		config_h.set('HAVE_XWAYLAND_LISTENFD', '1')
	endif
endif

srcs_xwayland = [
	'launcher.c',
	'window-manager.c',
	'selection.c',
	'dnd.c',
	xwayland_shell_v1_server_protocol_h,
	xwayland_shell_v1_protocol_c,
]

dep_names_xwayland = [
	'xcb',
	'xcb-composite',
	'xcb-shape',
	'xcb-xfixes',
	'xcursor',
	'cairo-xcb',
]

deps_xwayland = [ dep_libweston_public, dep_xcb_xwayland, dep_lib_cairo_shared ]

foreach name : dep_names_xwayland
	d = dependency(name, required: false)
	if not d.found()
		error('xwayland requires @0@ which was not found. Or, you can use \'-Dxwayland=false\'.'.format(name))
	endif
	deps_xwayland += d
endforeach

plugin_xwayland = shared_library(
	'xwayland',
	srcs_xwayland,
	include_directories: common_inc,
	dependencies: deps_xwayland,
	name_prefix: '',
	install: true,
	install_dir: dir_module_libweston
)
env_modmap += 'xwayland.so=@0@;'.format(plugin_xwayland.full_path())

install_headers(xwayland_api_h, subdir: dir_include_libweston_install)