diff options
Diffstat (limited to 'src/lib/qtprofilesetup/templates/core.qbs')
-rw-r--r-- | src/lib/qtprofilesetup/templates/core.qbs | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/src/lib/qtprofilesetup/templates/core.qbs b/src/lib/qtprofilesetup/templates/core.qbs index ba84ead91..98b3d3b3a 100644 --- a/src/lib/qtprofilesetup/templates/core.qbs +++ b/src/lib/qtprofilesetup/templates/core.qbs @@ -293,18 +293,29 @@ Module { try { qrcFile.writeLine('<!DOCTYPE RCC>'); qrcFile.writeLine('<RCC version="1.0">'); - var prefix = inputs["qt.core.resource_data"][0].moduleProperty("Qt.core", - "resourcePrefix"); - qrcFile.writeLine('<qresource prefix ="' + prefix + '">'); + + var inputsByPrefix = {} for (var i = 0; i < inputs["qt.core.resource_data"].length; ++i) { var inp = inputs["qt.core.resource_data"][i]; - var fullResPath = inp.filePath; - var baseDir = inp.moduleProperty("Qt.core", "resourceSourceBase"); - var relResPath = FileInfo.relativePath(baseDir, fullResPath); - qrcFile.writeLine('<file alias = "' + relResPath + '">' - + fullResPath + '</file>'); + var prefix = inp.moduleProperty("Qt.core", "resourcePrefix"); + var inputsList = inputsByPrefix[prefix] || []; + inputsList.push(inp); + inputsByPrefix[prefix] = inputsList; + } + + for (var prefix in inputsByPrefix) { + qrcFile.writeLine('<qresource prefix="' + prefix + '">'); + for (var i = 0; i < inputsByPrefix[prefix].length; ++i) { + var inp = inputsByPrefix[prefix][i]; + var fullResPath = inp.filePath; + var baseDir = inp.moduleProperty("Qt.core", "resourceSourceBase"); + var relResPath = FileInfo.relativePath(baseDir, fullResPath); + qrcFile.writeLine('<file alias = "' + relResPath + '">' + + fullResPath + '</file>'); + } + qrcFile.writeLine('</qresource>'); } - qrcFile.writeLine('</qresource>'); + qrcFile.writeLine('</RCC>'); } finally { qrcFile.close(); |