File: Makefile

package info (click to toggle)
gtkman 2.3.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 452 kB
  • sloc: python: 500; makefile: 89
file content (96 lines) | stat: -rw-r--r-- 2,624 bytes parent folder | download
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
DESTDIR ?= /
PREFIX ?= /usr/local
PACKAGE_LOCALE_DIR ?= /usr/share/locale

.PHONY: all
all: man mo

.PHONY: man
man:
	@txt2tags -o man/gtkman.man man/gtkman.t2t || \
	echo "WARNING: txt2tags is not installed. The gtkman manpage will not be created."

.PHONY: mo
mo:
	for i in `ls po/*.po`; do \
		msgfmt $$i -o `echo $$i | sed "s/\.po//"`.mo; \
	done
	intltool-merge po/ -d -u gtkman.desktop.in gtkman.desktop

.PHONY: updatepo
updatepo:
	for i in `ls po/*.po`; do \
		msgmerge -UNs $$i po/gtkman.pot; \
	done

.PHONY: pot
pot:
	xgettext --from-code=utf-8 \
		-L Glade \
		-o po/gtkman.pot \
		src/gtkman.ui
	xgettext --from-code=utf-8 \
		-j \
		-L Python \
		-o po/gtkman.pot \
		src/gtkman
	intltool-extract --type="gettext/ini" gtkman.desktop.in
	xgettext --from-code=utf-8 -j -L C -kN_ -o po/gtkman.pot gtkman.desktop.in.h
	rm gtkman.desktop.in.h

.PHONY: clean
clean:
	rm -f gtkman.desktop
	rm -f po/*.mo
	rm -f po/*.po~
	rm -f man/gtkman.man

.PHONY: install
install:
	install -D -m 755 src/gtkman $(DESTDIR)/$(PREFIX)/bin/gtkman
	sed -i "s|^prefix = '_not_set_'|prefix = '$(PREFIX)'|" $(DESTDIR)/$(PREFIX)/bin/gtkman
	sed -i "s|^package_locale_dir = '_not_set_'|package_locale_dir = '$(PACKAGE_LOCALE_DIR)'|" $(DESTDIR)/$(PREFIX)/bin/gtkman
	install -D -m 644 src/gtkman.ui $(DESTDIR)/$(PREFIX)/share/gtkman/gtkman.ui
	install -D -m 644 gtkman.desktop $(DESTDIR)/$(PREFIX)/share/applications/gtkman.desktop
	[ -f man/gtkman.man ] && \
		install -D -m 644 man/gtkman.man $(DESTDIR)/$(PREFIX)/share/man/man1/gtkman.1
	install -d -m 755 $(DESTDIR)/$(PREFIX)/share/icons/hicolor/scalable/apps/
	install -m 644 icons/gtkman.svg $(DESTDIR)/$(PREFIX)/share/icons/hicolor/scalable/apps/
	for i in 32 24 22 16; do \
		install -d -m 755 \
		$(DESTDIR)/$(PREFIX)/share/icons/hicolor/$${i}x$${i}/apps/ \
		2> /dev/null; \
		install -m 644 icons/gtkman-$$i.png \
		$(DESTDIR)/$(PREFIX)/share/icons/hicolor/$${i}x$${i}/apps/gtkman.png; \
	done
	for i in `ls po/*.po|sed "s/po\/\(.*\)\.po/\1/"`; do \
		install -D -m 644 po/$$i.mo $(DESTDIR)/$(PACKAGE_LOCALE_DIR)/$$i/LC_MESSAGES/gtkman.mo; \
	done

.PHONY: tx-pull
tx-pull:
	tx pull -a
	@for i in `ls po/*.po`; do \
		msgfmt --statistics $$i 2>&1 | grep "^0 translated" > /dev/null \
			&& rm $$i || true; \
	done
	@rm -f messages.mo

.PHONY: tx-pull-f
tx-pull-f:
	tx pull -a -f
	@for i in `ls po/*.po`; do \
		msgfmt --statistics $$i 2>&1 | grep "^0 translated" > /dev/null \
			&& rm $$i || true; \
	done
	@rm -f messages.mo

.PHONY: stat
stat:
	@for i in `ls po/*.po`; do \
		echo "Statistics for $$i:"; \
		msgfmt --statistics $$i 2>&1; \
		echo; \
	done
	@rm -f messages.mo