summaryrefslogtreecommitdiffstats
path: root/src/tools/windeployqt
Commit message (Collapse)AuthorAgeFilesLines
* windeployqt: Fix access of invalid iterators crashOliver Wolff2025-06-191-3/+6
| | | | | | | | | | | | | | We must not use a range based loop here as the container might be changed inside the loop which will invalidate the iterators which in turn might lead to a crash. While at it the QFileInfo used to obtain the binary's path was moved out of the loop as a small cleanup. Fixes: QTBUG-137763 Pick-to: 6.10 6.9 6.8 Change-Id: I86fb8b683fb98a897d0059ef1dc869e26b2c213f Reviewed-by: Joerg Bornemann <[email protected]>
* Adjust webengine resources deploymentMichal Klocek2025-05-071-7/+14
| | | | | | | | | | | In case of debug build install debug resources. The change reflects qtwebengine's deployment change: qtwebengine/76d317c082b2492cc1fe1fcf2afad26be5369d3f Task-number: QTBUG-131897 Pick-to: 6.9 6.8 Change-Id: I58fa8a36e88369dd29f03fb16060b88ba08abd86 Reviewed-by: Joerg Bornemann <[email protected]>
* windeployqt: Deploy Qt dependencies of local non Qt dependenciesOliver Wolff2025-04-101-12/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | Before this patch we ignored every non Qt dependency we encountered while scannig the binaries. That led to missing Qt dependencies for more complex setups. With this patch we also take "local non Qt dependencies" into consideration. One example would be: - A developer has a project that consists of an executable and a dll, where both are built/copied into the same folder before deployment - The dll has different/additional Qt dependencies The old approach just ignored these additional Qt dependencies. The new approach checks for these local dependencies and finds the dll in the same folder as the executable. In this case windeployqt will now also scan this dll (and other local dlls) for Qt dependencies and deploy these as well as their plugins. [ChangeLog][Tools][Windeployqt] windeployqt now takes local non Qt dependencies into consideration during deployment. Fixes: QTBUG-135079 Pick-to: 6.8 6.9 Change-Id: Ia916dea78c6a5707ccecb61d996a0b7490215798 Reviewed-by: Joerg Bornemann <[email protected]>
* windeployqt: Make "recursive plugin deployment" the defaultOliver Wolff2025-04-102-8/+1
| | | | | | | | | | | | | | | | | | 5010eda5345bdbfc12e134d6fb3ae5b7370e2185 added a command line options which made sure that plugins of dependent Qt modules were deployed. As these plugins are mandatory for proper functionality of these modules, this should be windeployqt's default. This change reflects this reality. Deploy plugins of dependent Qt libraries by default. The command line option was removed as opting out of this functionality does not make sense [ChangeLog][Tools][windeployqt] windeployqt now deploys plugins of all dependent Qt modules by default. "--include-soft-plugins" became default and the command line option was removed. Change-Id: Ifc5e4d24803b0398c249461f14f2e58562477c80 Reviewed-by: Joerg Bornemann <[email protected]>
* windeployqt: Fix typo in warning messageOliver Wolff2024-10-251-1/+1
| | | | | | | | Fixes: QTBUG-130476 Pick-to: 6.8 Change-Id: I8c5538d6ac58ce6dd72ea00921c1cf197dffd482 Reviewed-by: Michal Klocek <[email protected]> Reviewed-by: Wladimir Leuschner <[email protected]>
* Use QIODevice::readLineInto() instead of readLine() in loopsRym Bouabid2024-09-201-4/+3
| | | | | | | | | | | | | | Most of the callers of QIODevice::readLine() are reading a device line by line in a loop. Instead, use one QByteArray and modify it in every iteration using QIODevice::readLineInto(). Use a QByteArrayView instead of QByteArray when calling trimmed() as it's an expensive operation. Fixes: QTBUG-103108 Change-Id: Ic1af487a2fbf352cc21d76a41717944d034d3709 Reviewed-by: Marc Mutz <[email protected]> Reviewed-by: Thiago Macieira <[email protected]>
* windeployqt: deployWebProcess: Copy QtWebEngineProcess.exe to `--libdir`Orkun Tokdemir2024-08-151-2/+6
| | | | | | | | | | | | | | | | When the executable is deployed using the CMake deployment API, `QtWebEngineProcess.exe` should be copied into the same folder where the deployed project executable is, which is 'bin'. https://doc.qt.io/qt-6/qtwebengine-deploying.html#deploying-qt-webengine-processes In the previous implementation, the `--dir` argument is used as the target directory. This commit changes the target directory for `QtWebEngineProcess.exe` from `--dir` to `--libdir`. Pick-to: 6.7 6.8 Fixes: QTBUG-126572 Change-Id: I07abfc789d439ac66a9ff2706de52a05d80e9b51 Reviewed-by: Alexandru Croitor <[email protected]> Reviewed-by: Oliver Wolff <[email protected]>
* Windeployqt: fix exclusion option for Internal modulesTimothée Keller2024-08-141-6/+6
| | | | | | | | | | | The "Internal" suffix was added to module names, but only in the help text and not in the option's name. Change this by adding the "Internal" suffix to the option name in general, rather than just the help text. Fixes: QTBUG-122774 Pick-to: 6.8 6.7 Change-Id: Iaffcde4768a8bf70ba4b8e52cec4ea6490e20bfc Reviewed-by: Oliver Wolff <[email protected]>
* windeployqt: Use QProcess instead of an ad hoc reimplementationJoerg Bornemann2024-08-071-249/+20
| | | | | | | | | | We had a simplified reimplementation of QProcess in windeployqt. It existed, because "there's no QProcess in the bootstrap lib". Nowadays, windeployqt does not use the bootstraplib anymore, and we can just use QProcess. Change-Id: I31af4c0f1e647084f11f94d8ad2c13b4bf09a130 Reviewed-by: Oliver Wolff <[email protected]>
* windeployqt: Fix typo in mkspec detectionOliver Wolff2024-07-031-1/+1
| | | | | | | | | | | | | When adding support for ARM64 hosts a typo sneaked into the mkspec detection. This typo broke deployment for mingw builds. This patch amends 81984807b30b1865a98fbd928a29d5ab6d8f5375 Pick-to: 6.8 6.7 Fixes: QTBUG-126775 Change-Id: I37ee3617dc6b92520250da3ff0665ce06cea1cb8 Reviewed-by: David Schulz <[email protected]> Reviewed-by: Wladimir Leuschner <[email protected]>
* QDirListing: add flags to handle entries filteringAhmad Samir2024-06-271-1/+2
| | | | | | | | | | | | | | | | | | By extending IteratorFlag so that it replaces both QDir::Filter and QDirIterator::IteratorFlag enums, but with better defaults (based on how QDir/Iterator is used in 15-20 years worth of code in Qt and KDE). Make the QDirListing(QDir ~~) ctor private, also change it to use QDirIterator::IteratatorFlags; it will be used to port existing code. If QDir is ported to use QDirListing::IteratorFlags, instead of QDir::Filters, a public QDirListing(QDir) constructor can then be added. Pick-to: 6.8 Fixes: QTBUG-125504 Task-number: QTBUG-125859 Change-Id: Ide4ff8279f554029ac30d0579b0e8373ed4337f7 Reviewed-by: Thiago Macieira <[email protected]>
* windeployqt: MSVC: Add support for ARM64 hostsOliver Wolff2024-05-141-1/+21
| | | | | | | | | | | | | Windeployqt deployed all the non Qt libraries in their x64 versions as it was not aware of the host it was running on. This check needs to be done before any deployment happens. Current support is limited for MSVC. mingw/clang might be done in followup commits. Pick-to: 6.7 Change-Id: I70fd6ad66c9cacfc6ff5b109f214a142b8b6d5f8 Reviewed-by: Joerg Bornemann <[email protected]>
* windeployqt: Deploy target dlls for directx and vc runtimeOliver Wolff2024-04-262-6/+13
| | | | | | | | | | | When deploying for a cross compiled target we should deploy the target versions of directx and compiler runtime dlls. Thus a new platform was added to utils to be able to reflect this distinction. Fixes: QTBUG-124719 Pick-to: 6.7 Change-Id: I4dd797804fa871d76d56f8775b188d4306b51e5a Reviewed-by: Joerg Bornemann <[email protected]>
* Make deployment of openssl plugin optionalOliver Wolff2024-03-211-5/+77
| | | | | | | | | | | | | | | Qt's openssl plugin is dependent on openssl libraries. Users should make a conscious decision about deployment of the plugin and the corresponing libraries so deployment of that functionality is now opt in. [ChangeLog][Tools][Windeployqt] Deployment of openssl plugins is now optional. For proper deployment of openssl related functionality pass in --openssl-root to make sure that openssl libraries are also deployed. Fixes: QTBUG-117394 Change-Id: Iad43c7666b9af491f7695783b4e23a811256515b Reviewed-by: Miguel Costa <[email protected]>
* Windeployqt: prevent output for --list optionTimothée Keller2024-03-151-4/+5
| | | | | | | | | | Some outputs weren't guarded with the optVerboseLevel which caused them to occur even with the --list option. Add a guard to prevent for that. Fixes: QTBUG-122257 Pick-to: 6.7 6.6 Change-Id: Ide060cda4ac6f9b4470ca608120e2b8aa4819de5 Reviewed-by: Oliver Wolff <[email protected]>
* Revert "Windeployqt: remove unused library list"Timothée Keller2024-03-141-1/+12
| | | | | | | | | | This reverts commit a05abede682db4ab20a7c1d9eb45a487e91d6a78. Reason for revert: Causes QTBUG-123325 Change-Id: I251b67798af3d768db6f2836b52ded558c0c8211 Pick-to: 6.7 Reviewed-by: Oliver Wolff <[email protected]>
* Windeployqt: improve multiple directory warningTimothée Keller2024-03-141-3/+5
| | | | | | | | | | | | | The multipleDirs warning was added to avoid surprises related to where windeployqt would deploy files when using binaries from different paths. To do this properly, make the warning message more meaningful, and suppress the warning when the --dir option is specified, i.e. when the user is already explicitly choosing where to deploy. Pick-to: 6.7 6.6 Change-Id: Ie2984f4af740776c568610370d49ad4ff85ffff0 Reviewed-by: David Faure <[email protected]> Reviewed-by: Oliver Wolff <[email protected]>
* Windeployqt: introduce --include-soft-plugins command line optionMichał Policht2024-03-072-21/+44
| | | | | | | | | | | | | | | Some plugins may have dependencies on additional Qt modules. This is handled by deployPlugin() function. Existing code does not look for plugins associated with these modules however, because the loop iterates over plugin directories only once. This change introduces an option that will make windeployqt take into account all such soft dependencies by making recursive calls to findQtPlugins(). Pick-to: 6.7 Task-number: QTBUG-121583 Change-Id: Id6535426a47f9b92a3035e864dfdd7577b82c9ad Reviewed-by: Oliver Wolff <[email protected]> Reviewed-by: Timothée Keller <[email protected]>
* Port to QDirListingAhmad Samir2024-03-031-5/+3
| | | | | | | | | | | Use QDirListing in the Bootstrap build instead of QDirIterator. Drive-by changes: - more const variables - use emplace_back() instead of append() where appropriate Change-Id: Ie1f0d03856e557c4bfabfff38a87edc7da86d091 Reviewed-by: Thiago Macieira <[email protected]>
* Fix spelling of FFmpeg in (end-)user-visible string of windeployqtVolker Hilsheimer2024-03-011-2/+2
| | | | | | | | | It's two capital "FF", lowercase "mpeg". Pick-to: 6.7 6.6 6.5 Change-Id: I4eca719fa6ce0133e3ddb6163c81e24493b378e3 Reviewed-by: Kai Köhne <[email protected]> Reviewed-by: Artem Dyomin <[email protected]>
* Remove extra semi-colonsTasuku Suzuki2024-02-061-1/+1
| | | | | Change-Id: I92fddb36cd136fd1bd627955f15d0559b9942d7e Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Windeployqt: also allow platform-type plugin selectionTimothée Keller2024-01-161-11/+11
| | | | | | | | | | | Including/excluding plugins of the platforms type did not work, since windeployqt was only ever looking for 'qwindows'. Keep the default behavior of deploying 'qwindows.dll', but also allow users to add/remove platform-type plugins. Pick-to: 6.7 6.6 Change-Id: I4062a71939224d1462896d95a2541e8caced399d Reviewed-by: Oliver Wolff <[email protected]>
* Windeployqt: remove unused library listTimothée Keller2024-01-151-12/+1
| | | | | | | | | | | | When windeployqt had hard coded module information, it had result.directlyUsedQtLibraries, and result.usedQtLibraries. The latter was meant to add in the modules that weren't defined. Since we now read available modules directly, there is no need for result.usedQtLibraries since it should always be identical to result.directlyUsedQtLibraries. Pick-to: 6.7 Change-Id: I60e38c176b11626c1ef5a844e80bc701a9eed189 Reviewed-by: Oliver Wolff <[email protected]>
* Windeployqt: add output for determining plugin/module relationTimothée Keller2024-01-151-2/+2
| | | | | | | | | | | | Windeployqt has a pull all in approach to plugins. This can require some modules to be deployed despite being unrelated to the application's dependencies. An output is added to provide information to better reflect what windeployqt is doing in this regard. Task-number: QTBUG-117910 Pick-to: 6.7 6.6 6.5 Change-Id: Iabf89e0faca862a90c0fcd46e5675dd43655be1d Reviewed-by: Oliver Wolff <[email protected]>
* Deploy FFmpeg dlls with windeployqtJøger Hansegård2023-12-181-0/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we add support for dynamically linked FFmpeg, some FFmpeg libraries will be available in the bin directory. windeployqt should then copy these libraries to the application directory if the ffmpeg media backend is included. This patch extends windeployqt with support for deploying these FFmpeg libraries. Potential issues: 1. This patch hard codes the FFmpeg library names that we currently depend on, such as 'avcodec' or 'swresample'. 2. We don't take version number of the FFmpeg libs into account. This is done to reduce the maintenance burden when we upgrade FFmpeg, and should not be a problem as long as we have a single version of FFmpeg in the online installer. 3. Finding the library names is a bit quadratic in complexity, bound by the number of libraries in the bin folder, but should not be too slow. 4. We need to update windeployqt if we add or remove ffmpeg libraries. An alternative would be to identify all dlls that the ffmpeg media plugin depends on, and then deploy all files that exists in the bin directory instead of hard-coding library names. This would, however be a bit more fragile because we would not be able to warn if a library was missing. Note that this patch is a workaround. It is needed because Qt does not properly support CMake's runtime dependency features with platform plugins. Even if we added FFmpeg binaries to the dependencies set, they would not be visible at install time. Change-Id: I4b23e50429d16e8487bf43ce9982ff37d02ffbe2 Reviewed-by: Artem Dyomin <[email protected]>
* tools: port away from QPairMarc Mutz2023-12-142-1/+2
| | | | | | | | Pick-to: 6.7 Task-number: QTBUG-115841 Change-Id: If122a1c17b1b4092b115521cec814ce3b508cd80 Reviewed-by: Qt CI Bot <[email protected]> Reviewed-by: Ahmad Samir <[email protected]>
* windeployqt: Proper error message when qtpaths.bat/.exe could not be runOliver Wolff2023-12-112-9/+13
| | | | | | | | | If qtpaths cannt be found windeployqt should complain about that fact. Previously it complained about "Unsupported platform". Pick-to: 6.7 6.6 6.5 Change-Id: I4db954633c31ceac69c4d3c0e55cbe942c3272fd Reviewed-by: Joerg Bornemann <[email protected]>
* Windeployqt: Fix -v/--version optionTimothée Keller2023-11-281-2/+9
| | | | | | | | | | | While the version option was already there, it had no output attached to it, and simply generated the whole help text. Make sure that if the -v/--version option is set, only the tool version is outputted. Fixes: QTBUG-119511 Pick-to: 6.6 Change-Id: I59ee620333c02eb0a031cd05ac3170216cd034fa Reviewed-by: Oliver Wolff <[email protected]>
* windeployqt: improve MSVC runtime detectionYuhang Zhao2023-11-021-3/+13
| | | | | | | | | | | | | | | MSVC runtime dlls also include vccorelibXXX.dll, concrtXXX.dll, beside these traditional dlls, it's also possible to link against the new UCRT runtime, the ucrtbase.dll (and possibly including the API Set dlls), so we need to add some more checks to make windeployqt more robust. I've tested a custom Qt build locally, which I managed to make it link to ucrtbase.dll only, and this code works fine. Pick-to: 6.6 Change-Id: I00bc8666d8850aac279b8747465879e39348ba02 Reviewed-by: Oliver Wolff <[email protected]> Reviewed-by: Timothée Keller <[email protected]>
* Windeployqt: add options to deploy/block pluginsTimothée Keller2023-10-314-29/+269
| | | | | | | | | | | | Some plugin types are pulled in by default by certain modules. Give users the option to add/skip plugins and/or their types. [ChangeLog][Tools][Windeployqt] Windeployqt now has options that allow for custom plugin deployment. Users can include or exclude them, either individually, or by type. Fixes: QTBUG-117910 Pick-to: 6.6 Change-Id: I85235783dcd814396f184912269cd5976717b2dd Reviewed-by: Oliver Wolff <[email protected]>
* windeployqt: Don't copy files from unneeded QML modulesArno Rehn2023-10-102-4/+24
| | | | | | | | | | | | | | | | | | | Previously, windeployqt would recurse into subdirectories when copying QML modules, even if those subdirectories were a nested QML module that was not needed for deployment. Since most QML modules are nested in the QtQuick and QtQml modules, the old code effectively always copied *all* QML modules. This patch adds guards that prevent recursing into subdirectories if those subdirectories represent QML modules. These nested modules will still be deployed, but only if referenced from the QML application (as determined by qmlimportscanner). Fixes: QTBUG-117459 Pick-to: 6.6 Change-Id: I4c0dfc15956ff40a0e8caec3fa334df10cc92ccd Reviewed-by: Timothée Keller <[email protected]> Reviewed-by: Joerg Bornemann <[email protected]>
* Windeployqt: fix typoTimothée Keller2023-10-061-1/+1
| | | | | | | | | | Change "qpaths" to "qtpaths" since the former is not a valid option. Fixes: QTBUG-117817 Pick-to: 6.6 6.5 Change-Id: Ib8c8c80f31c1c54747340442c6bf3185c7c69001 Reviewed-by: Wladimir Leuschner <[email protected]> Reviewed-by: Joerg Bornemann <[email protected]>
* [windeployqt] Copy v8 context snapshotAnu Aliyas2023-09-121-5/+7
| | | | | | | | | - Copy v8 context snapshot while creating package with windeployqt Fixes: QTBUG-116777 Change-Id: I707e1d147ebf0ba5ee63dd25218e23ac850efe45 Pick-to: 6.6 Reviewed-by: Michael Brüning <[email protected]>
* Remove elfreader and other unix leftovers from windeployqtOliver Wolff2023-08-226-654/+18
| | | | | | | | | | | Back then elfreader and other unix functionality was added for the purpose of having one generic deployment tool but it was never used. Remove the code to be more clear on what to expect. Pick-to: 6.6 Change-Id: I2b7a759de04afe0c5fb210ad65f1c86e32934f18 Reviewed-by: Timothée Keller <[email protected]> Reviewed-by: Fabian Kosmale <[email protected]>
* windeployqt: Do not deploy insighttracker plugin by defaultOliver Wolff2023-07-271-4/+25
| | | | | | | | | | | | | | | | Qt insight's TP is using plugin type "generic" so that insight plugins can be deployed for every Qt application. As "generic" plugins are part of QtGui windeployqt deploys these if a dependency to QtGui is found. As defaulting to a deployment of insight plugins might cause confusion among users, we make deployment of these plugins explicit if the module is available. Pick-to: 6.6 6.5 6.2 5.15 Change-Id: I9d2a8595373d5a15b7afbeaf7174226563b1cb6f Reviewed-by: Friedemann Kleint <[email protected]> Reviewed-by: Timothée Keller <[email protected]> Reviewed-by: Volker Hilsheimer <[email protected]>
* Windeployqt: also add internal modules to module listTimothée Keller2023-07-122-2/+4
| | | | | | | | | | | | | | Not adding internal modules to the windeployqt module list makes it give off nonsensical warnings, and can force the deployment of debug libraries despite a --release tag. Add them in to prevent this, and shave off the "Private" part of the module name if it exists to maintain compatibility. Fixes: QTBUG-114854 Pick-to: 6.6 6.5 Change-Id: I884fdc495f340ad20ba6257587da170d6c1a1415 Reviewed-by: Joerg Bornemann <[email protected]> Reviewed-by: Oliver Wolff <[email protected]>
* Update windeployqt with dxcLaszlo Agocs2023-06-273-0/+66
| | | | | | | | Basically an adjusted version of findD3dCompiler() that looks for two, not one, DLLs. The logic is the same, with added support for ARM64, though this has not been verified in practice. Fixes: QTBUG-114789 Change-Id: I1fec51fc98a5146e2770e13cf2f3b160ac4282d6 Reviewed-by: Jonas Karlsson <[email protected]>
* Add TRY_RUN_FLAGS argument to customize the TRY_RUN commandAmir Masoud Abdol2023-06-151-1/+0
| | | | | | | | | | | | | | | | | | Some of our tools don't have the `-h`, or `-v` flag, or it could be that the `-v` flag also prints the entire `--help` as well, e.g., `androiddeployqt`. When running in Jenkins, this may lead to a message box being shown and consequently stopping the build. By customizing the flag per tool, and limiting the TRY_RUN to tools that support `-v` or `--version`, we can avoid this. Also removed TRY_RUN from `macdeployqt` which doesn't need it anyway. Amend 41b32cd2c4706fa280fc779d5dec132ee9edf0f6 Pick-to: 6.5.2 6.5 6.6 Fixes: QTBUG-114530 Change-Id: I78e3344d2553c0050c285ae86f2310bd373c6c57 Reviewed-by: Joerg Bornemann <[email protected]>
* Add TRY_RUN to host toolsAmir Masoud Abdol2023-06-081-0/+1
| | | | | | | | | | | | On Windows, we will try to run our host tools after a successful build. If the build fails because of a missing DLL, we will be able to throw an error with some direction on what might be the cause, and how to resolve it. Pick-to: 6.5 6.6 Fixes: QTBUG-113273 Change-Id: Iba548829bc41fbee95cef288faaf7edca118ee33 Reviewed-by: Alexandru Croitor <[email protected]>
* windeployqt: improve debug detectionYuhang Zhao2023-04-261-10/+6
| | | | | | | | | | MSVC binaries can also be stripped and according to my experiments they still work normally. So we should not limit this check to MinGW only. Change-Id: I026d75a38b94f309ad695cf8f700ed3ac160dd87 Reviewed-by: Oliver Wolff <[email protected]> Reviewed-by: Timothée Keller <[email protected]>
* Windeployqt: Add a check for LLVM-MinGW runtimesTimothée Keller2023-04-201-20/+36
| | | | | | | | | | | | | | | The compilerRuntimeLibs now pays attention to if the user is running MinGW, or LLVM-MinGW, before deploying the corresponding runtimes from the Qt binary folder, or from the path if it cannot find any in the Qt binaries. [ChangeLog][QtTools][Windeployqt] Windeployqt now supports LLVM-MingGW runtimes. Pick-to: 6.5 Change-Id: I9c464cdb933795e491992f5d1adb18bcc7d69f02 Reviewed-by: Oliver Wolff <[email protected]> Reviewed-by: Yuhang Zhao <[email protected]>
* Windeployqt: change MinGW dll's import locationTimothée Keller2023-04-171-11/+16
| | | | | | | | | | | | The MinGW runtimes were imported through the PATH, which creates mismatches with the expected libraries that are installed directly through Qt. Check if those can be used instead, and issue a warning (and default to PATH) if not. Fixes: QTBUG-112448 Pick-to: 6.5 Change-Id: I061baabb6d6188bd0817b68c39a5d9f04ff391b5 Reviewed-by: Oliver Wolff <[email protected]>
* windeployqt: Add option to skip plugin types during deploymentOliver Wolff2023-04-121-9/+21
| | | | | | | | Pick-to: 6.5 Fixes: QTBUG-112317 Change-Id: Idb294105ee2006a36067d3967af1b7b55b375bd7 Reviewed-by: Timothée Keller <[email protected]> Reviewed-by: Joerg Bornemann <[email protected]>
* windeployqt: Remove special handling of virtual keyboard pluginOliver Wolff2023-04-121-18/+0
| | | | | | | | | | | | virtualkeyboard is a qt module and thus covered by the "no-<module" switch. The special handling is no longer needed with the more dynamic approach of handling Qt modules. Pick-to: 6.5 Change-Id: Ice6e30261e60b484669748411e019764bbdeaa55 Reviewed-by: Yuhang Zhao <[email protected]> Reviewed-by: Timothée Keller <[email protected]> Reviewed-by: Joerg Bornemann <[email protected]>
* Windeployqt: change qtModule return value to prevent invalid modulesTimothée Keller2023-04-061-8/+14
| | | | | | | | | | | | When the change from quint64 to bitsets was originally made, the return value of the qtModule function was not adapted. Where returning 0 was fine for the quint64 values which started at 1, returning 0 now adds the first module instead of adding nothing to the used/required modules Fixes: QTBUG-111984 Pick-to: 6.5 Change-Id: Id1e2b3237a36335ec5071180b4c73f99d5eb5c8d Reviewed-by: Oliver Wolff <[email protected]>
* Windeployqt: Prevent '.' and '..' from being added to lconvertTimothée Keller2023-04-061-1/+6
| | | | | | | | | | | | | | If windeployqt is not able to retrieve any translation information from the catalog, the translationNameFilters will be empty. This allows the '.' and '..' folders to be passed to lconvert which in turn causes an error for the whole deployment. Added a check for the filters being empty, and a warning in case we have to preemptively return from the translation deployment. Fixes: QTBUG-112204 Pick-to: 6.5 Change-Id: I0d114186e630cc3696250006fa093c4c596eb40d Reviewed-by: Oliver Wolff <[email protected]>
* Windeployqt: Simplify infix detection for --libinfix buildsTimothée Keller2023-04-061-18/+5
| | | | | | | | | Removed fetching the infix through the QtCore Module, since it is already provided by qtpaths -query Pick-to: 6.5 Change-Id: I844305fc66b21af094724dd3f516078447ee1dd2 Reviewed-by: Oliver Wolff <[email protected]>
* windeployqt: Make determineDebugAndDependentLibs more readableOliver Wolff2023-03-311-20/+35
| | | | | | Change-Id: Ib06fb5f2bce9afe1bd799c3ff96abff5ddb063a9 Reviewed-by: Yuhang Zhao <[email protected]> Reviewed-by: Oliver Wolff <[email protected]>
* Windeployqt: prevent directory creation for dryrunsTimothée Keller2023-03-243-15/+17
| | | | | | | | | Added a check for dryruns when creating directories, to properly reflect expected behavior. Pick-to: 6.5 Change-Id: I72063e4d32302d304f8174701e38e275b404706b Reviewed-by: Oliver Wolff <[email protected]>
* windeployqt: allow user set translation directoryYuhang Zhao2023-03-241-1/+9
| | | | | | | | | | Add the "translationdir" option, which allows the user to choose a different directory to deploy the translation files. Pick-to: 6.5 6.4 Change-Id: Iacf2031abb6d992e6765c02f232f81317b784720 Reviewed-by: Timothée Keller <[email protected]> Reviewed-by: Oliver Wolff <[email protected]>