aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Makefile
blob: a12a971b80266a8fdbe909831fcf9828ac60267b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
PREFIX ?= /usr/local
EXEC_PREFIX ?= ${PREFIX}
BINDIR ?= ${EXEC_PREFIX}/bin
DATAROOTDIR ?= ${PREFIX}/share
LOCALEDIR ?= ${DATAROOTDIR}/locale
MANDIR ?= ${DATAROOTDIR}/man
VALAC ?= valac

POFILES := po/de.po po/fi.po
MOFILES := $(POFILES:.po=.mo)

.SUFFIXES:
.SUFFIXES: .po .mo

MANI18N := weltschmerz.de.1

all: weltschmerz weltschmerz.1 weltschmerz.desktop $(MOFILES) $(MANI18N)

weltschmerz: weltschmerz.vala terminal.vala config.vala configreader.vala utils.vala resources.c
	${VALAC} -X -DGETTEXT_PACKAGE=\"weltschmerz\" -X -DLOCALEDIR="\"${LOCALEDIR}\"" \
		-X -lm --pkg posix --pkg gtk+-3.0 --pkg vte-2.91 --gresources resources.xml \
		weltschmerz.vala terminal.vala config.vala configreader.vala utils.vala resources.c

resources.c: resources.xml terminal.ui terminal.css
	glib-compile-resources $< --target=$@ --generate-source

.po.mo:
	msgfmt $< -o $@

weltschmerz.desktop: weltschmerz.desktop.in
	msgfmt --desktop -d po --template $< -o $@

install: all
	install -D -m 755 -t '${DESTDIR}${BINDIR}' weltschmerz
	install -D -m 644 -t '${DESTDIR}${MANDIR}/man1' weltschmerz.1
	install -D -m 644 -t '${DESTDIR}${DATAROOTDIR}/applications' weltschmerz.desktop
	for mo in $(MOFILES); do \
		lang=$$(basename "$$mo" .mo); \
		install -D -m 644 "$$mo" "${DESTDIR}${LOCALEDIR}/$$lang/LC_MESSAGES/weltschmerz.mo"; \
	done
	for man in $(MANI18N); do \
		lang=$$(echo $$man | cut -f2 -d.); \
		install -D -m 644 "$$man" "${DESTDIR}${MANDIR}/$$lang/man1/weltschmerz.1"; \
	done

clean:
	rm -f weltschmerz weltschmerz.desktop resources.c
	rm -f po/*.mo

.PHONY: install clean all