From 8c1efefea1e4557cd322b50523c0d71d8ed87a76 Mon Sep 17 00:00:00 2001 From: Shyamnath Premnadh Date: Mon, 29 Jan 2024 12:18:41 +0100 Subject: Android Deployment: Explicit android group in config file - Distinguishes the changes fields as only relevant for Android Deployment. - This distinguishing group makes it clearer when we finally have iOS wheels. Task-number: PYSIDE-1612 Change-Id: I215d2deec0117ae855e6d9a061642984eccd36ef Reviewed-by: Cristian Maureira-Fredes Reviewed-by: Friedemann Kleint (cherry picked from commit e934ae1999c6510ae2ba3cc29547c839c1a1089b) Reviewed-by: Qt Cherry-pick Bot --- sources/pyside-tools/deploy_lib/android/android_config.py | 14 +++++++------- sources/pyside-tools/deploy_lib/default.spec | 4 +++- .../pyside6-android-deploy/test_pyside6_android_deploy.py | 6 +++--- 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/sources/pyside-tools/deploy_lib/android/android_config.py b/sources/pyside-tools/deploy_lib/android/android_config.py index 8ff16537b..442672a23 100644 --- a/sources/pyside-tools/deploy_lib/android/android_config.py +++ b/sources/pyside-tools/deploy_lib/android/android_config.py @@ -27,7 +27,7 @@ class AndroidConfig(Config): if android_data.wheel_pyside: self.wheel_pyside = android_data.wheel_pyside else: - wheel_pyside_temp = self.get_value("qt", "wheel_pyside") + wheel_pyside_temp = self.get_value("android", "wheel_pyside") if not wheel_pyside_temp: raise RuntimeError("[DEPLOY] Unable to find PySide6 Android wheel") self.wheel_pyside = Path(wheel_pyside_temp).resolve() @@ -35,7 +35,7 @@ class AndroidConfig(Config): if android_data.wheel_shiboken: self.wheel_shiboken = android_data.wheel_shiboken else: - wheel_shiboken_temp = self.get_value("qt", "wheel_shiboken") + wheel_shiboken_temp = self.get_value("android", "wheel_shiboken") if not wheel_shiboken_temp: raise RuntimeError("[DEPLOY] Unable to find shiboken6 Android wheel") self.wheel_shiboken = Path(wheel_shiboken_temp).resolve() @@ -104,8 +104,8 @@ class AndroidConfig(Config): self.local_libs = self.get_value("buildozer", "local_libs").split(",") self._qt_plugins = [] - if self.get_value("qt", "plugins"): - self._qt_plugins = self.get_value("qt", "plugins").split(",") + if self.get_value("android", "plugins"): + self._qt_plugins = self.get_value("android", "plugins").split(",") self._mode = self.get_value("buildozer", "mode") @@ -116,7 +116,7 @@ class AndroidConfig(Config): @qt_plugins.setter def qt_plugins(self, qt_plugins): self._qt_plugins = qt_plugins - self.set_value("qt", "plugins", ",".join(qt_plugins)) + self.set_value("android", "plugins", ",".join(qt_plugins)) @property def ndk_path(self): @@ -206,7 +206,7 @@ class AndroidConfig(Config): def wheel_pyside(self, wheel_pyside: Path): self._wheel_pyside = wheel_pyside.resolve() if wheel_pyside else None if self._wheel_pyside: - self.set_value("qt", "wheel_pyside", str(self._wheel_pyside)) + self.set_value("android", "wheel_pyside", str(self._wheel_pyside)) @property def wheel_shiboken(self) -> Path: @@ -216,7 +216,7 @@ class AndroidConfig(Config): def wheel_shiboken(self, wheel_shiboken: Path): self._wheel_shiboken = wheel_shiboken.resolve() if wheel_shiboken else None if self._wheel_shiboken: - self.set_value("qt", "wheel_shiboken", str(self._wheel_shiboken)) + self.set_value("android", "wheel_shiboken", str(self._wheel_shiboken)) def _find_and_set_pysidemodules(self): self.modules = find_pyside_modules(project_dir=self.project_dir, diff --git a/sources/pyside-tools/deploy_lib/default.spec b/sources/pyside-tools/deploy_lib/default.spec index d5f9e7c67..7ca2edfe7 100644 --- a/sources/pyside-tools/deploy_lib/default.spec +++ b/sources/pyside-tools/deploy_lib/default.spec @@ -35,12 +35,14 @@ android_packages = buildozer==1.5.0,cython==0.29.33 [qt] # Comma separated path to QML files required -# normally all the QML files are added automatically +# normally all the QML files required by the project are added automatically qml_files = # excluded qml plugin binaries excluded_qml_plugins = +[android] + # path to PySide wheel wheel_pyside = diff --git a/sources/pyside6/tests/tools/pyside6-android-deploy/test_pyside6_android_deploy.py b/sources/pyside6/tests/tools/pyside6-android-deploy/test_pyside6_android_deploy.py index c4506a46e..81c2c9a4a 100644 --- a/sources/pyside6/tests/tools/pyside6-android-deploy/test_pyside6_android_deploy.py +++ b/sources/pyside6/tests/tools/pyside6-android-deploy/test_pyside6_android_deploy.py @@ -114,9 +114,9 @@ class TestPySide6AndroidDeployWidgets(DeployTestBase): self.assertEqual(config_obj.get_value("app", "input_file"), "main.py") self.assertEqual(config_obj.get_value("python", "android_packages"), "buildozer==1.5.0,cython==0.29.33") - self.assertEqual(config_obj.get_value("qt", "wheel_pyside"), + self.assertEqual(config_obj.get_value("android", "wheel_pyside"), str(self.pyside_wheel.resolve())) - self.assertEqual(config_obj.get_value("qt", "wheel_shiboken"), + self.assertEqual(config_obj.get_value("android", "wheel_shiboken"), str(self.shiboken_wheel.resolve())) self.assertEqual(config_obj.get_value("buildozer", "mode"), "debug") self.assertEqual(config_obj.get_value("buildozer", "recipe_dir"), @@ -237,7 +237,7 @@ class TestPySide6AndroidDeployQml(DeployTestBase): self.assertEqual(config_obj.get_value("buildozer", "local_libs"), expected_local_libs) expected_qt_plugins = set(dependent_plugins) - obtained_qt_plugins = set(config_obj.get_value("qt", "plugins").split(",")) + obtained_qt_plugins = set(config_obj.get_value("android", "plugins").split(",")) self.assertEqual(expected_qt_plugins, obtained_qt_plugins) # test buildozer config file contents -- cgit v1.2.3