main neuswc / libswc / meson.build
 1install_headers('swc.h')
 2
 3libswc_src = files(
 4  'bindings.c',
 5  'compositor.c',
 6  'data.c',
 7  'data_device.c',
 8  'data_device_manager.c',
 9  'decor.c',
10  'dmabuf.c',
11  'drm.c',
12  'input.c',
13  'kde_decoration.c',
14  'keyboard.c',
15  'layer_shell.c',
16  'launch.c',
17  'mode.c',
18  'output.c',
19  'panel.c',
20  'panel_manager.c',
21  'plane.c',
22  'pointer.c',
23  'primary_plane.c',
24  'region.c',
25  'screen.c',
26  'select.c',
27  'snap.c',
28  'shell.c',
29  'shell_surface.c',
30  'shm.c',
31  'subcompositor.c',
32  'subsurface.c',
33  'surface.c',
34  'swc.c',
35  'util.c',
36  'view.c',
37  'wayland_buffer.c',
38  'window.c',
39  'xdg_decoration.c',
40  'xdg_output.c',
41  'xdg_shell.c',
42
43  input_backend == 'libinput' ? 'seat.c' : [],
44  input_backend == 'wscons' ? 'seat-ws.c' : [],
45  input_backend == 'evdev' ? 'seat-evdev.c' : [],
46
47  xwayland.found() ? ['xserver.c', 'xwm.c'] : [],  
48)
49libswc_src += [cursor, launch_protocol]
50
51foreach proto, proto_src : protos
52	libswc_src += proto_src
53endforeach
54
55libswc_lib = library(
56	'swc',
57	libswc_src,
58	dependencies: requires + requires_private,
59	install: true,
60	include_directories: include_directories('..'),
61)
62
63# Allows other meson projects to use libswc
64libswc = declare_dependency(
65	link_with: libswc_lib,
66	dependencies: requires + requires_private,
67)
68
69pkg.generate(
70  libswc_lib,
71  name: 'swc',
72  description: 'A library for making a simple Wayland compositor',
73  requires: requires,
74  requires_private: requires_private,
75)