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.4.10/include/freetype2
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
10 LDADD
+= -lxcb-keysyms
-lxcb-util
-lxcb-randr
-lX11-xcb
-lxcb-xtest
-lxcb
-lxcb-icccm
12 CFLAGS
+= -O2
-Wall
-g
-D_GNU_SOURCE
-D__OSX__
-I.
-I..
${INCFLAGS}
13 CFLAGS
+= -DSWM_LIB
=\"$(LIBDIR
)/libswmhack.so.
$(LVERS
)\"
16 BINDIR?
= $(PREFIX
)/bin
17 LIBDIR?
= $(PREFIX
)/lib
18 MANDIR?
= $(PREFIX
)/share
/man
22 LVERS
= $(shell . ..
/lib
/shlib_version
; echo
$$major.
$$minor)
24 all: spectrwm libswmhack.so.
$(LVERS
)
27 ln
-sf ..
/linux
/tree.h
32 ln
-sf ..
/lib
/swm_hack.c
34 spectrwm
: spectrwm.o osx.o
35 $(CC
) $(LDFLAGS
) -o
$@
$+ $(LDADD
)
38 $(CC
) $(CFLAGS
) -c
-fpic
-DPIC
$+ -o
$@
40 libswmhack.so.
$(LVERS
): swm_hack.so
41 $(CC
) -shared
-fpic
-o libswmhack.so.
$(LVERS
) $(LDADD
) swm_hack.so
42 # replace above line with this for OSX 10.5
43 # $(CC) -shared -bundle -fpic -o libswmhack.so.$(LVERS) $(LDADD) swm_hack.so
46 install -m
755 -d
$(DESTDIR
)$(BINDIR
)
47 install -m
755 -d
$(DESTDIR
)$(LIBDIR
)
48 install -m
755 -d
$(DESTDIR
)$(MANDIR
)/man1
49 install -m
755 spectrwm
$(DESTDIR
)$(BINDIR
)
50 install -m
755 libswmhack.so.
$(LVERS
) $(DESTDIR
)$(LIBDIR
)
51 install -m
644 ..
/spectrwm
.1 $(DESTDIR
)$(MANDIR
)/man1
/spectrwm
.1
52 install -m
644 ..
/spectrwm_es
.1 $(DESTDIR
)$(MANDIR
)/man1
/spectrwm_es
.1
53 install -m
644 ..
/spectrwm_it
.1 $(DESTDIR
)$(MANDIR
)/man1
/spectrwm_it
.1
54 install -m
644 ..
/spectrwm_pt
.1 $(DESTDIR
)$(MANDIR
)/man1
/spectrwm_pt
.1
55 install -m
644 ..
/spectrwm_ru
.1 $(DESTDIR
)$(MANDIR
)/man1
/spectrwm_ru
.1
56 ln
-sf
$(DESTDIR
)$(BINDIR
)/spectrwm
$(DESTDIR
)$(BINDIR
)/scrotwm
59 rm -f spectrwm
*.o
*.so libswmhack.so.
* spectrwm.c swm_hack.c tree.h version.h
61 .PHONY
: all install clean