summaryrefslogtreecommitdiff
path: root/xwayland
diff options
context:
space:
mode:
authorDaniel Stone <daniels@collabora.com>2016-11-24 15:54:51 +0000
committerPekka Paalanen <pq@iki.fi>2018-12-09 14:50:54 +0200
commit8011b0fa0303741ef41f45ce0bf45484d9c5f115 (patch)
treefe272514159d517ff62d7456e38e7425ab670094 /xwayland
parented75c89fd570a587010b1dbbb2c0a466821ddd06 (diff)
downloadweston-8011b0fa0303741ef41f45ce0bf45484d9c5f115.tar.gz
Add Meson build system
Meson is a build system, currently implemented in Python, with multiple output backends, including Ninja and Make. The build file syntax is clean and easy to read unlike autotools. In practise, configuring and building with Meson and Ninja has been observed to be much faster than with autotools. Also cross-building support is excellent. More information at http://mesonbuild.com Since moving to Meson requires some changes from users in any case, we took this opportunity to revamp build options. Most of the build options still exist, some have changed names or more, and a few have been dropped. The option to choose the Cairo flavour is not implemented since for the longest time the Cairo image backend has been the only recommended one. This Meson build should be fully functional and it installs everything an all-enabled autotools build does. Installed pkg-config files have some minor differences that should be insignificant. Building of some developer documentation that was never installed with autotools is missing. It is expected that the autotools build system will be removed soon after the next Weston release. Signed-off-by: Daniel Stone <daniels@collabora.com> Co-authored-by: Pekka Paalanen <pq@iki.fi> Signed-off-by: Pekka Paalanen <pq@iki.fi>
Diffstat (limited to 'xwayland')
-rw-r--r--xwayland/meson.build31
1 files changed, 31 insertions, 0 deletions
diff --git a/xwayland/meson.build b/xwayland/meson.build
new file mode 100644
index 00000000..6a406452
--- /dev/null
+++ b/xwayland/meson.build
@@ -0,0 +1,31 @@
+if get_option('xwayland')
+ srcs_xwayland = [
+ 'launcher.c',
+ 'window-manager.c',
+ 'selection.c',
+ 'dnd.c',
+ 'hash.c',
+ ]
+ deps_xwayland = [
+ dependency('xcb'),
+ dependency('xcb-composite'),
+ dependency('xcb-shape'),
+ dependency('xcb-xfixes'),
+ dependency('xcursor'),
+ dependency('cairo-xcb'),
+ dep_libweston,
+ ]
+ plugin_xwayland = shared_library(
+ 'xwayland',
+ srcs_xwayland,
+ link_with: lib_cairo_shared,
+ include_directories: include_directories('..', '../shared'),
+ 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)
+endif