57 lines
1.5 KiB
Makefile
57 lines
1.5 KiB
Makefile
VERSION = $(shell git describe --tags)
|
|
GTK = gtk+-3.0
|
|
VTE = vte-2.91
|
|
PREFIX ?= /usr/local
|
|
BINDIR ?= ${PREFIX}/bin
|
|
DATADIR ?= ${PREFIX}/share
|
|
MANDIR ?= ${DATADIR}/man
|
|
TERMINFO ?= ${DATADIR}/terminfo
|
|
|
|
CXXFLAGS := -std=c++11 -O3 \
|
|
-Wall -Wextra -pedantic \
|
|
-Winit-self \
|
|
-Wshadow \
|
|
-Wformat=2 \
|
|
-Wmissing-declarations \
|
|
-Wstrict-overflow=5 \
|
|
-Wcast-align \
|
|
-Wconversion \
|
|
-Wunused-macros \
|
|
-Wwrite-strings \
|
|
-DNDEBUG \
|
|
-D_POSIX_C_SOURCE=200809L \
|
|
-DTERMITE_VERSION=\"${VERSION}\" \
|
|
${shell pkg-config --cflags ${GTK} ${VTE}} \
|
|
${CXXFLAGS}
|
|
|
|
ifeq (${CXX}, g++)
|
|
CXXFLAGS += -Wno-missing-field-initializers
|
|
endif
|
|
|
|
ifeq (${CXX}, clang++)
|
|
CXXFLAGS += -Wimplicit-fallthrough
|
|
endif
|
|
|
|
LDFLAGS := -s -Wl,--as-needed ${LDFLAGS}
|
|
LDLIBS := ${shell pkg-config --libs ${GTK} ${VTE}}
|
|
|
|
termite: termite.cc url_regex.hh util/clamp.hh util/maybe.hh util/memory.hh keybindings.hh
|
|
${CXX} ${CXXFLAGS} ${LDFLAGS} $< ${LDLIBS} -o $@
|
|
|
|
install: termite termite.desktop termite.terminfo
|
|
mkdir -p ${DESTDIR}${TERMINFO}
|
|
install -Dm755 termite ${DESTDIR}${BINDIR}/termite
|
|
install -Dm644 config ${DESTDIR}/etc/xdg/termite/config
|
|
install -Dm644 termite.desktop ${DESTDIR}${DATADIR}/applications/termite.desktop
|
|
install -Dm644 man/termite.1 ${DESTDIR}${MANDIR}/man1/termite.1
|
|
install -Dm644 man/termite.config.5 ${DESTDIR}${MANDIR}/man5/termite.config.5
|
|
tic -x -o ${DESTDIR}${TERMINFO} termite.terminfo
|
|
|
|
uninstall:
|
|
rm -f ${DESTDIR}${BINDIR}/termite
|
|
|
|
clean:
|
|
rm termite
|
|
|
|
.PHONY: clean install uninstall
|