diff options
| author | Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> | 2023-02-08 16:58:39 +0100 |
|---|---|---|
| committer | Shyamnath Premnadh <shyamnath.premnadh@qt.io> | 2023-03-31 13:29:32 +0200 |
| commit | 95abfa776411b6d7cd4296adf63bc7abce2270b6 (patch) | |
| tree | 74e51c8c6d28044a60011158215919ab223d6fa5 /build_scripts/platforms/unix.py | |
| parent | 94b30c7207bea2467f0d7e41e99af27ecc749ed5 (diff) | |
Deployment: New pyside6-android-deploy tool
- Preliminary support for PySide6 Android deployment
- Uses jinja2 to create PySide6 and shiboken6 recipes, to be used
by buildozer when python_for_android builds the app distribution
- Classes for Buildozer config interaction
- Run deployment to android. Typical command looks like:
"""
pyside6-android-deploy
--wheel-pyside=./PySide6-6.5.0a1-6.5.0-cp37-abi3-android_x86_64.whl
--wheel-shiboken=./shiboken6-6.5.0a1-6.5.0-cp37-abi3-android_x86_64.whl
--name=stringlistmodel
"""
- New entrypoint for pyside6-android-deploy
- Helper functinos for Android Deployment
- Remove unused function main_py_exists()
- Added the new files to deploy.pyproject
- Remove dry_run argument from install_python_dependencies()
- new Python packages added in requirements.txt to enable the
deploy and cross compile tool
Note: python-for-android uses my local fork. This will be changed
once it is merged into python-for-android dev.
Task-number: PYSIDE-1612
Pick-to: 6.5
Change-Id: I7eb96fa5507a476b4e86ec0195a5e9869f0f85fd
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'build_scripts/platforms/unix.py')
| -rw-r--r-- | build_scripts/platforms/unix.py | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/build_scripts/platforms/unix.py b/build_scripts/platforms/unix.py index 0c26297e2..98c2945ce 100644 --- a/build_scripts/platforms/unix.py +++ b/build_scripts/platforms/unix.py @@ -119,14 +119,24 @@ def prepare_packages_posix(pyside_build, _vars, cross_build=False): "{st_build_dir}/{st_package_name}/scripts/__init__.py", _vars=_vars) + scripts = ["pyside_tool.py", "metaobjectdump.py", "project.py", "qml.py", + "qtpy2cpp.py", "deploy.py"] + + script_dirs = ["qtpy2cpp_lib", "deploy_lib", "project"] + + if sys.platform.startswith("linux"): + scripts.append("android_deploy.py") + script_dirs.extend(["deploy_lib/android", + "deploy_lib/android/recipes/PySide6", + "deploy_lib/android/recipes/shiboken6",]) + # For setting up setuptools entry points - for script in ("pyside_tool.py", "metaobjectdump.py", "project.py", "qml.py", - "qtpy2cpp.py", "deploy.py"): + for script in scripts: src = f"{{install_dir}}/bin/{script}" target = f"{{st_build_dir}}/{{st_package_name}}/scripts/{script}" copyfile(src, target, force=False, _vars=_vars) - for script_dir in ("qtpy2cpp_lib", "deploy_lib", "project"): + for script_dir in script_dirs: src = f"{{install_dir}}/bin/{script_dir}" target = f"{{st_build_dir}}/{{st_package_name}}/scripts/{script_dir}" # Exclude subdirectory tests |
