root/branches/0.3/Makefile.in

Revision 815, 6.2 kB (checked in by nicfit, 1 year ago)

Release updates, NO MERGE

Line 
1 #
2 #  Copyright (C) 2006  Travis Shirk <travis@pobox.com>
3 #
4 #  This program is free software; you can redistribute it and/or modify
5 #  it under the terms of the GNU General Public License as published by
6 #  the Free Software Foundation; either version 2 of the License, or
7 #  (at your option) any later version.
8 #
9 #  This program is distributed in the hope that it will be useful,
10 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
11 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 #  GNU General Public License for more details.
13 #
14 #  You should have received a copy of the GNU General Public License
15 #  along with this program; if not, write to the Free Software
16 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17 #
18 DIST_NAME=@PACKAGE_TARNAME@-@PACKAGE_VERSION@
19 DIST_GZ=${DIST_NAME}.tgz
20 DIST_WWW=${DIST_NAME}-www.tar.gz
21 PYTHON=@PYTHON@
22 EBUILD_VERSION=@EBUILD_VERSION@
23 EBUILD=mesk-${EBUILD_VERSION}.ebuild
24
25 prefix=@prefix@
26 exec_prefix:=@exec_prefix@
27 bindir:=$(subst //,/,${DESTDIR}/@bindir@)
28 libdir:=$(subst //,/,${DESTDIR}/@libdir@)
29 mandir:=$(subst //,/,${DESTDIR}/@mandir@)
30 datadir:=$(subst //,/,${DESTDIR}/@datarootdir@)
31 docdir:=$(subst //,/,${DESTDIR}/@datarootdir@/doc/${DIST_NAME})
32 # Redefine these
33 prefix:=$(subst //,/,${DESTDIR}/${prefix})
34 exec_prefix:=$(subst //,/,${DESTDIR}/${exec_prefix})
35
36 .PHONY: all install uninstall clean distclean maintainer-clean dist changelog \
37         tags TAGS release www push-www
38
39 all: module etc/mesk.desktop
40
41 module:
42         ${PYTHON} setup.py build
43
44 etc/mesk.desktop: etc/mesk.desktop.in
45         intltool-merge --utf8 --desktop-style \
46                        ./po etc/mesk.desktop.in etc/mesk.desktop
47
48 # Install does not depend on 'all', since install may be run as root doing
49 # build files would be created in the local dir owned as root.
50 INSTALL=@INSTALL@
51 install:
52         test -d build
53         ${PYTHON} setup.py install --prefix=${prefix}
54
55         # Code
56         ${INSTALL} -m 755 -d ${bindir}
57         ${INSTALL} -m 755 scripts/mesk ${bindir}
58         ${INSTALL} -m 755 -d ${libdir}/mesk
59         ${INSTALL} -m 644 ./src/*.py ${libdir}/mesk
60         # Data
61         ${INSTALL} -m 755 -d ${libdir}/mesk/data/images
62         ${INSTALL} -m 644 ./src/data/images/* ${libdir}/mesk/data/images
63         ${INSTALL} -m 755 -d ${libdir}/mesk/data/glade
64         ${INSTALL} -m 644 ./src/data/glade/*.glade ${libdir}/mesk/data/glade
65         # Plugins
66         ${INSTALL} -m 755 -d ${libdir}/mesk/plugins
67         ${INSTALL} -m 644 ./src/plugins/*.py ${libdir}/mesk/plugins
68         ${INSTALL} -m 644 ./src/plugins/*.glade ${libdir}/mesk/plugins
69
70         # Docs
71         ${INSTALL} -m 755 -d ${docdir}
72         ${INSTALL} -m 644 README ${docdir}
73         gzip -f -9 ${docdir}/README
74         ${INSTALL} -m 644 AUTHORS ${docdir}
75         ${INSTALL} -m 644 THANKS ${docdir}
76         ${INSTALL} -m 644 COPYING ${docdir}
77         gzip -f -9 ${docdir}/COPYING
78         ${INSTALL} -m 644 ChangeLog ${docdir}
79         gzip -f -9 ${docdir}/ChangeLog
80         ${INSTALL} -m 755 -d ${mandir}
81         ${INSTALL} -m 755 -d ${mandir}/man1
82         ${INSTALL} -m 644 doc/mesk.1 ${mandir}/man1
83         gzip -f -9 ${mandir}/man1/mesk.1
84
85         # Desktop file
86         if test ! -d "${datadir}/applications"; then \
87           ${INSTALL} -m 755 -d "${datadir}/applications";\
88         fi
89         ${INSTALL} -m 644 ./etc/mesk.desktop ${datadir}/applications
90         # Window Icon
91         if test ! -d "${datadir}/pixmaps"; then \
92           ${INSTALL} -m 755 -d "${datadir}/pixmaps";\
93         fi
94         ${INSTALL} -m 644 ./src/data/images/mesk.svg ${datadir}/pixmaps
95         # Menu/panel icon
96         for sz in 16 22 32 48; do \
97           if test ! -d "${datadir}/icons/hicolor/$${sz}x$${sz}/apps"; then \
98             ${INSTALL} -m 755 -d "${datadir}/icons/hicolor/$${sz}x$${sz}/apps"; \
99           fi; \
100           ${INSTALL} -m 644 ./src/data/images/mesk-$${sz}.png \
101                   "${datadir}/icons/hicolor/$${sz}x$${sz}/apps/mesk.png"; \
102         done
103
104         # i18n
105         ${MAKE} -C po DESTDIR=${DESTDIR} install
106
107 postinstall:
108         if test -x `which update-desktop-database`; then \
109             update-desktop-database; \
110         fi
111
112 ## XXX: Use at your own risk
113 uninstall:
114         -rm -rf ${bindir}/mesk
115         -rm -rf ${libdir}/python2.4/site-packages/mesk
116         -rm -rf ${libdir}/mesk
117         -rm -rf ${docdir}
118         -rm ${datadir}/applications/mesk.desktop
119         -rm ${datadir}/pixmaps/mesk.svg
120         -find ${datadir}/locale -name mesk.mo -exec rm {} \;
121
122 clean:
123         -rm -rf build
124         find . -name \*.pyc -exec rm '{}' \;
125         find . -name \*.pyo -exec rm '{}' \;
126
127 distclean: clean
128         -rm -rf autom4te*.cache ${DIST_NAME} ${DIST_GZ} ${DIST_WWW}
129         -rm setup.py
130         -rm doc/mesk.1.gz
131         -rm -f config.*
132         -rm -rf src/mesk/info.py
133         -rm ./svn-commit* ./svnmerge-*
134         -rm ./scripts/mesk
135         -find . -name \*~ -exec rm {} \;
136         -find . -name \*.bak -exec rm {} \;
137         -find . -name \*.gladep -exec rm {} \;
138         -rm Makefile
139         -${MAKE} -C po distclean
140
141 maintainer-clean:
142         ${MAKE} distclean
143         -rm README
144         -rm -f configure
145         -rm doc/mesk.1
146         -rm ./etc/mesk.desktop
147         -rm aclocal.m4
148
149 dist: distclean
150         mkdir ${DIST_NAME}
151         cp ChangeLog AUTHORS COPYING README NEWS THANKS ${DIST_NAME}
152         cp acsite.m4 configure setup.py.in Makefile.in ${DIST_NAME}
153
154         cp -r ./src ${DIST_NAME}
155         cp -r ./scripts ${DIST_NAME}
156         cp -r ./po ${DIST_NAME}
157         mkdir ${DIST_NAME}/etc
158         cp etc/mesk.desktop.in ${DIST_NAME}/etc
159         mkdir ${DIST_NAME}/doc
160         cp doc/mesk.1.in ${DIST_NAME}/doc
161         cp etc/mesk-@PACKAGE_VERSION@.ebuild ${DIST_NAME}/etc
162
163         find ${DIST_NAME} -type d -name .svn -print | xargs rm -rf
164         tar czvf ${DIST_GZ} ${DIST_NAME}
165         rm -rf ${DIST_NAME}
166         ./autogen.sh
167
168 release: dist www sloccount
169         # Re-bootstap to undo distclean
170         ./autogen.sh > /dev/null 2>&1
171
172 changelog:
173         svn2cl.sh -i --authors=.changelog_authors
174
175 tags TAGS:
176         @if test -f tags; then \
177            rm tags; \
178      fi
179         @ctags -R --exclude='tmp/*' --exclude='build/*'
180
181 www:
182         -rm -rf ./www
183         mkdir -p www/mesk/releases
184         mkdir www/mesk/releases/gentoo
185         # FIXME
186         #cp README.html ChangeLog COPYING NEWS TODO THANKS www/mesk
187         #cd www/mesk && ln -s README.html index.html
188         cp ${DIST_GZ} www/mesk/releases
189         cp etc/mesk-${EBUILD_VERSION}.ebuild www/mesk/releases/gentoo
190         cd www && tar czvf ${DIST_WWW} mesk
191         rm -rf www
192
193 sloccount:
194         sloccount ./src
195         sloccount --cached --details ./src
196
197 EBUILD_USE=
198 EBUILD_OVERLAY=/usr/local/portage
199 test-ebuild:
200         sudo cp ${DIST_GZ} /usr/portage/distfiles
201         sudo cp etc/${EBUILD} ${EBUILD_OVERLAY}/media-sound/mesk
202         sudo cp ${DIST_GZ} /usr/portage/distfiles
203         sudo ebuild ${EBUILD_OVERLAY}/media-sound/mesk/${EBUILD} digest
204         -sudo emerge --unmerge mesk
205         USE="${EBUILD_USE}" sudo emerge -va mesk
206
207 .PHONY: doxygen doxygen-clean
208 doxygen:
209         doxygen etc/doxygen.conf
210
211 doxygen-clean:
212         -rm -rf doc/html
Note: See TracBrowser for help on using the browser.