summaryrefslogtreecommitdiff
path: root/locale/Makefile
blob: 6c27a0d7f98ecc19fdf8a5948c7a0e1c409006b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#
# Makefile
#
# $Id$

### Targets:
PREPARE = de.po \
		it.po \
#      fr.po \
#      ne.po po.po \
#      su.po es.po

TRANSLATION = de.mo \
		it.mo \
#      fr.mo \
#      ne.mo po.mo \
#      su.mo es.mo

MODULES = ../lib/XXV/MODULES/AUTOTIMER.pm \
  ../lib/XXV/MODULES/CHANNELS.pm \
  ../lib/XXV/MODULES/CHRONICLE.pm \
  ../lib/XXV/MODULES/CONFIG.pm \
  ../lib/XXV/MODULES/EPG.pm \
  ../lib/XXV/MODULES/EVENTS.pm \
  ../lib/XXV/MODULES/GRAB.pm \
  ../lib/XXV/MODULES/HTTPD.pm \
  ../lib/XXV/MODULES/INTERFACE.pm \
  ../lib/XXV/MODULES/LOGREAD.pm \
  ../lib/XXV/MODULES/KEYWORDS.pm \
  ../lib/XXV/MODULES/MEDIALIB.pm \
  ../lib/XXV/MODULES/MOVETIMER.pm \
  ../lib/XXV/MODULES/MUSIC.pm \
  ../lib/XXV/MODULES/RECORDS.pm \
  ../lib/XXV/MODULES/REMOTE.pm \
  ../lib/XXV/MODULES/REPORT.pm \
  ../lib/XXV/MODULES/ROBOT.pm \
  ../lib/XXV/MODULES/SHARE.pm \
  ../lib/XXV/MODULES/STATUS.pm \
  ../lib/XXV/MODULES/STREAM.pm \
  ../lib/XXV/MODULES/SVDRP.pm \
  ../lib/XXV/MODULES/TELNET.pm \
  ../lib/XXV/MODULES/TIMERS.pm \
  ../lib/XXV/MODULES/USER.pm \
  ../lib/XXV/MODULES/VTX.pm \
  ../lib/XXV/MODULES/WAPD.pm \
  ../lib/XXV/MODULES/XMLTV.pm \
  ../lib/XXV/OUTPUT/Ajax.pm \
  ../lib/XXV/OUTPUT/Console.pm \
  ../lib/XXV/OUTPUT/Dump.pm \
  ../lib/XXV/OUTPUT/Html.pm \
  ../lib/XXV/OUTPUT/Wml.pm \
  ../lib/XXV/OUTPUT/HTML/PUSH.pm \
  ../lib/XXV/OUTPUT/HTML/WAIT.pm \
  ../lib/XXV/OUTPUT/NEWS/JABBER.pm \
  ../lib/XXV/OUTPUT/NEWS/MAIL.pm \
  ../lib/XXV/OUTPUT/NEWS/RSS.pm \
  ../lib/XXV/OUTPUT/NEWS/VDR.pm \
  ../bin/xxvd \
  ../skins/html/*.tmpl \
  ../skins/html/widgets/*.tmpl \
  ../skins/html/javascript/*.js \
  ../skins/wml/*.tmpl \
  ../skins/wml/widgets/*.tmpl \
  ../skins/stone/*.tmpl \
  ../skins/stone_flat/*.tmpl \
  ../skins/stone/widgets/*.tmpl \
  ../skins/deltab/*.tmpl \
  ../skins/deltab/widgets/*.tmpl \
  ../skins/xstyle/*.tmpl \
  ../skins/xstyle/widgets/*.tmpl


### TODO Need Touch if only a Modul is changed
# Dependencies:
DEPFILE = .dependencies
$(DEPFILE): Makefile
	@echo $(MODULES) : $(PREPARE) > $@

-include $(DEPFILE)

### Merge all gettext-entry on Modules with language.po files
%.po: $(DEPFILE)
	@-cp -f "$@" "$@~" > /dev/null
	@mkdir -p xxv
	@for i in $(MODULES) ; \
        do SUBDIR=$$(echo `dirname "$$i"` | sed -e "s/\.\.\///g;") ; \
        mkdir -p xxv/$$SUBDIR ; \
        cat "$$i" | tr -d '\r' > xxv/$$SUBDIR/`basename "$$i"`; \
        done
	@mkdir -p xxv/locale
	@cd xxv/locale && \
          ../../xgettext.pl -o ../../"$@" `find .. -type f`
	@-rm -rf xxv

### Convert language.po to GNU message catalog language.mo
%.mo: %.po
	@-mkdir -p $*/LC_MESSAGES
	@msgfmt -f  $< -o $*/LC_MESSAGES/xxv.mo


#### Rules

prepare: $(PREPARE)

all: $(TRANSLATION)

clean:
	@-rm -f *~ $(DEPFILE)

export:	clean
	@tar czf ../locale.tgz -C .. locale