]> Pileus Git - wmpus/blob - makefile
bd3e1e73b5628ac731d0c40adf83c4a3ab09ccdd
[wmpus] / makefile
1 # wmpus - cross platofrm window manager
2 # See LICENSE file for copyright and license details.
3
4 -include config.mk
5
6 VERSION   ?= 0.1-rc1
7 WM        ?= wmii
8 SYS       ?= x11
9 CFLAGS    ?= -g -Wall
10 PREFIX    ?= /usr/local
11 MANPREFIX ?= ${PREFIX}/share/man
12
13 ifeq ($(SYS),wl)
14 GCC       ?= gcc
15 PROG      ?= wmpus
16 LDFLAGS   += -lwayland-client -lwayland-server
17 endif
18
19 ifeq ($(SYS),swc)
20 GCC       ?= gcc
21 PROG      ?= wmpus
22 LDFLAGS   += -lswc -lwayland-client -lwayland-server
23 endif
24
25 ifeq ($(SYS),x11)
26 GCC       ?= gcc
27 PROG      ?= wmpus
28 LDFLAGS   += -lX11 -lXinerama
29 endif
30
31 ifeq ($(SYS),win32)
32 GCC       ?= i486-mingw32-gcc
33 PROG      ?= wmpus.exe
34 LDFLAGS   += -lgdi32
35 endif
36
37 all: $(PROG)
38
39 clean:
40         rm -f wmpus *.exe *.o
41
42 dist:
43         tar -czf wmpus-$(VERSION).tar.gz --transform s::wmpus-$(VERSION)/: \
44                 README LICENSE config.mk.example makefile *.1 *.c *.h
45
46 install: all
47         sed -i 's:/usr.*:$(PREFIX)/bin/wmpus:' wmpus.session
48         install -m 755 -D $(PROG) $(DESTDIR)$(PREFIX)/bin/$(PROG)
49         install -m 644 -D wmpus.1 $(DESTDIR)$(MANPREFIX)/man1/wmpus.1
50         install -m 755 -D wmpus.session $(DESTDIR)/etc/X11/Sessions/wmpus
51         install -m 644 -D wmpus.desktop $(DESTDIR)$(PREFIX)/share/xsessions/wmpus.desktop
52
53 uninstall:
54         rm -f $(DESTDIR)$(PREFIX)/bin/$(PROG)
55         rm -f $(DESTDIR)$(MANPREFIX)/man1/wmpus.1
56
57 $(PROG): main.o conf.o util.o sys-$(SYS).o wm-$(WM).o
58         $(GCC) $(CFLAGS) -o $@ $+ $(LDFLAGS)
59
60 %.o: %.c $(wildcard *.h) makefile
61         $(GCC) $(CFLAGS) --std=gnu99 -c -o $@ $<
62
63 .PHONY: all clean dist install uninstall