aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Crisci <tony@dubstepdish.com>2017-08-09 13:25:52 -0400
committerTony Crisci <tony@dubstepdish.com>2017-08-09 16:50:41 -0400
commit5a7595af77bdccf245dcdd9245cf0d408344f633 (patch)
tree5c9f5681abdcbbec127c0a687c0e4f811ea22eb9
parent26edd5fb9eb4b724133f6beb6aaf634c7e0b7ba2 (diff)
use generators for wayland protocol gen
-rw-r--r--examples/compositor/xdg_shell.c2
-rw-r--r--examples/meson.build30
2 files changed, 16 insertions, 16 deletions
diff --git a/examples/compositor/xdg_shell.c b/examples/compositor/xdg_shell.c
index 3eaad449..5130bce6 100644
--- a/examples/compositor/xdg_shell.c
+++ b/examples/compositor/xdg_shell.c
@@ -3,7 +3,7 @@
#include <wlr/util/log.h>
#include <stdlib.h>
#include "compositor.h"
-#include "compositor/protocols/xdg-shell.h"
+#include "xdg-shell-unstable-v6-protocol.h"
static void resource_destructor(struct wl_client *client,
struct wl_resource *resource) {
diff --git a/examples/meson.build b/examples/meson.build
index 51561e8a..646a4b88 100644
--- a/examples/meson.build
+++ b/examples/meson.build
@@ -8,32 +8,32 @@ executable('pointer', 'pointer.c', dependencies: dep_wlr, link_with: lib_shared)
executable('touch', 'touch.c', dependencies: dep_wlr, link_with: lib_shared)
executable('tablet', 'tablet.c', dependencies: dep_wlr, link_with: lib_shared)
+wayland_scanner = find_program('wayland-scanner')
+wl_protocol_dir = dep_wayland_proto.get_pkgconfig_variable('pkgdatadir')
+
+wayland_scanner_server = generator(wayland_scanner,
+ output: '@BASENAME@-protocol.h',
+ arguments: ['server-header', '@INPUT@', '@OUTPUT@'])
+
+wayland_scanner_code = generator(wayland_scanner,
+ output: '@BASENAME@-protocol.c',
+ arguments: ['code', '@INPUT@', '@OUTPUT@'])
+
compositor_src = [
'compositor/main.c',
'compositor/wl_compositor.c',
'compositor/wl_shell.c',
'compositor/xdg_shell.c',
- 'compositor/protocols/xdg-shell.c',
]
-wayland_scanner = find_program('wayland-scanner')
-wayland_protocols_pkgdatadir = dep_wayland_proto.get_pkgconfig_variable('pkgdatadir')
-
-protocols_src = meson.current_source_dir() + '/compositor/protocols'
-run_command(['mkdir', '-p', protocols_src])
-
protocols = [
- ['/unstable/xdg-shell/xdg-shell-unstable-v6.xml', 'xdg-shell']
+ [ 'unstable', 'xdg-shell', 'xdg-shell-unstable-v6.xml' ]
]
foreach p : protocols
- xml = wayland_protocols_pkgdatadir + p[0]
-
- run_command([wayland_scanner, 'code', xml,
- protocols_src + '/' + p[1] + '.c'])
-
- run_command([wayland_scanner, 'server-header', xml,
- protocols_src + '/' + p[1] + '.h'])
+ xml = join_paths([wl_protocol_dir] + p)
+ compositor_src += wayland_scanner_code.process(xml)
+ compositor_src += wayland_scanner_server.process(xml)
endforeach
executable('compositor', compositor_src, dependencies: dep_wlr, link_with: lib_shared)