aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2021-02-04 17:56:28 +0100
committerSimon Ser <contact@emersion.fr>2021-03-03 18:19:12 +0100
commiteec2e1d3b16ba40c85483badcc7809277274ce5d (patch)
treeed99e776dfb4f6329ccac2955d12a78ffebc2939 /include
parent3504bb587daade365c11bd91568bc175b303be57 (diff)
xwayland: check executable exists on init
Instead of walking PATH like a previous proposal [1], this one checks that the Xwayland path specified in the pkg-config file exists. I think this is a reasonable compromise: - Users that don't have Xwayland installed system-wide won't get a bogus DISPLAY env variable set up. - Users that have WLR_XWAYLAND set won't be affected by this check. - Users that have Xwayland installed system-wide and a different Xwayland in their PATH still get their custom Xwayland. - Users that don't have Xwayland installed system-wide but have it somewhere else in PATH are left out. But this is pretty niche, and they can just set WLR_XWAYLAND. [1]: https://github.com/swaywm/wlroots/pull/2314
Diffstat (limited to 'include')
-rw-r--r--include/meson.build2
-rw-r--r--include/xwayland/meson.build12
2 files changed, 14 insertions, 0 deletions
diff --git a/include/meson.build b/include/meson.build
index 30b9f2fe..c72eada5 100644
--- a/include/meson.build
+++ b/include/meson.build
@@ -6,6 +6,8 @@ if not features.get('x11-backend')
endif
if not features.get('xwayland')
exclude_files += 'xwayland.h'
+else
+ subdir('xwayland')
endif
if not features.get('xdg-foreign')
exclude_files += [
diff --git a/include/xwayland/meson.build b/include/xwayland/meson.build
new file mode 100644
index 00000000..16712083
--- /dev/null
+++ b/include/xwayland/meson.build
@@ -0,0 +1,12 @@
+if xwayland.found()
+ xwayland_path = xwayland.get_pkgconfig_variable('xwayland')
+else
+ xwayland_path = xwayland_prog.full_path()
+endif
+
+xwayland_config_data = configuration_data()
+xwayland_config_data.set_quoted('XWAYLAND_PATH', xwayland_path)
+configure_file(
+ output: 'config.h',
+ configuration: xwayland_config_data,
+)