From 4f27446ba13fb14ab5e28e9dc75f199754f1d73e Mon Sep 17 00:00:00 2001
From: Ray Donnelly <mingw.android@gmail.com>
Date: Wed, 1 Apr 2015 15:01:08 +0100
Subject: [PATCH 7/9] Don't prevent qmake linking qmltooling plugin

Since it seems to be necessary. For now, I've removed the
deliberate exclusion for win32 only, but I can't see why
qmltooling wouldn't be necessary on all platforms. If Qt5
had been built with QT_QML_NO_DEBUGGER defined then this
wouldn't have been an issue, but being able to debug QML
isn't something I'd like to disable.
---
 src/sdk/sdk.pro | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/src/sdk/sdk.pro b/src/sdk/sdk.pro
index 4f9e480..9c99ebf 100644
--- a/src/sdk/sdk.pro
+++ b/src/sdk/sdk.pro
@@ -18,7 +18,22 @@ CONFIG(static, static|shared) {
   # prevent qmake from automatically linking in imageformats, bearer, qmltooling plugins
   QTPLUGIN.imageformats = -
   QTPLUGIN.bearer = -
-  QTPLUGIN.qmltooling = -
+  # .. except link qmltooling on Windows
+  # though most likely all plaforms need
+  # this since without it the link fails
+  # g++ -Wl,-s -static -Wl,-subsystem,windows -mthreads -o ../../bin/installerbase.exe object_script.installerbase.Release  \
+  #     -lmingw32 -LC:/msys64/mingw64/qt5-static/lib -lqtmain -LC:/repo/mingw-w64-qt-installer-framework/src/build-x86_64/lib \
+  #     -linstaller -l7z -lQt5WinExtras -lQt5UiTools -lQt5Widgets -lQt5Concurrent -lQt5Qml -lQt5Network -ldnsapi -lssl -lcrypto -lcrypt32 -lQt5Xml \
+  #     -LC:/msys64/mingw64/qt5-static/share/qt5/plugins/platforms -lqwindows -lwinspool -lshlwapi -lQt5PlatformSupport -lQt5Gui \
+  #     -lcomdlg32 -loleaut32 -limm32 -lwinmm -lglu32 -lopengl32 -lgdi32 -lqtharfbuzzng -lQt5Core -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 -lmpr
+  # C:/msys64/mingw64/qt5-static/lib\libQt5Qml.a(qqmldebugserver.o):qqmldebugserver.cpp:(.text+0x4f95): undefined reference to `QTcpServerConnection::QTcpServerConnection()'
+  # .. the above link command line needs the following appended to it to work:
+  #     -LC:/msys64/mingw64/qt5-static/share/qt5/plugins/qmltooling qmldbg_tcp
+  # From qt5: qtdeclarative/src/qml/debugger/qqmldebugserver.cpp:289
+  #   if defined(QT_STATIC) && ! defined(QT_QML_NO_DEBUGGER)
+  #   .. = new QTcpServerConnection; ..
+  # .. so maybe we should look into defining QT_QML_NO_DEBUGGER, but I think I'd rather be able to debug QML than not.
+  !win32:QTPLUGIN.qmltooling = -
 }
 
 DESTDIR = $$IFW_APP_PATH
-- 
2.7.0

