tazpkg view Makefile @ rev 824

Add module "mkdb"; pkgs.cgi: fix AJAX loader display
author Aleksej Bobylev <al.bobylev@gmail.com>
date Tue Aug 04 02:29:51 2015 +0300 (2015-08-04)
parents f7e9a5b8477b
children 2f3580bd8c0c
line source
1 # Makefile for TazPkg.
2 #
3 prefix?=/usr
4 exec_prefix?=$(prefix)
5 bindir?=$(exec_prefix)/bin
6 libexecdir?=$(exec_prefix)/libexec
7 datarootdir?=$(prefix)/share
8 sysconfdir?=/etc
9 docdir?=$(datarootdir)/doc/tazpkg
10 libdir?=$(exec_prefix)/lib
11 localedir?=$(datarootdir)/locale
12 iconsdir?=$(datarootdir)/icons
14 DESTDIR?=
15 LINGUAS?=el es fr pl pt_BR ru sv zh_CN zh_TW
17 VERSION:=$(shell grep ^VERSION=[0-9] tazpkg | cut -d'=' -f2)
18 ICONS = $(DESTDIR)$(iconsdir)/hicolor/32x32
20 tmpdir = tar-install/tazpkg-$(VERSION)
21 tarball = tazpkg-$(VERSION).tar.gz
23 all: msgfmt
26 # i18n.
28 pot:
29 xgettext -o po/tazpkg.pot -L Shell \
30 --package-name=TazPkg \
31 --package-version="$(VERSION)" -kaction -ktitle -k_ -k_n -k_p:1,2 \
32 ./tazpkg \
33 ./modules/convert ./modules/find-depends ./modules/help ./modules/mkdb \
34 ./tazpkg-box ./tazpkg-notify ./tazpanel/pkgs.cgi
36 msgmerge:
37 @for l in $(LINGUAS); do \
38 if [ -f "po/$$l.po" ]; then \
39 echo -n "Updating $$l po file."; \
40 msgmerge -U po/$$l.po po/tazpkg.pot ; \
41 fi; \
42 done
44 msgfmt:
45 @for l in $(LINGUAS); do \
46 if [ -f "po/$$l.po" ]; then \
47 echo -n "Compiling tazpkg $$l mo file... "; \
48 mkdir -p po/mo/$$l/LC_MESSAGES; \
49 msgfmt -o po/mo/$$l/LC_MESSAGES/tazpkg.mo \
50 po/$$l.po ; \
51 echo "done"; \
52 fi; \
53 done;
56 # Installation.
58 install: msgfmt
59 # TazPkg command line interface
60 install -m 0755 -d $(DESTDIR)$(bindir)
61 install -m 0755 tazpkg $(DESTDIR)$(bindir)
63 # TazPkg modules
64 install -m 0755 -d $(DESTDIR)$(libexecdir)/tazpkg
65 install -m 0755 modules/* $(DESTDIR)$(libexecdir)/tazpkg
66 # Substitute "@@MODULES@@" with modules path
67 sed -i "s|@@MODULES@@|$(libexecdir)/tazpkg|g" $(DESTDIR)$(bindir)/tazpkg
68 sed -i "s|@@MODULES@@|$(libexecdir)/tazpkg|g" $(DESTDIR)$(libexecdir)/tazpkg/convert
70 # TazPkg-box GUI
71 install -m 0777 tazpkg-notify $(DESTDIR)$(bindir)
72 install -m 0777 tazpkg-box $(DESTDIR)$(bindir)
74 # Configuration files
75 install -m 0755 -d $(DESTDIR)$(sysconfdir)/slitaz
76 install -m 0644 tazpkg.conf $(DESTDIR)$(sysconfdir)/slitaz
78 # Documentation
79 install -m 0755 -d $(DESTDIR)$(docdir)
80 cp -a doc/* $(DESTDIR)$(docdir)
82 # TazPanel files
83 install -m 0755 -d $(DESTDIR)/var/www/tazpanel/menu.d
84 install -m 0755 tazpanel/pkgs.cgi $(DESTDIR)/var/www/tazpanel
85 ln -fs ../pkgs.cgi $(DESTDIR)/var/www/tazpanel/menu.d/pkgs
86 install -m 0755 -d $(DESTDIR)/var/www/tazpanel/styles/default
87 install -m 0644 tazpanel/pkgs.css $(DESTDIR)/var/www/tazpanel/styles/default
89 # The i18n files
90 install -m 0755 -d $(DESTDIR)$(localedir)
91 cp -a po/mo/* $(DESTDIR)$(localedir)
93 # Desktop integration
94 install -m 0755 -d $(DESTDIR)$(datarootdir)/applications
95 install -m 0644 applications/*.desktop $(DESTDIR)$(datarootdir)/applications
96 #cp -a mime $(DESTDIR)$(datarootdir) # moved to shared-mime-info package
98 # Default icons
99 install -m 0755 -d $(ICONS)/apps
100 install -m 0755 -d $(ICONS)/actions
101 install -m 0755 -d $(ICONS)/status
102 install -m 0644 pixmaps/tazpkg.png $(ICONS)/apps
103 install -m 0644 pixmaps/tazpkg-up.png $(ICONS)/actions
104 install -m 0644 pixmaps/tazpkg-installed.png $(ICONS)/status
105 ln -fs tazpkg.png $(ICONS)/apps/TazPkg.png # icon for Yad
107 # TazPkg Notify XDG autostart
108 mkdir -p $(DESTDIR)$(sysconfdir)/xdg
109 cp -a xdg/autostart $(DESTDIR)$(sysconfdir)/xdg
112 # Uninstallation and clean-up commands.
114 uninstall:
115 rm -f $(DESTDIR)$(bindir)/tazpkg
116 rm -rf $(DESTDIR)$(libexecdir)/tazpkg
118 rm -f $(DESTDIR)$(bindir)/tazpkg-notify
119 rm -f $(DESTDIR)$(bindir)/tazpkg-box
121 rm -f $(DESTDIR)$(sysconfdir)/slitaz/tazpkg.conf
123 rm -rf $(DESTDIR)$(docdir)/tazpkg*.html
124 rm $(DESTDIR)$(docdir)
126 rm -f $(DESTDIR)/var/www/tazpanel/pkgs.cgi
127 rm -f $(DESTDIR)/var/www/tazpanel/menu.d/pkgs
128 rm -f $(DESTDIR)/var/www/tazpanel/styles/default/pkgs.css
130 rm -rf $(DESTDIR)$(localedir)/*/LC_MESSAGES/tazpkg.mo
132 rm -f $(DESTDIR)$(datarootdir)/applications/tazpkg-*.desktop
133 rm -f $(DESTDIR)$(datarootdir)/applications/tazpanel-pkgs.desktop
135 rm -f $(ICONS)/apps/tazpkg.png
136 rm -f $(ICONS)/actions/tazpkg-up.png
137 rm -f $(ICONS)/status/tazpkg-installed.png
139 rm -f $(DESTDIR)$(sysconfdir)/xdg/autostart/tazpkg-notify.desktop
142 clean:
143 rm -rf _pkg
144 rm -rf tar-install
145 rm -rf po/mo
146 rm -f po/*~
147 rm -f po/*.mo
150 targz:
151 rm -rf ${tmpdir}
152 mkdir -p ${tmpdir}
154 make DESTDIR=${tmpdir} install
156 cd tar-install ; \
157 tar -cvzf ${tarball} tazpkg-$(VERSION) ; \
158 cd -
160 @echo "** Tarball successfully created in tar-install/${tarball}"
163 help:
164 @echo "make [ pot | msgmerge | msgfmt | all | install | uninstall | clear | targz ]"