]> code.delx.au - spectrwm/blob - osx/Makefile
3c2b359e9fbb5ded22a2cf0d70ece5f1a7d69d47
[spectrwm] / osx / Makefile
1 # To use homebrew instead of macports, uncomment the following three lines.
2 #INCFLAGS+= -I/opt/X11/include
3 #LDADD+= -lX11 -lXcursor -lXft -L/opt/X11/lib
4 #INCFLAGS+= -I/usr/local/Cellar/freetype/2.5.0.1/include/freetype2
5
6 # To use homebrew instead of macports, comment out the following two lines.
7 INCFLAGS+= -I/opt/local/include/freetype2 -I/opt/local/include
8 LDADD+= -L/opt/local/lib -lX11 -lXcursor -lXft
9
10 LDADD+= -lxcb-keysyms -lxcb-util -lxcb-randr -lX11-xcb -lxcb-xtest -lxcb -lxcb-icccm
11
12 CFLAGS+= -std=c99 -Wmissing-prototypes -Wall -Wextra -Wshadow -Wno-uninitialized -g
13 CFLAGS+= -O2 -D_GNU_SOURCE -D__OSX__ -I. -I.. ${INCFLAGS}
14 CFLAGS+= -DSWM_LIB=\"$(LIBDIR)/libswmhack.so.$(LVERS)\"
15
16 PREFIX?= /usr/local
17 BINDIR?= $(PREFIX)/bin
18 LIBDIR?= $(PREFIX)/lib
19 MANDIR?= $(PREFIX)/share/man
20
21 CC?= cc
22
23 LVERS= $(shell . ../lib/shlib_version; echo $$major.$$minor)
24
25 all: spectrwm libswmhack.so.$(LVERS)
26
27 spectrwm.c:
28 ln -sf ../linux/tree.h
29 ln -sf ../spectrwm.c
30 ln -sf ../version.h
31
32 swm_hack.c:
33 ln -sf ../lib/swm_hack.c
34
35 spectrwm: spectrwm.o osx.o
36 $(CC) $(LDFLAGS) -o $@ $+ $(LDADD)
37
38 %.so: %.c
39 $(CC) $(CFLAGS) -c -fpic -DPIC $+ -o $@
40
41 libswmhack.so.$(LVERS): swm_hack.so
42 $(CC) $(LDFLAGS) -shared -fpic -o libswmhack.so.$(LVERS) swm_hack.so $(LDADD)
43 # replace above line with this for OSX 10.5
44 # $(CC) -shared -bundle -fpic -o libswmhack.so.$(LVERS) $(LDADD) swm_hack.so
45
46 install: all
47 install -m 755 -d $(DESTDIR)$(BINDIR)
48 install -m 755 -d $(DESTDIR)$(LIBDIR)
49 install -m 755 -d $(DESTDIR)$(MANDIR)/man1
50 install -m 755 spectrwm $(DESTDIR)$(BINDIR)
51 install -m 755 libswmhack.so.$(LVERS) $(DESTDIR)$(LIBDIR)
52 install -m 644 ../spectrwm.1 $(DESTDIR)$(MANDIR)/man1/spectrwm.1
53 install -m 644 ../spectrwm_es.1 $(DESTDIR)$(MANDIR)/man1/spectrwm_es.1
54 install -m 644 ../spectrwm_it.1 $(DESTDIR)$(MANDIR)/man1/spectrwm_it.1
55 install -m 644 ../spectrwm_pt.1 $(DESTDIR)$(MANDIR)/man1/spectrwm_pt.1
56 install -m 644 ../spectrwm_ru.1 $(DESTDIR)$(MANDIR)/man1/spectrwm_ru.1
57 ln -sf spectrwm $(DESTDIR)$(BINDIR)/scrotwm
58 ln -sf libswmhack.so.0.0 $(DESTDIR)$(LIBDIR)/libswmhack.so.0
59 ln -sf libswmhack.so.0.0 $(DESTDIR)$(LIBDIR)/libswmhack.so
60
61 clean:
62 rm -f spectrwm *.o *.so libswmhack.so.* spectrwm.c swm_hack.c tree.h version.h
63
64 .PHONY: all install clean