tazusb view Makefile @ rev 176

clean tags
author ^^^ <psychomaniak@xakep.ru>
date Mon Apr 06 19:37:51 2015 +0000 (2015-04-06)
parents 58e30cef8317
children 8ddffadf56a6
line source
1 # Makefile for TazUSB.
2 # Check the README for more information.
3 #
4 PREFIX?=/usr
5 DOCDIR?=/usr/share/doc
6 DESTDIR?=
7 LINGUAS?=el fr pl pt_BR zh_CN zh_TW
9 PACKAGE = tazusb
10 VERSION := $(shell grep ^VERSION ${PACKAGE} | cut -d '=' -f 2)
11 TARBALL = $(PACKAGE)-$(VERSION).tar.gz
13 all:
15 # i18n.
17 pot:
18 xgettext -o po/tazusb-box/tazusb-box.pot -L Shell \
19 --package-name="TazUSB" \
20 --package-version="$(VERSION)" \
21 ./tazusb-box
22 xgettext -o po/tazusb/tazusb.pot -L Shell \
23 --package-name="TazUSB" \
24 --package-version="$(VERSION)" \
25 ./tazusb
27 msgmerge:
28 @for l in $(LINGUAS); do \
29 if [ -f "po/tazusb-box/$$l.po" ]; then \
30 echo -n "Updating $$l po file."; \
31 msgmerge -U po/tazusb-box/$$l.po po/tazusb-box/tazusb-box.pot ; \
32 fi;\
33 if [ -f "po/tazusb/$$l.po" ]; then \
34 echo -n "Updating $$l po file."; \
35 msgmerge -U po/tazusb/$$l.po po/tazusb/tazusb.pot ; \
36 fi;\
37 done;
39 msgfmt:
40 @for l in $(LINGUAS); do \
41 if [ -f "po/tazusb-box/$$l.po" ]; then \
42 echo "Compiling tazusb-box $$l mo file..."; \
43 mkdir -p po/mo/$$l/LC_MESSAGES; \
44 msgfmt -o po/mo/$$l/LC_MESSAGES/tazusb-box.mo po/tazusb-box/$$l.po ; \
45 fi;\
46 if [ -f "po/tazusb/$$l.po" ]; then \
47 echo "Compiling tazusb $$l mo file..."; \
48 mkdir -p po/mo/$$l/LC_MESSAGES; \
49 msgfmt -o po/mo/$$l/LC_MESSAGES/tazusb.mo po/tazusb/$$l.po ; \
50 fi;\
51 done;
53 # Installation.
55 install: msgfmt
56 @echo "Installing TazUSB into $(DESTDIR)$(PREFIX)/bin..."
57 mkdir -p $(DESTDIR)$(PREFIX)/bin
58 install -m 0755 tazusb $(DESTDIR)$(PREFIX)/bin
59 -[ "$(VERSION)" ] && sed -i 's/^VERSION=[0-9].*/VERSION=$(VERSION)/' $(DESTDIR)$(PREFIX)/bin/tazusb
60 install -m 0755 tazusb-box $(DESTDIR)$(PREFIX)/bin
61 @echo "Installing Tazusb documentation..."
62 mkdir -p $(DESTDIR)$(DOCDIR)/tazusb
63 cp -a doc/* $(DESTDIR)$(DOCDIR)/tazusb
64 # i18n
65 mkdir -p $(DESTDIR)$(PREFIX)/share/locale
66 cp -a po/mo/* $(DESTDIR)$(PREFIX)/share/locale
67 # Desktop integration
68 @echo "Setting up desktop integration..."
69 mkdir -p $(DESTDIR)$(PREFIX)/share
70 cp -a applications $(DESTDIR)$(PREFIX)/share
72 # Uninstallation and tarball clean-up commands.
74 uninstall:
75 rm -f $(DESTDIR)$(PREFIX)/bin/tazusb
76 rm -f $(DESTDIR)$(PREFIX)/bin/tazusb-box
77 rm -rf $(DESTDIR)$(DOCDIR)/tazusb
78 rm -rf $(DESTDIR)$(PREFIX)/share/locale/*/LC_MESSAGES/tazusb*.mo
80 clean:
81 rm -rf _pkg
82 rm -rf po/mo
83 rm -f po/*/*~
85 dist-clean:
86 rm -rf $(DISTDIR)
87 rm -f $(DISTDIR).*
89 # Build tarball and MD5 file for packaging.
90 dist: dist-clean
91 hg archive -t tgz $(TARBALL)
92 md5sum $(TARBALL) > $(PACKAGE)-$(VERSION).md5