summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mkspecs/common/symbian/symbian.conf8
-rw-r--r--mkspecs/features/symbian/localize_deployment.prf5
-rw-r--r--qmake/generators/symbian/symbiancommon.cpp15
3 files changed, 19 insertions, 9 deletions
diff --git a/mkspecs/common/symbian/symbian.conf b/mkspecs/common/symbian/symbian.conf
index c50dc77..4e9690d 100644
--- a/mkspecs/common/symbian/symbian.conf
+++ b/mkspecs/common/symbian/symbian.conf
@@ -155,7 +155,9 @@ SYMBIAN_SUPPORTED_LANGUAGES = \
pt_br en_ca fr_ca el_cy tr_cy \
en_tw en_hk en_cn en_jp en_th \
sv_fi zh_hk es_419 en_za fr_ch \
- de_ch it_ch zh_tw
+ de_ch it_ch zh_tw en_in
+
+SYMBIAN_LANGUAGES_WITH_TWO_CODES = ms id
# These directories must match what configure uses for QT_INSTALL_PLUGINS and QT_INSTALL_IMPORTS
QT_PLUGINS_BASE_DIR = /resource/qt$${QT_LIBINFIX}/plugins
@@ -295,8 +297,10 @@ defineReplace(addLanguageDependentPkgItem) {
pkgItem = $$eval($$1)
pkgLanguageList =
- for(dummyItem, SYMBIAN_MATCHED_LANGUAGES) {
+ for(matchedLanguage, SYMBIAN_MATCHED_LANGUAGES) {
pkgLanguageList += "\"$$pkgItem\""
+ # If the language has two mappings, add the item another time.
+ contains(SYMBIAN_LANGUAGES_WITH_TWO_CODES, $$matchedLanguage): pkgLanguageList += "\"$$pkgItem\""
}
isEmpty(pkgLanguageList): pkgLanguageList = "\"$$pkgItem\""
diff --git a/mkspecs/features/symbian/localize_deployment.prf b/mkspecs/features/symbian/localize_deployment.prf
index 3e7f585..57c3e93 100644
--- a/mkspecs/features/symbian/localize_deployment.prf
+++ b/mkspecs/features/symbian/localize_deployment.prf
@@ -28,7 +28,7 @@ SYMBIAN_LANG.he = 57 #Hebrew
SYMBIAN_LANG.hi = 58 #Hindi
SYMBIAN_LANG.hu = 17 #Hungarian
SYMBIAN_LANG.is = 15 #Icelandic
-SYMBIAN_LANG.id = 59 #Indonesian
+SYMBIAN_LANG.id = 59 327 #Indonesian / Indonesian APAC
SYMBIAN_LANG.ga = 60 #Irish
SYMBIAN_LANG.it = 05 #Italian
SYMBIAN_LANG.ja = 32 #Japanese
@@ -39,7 +39,7 @@ SYMBIAN_LANG.lo = 66 #Laothian
SYMBIAN_LANG.lv = 67 #Latvian
SYMBIAN_LANG.lt = 68 #Lithuanian
SYMBIAN_LANG.mk = 69 #Macedonian
-SYMBIAN_LANG.ms = 70 #Malay
+SYMBIAN_LANG.ms = 70 326 #Malay / Malay APAC
SYMBIAN_LANG.ml = 71 #Malayalam
SYMBIAN_LANG.mr = 72 #Marathi
SYMBIAN_LANG.mo = 73 #Moldavian
@@ -88,6 +88,7 @@ SYMBIAN_LANG.en_hk = 158 #English as appropriate for use in Hong Kong
SYMBIAN_LANG.en_cn = 159 #English as appropriate for use in the Peoples Republic of China
SYMBIAN_LANG.en_jp = 160 #English as appropriate for use in Japan
SYMBIAN_LANG.en_th = 161 #English as appropriate for use in Thailand
+SYMBIAN_LANG.en_in = 230 #English as appropriate for use in India
SYMBIAN_LANG.sv_fi = 85 #Finland Swedish
SYMBIAN_LANG.zh_hk = 30 #HongKong Chinese
SYMBIAN_LANG.es_419 = 83 #Latin American Spanish
diff --git a/qmake/generators/symbian/symbiancommon.cpp b/qmake/generators/symbian/symbiancommon.cpp
index c79bad2..e2dec40 100644
--- a/qmake/generators/symbian/symbiancommon.cpp
+++ b/qmake/generators/symbian/symbiancommon.cpp
@@ -864,12 +864,17 @@ void SymbianCommonGenerator::fillQt2SymbianLocalizationList(SymbianLocalizationL
QStringList symbianLanguages = generator->project->values("SYMBIAN_MATCHED_LANGUAGES");
foreach (QString qtCode, symbianLanguages) {
- SymbianLocalization newLoc;
QString symbianCodeVariable = symbianCodePrefix + qtCode;
- newLoc.symbianLanguageCode = generator->project->first(symbianCodeVariable);
- if (!newLoc.symbianLanguageCode.isEmpty()) {
- newLoc.qtLanguageCode = qtCode;
- symbianLocalizationList->append(newLoc);
+ QStringList symbianCodes = generator->project->values(symbianCodeVariable);
+ // Some languages have more than one Symbian code, so they get more than one
+ // entry in symbianLocalizationList.
+ foreach (QString symbianCode, symbianCodes) {
+ SymbianLocalization newLoc;
+ newLoc.symbianLanguageCode = symbianCode;
+ if (!newLoc.symbianLanguageCode.isEmpty()) {
+ newLoc.qtLanguageCode = qtCode;
+ symbianLocalizationList->append(newLoc);
+ }
}
}
}