diff options
author | Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> | 2024-05-14 15:27:45 +0200 |
---|---|---|
committer | Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> | 2024-05-21 15:11:58 +0200 |
commit | d4cb8f66423c28cd0567bc2fe39c58a5769623e5 (patch) | |
tree | cbb80cdcaf43598ebfbefb003aa235d5e90d88ad /sources/pyside-tools | |
parent | b829abcc7b2e9fcdb027e653a6a52cdb0706de11 (diff) |
Desktop Deployment: ignore .qsb, .webp, .cpp.o and .qen files
- These files have to be ignored in the deployment process because
Nuitka is not able to recognize these file formats and considers
them to the dlls instead of data files.
- The missing .webp files breaks the usage of BusyIndicator type of
QtQuick Controls. Hence, a bug report for that is raised in Nuitka
: https://github.com/Nuitka/Nuitka/issues/2854
- Adapt tests
Pick-to: 6.7 6.5
Change-Id: Ic4b3b6c65e059ec618a26361caa62b9d7c608690
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'sources/pyside-tools')
-rw-r--r-- | sources/pyside-tools/deploy_lib/nuitka_helper.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/sources/pyside-tools/deploy_lib/nuitka_helper.py b/sources/pyside-tools/deploy_lib/nuitka_helper.py index d202db25e..ac9a83f3f 100644 --- a/sources/pyside-tools/deploy_lib/nuitka_helper.py +++ b/sources/pyside-tools/deploy_lib/nuitka_helper.py @@ -35,6 +35,12 @@ class Nuitka: "generic" # plugins that error with Nuitka ] + # .webp are considered to be dlls by Nuitka instead of data files causing + # the packaging to fail + # https://github.com/Nuitka/Nuitka/issues/2854 + # TODO: Remove .webp when the issue is fixed + self.files_to_ignore = [".cpp.o", ".qsb", ".webp"] + @staticmethod def icon_option(): if sys.platform == "linux": @@ -81,6 +87,14 @@ class Nuitka: dll_name = plugin.replace("Qt", f"Qt{MAJOR_VERSION}") qml_args.append(f"--noinclude-dlls={prefix}{dll_name}*") + # Exclude .qen json files from QtQuickEffectMaker + # These files are not relevant for PySide6 applications + qml_args.append("--noinclude-dlls=*/qml/QtQuickEffectMaker/*") + + # Exclude files that cannot be processed by Nuitka + for file in self.files_to_ignore: + extra_args.append(f"--noinclude-dlls=*{file}") + output_dir = source_file.parent / "deployment" if not dry_run: output_dir.mkdir(parents=True, exist_ok=True) |