summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichel Dänzer <mdaenzer@redhat.com>2020-10-23 12:40:41 +0200
committerOlivier Fourdan <fourdan@gmail.com>2023-02-17 10:13:34 +0000
commitcfba10c7c4942b493e2dbaf1f25c6041c0c3b515 (patch)
tree080106f2655918fc8ce364bf504d7507bf4c0f98
parent93fde076e05f2ab44bc5b027323203329d6c2cfb (diff)
downloadxserver-cfba10c7c4942b493e2dbaf1f25c6041c0c3b515.tar.gz
meson: Build Xwayland unconditionally
And simplify build_glamor logic, we don't need the separate glamor_option variable anymore. (cherry picked from commit fdc61c5a3cc2637a52928c8e2fd4d50118c7ffea) (cherry picked from commit 274d54d1c3876fd8c5142f43cd9204c0de417e92)
-rw-r--r--meson.build71
-rw-r--r--meson_options.txt6
2 files changed, 25 insertions, 52 deletions
diff --git a/meson.build b/meson.build
index 1d57d4f6b..9188a8cdf 100644
--- a/meson.build
+++ b/meson.build
@@ -162,44 +162,29 @@ else
default_font_path = dfp
endif
-glamor_option = get_option('glamor')
+build_glamor = get_option('glamor')
with_dtrace = get_option('dtrace')
if with_dtrace
dtrace = find_program('dtrace', required: true)
endif
-libxcvt_dep = dependency('libxcvt', fallback: ['libxcvt', 'libxcvt_dep'], required: build_xorg)
-build_xwayland = false
-if (host_machine.system() != 'darwin' and
- host_machine.system() != 'windows' and
- get_option('xwayland') != 'false')
- xwayland_required = get_option('xwayland') == 'true'
- build_glamor = glamor_option == 'true' or glamor_option == 'auto'
-
- xwayland_path = get_option('xwayland-path')
- if (xwayland_path == '')
- xwayland_path = join_paths(get_option('prefix'), get_option('bindir'))
- endif
+build_xwayland = true
- xwayland_dep = [
- dependency('wayland-client', version: wayland_req, required: xwayland_required),
- dependency('wayland-protocols', version: wayland_protocols_req, required: xwayland_required),
- dependency('libxcvt', fallback: ['libxcvt', 'libxcvt_dep'], required: xwayland_required),
- ]
+xwayland_path = get_option('xwayland-path')
+if (xwayland_path == '')
+ xwayland_path = join_paths(get_option('prefix'), get_option('bindir'))
+endif
- if build_glamor
- xwayland_dep += dependency('libdrm', version: libdrm_req, required: xwayland_required)
- xwayland_dep += dependency('epoxy', required: xwayland_required)
- endif
+xwayland_dep = [
+ dependency('wayland-client', version: wayland_req, required: true),
+ dependency('wayland-protocols', version: wayland_protocols_req, required: true),
+ dependency('libxcvt', fallback: ['libxcvt', 'libxcvt_dep'], required: true),
+]
- build_xwayland = true
- # check for all the deps being found, to handle 'auto' mode.
- foreach d: xwayland_dep
- if not d.found()
- build_xwayland = false
- endif
- endforeach
+if build_glamor
+ xwayland_dep += dependency('libdrm', version: libdrm_req, required: true)
+ xwayland_dep += dependency('epoxy', required: true)
endif
if get_option('ipv6') == 'auto'
@@ -208,12 +193,6 @@ else
build_ipv6 = get_option('ipv6') == 'true'
endif
-if glamor_option == 'auto'
- build_glamor = build_xwayland
-else
- build_glamor = glamor_option == 'true'
-endif
-
gbm_dep = dependency('', required: false)
epoxy_dep = dependency('', required: false)
if build_glamor
@@ -221,23 +200,19 @@ if build_glamor
epoxy_dep = dependency('epoxy', required: false)
endif
-if build_xwayland
- libdecor_dep = dependency('libdecor-0', required: false)
- libdecor_option = get_option('libdecor')
- if libdecor_option == 'auto'
- have_libdecor = libdecor_dep.found()
- else
- have_libdecor = libdecor_option == 'true'
- if have_libdecor and not libdecor_dep.found()
- error('libdecor support requested but not found')
- endif
- endif
+libdecor_dep = dependency('libdecor-0', required: false)
+libdecor_option = get_option('libdecor')
+if libdecor_option == 'auto'
+ have_libdecor = libdecor_dep.found()
else
- have_libdecor = false
+ have_libdecor = libdecor_option == 'true'
+ if have_libdecor and not libdecor_dep.found()
+ error('libdecor support requested but not found')
+ endif
endif
eglstream_option = get_option('xwayland_eglstream')
-if build_xwayland and build_glamor
+if build_glamor
eglstream_dep = dependency('wayland-eglstream-protocols', required:false)
if eglstream_option == 'auto'
build_eglstream = eglstream_dep.found()
diff --git a/meson_options.txt b/meson_options.txt
index 910b12527..845d2c8d2 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -1,7 +1,5 @@
-option('xwayland', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
- description: 'Enable Xwayland X server')
-option('glamor', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
- description: 'Enable glamor (default yes for Xwayland builds)')
+option('glamor', type: 'boolean', value: true,
+ description: 'Enable glamor (default yes)')
option('xwayland_eglstream', type: 'combo', choices: ['true', 'false', 'auto'],
value: 'auto', description: 'Enable EGLStream support for glamor on Xwayland')
option('xvfb', type: 'boolean', value: true,