summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-03-16 20:50:55 +0100
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-03-16 20:50:55 +0100
commitde4c836e97a5798a09bcf96fbdf4cbaf29b0dc5e (patch)
treeced2f8201e49f65e2ceecac015ecc3f7f8f9e10a /Makefile
parentf9862eed939c748842c0e9369880848b654f3d5f (diff)
Initial Commit
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile54
1 files changed, 54 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 00000000..2b42ce4b
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,54 @@
+include config.mk
+
+CFLAGS += -I. -DWLR_USE_UNSTABLE -std=c99
+
+WAYLAND_PROTOCOLS=$(shell pkg-config --variable=pkgdatadir wayland-protocols)
+WAYLAND_SCANNER=$(shell pkg-config --variable=wayland_scanner wayland-scanner)
+
+PKGS = wlroots wayland-server xcb xkbcommon libinput
+CFLAGS += $(foreach p,$(PKGS),$(shell pkg-config --cflags $(p)))
+LDLIBS += $(foreach p,$(PKGS),$(shell pkg-config --libs $(p)))
+
+xdg-shell-protocol.h:
+ $(WAYLAND_SCANNER) server-header \
+ $(WAYLAND_PROTOCOLS)/stable/xdg-shell/xdg-shell.xml $@
+
+xdg-shell-protocol.c:
+ $(WAYLAND_SCANNER) private-code \
+ $(WAYLAND_PROTOCOLS)/stable/xdg-shell/xdg-shell.xml $@
+
+xdg-shell-protocol.o: xdg-shell-protocol.h
+
+wlr-layer-shell-unstable-v1-protocol.h:
+ $(WAYLAND_SCANNER) server-header \
+ protocols/wlr-layer-shell-unstable-v1.xml $@
+
+wlr-layer-shell-unstable-v1-protocol.c:
+ $(WAYLAND_SCANNER) private-code \
+ protocols/wlr-layer-shell-unstable-v1.xml $@
+
+wlr-layer-shell-unstable-v1-protocol.o: wlr-layer-shell-unstable-v1-protocol.h
+
+idle-protocol.h:
+ $(WAYLAND_SCANNER) server-header \
+ protocols/idle.xml $@
+
+idle-protocol.c:
+ $(WAYLAND_SCANNER) private-code \
+ protocols/idle.xml $@
+
+idle-protocol.o: idle-protocol.h
+
+release:
+ mkdir -p build && cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -H./ -B./build -G Ninja
+ cmake --build ./build --config Release --target all -j 10
+
+debug:
+ mkdir -p build && cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Debug -H./ -B./build -G Ninja
+ cmake --build ./build --config Debug --target all -j 10
+
+clear:
+ rm -rf build
+ rm -f *.o *-protocol.h *-protocol.c
+
+config: xdg-shell-protocol.o wlr-layer-shell-unstable-v1-protocol.o idle-protocol.o