qmake: Support multiple /MERGE:from=to options in MSVC generator

Any but the last /MERGE:from=to option passed to QMAKE_LFLAGS was
ignored. Now, the first options gets a <MergeSections> tag and all
further options are added as AdditionalOptions, because vcxproj files /
the VS property editor do not support multiple MergeSections entries.

Pick-to: 5.15
Fixes: QTBUG-86062
Change-Id: I65bddf0b8c7ed6c162008d6ad1b58c2aba2d07d9
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
This commit is contained in:
Joerg Bornemann 2020-09-16 15:33:20 +02:00
parent 5a8555c53f
commit 2cbeacd2cd

View File

@ -1625,7 +1625,13 @@ bool VCLinkerTool::parseOption(const char* option)
MapLines = _True;
break;
case 0x341a6b5: // /MERGE:from=to
if (MergeSections.isEmpty()) {
MergeSections = option+7;
} else {
// vcxproj files / the VS property editor do not support multiple MergeSections entries.
// Add them as additional options.
AdditionalOptions += option;
}
break;
case 0x0341d8c: // /MIDL:@file
MidlCommandFile = option+7;