root/branches/gajim_0.9.1/Makefile

Revision 4864, 5.0 kB (checked in by nk, 3 years ago)

some tabs so in source it looks better

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