diff --git a/.gitignore b/.gitignore index 51b1a52..2f5a5c6 100644 --- a/.gitignore +++ b/.gitignore @@ -94,6 +94,7 @@ WINGs/wmaker-popup-v1-protocol.c WINGs/wmaker-popup-v1-client-protocol.h src/wmaker-popup-v1-protocol.c src/wmaker-popup-v1-server-protocol.h +src/protocols/ # User scratch +cmd diff --git a/src/Makefile.am b/src/Makefile.am index bf933e4..a11882b 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,8 +1,18 @@ AUTOMAKE_OPTIONS = subdir-objects +# Wayland protocol sources from wayland-protocols package +WL_PROTO_DIR = $(WAYLAND_PROTOCOLS_DIR) +# wlroots protocol sources - check for packaged wlr-protocols first, fallback to wlroots source tree +WLR_PROTO_DIR = $(shell pkg-config --variable=pkgdatadir wlr-protocols 2>/dev/null || echo "/home/lkn/src/wlroots/protocol") + BUILT_SOURCES = wconfig.h \ wmaker-popup-v1-server-protocol.h \ - wmaker-popup-v1-protocol.c + wmaker-popup-v1-protocol.c \ + protocols/pointer-constraints-unstable-v1-protocol.h \ + protocols/wlr-output-power-management-unstable-v1-protocol.h \ + protocols/wlr-layer-shell-unstable-v1-protocol.h \ + protocols/xdg-shell-protocol.h \ + protocols/xdg-shell-protocol.c bin_PROGRAMS = wmaker @@ -13,7 +23,12 @@ nodist_wmaker_SOURCES = \ wmaker-popup-v1-server-protocol.h CLEANFILES = wmaker-popup-v1-server-protocol.h \ - wmaker-popup-v1-protocol.c + wmaker-popup-v1-protocol.c \ + protocols/pointer-constraints-unstable-v1-protocol.h \ + protocols/wlr-output-power-management-unstable-v1-protocol.h \ + protocols/wlr-layer-shell-unstable-v1-protocol.h \ + protocols/xdg-shell-protocol.h \ + protocols/xdg-shell-protocol.c wmaker-popup-v1-server-protocol.h: $(top_srcdir)/protocols/wmaker-popup-v1.xml $(WAYLAND_SCANNER) server-header $< $@ @@ -22,6 +37,32 @@ wmaker-popup-v1-protocol.c: $(top_srcdir)/protocols/wmaker-popup-v1.xml \ wmaker-popup-v1-server-protocol.h $(WAYLAND_SCANNER) private-code $< $@ +# Generate protocol headers for Wayland compositor backend +protocols/pointer-constraints-unstable-v1-protocol.h: + @mkdir -p protocols + $(WAYLAND_SCANNER) server-header \ + $(WL_PROTO_DIR)/unstable/pointer-constraints/pointer-constraints-unstable-v1.xml $@ + +protocols/wlr-output-power-management-unstable-v1-protocol.h: + @mkdir -p protocols + $(WAYLAND_SCANNER) server-header \ + $(WLR_PROTO_DIR)/wlr-output-power-management-unstable-v1.xml $@ + +protocols/wlr-layer-shell-unstable-v1-protocol.h: + @mkdir -p protocols + $(WAYLAND_SCANNER) server-header \ + $(WLR_PROTO_DIR)/wlr-layer-shell-unstable-v1.xml $@ + +protocols/xdg-shell-protocol.h: + @mkdir -p protocols + $(WAYLAND_SCANNER) server-header \ + $(WL_PROTO_DIR)/stable/xdg-shell/xdg-shell.xml $@ + +protocols/xdg-shell-protocol.c: protocols/xdg-shell-protocol.h + @mkdir -p protocols + $(WAYLAND_SCANNER) private-code \ + $(WL_PROTO_DIR)/stable/xdg-shell/xdg-shell.xml $@ + wmaker_SOURCES = \ GNUstep.h \ WindowMaker.h \ diff --git a/wrlib/Makefile.am b/wrlib/Makefile.am index a1b749b..c82b738 100644 --- a/wrlib/Makefile.am +++ b/wrlib/Makefile.am @@ -118,7 +118,7 @@ X11_WRASTER_LIBS = WRASTER_GFXLIBS = @WRASTER_GFXLIBS_NO_XPM@ endif -libwraster_la_LIBADD = @LIBRARY_SEARCH_PATH@ $(WRASTER_GFXLIBS) @MAGICKLIBS@ $(X11_WRASTER_LIBS) -lm +libwraster_la_LIBADD = @LIBRARY_SEARCH_PATH@ $(WRASTER_GFXLIBS) @MAGICKLIBS@ $(X11_WRASTER_LIBS) $(PIXMAN_LIBS) -lm pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = wrlib.pc