diff options
author | Kai Köhne <kai.koehne@qt.io> | 2021-06-23 08:57:09 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-06-25 14:16:44 +0000 |
commit | 4937e962681299271f3d4f6e3fadd215afa3bcf6 (patch) | |
tree | fbceb0a2326b247ceb2e2ecebacaf5a894aa52be | |
parent | 88af23b2fe7ca627f5599b6c16446f7635704e85 (diff) |
Fix static builds on Windows
Fixes issues like
qml_qmltyperegistrations.cpp(28): error C2375: 'qml_register_types_QtQml': redefinition; different linkage
qtbase\include\QtQml\6.2.0\QtQml\private\../../../../../../../src/qtdeclarative/src/qml/qtqmlglobal_p.h(62): note: see declaration of 'qml_register_types_QtQml'
Change-Id: I063b60638978faa4e79cbf7eb75849a367730893
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit d0cb449208ff618498e3e129b4af1b22086da082)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | src/qmltyperegistrar/qmltyperegistrar.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/qmltyperegistrar/qmltyperegistrar.cpp b/src/qmltyperegistrar/qmltyperegistrar.cpp index 914781e737..af266064c0 100644 --- a/src/qmltyperegistrar/qmltyperegistrar.cpp +++ b/src/qmltyperegistrar/qmltyperegistrar.cpp @@ -197,7 +197,14 @@ int main(int argc, char **argv) const QString functionName = QStringLiteral("qml_register_types_") + moduleAsSymbol; - fprintf(output, "Q_DECL_EXPORT void %s()\n{", qPrintable(functionName)); + fprintf(output, + "#if !defined(QT_STATIC)\n" + "#define Q_QMLTYPE_EXPORT Q_DECL_EXPORT\n" + "#else\n" + "#define Q_QMLTYPE_EXPORT\n" + "#endif\n" + "\n"); + fprintf(output, "Q_QMLTYPE_EXPORT void %s()\n{", qPrintable(functionName)); const auto majorVersion = parser.value(majorVersionOption); const auto pastMajorVersions = parser.values(pastMajorVersionOption); const auto minorVersion = parser.value(minorVersionOption); |