blob: e85901a10606305f00ddcc02175b454ae8800b18 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
PKG_CONFIG = pkg-config
VERSION = 0.1
# flags and incs
PKGS = wayland-client wayland-server
CFLAGS = -DVERSION=\"$(VERSION)\" -Wall
LIBS = `$(PKG_CONFIG) --libs $(PKGS)`
PREFIX = /usr/local
MANDIR = $(PREFIX)/share/man
# compiler and linker
CC = cc
# wayland-scanner is a tool which generates C headers and rigging for Wayland
# protocols, which are specified in XML. wlroots requires you to rig these up
# to your build system yourself and provide them in the include path.
WAYLAND_PROTOCOLS = `$(PKG_CONFIG) --variable=pkgdatadir wayland-protocols`
WAYLAND_SCANNER = `$(PKG_CONFIG) --variable=wayland_scanner wayland-scanner`
all: zwp-idle-inhibit-manager-v1-protocol.o xdg-shell-client-protocol.o ext-idle-notify-v1-protocol.o waytils
waytils: waytils.o
$(CC) -o $@ *.o $(CFLAGS) $(LIBS)
waytils.o: waytils.c
zwp-idle-inhibit-manager-v1-protocol.o: zwp-idle-inhibit-manager-v1-protocol.c zwp-idle-inhibit-manager-v1-protocol.h
xdg-shell-client-protocol.o: xdg-shell-client-protocol.c xdg-shell-client-protocol.h
ext-idle-notify-v1-protocol.o: ext-idle-notify-v1-protocol.c ext-idle-notify-v1-protocol.h
zwp-idle-inhibit-manager-v1-protocol.h:
$(WAYLAND_SCANNER) client-header \
$(WAYLAND_PROTOCOLS)/unstable/idle-inhibit/idle-inhibit-unstable-v1.xml $@
zwp-idle-inhibit-manager-v1-protocol.c:
$(WAYLAND_SCANNER) private-code \
$(WAYLAND_PROTOCOLS)/unstable/idle-inhibit/idle-inhibit-unstable-v1.xml $@
xdg-shell-client-protocol.h:
$(WAYLAND_SCANNER) client-header \
$(WAYLAND_PROTOCOLS)/stable/xdg-shell/xdg-shell.xml $@
xdg-shell-client-protocol.c:
$(WAYLAND_SCANNER) private-code \
$(WAYLAND_PROTOCOLS)/stable/xdg-shell/xdg-shell.xml $@
ext-idle-notify-v1-protocol.h:
$(WAYLAND_SCANNER) client-header \
$(WAYLAND_PROTOCOLS)/staging/ext-idle-notify/ext-idle-notify-v1.xml $@
ext-idle-notify-v1-protocol.c:
$(WAYLAND_SCANNER) private-code \
$(WAYLAND_PROTOCOLS)/staging/ext-idle-notify/ext-idle-notify-v1.xml $@
clean:
rm -f waytils *.o *-protocol.*
install: waytils
mkdir -p $(PREFIX)/bin
cp -f waytils $(PREFIX)/bin
chmod 755 $(PREFIX)/bin/waytils
mkdir -p $(MANDIR)/man1
cp -f waytils.1 $(MANDIR)/man1
chmod 644 $(MANDIR)/man1/waytils.1
uninstall: waytils
rm -f $(PREFIX)/bin/waytils $(MANDIR)/man1/waytils.1
|