aboutsummaryrefslogtreecommitdiff
path: root/sys/cmd/dwm/rules.mk
diff options
context:
space:
mode:
Diffstat (limited to 'sys/cmd/dwm/rules.mk')
-rw-r--r--sys/cmd/dwm/rules.mk50
1 files changed, 50 insertions, 0 deletions
diff --git a/sys/cmd/dwm/rules.mk b/sys/cmd/dwm/rules.mk
new file mode 100644
index 0000000..610987a
--- /dev/null
+++ b/sys/cmd/dwm/rules.mk
@@ -0,0 +1,50 @@
+include share/push.mk
+
+WL_DIR = $(shell pkg-config --variable=pkgdatadir wayland-protocols)
+WL_SCAN = $(shell pkg-config --variable=wayland_scanner wayland-scanner)
+PROTO_DIR := $(d)/protocols
+
+# Local sources
+SRCS_$(d) := \
+ $(d)/xdg-shell.c \
+ $(d)/wlr-layer-shell.c \
+ $(d)/util.c \
+ $(d)/output.c \
+ $(d)/input.c \
+ $(d)/client.c \
+ $(d)/decoration.c \
+ $(d)/layer.c \
+ $(d)/layout.c \
+ $(d)/func.c \
+ $(d)/dwm.c
+
+BINS_$(d) := $(d)/dwm
+
+include share/paths.mk
+
+# Local rules
+$(d)/xdg-shell.h:
+ $(WL_SCAN) server-header $(WL_DIR)/stable/xdg-shell/xdg-shell.xml $@
+
+$(d)/xdg-shell.c: $(d)/xdg-shell.h
+ $(WL_SCAN) private-code $(WL_DIR)/stable/xdg-shell/xdg-shell.xml $@
+
+# could make this a patterned rule...
+$(d)/wlr-layer-shell.h: $(PROTO_DIR)/wlr-layer-shell-unstable-v1.xml
+ $(WL_SCAN) server-header $(PROTO_DIR)/wlr-layer-shell-unstable-v1.xml $@
+
+$(d)/wlr-layer-shell.c: $(d)/wlr-layer-shell.h
+ $(WL_SCAN) private-code $(PROTO_DIR)/wlr-layer-shell-unstable-v1.xml $@
+
+include share/dynamic.mk
+$(BINS_$(d)): TCFLAGS := $(shell pkg-config --cflags xkbcommon) \
+ $(shell pkg-config --cflags wlroots) \
+ $(shell pkg-config --cflags wayland-server)
+$(BINS_$(d)): TCLIBS := $(shell pkg-config --libs xkbcommon) \
+ $(shell pkg-config --libs wlroots) \
+ $(shell pkg-config --libs wayland-server)
+
+$(BINS_$(d)): $(OBJS_$(d)) $(OBJ_DIR)/libn/libn.a
+ $(COMPLINK)
+
+include share/pop.mk