tazpkg view Makefile @ rev 819

tazpkg: re-write "desc" function to use all available sorts of descriptions (installed, mirrored, short, long, localized)
author Aleksej Bobylev <al.bobylev@gmail.com>
date Fri Jul 24 15:11:32 2015 +0300 (2015-07-24)
parents e5c261e450c7
children f7e9a5b8477b
line source
1 # Makefile for TazPkg.
2 #
3 PREFIX?=/usr
4 DOCDIR?=$(PREFIX)/share/doc
5 SYSCONFDIR?=/etc/slitaz
6 DESTDIR?=
7 LINGUAS?=el es fr pl pt_BR ru sv zh_CN zh_TW
9 VERSION:=$(shell grep ^VERSION=[0-9] tazpkg | cut -d '=' -f 2)
10 ICONS = $(DESTDIR)$(PREFIX)/share/icons/hicolor/32x32
12 tmpdir = tar-install/tazpkg-$(VERSION)
13 tarball = tazpkg-$(VERSION).tar.gz
15 all: msgfmt
18 # i18n.
20 pot:
21 xgettext -o po/tazpkg.pot -L Shell \
22 --package-name=TazPkg \
23 --package-version="$(VERSION)" -kaction -ktitle -k_ -k_n -k_p:1,2 \
24 ./tazpkg ./modules/tazpkg-convert ./modules/tazpkg-find-depends ./tazpkg-box \
25 ./tazpanel/pkgs.cgi ./tazpkg-notify ./modules/tazpkg-help
27 msgmerge:
28 @for l in $(LINGUAS); do \
29 if [ -f "po/$$l.po" ]; then \
30 echo -n "Updating $$l po file."; \
31 msgmerge -U po/$$l.po po/tazpkg.pot ; \
32 fi; \
33 done
35 msgfmt:
36 @for l in $(LINGUAS); do \
37 if [ -f "po/$$l.po" ]; then \
38 echo -n "Compiling tazpkg $$l mo file... "; \
39 mkdir -p po/mo/$$l/LC_MESSAGES; \
40 msgfmt -o po/mo/$$l/LC_MESSAGES/tazpkg.mo \
41 po/$$l.po ; \
42 echo "done"; \
43 fi; \
44 done;
47 # Installation.
49 install: msgfmt
50 # TazPkg command line interface
51 install -m 0755 -d $(DESTDIR)$(PREFIX)/bin
52 install -m 0777 tazpkg $(DESTDIR)$(PREFIX)/bin
53 #-[ "$(VERSION)" ] && sed -i 's/^VERSION=[0-9].*/VERSION=$(VERSION)/' $(DESTDIR)$(PREFIX)/bin/tazpkg
54 install -m 0777 modules/tazpkg-convert $(DESTDIR)$(PREFIX)/bin
55 install -m 0777 modules/tazpkg-help $(DESTDIR)$(PREFIX)/bin
56 install -m 0755 -d $(DESTDIR)$(PREFIX)/lib/tazpkg
57 install -m 0777 modules/tazpkg-find-depends $(DESTDIR)$(PREFIX)/lib/tazpkg
59 # TazPkg-box GUI
60 install -m 0777 tazpkg-notify $(DESTDIR)$(PREFIX)/bin
61 install -m 0777 tazpkg-box $(DESTDIR)$(PREFIX)/bin
63 # Configuration files
64 install -m 0755 -d $(DESTDIR)$(SYSCONFDIR)
65 install -m 0644 tazpkg.conf $(DESTDIR)$(SYSCONFDIR)
67 # Documentation
68 install -m 0755 -d $(DESTDIR)$(DOCDIR)/tazpkg
69 cp -a doc/* $(DESTDIR)$(DOCDIR)/tazpkg
71 # TazPanel files
72 install -m 0755 -d $(DESTDIR)/var/www/tazpanel/menu.d
73 install -m 0755 tazpanel/pkgs.cgi $(DESTDIR)/var/www/tazpanel
74 ln -fs ../pkgs.cgi $(DESTDIR)/var/www/tazpanel/menu.d/pkgs
75 install -m 0755 -d $(DESTDIR)/var/www/tazpanel/styles/default
76 install -m 0644 tazpanel/pkgs.css $(DESTDIR)/var/www/tazpanel/styles/default
78 # The i18n files
79 install -m 0755 -d $(DESTDIR)$(PREFIX)/share/locale
80 cp -a po/mo/* $(DESTDIR)$(PREFIX)/share/locale
82 # Desktop integration
83 mkdir -p $(DESTDIR)$(PREFIX)/share
84 cp -a applications $(DESTDIR)$(PREFIX)/share
85 #cp -a mime $(DESTDIR)$(PREFIX)/share # moved to shared-mime-info package
87 # Default icons
88 install -m 0755 -d $(ICONS)/apps
89 install -m 0755 -d $(ICONS)/actions
90 install -m 0755 -d $(ICONS)/status
91 install -m 0644 pixmaps/tazpkg.png $(ICONS)/apps
92 install -m 0644 pixmaps/tazpkg-up.png $(ICONS)/actions
93 install -m 0644 pixmaps/tazpkg-installed.png $(ICONS)/status
94 ln -fs tazpkg.png $(ICONS)/apps/TazPkg.png # icon for Yad
96 # TazPkg Notify XDG autostart
97 mkdir -p $(DESTDIR)/etc/xdg
98 cp -a xdg/autostart $(DESTDIR)/etc/xdg
101 # Uninstallation and clean-up commands.
103 uninstall:
104 rm -f $(DESTDIR)$(PREFIX)/bin/tazpkg
105 rm -f $(DESTDIR)$(PREFIX)/bin/tazpkg-convert
106 rm -f $(DESTDIR)$(PREFIX)/lib/tazpkg/tazpkg-find-depends
108 rm -f $(DESTDIR)$(PREFIX)/bin/tazpkg-notify
109 rm -f $(DESTDIR)$(PREFIX)/bin/tazpkg-box
111 rm -f $(DESTDIR)$(SYSCONFDIR)/tazpkg.conf
113 rm -rf $(DESTDIR)$(DOCDIR)/tazpkg
115 rm -f $(DESTDIR)/var/www/tazpanel/pkgs.cgi
116 rm -f $(DESTDIR)/var/www/tazpanel/menu.d/pkgs
118 rm -rf $(DESTDIR)$(PREFIX)/share/locale/*/LC_MESSAGES/tazpkg.mo
120 rm -f $(DESTDIR)$(PREFIX)/share/applications/tazpkg-*.desktop
121 rm -f $(DESTDIR)$(PREFIX)/share/applications/tazpanel-pkgs.desktop
123 rm -f $(ICONS)/apps/tazpkg.png
124 rm -f $(ICONS)/actions/tazpkg-up.png
125 rm -f $(ICONS)/status/tazpkg-installed.png
127 rm -f $(DESTDIR)/etc/xdg/autostart/tazpkg-notify.desktop
130 clean:
131 rm -rf _pkg
132 rm -rf tar-install
133 rm -rf po/mo
134 rm -f po/*~
135 rm -f po/*.mo
138 targz:
139 rm -rf ${tmpdir}
140 mkdir -p ${tmpdir}
142 make DESTDIR=${tmpdir} install
144 cd tar-install ; \
145 tar cvzf ${tarball} tazpkg-$(VERSION) ; \
146 cd -
148 @echo "** Tarball successfully created in tar-install/${tarball}"
151 help:
152 @echo "make [ pot | msgmerge | msgfmt | all | install | uninstall | clear | targz ]"