1 |
ennael |
55221 |
%define thunderbird_package mozilla-thunderbird |
2 |
|
|
|
3 |
|
|
%define name mozilla-thunderbird-l10n |
4 |
|
|
%define oname mozilla-thunderbird |
5 |
fwang |
132595 |
%define version 5.0 |
6 |
ennael |
55221 |
|
7 |
dmorgan |
61587 |
#if %mandriva_branch == Cauldron |
8 |
|
|
# Cauldron |
9 |
fwang |
111848 |
%define release %mkrel 1 |
10 |
dmorgan |
61587 |
#else |
11 |
ennael |
55221 |
# Old distros |
12 |
dmorgan |
61587 |
#define subrel 1 |
13 |
|
|
#define release %mkrel 0 |
14 |
|
|
#endif |
15 |
ennael |
55221 |
|
16 |
|
|
%define thunderbird_epoch 0 |
17 |
|
|
%define thunderbird_version %{version} |
18 |
|
|
|
19 |
|
|
%define up_ca_name thunderbird |
20 |
|
|
%define lib_name %{up_ca_name}-%version |
21 |
|
|
%define mozillalibdir %_libdir/%lib_name |
22 |
|
|
%define tb_appid \{3550f703-e582-4d05-9a08-453d09bdfdc6\} |
23 |
|
|
%define tbextdir %{_datadir}/mozilla/extensions/%{tb_appid} |
24 |
|
|
|
25 |
|
|
%define xpidir http://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/%{thunderbird_version}/linux-i686/xpi/ |
26 |
|
|
|
27 |
|
|
# Supported l10n language lists |
28 |
fwang |
132595 |
%define langlist af ar be bg bn_BD ca cs da de el en_GB es_AR es_ES et eu fi fr fy ga gd gl he hu id is it ja ko lt nb_NO nl nn_NO pa_IN pl pt_PT pt_BR ro ru si sl sk sq sr sv_SE tr uk vi zh_TW |
29 |
ennael |
55221 |
|
30 |
|
|
# Disabled l10n languages, for any reason |
31 |
fwang |
132595 |
%define disabled_langlist gu_IN mk zh_CN vi sr ro id el bn_BD be af |
32 |
ennael |
55221 |
|
33 |
|
|
# Disabled myspell dicts, for any reason |
34 |
|
|
%define disabled_dict_langlist ar be br_FR es_AR eu fi fy ga gu_IN he ja ko mk pa_IN tr zh_CN zh_TW |
35 |
|
|
|
36 |
|
|
%define use_dict 1 |
37 |
|
|
# We moved to pointing mozilladir/dictionaries -> /usr/share/dict/mozilla |
38 |
|
|
%define use_dict 0 |
39 |
|
|
|
40 |
|
|
# Language descriptions |
41 |
|
|
%define language_af af |
42 |
|
|
%define langname_af Afrikaans |
43 |
|
|
%define language_ar ar |
44 |
|
|
%define langname_ar Arabic |
45 |
|
|
%define language_be be |
46 |
|
|
%define langname_be Belarusian |
47 |
|
|
%define language_bg bg |
48 |
|
|
%define langname_bg Bulgarian |
49 |
|
|
%define language_bn_BD bn-BD |
50 |
|
|
%define langname_bn_BD Bengali (Bangla) |
51 |
|
|
%define language_br_FR br-FR |
52 |
|
|
%define langname_br_FR Breton |
53 |
|
|
%define language_ca ca |
54 |
|
|
%define langname_ca Catalan |
55 |
|
|
%define language_cs cs |
56 |
|
|
%define langname_cs Czech |
57 |
|
|
%define language_da da |
58 |
|
|
%define langname_da Dansk |
59 |
|
|
%define language_de de |
60 |
|
|
%define langname_de German |
61 |
|
|
%define language_el el |
62 |
|
|
%define langname_el Greek |
63 |
|
|
%define language_en_GB en-GB |
64 |
|
|
%define langname_en_GB British English |
65 |
|
|
%define language_es_AR es-AR |
66 |
|
|
%define langname_es_AR Spanish (Argentina) |
67 |
|
|
%define language_es_ES es-ES |
68 |
|
|
%define langname_es_ES Spanish |
69 |
|
|
%define language_et_EE et-EE |
70 |
|
|
%define langname_et_EE Estonian (Magento) |
71 |
|
|
%define language_et et |
72 |
|
|
%define langname_et Estonian |
73 |
|
|
%define language_eu eu |
74 |
|
|
%define langname_eu Basque |
75 |
|
|
%define language_fi fi |
76 |
|
|
%define langname_fi Finnish |
77 |
|
|
%define language_fr fr |
78 |
|
|
%define langname_fr French |
79 |
|
|
%define language_fy fy-NL |
80 |
|
|
%define langname_fy Frisian |
81 |
|
|
%define language_ga ga-IE |
82 |
|
|
%define langname_ga Irish |
83 |
ahmad |
62415 |
%define language_gd gd |
84 |
|
|
%define langname_gd Scottish Gaelic |
85 |
ennael |
55221 |
%define language_gl gl |
86 |
|
|
%define langname_gl Galician |
87 |
|
|
%define language_gu_IN gu-IN |
88 |
|
|
%define langname_gu_IN Gujarati |
89 |
|
|
%define language_he he |
90 |
|
|
%define langname_he Hebrew |
91 |
|
|
%define language_hu hu |
92 |
|
|
%define langname_hu Hungarian |
93 |
|
|
%define language_id id |
94 |
|
|
%define langname_id Indonesian |
95 |
|
|
%define language_is is |
96 |
|
|
%define langname_is Icelandic |
97 |
|
|
%define language_it it |
98 |
|
|
%define langname_it Italian |
99 |
|
|
%define language_ja ja |
100 |
|
|
%define langname_ja Japanese |
101 |
|
|
%define language_ka ka |
102 |
|
|
%define langname_ka Georgian |
103 |
|
|
%define language_ko ko |
104 |
|
|
%define langname_ko Korean |
105 |
|
|
%define language_lt lt |
106 |
|
|
%define langname_lt Lithuanian |
107 |
|
|
%define language_mk mk |
108 |
|
|
%define langname_mk Macedonian |
109 |
|
|
%define language_nb_NO nb-NO |
110 |
|
|
%define langname_nb_NO Norwegian Bokmaal |
111 |
|
|
%define language_nn_NO nn-NO |
112 |
|
|
%define langname_nn_NO Norwegian Nynorsk |
113 |
|
|
%define language_nl nl |
114 |
|
|
%define langname_nl Dutch |
115 |
|
|
%define language_pa_IN pa-IN |
116 |
|
|
%define langname_pa_IN Punjabi (gurmukhi) |
117 |
|
|
%define language_pl pl |
118 |
|
|
%define langname_pl Polish |
119 |
|
|
%define language_pt_BR pt-BR |
120 |
|
|
%define langname_pt_BR Brazilian portuguese |
121 |
|
|
%define language_pt_PT pt-PT |
122 |
|
|
%define langname_pt_PT Portuguese |
123 |
|
|
%define language_ro ro |
124 |
|
|
%define langname_ro Romanian |
125 |
|
|
%define language_ru ru |
126 |
|
|
%define langname_ru Russian |
127 |
|
|
%define language_si si |
128 |
|
|
%define langname_si Sinhala |
129 |
|
|
%define language_sk sk |
130 |
|
|
%define langname_sk Slovak |
131 |
|
|
%define language_sq sq |
132 |
|
|
%define langname_sq Albanian |
133 |
|
|
%define language_sl sl |
134 |
|
|
%define langname_sl Slovenian |
135 |
|
|
%define language_sr sr |
136 |
|
|
%define langname_sr Serbian |
137 |
|
|
%define language_sv_SE sv-SE |
138 |
|
|
%define langname_sv_SE Swedish |
139 |
|
|
%define language_ta_LK ta-LK |
140 |
|
|
%define langname_ta_LK Tamil (Sri-Lanka) |
141 |
|
|
%define language_tr tr |
142 |
|
|
%define langname_tr Turkish |
143 |
|
|
%define language_uk uk |
144 |
|
|
%define langname_uk Ukrainian |
145 |
|
|
%define language_vi vi |
146 |
|
|
%define langname_vi Vietnamese |
147 |
|
|
%define language_zh_CN zh-CN |
148 |
|
|
%define langname_zh_CN Simplified Chinese |
149 |
|
|
%define language_zh_TW zh-TW |
150 |
|
|
%define langname_zh_TW Traditional Chinese |
151 |
|
|
|
152 |
|
|
# --- Danger line --- |
153 |
|
|
|
154 |
|
|
# Defaults (all languages enabled by default) |
155 |
|
|
# l10n |
156 |
|
|
%{expand:%(for lang in %langlist; do echo "%%define with_$lang 1"; done)} |
157 |
|
|
%{expand:%(for lang in %disabled_langlist; do echo "%%define with_$lang 0"; done)} |
158 |
|
|
# dicts |
159 |
|
|
%{expand:%(for lang in %langlist; do echo "%%define with_dict_$lang %{use_dict}"; done)} |
160 |
|
|
%{expand:%(for lang in %disabled_dict_langlist; do echo "%%define with_dict_$lang 0"; done)} |
161 |
|
|
|
162 |
|
|
# Locales |
163 |
|
|
%{expand:%(for lang in %langlist; do echo "%%define locale_$lang `echo $lang | cut -d _ -f 1` "; done)} |
164 |
|
|
|
165 |
|
|
%if %use_dict |
166 |
|
|
# myspell dicts, allows setting preferences between several providers. |
167 |
|
|
%{expand:%(for lang in %langlist; do echo "%%define myspell_$lang myspell-$lang"; done)} |
168 |
|
|
%define myspell_de myspell-de_DE |
169 |
|
|
%define myspell_fr myspell-fr_FR |
170 |
|
|
%endif |
171 |
|
|
|
172 |
|
|
Summary: Localizations for Thunderbird (virtual package) |
173 |
|
|
Name: %{name} |
174 |
|
|
Version: %{version} |
175 |
|
|
Release: %{release} |
176 |
|
|
License: GPL |
177 |
|
|
Group: Networking/WWW |
178 |
|
|
Url: http://www.mozilla.org/ |
179 |
|
|
BuildArch: noarch |
180 |
|
|
BuildRequires: libxml2-utils |
181 |
|
|
# Language package template |
182 |
|
|
Source0: %{name}-template.in |
183 |
|
|
Patch0: fy-si-xml-validation.patch |
184 |
fwang |
132595 |
Patch1: pt-PT-xml-validation.patch |
185 |
ennael |
55221 |
# l10n sources |
186 |
|
|
%{expand:%(\ |
187 |
|
|
i=1;\ |
188 |
|
|
for lang in %langlist; do\ |
189 |
|
|
echo "%%{expand:Source$i: %{xpidir}/%%{language_$lang}.xpi}";\ |
190 |
|
|
i=$[i+1];\ |
191 |
|
|
done\ |
192 |
|
|
) |
193 |
|
|
} |
194 |
|
|
%if %use_dict |
195 |
|
|
%{expand:%(\ |
196 |
|
|
disabled="%{disabled_dict_langlist}";\ |
197 |
|
|
for lang in %langlist; do\ |
198 |
|
|
echo "$disabled" | grep -q "\<$lang\>" || \ |
199 |
|
|
echo "BuildRequires: %%{myspell_$lang}";\ |
200 |
|
|
done\ |
201 |
|
|
) |
202 |
|
|
} |
203 |
|
|
%endif |
204 |
|
|
|
205 |
|
|
%description |
206 |
|
|
Localizations for Thunderbird |
207 |
|
|
|
208 |
|
|
# Expand all languages packages. |
209 |
|
|
%{expand:%(\ |
210 |
|
|
for lang in %langlist; do\ |
211 |
|
|
echo "%%{expand:%%(sed "s!__LANG__!$lang!g" %{_sourcedir}/%{name}-template.in 2> /dev/null)}";\ |
212 |
|
|
done\ |
213 |
|
|
) |
214 |
|
|
} |
215 |
|
|
|
216 |
|
|
%prep |
217 |
|
|
%setup -q -c -T |
218 |
|
|
|
219 |
|
|
# Convert rpm macros to bash variables |
220 |
|
|
%{expand:%(for lang in %langlist; do echo "language_$lang=%%{language_$lang}"; done)} |
221 |
|
|
%{expand:%(for lang in %langlist; do echo "locale_$lang=%%{locale_$lang}"; done)} |
222 |
|
|
%{expand:%(for lang in %langlist; do echo "with_$lang=%%{with_$lang}"; done)} |
223 |
|
|
%{expand:%(for lang in %langlist; do echo "dict_$lang=%%{with_dict_$lang}"; done)} |
224 |
|
|
|
225 |
|
|
# Unpack all languages |
226 |
|
|
for lang in %langlist; do |
227 |
|
|
with="with_$lang" |
228 |
|
|
with=${!with} |
229 |
|
|
[ $with -eq 0 ] && continue |
230 |
|
|
|
231 |
|
|
language="language_$lang" |
232 |
|
|
language=${!language} |
233 |
|
|
|
234 |
|
|
locale="locale_$lang" |
235 |
|
|
locale=${!locale} |
236 |
|
|
|
237 |
|
|
# l10n |
238 |
|
|
mkdir ${language} |
239 |
|
|
cd ${language} |
240 |
|
|
unzip -qq %{_sourcedir}/${language}.xpi |
241 |
|
|
cd .. |
242 |
|
|
|
243 |
|
|
# dict |
244 |
|
|
dict="dict_$lang" |
245 |
|
|
dict=${!dict} |
246 |
|
|
[ $dict -eq 0 ] && continue |
247 |
|
|
|
248 |
|
|
done |
249 |
|
|
|
250 |
|
|
# Patches |
251 |
|
|
pushd si |
252 |
|
|
%patch0 -p0 |
253 |
|
|
popd |
254 |
fwang |
132595 |
pushd pt-PT |
255 |
|
|
%patch1 -p1 |
256 |
|
|
popd |
257 |
ennael |
55221 |
|
258 |
|
|
%check |
259 |
|
|
# All install.rdf files must validate |
260 |
|
|
xmllint --noout */install.rdf |
261 |
|
|
|
262 |
|
|
%install |
263 |
|
|
rm -rf %buildroot |
264 |
|
|
|
265 |
|
|
# Convert rpm macros to bash variables |
266 |
|
|
%{expand:%(for lang in %langlist; do echo "language_$lang=%%{language_$lang}"; done)} |
267 |
|
|
%{expand:%(for lang in %langlist; do echo "with_$lang=%%{with_$lang}"; done)} |
268 |
|
|
%{expand:%(for lang in %langlist; do echo "dict_$lang=%%{with_dict_$lang}"; done)} |
269 |
|
|
|
270 |
|
|
# Create dicts dir |
271 |
|
|
%if %use_dict |
272 |
|
|
mkdir -p %buildroot%{mozillalibdir}/dictionaries |
273 |
|
|
%endif |
274 |
|
|
|
275 |
|
|
# Install all languages |
276 |
|
|
for lang in %langlist; do |
277 |
|
|
with="with_$lang" |
278 |
|
|
with=${!with} |
279 |
|
|
[ $with -eq 0 ] && continue |
280 |
|
|
|
281 |
|
|
language="language_$lang" |
282 |
|
|
language=${!language} |
283 |
|
|
|
284 |
|
|
# l10n |
285 |
|
|
cd $language |
286 |
|
|
mkdir -p %buildroot%{tbextdir}/langpack-${language}@thunderbird.mozilla.org/ |
287 |
|
|
cp -f -r * %buildroot%{tbextdir}/langpack-${language}@thunderbird.mozilla.org/ |
288 |
|
|
cd .. |
289 |
|
|
|
290 |
|
|
done |
291 |
|
|
|
292 |
|
|
%clean |
293 |
|
|
rm -rf %buildroot |