14 'surface/subsurface.c',
15 'client_buffer/shm_client_buffer.c',
16 'xdg_shell/xdg_shell.c',
17 'xdg_shell/xdg_surface.c',
18 'xdg_shell/xdg_toplevel.c',
26 'seat/seat_pointer.c',
27 'seat/seat_keyboard.c',
34 'xdg-shell': wl_protocol_dir / 'stable/xdg-shell/xdg-shell.xml',
38 protocols_server_header = {}
40 foreach name, path : protocols
42 name.underscorify() + '_c',
44 output: '@BASENAME@-protocol.c',
45 command: [wayland_scanner, 'private-code', '@INPUT@', '@OUTPUT@'],
49 server_header = custom_target(
50 name.underscorify() + '_server_h',
52 output: '@BASENAME@-server-protocol.h',
53 command: [wayland_scanner, 'server-header', '@INPUT@', '@OUTPUT@'],
54 build_by_default: false,
56 libds_files += server_header
59 math = meson.get_compiler('c').find_library('m')
60 wayland_server = dependency('wayland-server', required: true)
61 pixman = dependency('pixman-1', required: true)
62 libdrm = dependency('libdrm', required: true)
63 xkbcommon = dependency('xkbcommon', required: true)
64 rt = meson.get_compiler('c').find_library('rt')
66 if wayland_server.version().version_compare('>= 1.19')
67 cdata.set('HAVE_WL_SEAT_ERROR_MISSING_CAPABILITY', '1')
82 lib_libds = shared_library('ds', libds_files,
83 dependencies: libds_deps,
84 include_directories: [ common_inc, include_directories('.') ],
85 version: meson.project_version(),
89 dep_libds = declare_dependency(
91 dependencies: libds_deps,
92 include_directories: [ common_inc, include_directories('.') ],
95 pkgconfig = import('pkgconfig')
96 pkgconfig.generate(lib_libds,
97 version: meson.project_version(),
98 filebase: meson.project_name(),
99 name: meson.project_name(),
100 description: 'Wayland compositor library',