bspwm/Makefile

79 lines
2.5 KiB
Makefile
Raw Normal View History

VERCMD ?= git describe --tags 2> /dev/null
VERSION := $(shell $(VERCMD) || cat VERSION)
2012-08-01 12:25:18 +02:00
CPPFLAGS += -D_POSIX_C_SOURCE=200809L -DVERSION=\"$(VERSION)\"
CFLAGS += -std=c99 -pedantic -Wall -Wextra -DJSMN_STRICT
2017-08-10 16:54:10 +02:00
LDFLAGS ?=
LDLIBS = $(LDFLAGS) -lm -lxcb -lxcb-util -lxcb-keysyms -lxcb-icccm -lxcb-ewmh -lxcb-randr -lxcb-xinerama -lxcb-shape
2012-08-07 12:17:47 +02:00
2015-12-22 19:25:45 +01:00
PREFIX ?= /usr/local
BINPREFIX ?= $(PREFIX)/bin
MANPREFIX ?= $(PREFIX)/share/man
DOCPREFIX ?= $(PREFIX)/share/doc/bspwm
BASHCPL ?= $(PREFIX)/share/bash-completion/completions
2016-05-11 16:59:01 -05:00
FISHCPL ?= $(PREFIX)/share/fish/vendor_completions.d
2015-12-22 19:25:45 +01:00
ZSHCPL ?= $(PREFIX)/share/zsh/site-functions
MD_DOCS = README.md doc/CHANGELOG.md doc/CONTRIBUTING.md doc/INSTALL.md doc/MISC.md doc/TODO.md
2015-12-22 19:25:45 +01:00
XSESSIONS ?= $(PREFIX)/share/xsessions
2012-08-07 12:17:47 +02:00
WM_SRC = bspwm.c helpers.c geometry.c jsmn.c settings.c monitor.c desktop.c tree.c stack.c history.c \
events.c pointer.c window.c messages.c parse.c query.c restore.c rule.c ewmh.c subscribe.c
WM_OBJ := $(WM_SRC:.c=.o)
CLI_SRC = bspc.c helpers.c
CLI_OBJ := $(CLI_SRC:.c=.o)
2012-08-07 12:17:47 +02:00
all: bspwm bspc
2012-08-07 12:17:47 +02:00
2015-12-22 19:25:45 +01:00
debug: CFLAGS += -O0 -g
debug: bspwm bspc
2017-01-13 10:42:00 +01:00
VPATH=src
2013-03-19 23:17:39 +01:00
include Sourcedeps
2015-12-22 19:25:45 +01:00
$(WM_OBJ) $(CLI_OBJ): Makefile
2012-08-07 12:17:47 +02:00
bspwm: $(WM_OBJ)
2012-08-07 12:17:47 +02:00
2015-12-22 19:25:45 +01:00
bspc: $(CLI_OBJ)
2012-08-07 12:17:47 +02:00
2012-09-22 23:11:57 +02:00
install:
mkdir -p "$(DESTDIR)$(BINPREFIX)"
2015-05-02 16:02:48 +02:00
cp -pf bspwm "$(DESTDIR)$(BINPREFIX)"
cp -pf bspc "$(DESTDIR)$(BINPREFIX)"
mkdir -p "$(DESTDIR)$(MANPREFIX)"/man1
2013-07-21 19:31:57 +02:00
cp -p doc/bspwm.1 "$(DESTDIR)$(MANPREFIX)"/man1
cp -Pp doc/bspc.1 "$(DESTDIR)$(MANPREFIX)"/man1
2013-08-16 11:59:09 +02:00
mkdir -p "$(DESTDIR)$(BASHCPL)"
2013-09-10 13:46:59 +02:00
cp -p contrib/bash_completion "$(DESTDIR)$(BASHCPL)"/bspc
2016-05-11 16:59:01 -05:00
mkdir -p "$(DESTDIR)$(FISHCPL)"
cp -p contrib/fish_completion "$(DESTDIR)$(FISHCPL)"/bspc.fish
2013-08-16 11:59:09 +02:00
mkdir -p "$(DESTDIR)$(ZSHCPL)"
2013-09-10 13:46:59 +02:00
cp -p contrib/zsh_completion "$(DESTDIR)$(ZSHCPL)"/_bspc
mkdir -p "$(DESTDIR)$(DOCPREFIX)"
cp -p $(MD_DOCS) "$(DESTDIR)$(DOCPREFIX)"
mkdir -p "$(DESTDIR)$(DOCPREFIX)"/examples
cp -pr examples/* "$(DESTDIR)$(DOCPREFIX)"/examples
mkdir -p "$(DESTDIR)$(XSESSIONS)"
cp -p contrib/freedesktop/bspwm.desktop "$(DESTDIR)$(XSESSIONS)"
2012-08-07 12:17:47 +02:00
uninstall:
2013-07-21 19:31:57 +02:00
rm -f "$(DESTDIR)$(BINPREFIX)"/bspwm
rm -f "$(DESTDIR)$(BINPREFIX)"/bspc
rm -f "$(DESTDIR)$(MANPREFIX)"/man1/bspwm.1
rm -f "$(DESTDIR)$(MANPREFIX)"/man1/bspc.1
2013-08-16 11:59:09 +02:00
rm -f "$(DESTDIR)$(BASHCPL)"/bspc
2016-05-11 16:59:01 -05:00
rm -f "$(DESTDIR)$(FISHCPL)"/bspc.fish
2013-08-16 11:59:09 +02:00
rm -f "$(DESTDIR)$(ZSHCPL)"/_bspc
rm -rf "$(DESTDIR)$(DOCPREFIX)"
rm -f "$(DESTDIR)$(XSESSIONS)"/bspwm.desktop
2013-06-24 22:53:00 +02:00
doc:
2015-11-16 09:54:32 +01:00
a2x -v -d manpage -f manpage -a revnumber=$(VERSION) doc/bspwm.1.asciidoc
2013-06-24 22:53:00 +02:00
clean:
2015-12-22 19:25:45 +01:00
rm -f $(WM_OBJ) $(CLI_OBJ) bspwm bspc
2012-08-07 12:17:47 +02:00
2015-12-22 19:25:45 +01:00
.PHONY: all debug install uninstall doc clean