aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2022-11-25 18:05:17 +0100
committerAlexander Orzechowski <alex@ozal.ski>2022-12-06 22:39:45 +0000
commit4da9b32a154901bd8d74a80162ce3962eefbc29f (patch)
tree2660a33943a6d4ec3faa4598edbd4dd88c1dadbd
parent6c897756b6340d098f50eeb0da0d39abda87fdda (diff)
xwayland: use internal_config
Avoids the need to have a separate config.h, and removes C compiler arguments.
-rw-r--r--include/meson.build2
-rw-r--r--include/xwayland/meson.build30
-rw-r--r--xwayland/meson.build31
-rw-r--r--xwayland/server.c2
4 files changed, 28 insertions, 37 deletions
diff --git a/include/meson.build b/include/meson.build
index bc91a766..f97e76ac 100644
--- a/include/meson.build
+++ b/include/meson.build
@@ -13,8 +13,6 @@ if not features.get('x11-backend')
endif
if not features.get('xwayland')
exclude_files += 'xwayland.h'
-else
- subdir('xwayland')
endif
if not features.get('gles2-renderer')
exclude_files += ['render/egl.h', 'render/gles2.h']
diff --git a/include/xwayland/meson.build b/include/xwayland/meson.build
deleted file mode 100644
index fcc5bd3a..00000000
--- a/include/xwayland/meson.build
+++ /dev/null
@@ -1,30 +0,0 @@
-xwayland_feature_names = [
- 'listenfd',
- 'no_touch_pointer_emulation',
- 'force_xrandr_emulation',
- 'terminate_delay',
-]
-
-xwayland_features = {}
-if xwayland.found()
- xwayland_path = xwayland.get_variable('xwayland')
- foreach name : xwayland_feature_names
- have = xwayland.get_variable('have_' + name, default_value: 'false') == 'true'
- xwayland_features += { name: have }
- endforeach
-else
- xwayland_path = xwayland_prog.full_path()
- foreach name : xwayland_feature_names
- xwayland_features += { name: false }
- endforeach
-endif
-
-xwayland_config_data = configuration_data()
-xwayland_config_data.set_quoted('XWAYLAND_PATH', xwayland_path)
-foreach name, have : xwayland_features
- xwayland_config_data.set10('HAVE_XWAYLAND_' + name.to_upper(), have)
-endforeach
-configure_file(
- output: 'config.h',
- configuration: xwayland_config_data,
-)
diff --git a/xwayland/meson.build b/xwayland/meson.build
index 0e36b61e..5a8c732d 100644
--- a/xwayland/meson.build
+++ b/xwayland/meson.build
@@ -62,6 +62,32 @@ foreach lib, desc : xwayland_optional
xwayland_libs += dep
endforeach
+xwayland_feature_names = [
+ 'listenfd',
+ 'no_touch_pointer_emulation',
+ 'force_xrandr_emulation',
+ 'terminate_delay',
+]
+
+xwayland_features = {}
+if xwayland.found()
+ xwayland_path = xwayland.get_variable('xwayland')
+ foreach name : xwayland_feature_names
+ have = xwayland.get_variable('have_' + name, default_value: 'false') == 'true'
+ xwayland_features += { name: have }
+ endforeach
+else
+ xwayland_path = xwayland_prog.full_path()
+ foreach name : xwayland_feature_names
+ xwayland_features += { name: false }
+ endforeach
+endif
+
+internal_config.set_quoted('XWAYLAND_PATH', xwayland_path)
+foreach name, have : xwayland_features
+ internal_config.set10('HAVE_XWAYLAND_' + name.to_upper(), have)
+endforeach
+
wlr_files += files(
'selection/dnd.c',
'selection/incoming.c',
@@ -77,7 +103,4 @@ wlr_deps += xwayland_libs
features += { 'xwayland': true }
have = cc.has_function('xcb_xfixes_set_client_disconnect_mode', dependencies: xwayland_libs)
-add_project_arguments(
- '-DHAS_XCB_XFIXES_SET_CLIENT_DISCONNECT_MODE=@0@'.format(have.to_int()),
- language: 'c',
-)
+internal_config.set10('HAS_XCB_XFIXES_SET_CLIENT_DISCONNECT_MODE', have)
diff --git a/xwayland/server.c b/xwayland/server.c
index 3b34bd57..aee15002 100644
--- a/xwayland/server.c
+++ b/xwayland/server.c
@@ -15,8 +15,8 @@
#include <wayland-server-core.h>
#include <wlr/util/log.h>
#include <wlr/xwayland.h>
+#include "config.h"
#include "sockets.h"
-#include "xwayland/config.h"
static void safe_close(int fd) {
if (fd >= 0) {