Fix .qm file name calculation in lrelease.prf
The following snippet in a .pro file resulted in a build error: CONFIG += lrelease embed_translations TRANSLATIONS += foo.bar_de.ts The variable QM_FILES was incorrectly calculated. The extra compiler that calls lrelease uses QMAKE_FILE_IN_BASE, which wraps QFileInfo::completeBaseName(), resulting in "foo.bar_de.qm". The $$replace call that calculates the .qm file name however, produces "foo.qm". Fix this mismatch by adjusting the regular expression to behave like QFileInfo::completeBaseName(). Pick-to: 5.15 6.2 Fixes: QTBUG-79016 Change-Id: I545d1b58170cd5229007faf31c9b2c6f70ff75a6 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
This commit is contained in:
parent
d7b02e8cbf
commit
5678ee93b4
@ -24,7 +24,7 @@ all_translations = $$TRANSLATIONS $$EXTRA_TRANSLATIONS
|
||||
for (translation, all_translations) {
|
||||
# mirrors $$LRELEASE_DIR/${QMAKE_FILE_IN_BASE}.qm above
|
||||
translation = $$basename(translation)
|
||||
QM_FILES += $$OUT_PWD/$$LRELEASE_DIR/$$replace(translation, \\..*$, .qm)
|
||||
QM_FILES += $$OUT_PWD/$$LRELEASE_DIR/$$replace(translation, \\.[^.]+$, .qm)
|
||||
}
|
||||
embed_translations {
|
||||
qmake_qm_files.files = $$QM_FILES
|
||||
|
Loading…
x
Reference in New Issue
Block a user