root/branches/gajim_0.10.1/Makefile

Revision 6427, 5.2 kB (checked in by asterix, 2 years ago)

Gajim is now 0.10.1

  • Property svn:eol-style set to LF
Line 
1VERSION         ?= 0.10.1
2
3GAJIM_AP        = 0 # do we build Autopackage?
4
5MODULES         = src src/common po
6PREFIX          = /usr/local
7PYTHON          = python
8DESTDIR         = 
9OPTFLAGS        = 
10export OPTFLAGS
11LIBDIR          = /lib
12export LIBDIR
13MANDIR          = $(DESTDIR)$(PREFIX)/share/man
14
15FIND            = find . \( -name '*.glade' -o -name '*.py' -o -name '*.xpm' -o -name '*.gif' -o -name '*.png' -o -name '*.wav' -o -name '*.xml' \)
16
17FILES           = `$(FIND)`
18DIRS            = `$(FIND) -exec dirname {} \; | sort -u`
19FIND_PO         = find ./po \( -name '*.mo' \)
20FILES_PO        = `$(FIND_PO) | sed -e 's/^\.\/po/\./g'`
21DIRS_PO         = `$(FIND_PO) -exec dirname {} \; | sort -u | sed -e 's/^\.\/po/\./g'`
22FIND_LIB        = find . -name '*.so'
23FILES_LIB       = `$(FIND_LIB)`
24
25SCRIPTS = \
26        scripts/gajim \
27        scripts/gajim-remote \
28
29all: translation trayicon gtkspell idle gajim.desktop
30
31translation:
32        ${MAKE} -C po all
33
34trayicon:
35        ${MAKE} -C src trayicon.so;
36
37gtkspell:
38        ${MAKE} -C src gtkspell.so;
39
40idle:
41        ${MAKE} -C src/common all;
42
43distclean: clean
44        -rm ./tags
45
46clean:
47        find . -name '*.pyc' -exec rm {} \;
48        find . -name '*.pyo' -exec rm {} \;
49        ${MAKE} -C po clean
50        rm -f gajim.desktop
51        $(foreach sdir, $(MODULES), ${MAKE} -C $(sdir) clean;)
52dist:
53        rm -rf gajim-$(VERSION)
54        mkdir gajim-$(VERSION)
55        cp -r data src po gajim-$(VERSION)/
56        cp AUTHORS gajim.1 gajim-remote.1 gajim.desktop.in COPYING THANKS Makefile Changelog README launch.sh gajim-$(VERSION)
57        mkdir gajim-$(VERSION)/scripts
58        for s in $(SCRIPTS) ; do \
59                cp $$s gajim-$(VERSION)/scripts/; \
60        done
61        find gajim-$(VERSION) -name '.svn' -type d | xargs rm -rf
62        find gajim-$(VERSION) -name '*.pyc' -exec rm {} \;
63        find gajim-$(VERSION) -name '*.pyo' -exec rm {} \;
64        find gajim-$(VERSION) -name '.*' -exec rm {} \;
65        @echo tarring gajim-$(VERSION) ...
66        @tar czf gajim-$(VERSION).tar.gz gajim-$(VERSION)/
67        @tar cjf gajim-$(VERSION).tar.bz2 gajim-$(VERSION)/
68        rm -rf gajim-$(VERSION)
69
70install:
71        # Remove the old po folder if it exists
72        if [ -d $(DESTDIR)$(PREFIX)/share/gajim/po ] ; then \
73                rm -rf $(DESTDIR)$(PREFIX)/share/gajim/po; \
74        fi
75        for d in $(DIRS) ; do \
76                if [ ! -d $(DESTDIR)$(PREFIX)/share/gajim/$$d ] ; then \
77                        mkdir -p "$(DESTDIR)$(PREFIX)/share/gajim/$$d"; \
78                fi; \
79        done
80        for f in $(FILES) ; do \
81                DST=`dirname "$$f"`; \
82                cp "$$f" "$(DESTDIR)$(PREFIX)/share/gajim/$$DST/"; \
83        done
84        rm "$(DESTDIR)$(PREFIX)/share/gajim/src/systraywin32.py"
85        for d in $(DIRS_PO) ; do \
86                if [ ! -d $(DESTDIR)$(PREFIX)/share/locale/$$d ] ; then \
87                        mkdir -p "$(DESTDIR)$(PREFIX)/share/locale/$$d"; \
88                fi; \
89        done
90        ${MAKE} -C po install PREFIX=$(PREFIX)
91        cp COPYING "$(DESTDIR)$(PREFIX)/share/gajim/";
92        cp THANKS "$(DESTDIR)$(PREFIX)/share/gajim/";
93        mkdir -p "$(DESTDIR)$(PREFIX)/share/pixmaps";
94        cp data/pixmaps/gajim.png "$(DESTDIR)$(PREFIX)/share/pixmaps/";
95        cp data/pixmaps/gajim_about.png "$(DESTDIR)$(PREFIX)/share/pixmaps/";
96        mkdir -p "$(DESTDIR)$(PREFIX)/share/applications";
97        if [ -f gajim.desktop ]; then \
98                cp gajim.desktop "$(DESTDIR)$(PREFIX)/share/applications/"; \
99        fi;
100        mkdir -p "$(MANDIR)/man1";
101        cp gajim.1 "$(MANDIR)/man1";
102        cp gajim-remote.1 "$(MANDIR)/man1";
103        mkdir -p "$(DESTDIR)$(PREFIX)$(LIBDIR)/gajim";
104        for f in $(FILES_LIB) ; do \
105                cp "$$f" "$(DESTDIR)$(PREFIX)$(LIBDIR)/gajim/"; \
106        done
107        mkdir -p "$(DESTDIR)$(PREFIX)/bin";
108        for s in $(SCRIPTS) ; do \
109                BASE=`basename "$$s"`; \
110                if [ $(GAJIM_AP) -ne 0 ] ; then \
111                        F=`cat "$$s" | sed -e 's!LIB!$(LIBDIR)!g' -e 's!PYTHON_EXEC!$(PYTHON)!g'`; \
112                else \
113                        F=`cat "$$s" | sed -e 's!PREFIX!$(PREFIX)!g' -e 's!LIB!$(LIBDIR)!g' -e 's!PYTHON_EXEC!$(PYTHON)!g'`; \
114                fi; \
115                echo "$$F" > "$(DESTDIR)$(PREFIX)/bin/$$BASE"; \
116                chmod +x "$(DESTDIR)$(PREFIX)/bin/$$BASE"; \
117        done
118
119gajim.desktop: gajim.desktop.in
120        intltool-merge -d po gajim.desktop.in gajim.desktop
121
122#
123# show make params we accept
124#
125help:
126        @echo Usage:
127        @echo make                      - builds all modules
128        @echo make clean                - delete built modules and object files
129        @echo make distclean            - clean plus deletion of all other non-repository files
130        @echo make install              - install binaries into the official directories
131        @echo make uninstall            - uninstall binaries from the official directories
132        @echo make help                 - prints this help
133        @echo
134        @echo make trayicon             - makes only trayicon module
135        @echo make idle                 - makes only idle detection module
136        @echo make translation          - makes only translation \(mo files\)
137        @echo make gtkspell             - makes only gtkspell detection module
138        @echo make tags                 - makes 'tags' file for use with ctags
139        @echo
140
141#
142# uninstall application from official directories
143#
144uninstall:
145        rm -rf  "$(DESTDIR)$(PREFIX)/share/gajim" # the main files are here
146        rm -rf  "$(DESTDIR)$(PREFIX)/lib/gajim" # the .so files are here
147        rm -f   "$(DESTDIR)$(PREFIX)/bin/gajim" # the bash script
148        rm -f   "$(DESTDIR)$(PREFIX)/bin/gajim-remote" # remote-control script
149        rm -f   "$(MANDIR)/man1/gajim.1" # the man page
150        rm -f   "$(MANDIR)/man1/gajim-remote.1" # the man page
151        rm -f   "$(DESTDIR)$(PREFIX)/share/pixmaps/gajim.png" # the icon
152        rm -f   "$(DESTDIR)$(PREFIX)/share/pixmaps/gajim_about.png" # the icon
153        rm -f   "$(DESTDIR)$(PREFIX)/share/applications/gajim.desktop" #the desktop
154        find "$(DESTDIR)$(PREFIX)/share/locale" -name 'gajim.mo' -exec rm {} \; #the .mo files
155        @echo done uninstalling
156
157tags:
158        -rm tags
159        exuberant-ctags -R
160
161.PHONY: all translation trayicon gtkspell idle clean dist distclean install help\
162        uninstall tags
Note: See TracBrowser for help on using the browser.