22#include < string>
33#include < tuple>
44#include < vector>
5+ #include < stdexcept>
56
67#pragma once
78
@@ -17,7 +18,7 @@ class QtModule {
1718};
1819
1920// TODO: the list of translation file prefixes is probably incomplete
20- static const std::vector<QtModule> QtModules = {
21+ static const std::vector<QtModule> Qt5Modules = {
2122 {" 3danimation" , " libQt53DAnimation" , " " },
2223 {" 3dcore" , " libQt53DCore" , " " },
2324 {" 3dextras" , " libQt53DExtras" , " " },
@@ -80,3 +81,99 @@ static const std::vector<QtModule> QtModules = {
8081 {" xmlpatterns" , " libQt5XmlPatterns" , " qtxmlpatterns" },
8182 {" xml" , " libQt5Xml" , " qtbase" },
8283};
84+
85+ static const std::vector<QtModule> Qt6Modules = {
86+ {" concurrent" , " libQt6Concurrent" , " qtbase" },
87+ {" core5compat" , " libQt6Core5Compat" , " qtbase" },
88+ {" core" , " libQt6Core" , " qtbase" },
89+ {" dbus" , " libQt6DBus" , " " },
90+ {" designercomponents" , " libQt6DesignerComponents" , " " },
91+ {" designer" , " libQt6Designer" , " " },
92+ {" eglfsdeviceintegration" , " libQt6EglFSDeviceIntegration" , " " },
93+ {" eglfskmssupport" , " libQt6EglFsKmsSupport" , " " },
94+ {" gui" , " libQt6Gui" , " qtbase" },
95+ {" help" , " libQt6Help" , " qt_help" },
96+ {" network" , " libQt6Network" , " qtbase" },
97+ {" opengl" , " libQt6OpenGL" , " " },
98+ {" openglwidgets" , " libQt6OpenGLWidgets" , " " },
99+ {" printsupport" , " libQt6PrintSupport" , " " },
100+ {" qmlmodels" , " libQt6QmlModels" , " " },
101+ {" qml" , " libQt6Qml" , " qtdeclarative" },
102+ {" qmlworkerscript" , " libQt6QmlWorkerScript" , " " },
103+ {" quick3dassetimport" , " libQt6Quick3DAssetImport" , " " },
104+ {" quick3druntimerender" , " libQt6Quick3DRuntimeRender" , " " },
105+ {" quick3d" , " libQt6Quick3D" , " " },
106+ {" quick3dutils" , " libQt6Quick3DUtils" , " " },
107+ {" quickcontrols2impl" , " libQt6QuickControls2Impl" , " " },
108+ {" quickcontrols2" , " libQt6QuickControls2" , " " },
109+ {" quickparticles" , " libQt6QuickParticles" , " " },
110+ {" quickshapes" , " libQt6QuickShapes" , " " },
111+ {" quick" , " libQt6Quick" , " qtdeclarative" },
112+ {" quicktemplates2" , " libQt6QuickTemplates2" , " " },
113+ {" quicktest" , " libQt6QuickTest" , " " },
114+ {" quickwidgets" , " libQt6QuickWidgets" , " " },
115+ {" shadertools" , " libQt6ShaderTools" , " " },
116+ {" sql" , " libQt6Sql" , " qtbase" },
117+ {" svg" , " libQt6Svg" , " " },
118+ {" svgwidgets" , " libQt6SvgWidgets" , " " },
119+ {" test" , " libQt6Test" , " qtbase" },
120+ {" uitools" , " libQt6UiTools" , " " },
121+ {" waylandclient" , " libQt6WaylandClient" , " " },
122+ {" waylandcompositor" , " libQt6WaylandCompositor" , " " },
123+ {" widgets" , " libQt6Widgets" , " qtbase" },
124+ {" xcbqpa" , " libQt6XcbQpa" , " " },
125+ {" xml" , " libQt6Xml" , " qtbase" },
126+
127+ /* Not Included in Qt6.0.0, maybe some of them will be added back in 6.1, 6.2
128+
129+ {"3danimation", "libQt63DAnimation", ""},
130+ {"3dcore", "libQt63DCore", ""},
131+ {"3dextras", "libQt63DExtras", ""},
132+ {"3dinput", "libQt63DInput", ""},
133+ {"3dlogic", "libQt63DLogic", ""},
134+ {"3drender", "libQt63DRender", ""},
135+ {"3dquickanimation", "libQt63DQuickAnimation", ""},
136+ {"3dquickextras", "libQt63DQuickExtras", ""},
137+ {"3dquickinput", "libQt63DQuickInput", ""},
138+ {"3dquickrender", "libQt63DQuickRender", ""},
139+ {"3dquickscene2d", "libQt63DQuickScene2D", ""},
140+ {"3dquick", "libQt63DQuick", ""},
141+ {"bluetooth", "libQt6Bluetooth", ""},
142+ {"clucene", "libQt6CLucene", "qt_help"},
143+ {"declarative", "libQt6Declarative", "qtquick1"},
144+ {"gamepad", "libQt6Gamepad", ""},
145+ {"location", "libQt6Location", ""},
146+ {"multimediagsttools", "libQt6MultimediaGstTools", "qtmultimedia"},
147+ {"multimediaquick", "libQt6MultimediaQuick", "qtmultimedia"},
148+ {"multimedia", "libQt6Multimedia", "qtmultimedia"},
149+ {"multimediawidgets", "libQt6MultimediaWidgets", "qtmultimedia"},
150+ {"nfc", "libQt6Nfc", ""},
151+ {"positioning", "libQt6Positioning", ""},
152+ {"remoteobjects", "libQt6RemoteObjects", ""},
153+ {"script", "libQt6Script", "qtscript"},
154+ {"scripttools", "libQt6ScriptTools", "qtscript"},
155+ {"scxml", "libQt6Scxml", ""},
156+ {"sensors", "libQt6Sensors", ""},
157+ {"serialbus", "libQt6SerialBus", ""},
158+ {"serialport", "libQt6SerialPort", "qtserialport"},
159+ {"texttospeech", "libQt6TextToSpeech", ""},
160+ {"webchannel", "libQt6WebChannel", ""},
161+ {"webenginecore", "libQt6WebEngineCore", ""},
162+ {"webengine", "libQt6WebEngine", "qtwebengine"},
163+ {"webenginewidgets", "libQt6WebEngineWidgets", ""},
164+ {"websockets", "libQt6WebSockets", "qtwebsockets"},
165+ {"x11extras", "libQt6X11Extras", ""},
166+ {"xmlpatterns", "libQt6XmlPatterns", "qtxmlpatterns"},
167+ */
168+
169+ };
170+
171+ inline const std::vector<QtModule>& getQtModules (const int version) {
172+ if (version == 5 ) {
173+ return Qt5Modules;
174+ }
175+ else if (version == 6 ) {
176+ return Qt6Modules;
177+ }
178+ throw std::runtime_error (" Unknown Qt version: " + std::to_string (version));
179+ }
0 commit comments