private QtModuleInfo InitQtModule(QtModule moduleId, string libraryPrefix, string[] defines) { QtModuleInfo moduleInfo = new QtModuleInfo(moduleId); moduleInfo.LibraryPrefix = libraryPrefix; moduleInfo.IncludePath = "$(QTDIR)\\include\\" + libraryPrefix; moduleInfo.Defines = new List <string>(); dictModulesByDLL.Add(libraryPrefix, moduleId); foreach (string str in defines) { if (string.IsNullOrEmpty(str)) { continue; } moduleInfo.Defines.Add(str); } dictModuleInfos.Add(moduleId, moduleInfo); if (libraryPrefix.StartsWith("Qt")) { moduleInfo.proVarQT = libraryPrefix.Substring(2).ToLower(); } else { moduleInfo.proVarQT = libraryPrefix.ToLower(); } return(moduleInfo); }
private QtModules() { QtModuleInfo moduleInfo = null; InitQtModule(QtModule.Core, "QtCore", "QT_CORE_LIB"); InitQtModule(QtModule.Multimedia, "QtMultimedia", "QT_MULTIMEDIA_LIB"); InitQtModule(QtModule.Sql, "QtSql", "QT_SQL_LIB"); InitQtModule(QtModule.Network, "QtNetwork", "QT_NETWORK_LIB"); InitQtModule(QtModule.Xml, "QtXml", "QT_XML_LIB"); InitQtModule(QtModule.Script, "QtScript", "QT_SCRIPT_LIB"); InitQtModule(QtModule.XmlPatterns, "QtXmlPatterns", "QT_XMLPATTERNS_LIB"); moduleInfo = InitQtModule(QtModule.ScriptTools, "QtScriptTools", "QT_SCRIPTTOOLS_LIB"); moduleInfo = InitQtModule(QtModule.Designer, "QtDesigner", new string[] { "QDESIGNER_EXPORT_WIDGETS", "QT_DESIGNER_LIB" }); moduleInfo = InitQtModule(QtModule.Main, "qtmain", ""); moduleInfo.proVarQT = null; moduleInfo.HasDLL = false; moduleInfo.IncludePath = null; moduleInfo = InitQtModule(QtModule.Test, "QtTest", "QT_TESTLIB_LIB"); moduleInfo.proVarQT = null; moduleInfo.proVarCONFIG = "qtestlib"; moduleInfo = InitQtModule(QtModule.Help, "QtHelp", "QT_HELP_LIB"); moduleInfo.proVarQT = null; moduleInfo.proVarCONFIG = "help"; moduleInfo = InitQtModule(QtModule.Phonon, "phonon", "QT_PHONON_LIB"); moduleInfo = InitQtModule(QtModule.WebKit, "QtWebKit", ""); moduleInfo.dependentModules.Add(QtModule.Phonon); moduleInfo = InitQtModule(QtModule.Svg, "QtSvg", "QT_SVG_LIB"); moduleInfo.dependentModules.Add(QtModule.Xml); moduleInfo = InitQtModule(QtModule.Declarative, "QtDeclarative", "QT_DECLARATIVE_LIB"); moduleInfo.dependentModules.Add(QtModule.Script); moduleInfo.dependentModules.Add(QtModule.Sql); moduleInfo.dependentModules.Add(QtModule.XmlPatterns); moduleInfo.dependentModules.Add(QtModule.Network); moduleInfo = InitQtModule(QtModule.OpenGL, "QtOpenGL", "QT_OPENGL_LIB"); moduleInfo.AdditionalLibraries.Add("opengl32.lib"); moduleInfo.AdditionalLibraries.Add("glu32.lib"); moduleInfo.AdditionalLibrariesWinCE.Add("libgles_cm.lib"); moduleInfo = InitQtModule(QtModule.ActiveQtS, "QtAxServer", "QAXSERVER"); moduleInfo.HasDLL = false; moduleInfo.IncludePath = "$(QTDIR)\\include\\ActiveQt"; moduleInfo.AdditionalLibraries.Add("Qt5AxBase.lib"); moduleInfo.AdditionalLibrariesDebug.Add("Qt5AxBased.lib"); moduleInfo = InitQtModule(QtModule.ActiveQtC, "QtAxContainer", ""); moduleInfo.HasDLL = false; moduleInfo.IncludePath = "$(QTDIR)\\include\\ActiveQt"; moduleInfo.AdditionalLibraries.Add("Qt5AxBase.lib"); moduleInfo.AdditionalLibrariesDebug.Add("Qt5AxBased.lib"); moduleInfo = InitQtModule(QtModule.UiTools, "QtUiTools", "QT_UITOOLS_LIB"); moduleInfo.dependentModules.Add(QtModule.Xml); moduleInfo.HasDLL = false; // Qt5 InitQtModule(QtModule.Widgets, "QtWidgets", "QT_WIDGETS_LIB"); moduleInfo = InitQtModule(QtModule.Gui, "QtGui", "QT_GUI_LIB"); moduleInfo.dependentModules.Add(QtModule.Widgets); InitQtModule(QtModule.ThreeD, "Qt3D", "QT_3D_LIB"); InitQtModule(QtModule.Location, "QtLocation", "QT_LOCATION_LIB"); InitQtModule(QtModule.Qml, "QtQml", "QT_QML_LIB"); moduleInfo = InitQtModule(QtModule.Bluetooth, "QtBluetooth", "QT_BLUETOOTH_LIB"); moduleInfo = InitQtModule(QtModule.Contacts, "QtContacts", "QT_CONTACTS_LIB"); moduleInfo = InitQtModule(QtModule.Organizer, "QtOrganizer", "QT_ORGANIZER_LIB"); InitQtModule(QtModule.PrintSupport, "QtPrintSupport", "QT_PRINTSUPPORT_LIB"); moduleInfo = InitQtModule(QtModule.PublishSubscribe, "QtPublishSubscribe", "QT_PUBLISHSUBSCRIBE_LIB"); moduleInfo = InitQtModule(QtModule.Sensors, "QtSensors", "QT_SENSORS_LIB"); moduleInfo = InitQtModule(QtModule.ServiceFramework, "QtServiceFramework", "QT_SERVICEFRAMEWORK_LIB"); moduleInfo = InitQtModule(QtModule.SystemInfo, "QtSystemInfo", "QT_SYSTEMINFO_LIB"); InitQtModule(QtModule.Quick, "QtQuick", "QT_QUICK_LIB"); InitQtModule(QtModule.ThreeDQuick, "Qt3DQuick", "QT_3DQUICK_LIB"); InitQtModule(QtModule.Versit, "QtVersit", "QT_VERSIT_LIB"); InitQtModule(QtModule.WebkitWidgets, "QtWebkitWidgets", "QT_WEBKITWIDGETS_LIB"); InitQtModule(QtModule.Concurrent, "QtConcurrent", "QT_CONCURRENT_LIB"); InitQtModule(QtModule.MultimediaWidgets, "QtMultimediaWidgets", "QT_MULTIMEDIAWIDGETS_LIB"); }
private QtModuleInfo InitQtModule(QtModule moduleId, string libraryPrefix, string[] defines) { QtModuleInfo moduleInfo = new QtModuleInfo(moduleId); moduleInfo.LibraryPrefix = libraryPrefix; moduleInfo.IncludePath = "$(QTDIR)\\include\\" + libraryPrefix; moduleInfo.Defines = new List<string>(); dictModulesByDLL.Add(libraryPrefix, moduleId); foreach (string str in defines) { if (string.IsNullOrEmpty(str)) continue; moduleInfo.Defines.Add(str); } dictModuleInfos.Add(moduleId, moduleInfo); if (libraryPrefix.StartsWith("Qt")) moduleInfo.proVarQT = libraryPrefix.Substring(2).ToLower(); else moduleInfo.proVarQT = libraryPrefix.ToLower(); return moduleInfo; }
private void RemoveDeploySettings(DeploymentToolWrapper deploymentTool, QtModule module, VCConfiguration config, QtModuleInfo moduleInfo) { if (moduleInfo == null) moduleInfo = QtModules.Instance.ModuleInformation(module); if (deploymentTool == null) deploymentTool = DeploymentToolWrapper.Create(config); if (deploymentTool == null) return; string destDir = deploymentTool.RemoteDirectory; const string qtSrcDir = "$(QTDIR)\\lib"; string filename = moduleInfo.GetDllFileName(IsDebugConfiguration(config)); if (deploymentTool.GetAdditionalFiles().IndexOf(filename) >= 0) deploymentTool.Remove(filename, qtSrcDir, destDir); // remove dependent modules foreach (QtModule dependentModule in moduleInfo.dependentModules) { if (!HasModule(dependentModule)) RemoveDeploySettings(deploymentTool, dependentModule, config, null); } }
private void AddDeploySettings(DeploymentToolWrapper deploymentTool, QtModule module, VCConfiguration config, QtModuleInfo moduleInfo, VersionInformation versionInfo) { // for static Qt builds it doesn't make sense // to add deployment settings for Qt modules if (versionInfo.IsStaticBuild()) return; if (moduleInfo == null) moduleInfo = QtModules.Instance.ModuleInformation(module); if (moduleInfo == null || !moduleInfo.HasDLL) return; if (deploymentTool == null) deploymentTool = DeploymentToolWrapper.Create(config); if (deploymentTool == null) return; string destDir = deploymentTool.RemoteDirectory; const string qtSrcDir = "$(QTDIR)\\lib"; string filename = moduleInfo.GetDllFileName(IsDebugConfiguration(config)); if (deploymentTool.GetAdditionalFiles().IndexOf(filename) < 0) deploymentTool.Add(filename, qtSrcDir, destDir); // add dependent modules foreach (QtModule dependentModule in moduleInfo.dependentModules) AddDeploySettings(deploymentTool, dependentModule, config, null, versionInfo); }
private QtModules() { try { QtModuleInfo moduleInfo = null; InitQtModule(QtModule.Core, "QtCore", "QT_CORE_LIB"); InitQtModule(QtModule.Multimedia, "QtMultimedia", "QT_MULTIMEDIA_LIB"); InitQtModule(QtModule.Sql, "QtSql", "QT_SQL_LIB"); InitQtModule(QtModule.Network, "QtNetwork", "QT_NETWORK_LIB"); InitQtModule(QtModule.Xml, "QtXml", "QT_XML_LIB"); InitQtModule(QtModule.Script, "QtScript", "QT_SCRIPT_LIB"); InitQtModule(QtModule.XmlPatterns, "QtXmlPatterns", "QT_XMLPATTERNS_LIB"); InitQtModule(QtModule.ScriptTools, "QtScriptTools", "QT_SCRIPTTOOLS_LIB"); InitQtModule(QtModule.Designer, "QtDesigner", new string[] { "QDESIGNER_EXPORT_WIDGETS", "QT_DESIGNER_LIB" }); moduleInfo = InitQtModule(QtModule.Main, "qtmain", ""); moduleInfo.proVarQT = null; moduleInfo.HasDLL = false; moduleInfo.IncludePath = null; moduleInfo = InitQtModule(QtModule.Test, "QtTest", "QT_TESTLIB_LIB"); moduleInfo.proVarQT = null; moduleInfo.proVarCONFIG = "qtestlib"; moduleInfo = InitQtModule(QtModule.Help, "QtHelp", "QT_HELP_LIB"); moduleInfo.proVarQT = null; moduleInfo.proVarCONFIG = "help"; moduleInfo = InitQtModule(QtModule.WebKit, "QtWebKit", ""); moduleInfo = InitQtModule(QtModule.Svg, "QtSvg", "QT_SVG_LIB"); moduleInfo.dependentModules.Add(QtModule.Xml); moduleInfo = InitQtModule(QtModule.Declarative, "QtDeclarative", "QT_DECLARATIVE_LIB"); moduleInfo.dependentModules.Add(QtModule.Script); moduleInfo.dependentModules.Add(QtModule.Sql); moduleInfo.dependentModules.Add(QtModule.XmlPatterns); moduleInfo.dependentModules.Add(QtModule.Network); moduleInfo = InitQtModule(QtModule.OpenGL, "QtOpenGL", "QT_OPENGL_LIB"); moduleInfo.AdditionalLibraries.Add("opengl32.lib"); moduleInfo.AdditionalLibraries.Add("glu32.lib"); moduleInfo.AdditionalLibrariesWinCE.Add("libgles_cm.lib"); moduleInfo = InitQtModule(QtModule.ActiveQtS, "QtAxServer", "QAXSERVER"); moduleInfo.HasDLL = false; moduleInfo.IncludePath = "$(QTDIR)\\include\\ActiveQt"; moduleInfo.AdditionalLibraries.Add("Qt5AxBase.lib"); moduleInfo.AdditionalLibrariesDebug.Add("Qt5AxBased.lib"); moduleInfo = InitQtModule(QtModule.ActiveQtC, "QtAxContainer", ""); moduleInfo.HasDLL = false; moduleInfo.IncludePath = "$(QTDIR)\\include\\ActiveQt"; moduleInfo.AdditionalLibraries.Add("Qt5AxBase.lib"); moduleInfo.AdditionalLibrariesDebug.Add("Qt5AxBased.lib"); moduleInfo = InitQtModule(QtModule.UiTools, "QtUiTools", "QT_UITOOLS_LIB"); moduleInfo.dependentModules.Add(QtModule.Xml); moduleInfo.HasDLL = false; // Qt5 InitQtModule(QtModule.Widgets, "QtWidgets", "QT_WIDGETS_LIB"); InitQtModule(QtModule.ThreeD, "Qt3D", "QT_3D_LIB"); InitQtModule(QtModule.Location, "QtLocation", "QT_LOCATION_LIB"); InitQtModule(QtModule.Qml, "QtQml", "QT_QML_LIB"); InitQtModule(QtModule.Bluetooth, "QtBluetooth", "QT_BLUETOOTH_LIB"); InitQtModule(QtModule.PrintSupport, "QtPrintSupport", "QT_PRINTSUPPORT_LIB"); InitQtModule(QtModule.Sensors, "QtSensors", "QT_SENSORS_LIB"); InitQtModule(QtModule.Quick, "QtQuick", "QT_QUICK_LIB"); //InitQtModule(QtModule.ThreeDQuick, "Qt3DQuick", "QT_3DQUICK_LIB"); InitQtModule(QtModule.WebkitWidgets, "QtWebkitWidgets", "QT_WEBKITWIDGETS_LIB"); InitQtModule(QtModule.Concurrent, "QtConcurrent", "QT_CONCURRENT_LIB"); InitQtModule(QtModule.MultimediaWidgets, "QtMultimediaWidgets", "QT_MULTIMEDIAWIDGETS_LIB"); InitQtModule(QtModule.Nfc, "QtNfc", "QT_NFC_LIB"); InitQtModule(QtModule.Positioning, "QtPositioning", "QT_POSITIONING_LIB"); InitQtModule(QtModule.SerialPort, "QtSerialPort", "QT_SERIALPORT_LIB"); InitQtModule(QtModule.WebChannel, "QtWebChannel", "QT_WEBCHANNEL_LIB"); InitQtModule(QtModule.WindowsExtras, "QtWinExtras", "QT_WINEXTRAS_LIB"); InitQtModule(QtModule.QuickWidgets, "QtQuickWidgets", "QT_QUICKWIDGETS_LIB"); moduleInfo = InitQtModule(QtModule.Gui, "QtGui", "QT_GUI_LIB"); moduleInfo.dependentModules.Add(QtModule.Widgets); moduleInfo = InitQtModule(QtModule.Enginio, "Enginio", "QT_ENGINIO_LIB"); moduleInfo.dependentModules.Add(QtModule.Network); moduleInfo = InitQtModule(QtModule.WebSockets, "QtWebSockets", "QT_WEBSOCKETS_LIB"); moduleInfo.dependentModules.Add(QtModule.Network); //Qt5.6+ InitQtModule(QtModule.Core3D, "Qt3DCore", "QT_3DCORE_LIB"); InitQtModule(QtModule.Extras3D, "Qt3DExtras", "QT_3DEXTRAS_LIB"); InitQtModule(QtModule.Input3D, "Qt3DInput", "QT_3DINPUT_LIB"); InitQtModule(QtModule.Logic3D, "Qt3DLogic", "QT_3DLOGIC_LIB"); InitQtModule(QtModule.Quick3D, "Qt3DQuick", "QT_3DQUICK_LIB"); InitQtModule(QtModule.QuickExtras3D, "Qt3DQuickExtras", "QT_3DQUICKEXTRAS_LIB"); InitQtModule(QtModule.QuickInput3D, "Qt3DQuickInput", "QT_3DQUICKINPUT_LIB"); InitQtModule(QtModule.QuickRender3D, "Qt3DQuickRender", "QT_3DQUICKRENDER_LIB"); InitQtModule(QtModule.Render3D, "Qt3DRender", "QT_3DRENDER_LIB"); InitQtModule(QtModule.Bootstrap, "QtBootstrap", "QT_BOOTSTRAP_LIB"); InitQtModule(QtModule.Charts, "QtCharts", "QT_CHARTS_LIB"); InitQtModule(QtModule.DataVisualization, "QtDataVisualization", "QT_DATAVISUALIZATION_LIB"); InitQtModule(QtModule.DBus, "QtDBus", "QT_DBUS_LIB"); InitQtModule(QtModule.PacketProtocol, "QtPacketProtocol", "QT_PACKETPROTOCOL_LIB"); InitQtModule(QtModule.PlatformSupport, "QtPlatformSupport", "QT_PLATFORMSUPPORT_LIB"); InitQtModule(QtModule.Purchasing, "QtPurchasing", "QT_PURCHASING_LIB"); InitQtModule(QtModule.QuickTest, "QtQuickTest", "QT_QUICKTEST_LIB"); InitQtModule(QtModule.QuickControls2, "QtQuickControls2", "QT_QUICKCONTROLS2_LIB"); InitQtModule(QtModule.QuickParticles, "QtQuickParticles", "QT_QUICKPARTICLES_LIB"); InitQtModule(QtModule.QuickTemplates, "QtQuickTemplates", "QT_QUICKTEMPLATES_LIB"); InitQtModule(QtModule.Scxml, "QtScxml", "QT_SCXML_LIB"); InitQtModule(QtModule.SerialBus, "QtSerialBus", "QT_SERIALBUS_LIB"); InitQtModule(QtModule.WebEngine, "QtWebEngine", "QT_WEBENGINE_LIB"); InitQtModule(QtModule.WebEngineCore, "QtWebEngineCore", "QT_WEBENGINECORE_LIB"); InitQtModule(QtModule.WebEngineWidgets, "QtWebEngineWidgets", "QT_WEBENGINEWIDGETS_LIB"); InitQtModule(QtModule.WebView, "QtWebView", "QT_WEBVIEW_LIB"); } catch (System.Exception exception) { System.Windows.Forms.MessageBox.Show("Exception: " + exception.Message); } }
private QtModules() { QtModuleInfo moduleInfo = null; InitQtModule(QtModule.Core, "QtCore", "QT_CORE_LIB"); InitQtModule(QtModule.Multimedia, "QtMultimedia", "QT_MULTIMEDIA_LIB"); InitQtModule(QtModule.Sql, "QtSql", "QT_SQL_LIB"); InitQtModule(QtModule.Network, "QtNetwork", "QT_NETWORK_LIB"); InitQtModule(QtModule.Xml, "QtXml", "QT_XML_LIB"); InitQtModule(QtModule.Script, "QtScript", "QT_SCRIPT_LIB"); InitQtModule(QtModule.XmlPatterns, "QtXmlPatterns", "QT_XMLPATTERNS_LIB"); moduleInfo = InitQtModule(QtModule.ScriptTools, "QtScriptTools", "QT_SCRIPTTOOLS_LIB"); moduleInfo = InitQtModule(QtModule.Designer, "QtDesigner", new string[] { "QDESIGNER_EXPORT_WIDGETS", "QT_DESIGNER_LIB" }); moduleInfo = InitQtModule(QtModule.Main, "qtmain", ""); moduleInfo.proVarQT = null; moduleInfo.HasDLL = false; moduleInfo.IncludePath = null; moduleInfo = InitQtModule(QtModule.Test, "QtTest", "QT_TESTLIB_LIB"); moduleInfo.proVarQT = null; moduleInfo.proVarCONFIG = "qtestlib"; moduleInfo = InitQtModule(QtModule.Help, "QtHelp", "QT_HELP_LIB"); moduleInfo.proVarQT = null; moduleInfo.proVarCONFIG = "help"; moduleInfo = InitQtModule(QtModule.WebKit, "QtWebKit", ""); moduleInfo = InitQtModule(QtModule.Svg, "QtSvg", "QT_SVG_LIB"); moduleInfo.dependentModules.Add(QtModule.Xml); moduleInfo = InitQtModule(QtModule.Declarative, "QtDeclarative", "QT_DECLARATIVE_LIB"); moduleInfo.dependentModules.Add(QtModule.Script); moduleInfo.dependentModules.Add(QtModule.Sql); moduleInfo.dependentModules.Add(QtModule.XmlPatterns); moduleInfo.dependentModules.Add(QtModule.Network); moduleInfo = InitQtModule(QtModule.OpenGL, "QtOpenGL", "QT_OPENGL_LIB"); moduleInfo.AdditionalLibraries.Add("opengl32.lib"); moduleInfo.AdditionalLibraries.Add("glu32.lib"); moduleInfo.AdditionalLibrariesWinCE.Add("libgles_cm.lib"); moduleInfo = InitQtModule(QtModule.ActiveQtS, "QtAxServer", "QAXSERVER"); moduleInfo.HasDLL = false; moduleInfo.IncludePath = "$(QTDIR)\\include\\ActiveQt"; moduleInfo.AdditionalLibraries.Add("Qt5AxBase.lib"); moduleInfo.AdditionalLibrariesDebug.Add("Qt5AxBased.lib"); moduleInfo = InitQtModule(QtModule.ActiveQtC, "QtAxContainer", ""); moduleInfo.HasDLL = false; moduleInfo.IncludePath = "$(QTDIR)\\include\\ActiveQt"; moduleInfo.AdditionalLibraries.Add("Qt5AxBase.lib"); moduleInfo.AdditionalLibrariesDebug.Add("Qt5AxBased.lib"); moduleInfo = InitQtModule(QtModule.UiTools, "QtUiTools", "QT_UITOOLS_LIB"); moduleInfo.dependentModules.Add(QtModule.Xml); moduleInfo.HasDLL = false; // Qt5 InitQtModule(QtModule.Widgets, "QtWidgets", "QT_WIDGETS_LIB"); moduleInfo = InitQtModule(QtModule.Gui, "QtGui", "QT_GUI_LIB"); moduleInfo.dependentModules.Add(QtModule.Widgets); InitQtModule(QtModule.ThreeD, "Qt3D", "QT_3D_LIB"); InitQtModule(QtModule.Location, "QtLocation", "QT_LOCATION_LIB"); InitQtModule(QtModule.Qml, "QtQml", "QT_QML_LIB"); moduleInfo = InitQtModule(QtModule.Bluetooth, "QtBluetooth", "QT_BLUETOOTH_LIB"); InitQtModule(QtModule.PrintSupport, "QtPrintSupport", "QT_PRINTSUPPORT_LIB"); moduleInfo = InitQtModule(QtModule.Sensors, "QtSensors", "QT_SENSORS_LIB"); InitQtModule(QtModule.Quick, "QtQuick", "QT_QUICK_LIB"); InitQtModule(QtModule.ThreeDQuick, "Qt3DQuick", "QT_3DQUICK_LIB"); InitQtModule(QtModule.WebkitWidgets, "QtWebkitWidgets", "QT_WEBKITWIDGETS_LIB"); InitQtModule(QtModule.Concurrent, "QtConcurrent", "QT_CONCURRENT_LIB"); InitQtModule(QtModule.MultimediaWidgets, "QtMultimediaWidgets", "QT_MULTIMEDIAWIDGETS_LIB"); moduleInfo = InitQtModule(QtModule.Enginio, "Enginio", "QT_ENGINIO_LIB"); moduleInfo.dependentModules.Add(QtModule.Network); InitQtModule(QtModule.Nfc, "QtNfc", "QT_NFC_LIB"); InitQtModule(QtModule.Positioning, "QtPositioning", "QT_POSITIONING_LIB"); InitQtModule(QtModule.SerialPort, "QtSerialPort", "QT_SERIALPORT_LIB"); InitQtModule(QtModule.WebChannel, "QtWebChannel", "QT_WEBCHANNEL_LIB"); moduleInfo = InitQtModule(QtModule.WebSockets, "QtWebSockets", "QT_WEBSOCKETS_LIB"); moduleInfo.dependentModules.Add(QtModule.Network); InitQtModule(QtModule.WindowsExtras, "QtWinExtras", "QT_WINEXTRAS_LIB"); InitQtModule(QtModule.QuickWidgets, "QtQuickWidgets", "QT_QUICKWIDGETS_LIB"); }