CC = gcc
LIBS = -lm -lxcb -lxcb-icccm -lxcb-ewmh -lxcb-xinerama
-CFLAGS = -std=c99 -pedantic -Wall -Wextra -D_POSIX_C_SOURCE=2 -DVERSION=\"$(VERSION)\"
-LDFLAGS = $(LIBS)
+CFLAGS = -std=c99 -pedantic -Wall -Wextra -I$(PREFIX)/include
+CFLAGS += -D_POSIX_C_SOURCE=200112L -DVERSION=\"$(VERSION)\"
+LDFLAGS = -L$(PREFIX)/lib
PREFIX ?= /usr/local
BINPREFIX = $(PREFIX)/bin
bspwm: $(WM_OBJ)
@echo CC -o $@
- @$(CC) -o $@ $(WM_OBJ) $(LDFLAGS)
+ @$(CC) -o $@ $(WM_OBJ) $(LDFLAGS) $(LIBS)
bspc: $(CL_OBJ)
@echo CC -o $@
- @$(CC) -o $@ $(CL_OBJ) $(LDFLAGS)
+ @$(CC) -o $@ $(CL_OBJ) $(LDFLAGS) $(LIBS)
clean:
@echo "cleaning"
install:
@echo "installing executable files to $(DESTDIR)$(BINPREFIX)"
- @install -D -m 755 bspwm $(DESTDIR)$(BINPREFIX)/bspwm
- @install -D -m 755 bspc $(DESTDIR)$(BINPREFIX)/bspc
+ @mkdir -p "$(DESTDIR)$(BINPREFIX)"
+ @cp -t "$(DESTDIR)$(BINPREFIX)" bsp{wm,c}
+ @chmod 755 "$(DESTDIR)$(BINPREFIX)"/bsp{wm,c}
@echo "installing manual page to $(DESTDIR)$(MANPREFIX)/man1"
- @install -D -m 644 bspwm.1 $(DESTDIR)$(MANPREFIX)/man1/bspwm.1
+ @mkdir -p "$(DESTDIR)$(MANPREFIX)"/man1
+ @cp -t "$(DESTDIR)$(MANPREFIX)"/man1 bspwm.1
+ @chmod 644 "$(DESTDIR)$(MANPREFIX)"/man1/bspwm.1
uninstall:
@echo "removing executable files from $(DESTDIR)$(BINPREFIX)"
- @rm -f $(DESTDIR)$(BINPREFIX)/bsp{wm,c}
+ @rm -f "$(DESTDIR)$(BINPREFIX)"/bsp{wm,c}
@echo "removing manual page from $(DESTDIR)$(MANPREFIX)/man1"
- @rm -f $(DESTDIR)$(MANPREFIX)/man1/bspwm.1
+ @rm -f "$(DESTDIR)$(MANPREFIX)"/man1/bspwm.1
.PHONY: all debug options clean install uninstall