1 # wmpus - cross platofrm window manager
2 # See LICENSE file for copyright and license details.
12 MANPREFIX ?= ${PREFIX}/share/man
14 # System specific configuration
18 LDFLAGS += -lwayland-client -lwayland-server
20 PROTOCOL ?= gtk-shell xdg-shell
21 HEADERS += $(addsuffix -client-protocol.h,$(PROTOCOL))
22 HEADERS += $(addsuffix -server-protocol.h,$(PROTOCOL))
23 OBJECTS += $(addsuffix -protocol.o,$(PROTOCOL))
25 sys-xwl.o: CFLAGS += $(shell pkg-config --cflags gtk+-3.0 libevdev)
26 wmpus: LDFLAGS += $(shell pkg-config --libs gtk+-3.0)
32 LDFLAGS += -lwayland-client -lwayland-server
38 LDFLAGS += -lswc -lwayland-client -lwayland-server
44 LDFLAGS += -lX11 -lXinerama
48 GCC ?= i486-mingw32-gcc
54 all: $(HEADERS) $(PROG)
57 rm -f wmpus *.exe *.o *-protocol.[ch]
60 tar -czf wmpus-$(VERSION).tar.gz --transform s::wmpus-$(VERSION)/: \
61 README LICENSE config.mk.example makefile *.1 *.c *.h
64 sed -i 's:/usr.*:$(PREFIX)/bin/wmpus:' wmpus.session
65 install -m 755 -D $(PROG) $(DESTDIR)$(PREFIX)/bin/$(PROG)
66 install -m 644 -D wmpus.1 $(DESTDIR)$(MANPREFIX)/man1/wmpus.1
67 install -m 755 -D wmpus.session $(DESTDIR)/etc/X11/Sessions/wmpus
68 install -m 644 -D wmpus.desktop $(DESTDIR)$(PREFIX)/share/xsessions/wmpus.desktop
71 rm -f $(DESTDIR)$(PREFIX)/bin/$(PROG)
72 rm -f $(DESTDIR)$(MANPREFIX)/man1/wmpus.1
75 $(PROG): main.o conf.o util.o sys-$(SYS).o wm-$(WM).o $(OBJECTS)
76 $(GCC) $(CFLAGS) -o $@ $+ $(LDFLAGS)
78 %.o: %.c $(wildcard *.h) makefile
79 $(GCC) $(CFLAGS) --std=gnu99 -c -o $@ $<
83 wayland-scanner code < $+ > $@
85 %-server-protocol.h: %.xml
86 wayland-scanner server-header < $+ > $@
88 %-client-protocol.h: %.xml
89 wayland-scanner client-header < $+ > $@
91 .PHONY: all clean dist install uninstall