| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
- Upgrade Android NDK to r27c, similar to Qt base.
- Api level 35 is the new default.
- Remove the option mpopcnt for QT_COMPILER_FLAGS for arm64, because
this option does not apply to arm64 and errors with api-level of 35.
Pick-to: 6.8 6.8.3 6.9
Task-number: PYSIDE-1612
Change-Id: Icf8f2853ba23fd7d4c83c275947efbee0a54198d
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Updates de524f258c3980814fbc724ed61816894403fa3f. Basically the
download part should be outside the 'if download_only' block
because otherwise the ndk_path and sdk_path would remain None
when ndk_path and sdk_path are not provided via command line
arguments.
- Adds some error handling to the NDK and Command Line Tools
download functions.
Pick-to: 6.8
Task-number: PYSIDE-1612
Change-Id: I545f148caf1c185a1a2cbeeebd5aad3a5359d52b
Reviewed-by: Friedemann Kleint <[email protected]>
Reviewed-by: Cristian Maureira-Fredes <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add option to only download SDK and NDK which is used for users
of pyside6-android-deploy.
- The download code will eventually be also copied into
pyside6-android-deploy.
Pick-to: 6.8
Task-number: PYSIDE-1612
Change-Id: Ife9738f2a10868a639e3a4949db6101b8e4a553c
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Split coin instructions into separate files specifically for
Desktop, Android and common instructions
- Make changes to cross_compilation script to support coin.
- new 'coin' cli argument introduced. This is required because
Qt installation from CI servers differ from the Qt installation
from the maintenance tool.
- Add a shell script to override the Python used for cross-compilation
for the macOS 13 x86_64 system.
This system is responsible for building the arm64 Android wheels.
The system by default uses Python 3.10. However, python-for-android
requires Python 3.11. Hence, we manually install python 3.11 into
a non default path and use it for cross-compilation.
The default Python of the aforementioned system has been updated to
3.11, but system still uses qt5#6.7. Hence it is not reflected yet.
When ac72bb1d489f7442fe8d9aa168298a94ff62d941 is merged, we will
finally get 3.11 and the need for this script can be removed.
- Add markupsafe==2.0.1 to the requirements.txt file. This is required
to prevent an error while installing Jinja2.
ToDo: Tag Jinja2 version so that this requirements can possibly be
removed.
- Currently only x86_64 and arm64 wheels are produced since they are
the most important. Most Android devices these days are arm64. This
can be expanded to also include x86, but armv7 requires a Windows
host and that is currently not possible with the CI. For armv7 wheels,
users will have to build the wheels themselves using the provided
cross compilation Python script.
Task-number: PYSIDE-1612
Task-number: PYSIDE-2766
Change-Id: I8f15a85887e207a5c6605fd8696d15b4646fb2fd
Reviewed-by: Simo Fält <[email protected]>
|
|
|
|
|
|
|
|
| |
Add a future statement to all Python source files.
Task-number: PYSIDE-2786
Change-Id: Icd6688c7795a9e16fdcaa829686d57792df27690
Reviewed-by: Adrian Herrmann <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Additionally, also move setting Python_SOABI manually for Android to
where FindPython CMake module is called. This also aids in naming the
wheel correctly.
Pick-to: 6.7
Task-number: PYSIDE-2766
Change-Id: I73c089d31e2ee629f3ed676965fca27d53882110
Reviewed-by: Friedemann Kleint <[email protected]>
Reviewed-by: Cristian Maureira-Fredes <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- first of many patches to support macOS host for Qfp Android
cross-compilation.
- Use config.guess present in cpython repository to guess canonical
name of the host system. This sets up build for hosts other than
linux.
- As a drive by, update the default api level to 26 to sync with Qt
minimum version 6.7.0.
Pick-to: 6.7
Task-number: PYSIDE-2766
Change-Id: Ifcf0921776e6a682d5724f439739ed098ccc6ef3
Reviewed-by: Adrian Herrmann <[email protected]>
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove the use of patchelf to set the SONAME of the libpython shared
library.
This can be done during the build process of CPython for Android
by setting the INSTSONAME variable in the Makefile.
- In addition, remove the redundant parameters passed to make install.
Pick-to: 6.7
Task-number: PYSIDE-1612
Change-Id: Ia18a1480a676abb89ed1afa3250f3745fffedbdd
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
| |
- deployment is anyway tied to Python 3.11. No point in having the
--limited-api option.
Task-number: PYSIDE-1612
Change-Id: Ia12fe60fe3bbb828664bb8c8ba16b3adf0130252
Reviewed-by: Cristian Maureira-Fredes <[email protected]>
|
|
|
|
|
|
|
|
|
| |
- Amends 07d3c8dc71f8c5102cb37e95aa1f2caa35cff115
- As a drive-by, also remove --unity option which is now default
Task-number: PYSIDE-1612
Change-Id: Ie26afd7351edb94e63f096740bd1d20e1d705005
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- python-for-android target python is now upgrade to 3.11 -
https://github.com/kivy/python-for-android/pull/2850. This constrains
us to update to 3.11 to resolve linker issues for shiboken and PySide
binaries.
- The also helps for CI wheel creation since the Python version in our
CI system is 3.11.
- As a drive-by remove designer plugins from Android wheels.
Task-number: PYSIDE-1612
Change-Id: I8c75d4d4567b6830e26a2d9a24db90592f6dc03d
Reviewed-by: Adrian Herrmann <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Supports creating wheels for all 4 Android platforms in one single
run.
- The earlier --plat-name option is now optional and takes multiple
platform names. If the option is not specified, then wheels are
built for all the Android platforms.
Pick-to: 6.6
Fixes: PYSIDE-2550
Task-number: PYSIDE-1612
Change-Id: I003e34046a88e792dde89a4d224918b5608111aa
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- There were a couple of errors when building Android wheels for this
platform mostly caused due to having an extra "eabi" for all the
clang compilers, but also that the CMAKE_HOST_PROCESSOR name was
wrongly specified.
- The api_level passed while creating the cross_compile.sh script was
also wrong as this should always be a number.
- The CMake FindPython module returns Python_SOABI as empty for armv7a
due to a possible bug in the FindPython module. The Python_SOABI is
obtained by running `python3-config --extension-suffix`.
python3-config be a script can also be run on the host platform and
hence for armv7a, the Python_SOABI can be explicitly specified to
workaround the CMake bug.
Pick-to: 6.6
Task-number: PYSIDE-1612
Change-Id: I3515db730b8c4f283f4c9f1d2e78fbc9d1aa903a
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Instead of creating a temporary directory and adding toolchain files,
cross-compiled Python etc., these are now stored in
.pyside6-deploy-cache and are cached.
- -apic option removed. Since cross-compiled Python is now by default
added to .pyside6-deploy-cache, this option can be removed.
- Run `distclean` on the cloned CPython each time Python is
cross-compiled. This lays the foundation for multi-architecture
support.
- Add a cli option --clean-cache to clean .pyside6-deploy-cache. More
control is given with this option to clean only specific folders or
files.
- Remove unsued variable qt_plat_name.
Pick-to: 6.6
Task-number: PYSIDE-1612
Change-Id: Iaa0e35e49e0bf9650b97c87d2b8db3c6c86e0d5c
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
- removed --ignore-git and --skip-docs
- Fix some flake8 warnings
Pick-to: 6.6
Task-number: PYSIDE-1612
Change-Id: I76994ddf2f5c26f86ac8d6c2e422ac3764b09c01
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
| |
Pick-to: 6.6
Change-Id: Id6e9cdbc7c0b763e8bbb4b7e8dc3ab568b65ebf8
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
| |
- default is now r25c
Pick-to: 6.6
Change-Id: Iff109351a52452a68f6e841be25b2ca35e2ce29d
Reviewed-by: Adrian Herrmann <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Enable automatic download of Android NDK and SDK for creating
Android PySide6 and shiboken6 wheels. Earlier, the user was
required to manually download it and supply as a command line
argument.
- They are downloaded into the HOME directory of the user into the
folder .pyside6_android_deploy. This is also similar to buildozer
which downloads them into .buildozer.
- The downloaded NDK is set to r25c, same as buildozer. The latest
Android SDK packages are downloaded.
- For the deployment tool, incase the NDK and SDK path are not
provided either through the command line or through the configuration
.spec file, the it will look for the NDK and SDK inside
.pyside6_android_deploy, before falling back to the default Android
NDK and SDK that buildozer supplies. buildozer will download them.
- As a addition, a small code rearranging is also done, along with
changing the deprecated subprocess.call() to subprocess.run().
Task-number: PYSIDE-1612
Change-Id: Ie8d51f8c7634b5b320b1dce2d4164985cbfbaaca
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
| |
- enables unity build for building Android wheels
Task-number: PYSIDE-1612
Change-Id: Ie13632da64b331a6687874956debbb5db49f6e05
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
| |
- remove --no-examples option to align with
ffb87075e3c4ea4b0a2dd15321af8c1921e33164
Task-number: PYSIDE-1612
Change-Id: Ia181330cd662ce2b353dfb0eff4bf69e09be50d0
Reviewed-by: Friedemann Kleint <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
- ANDROID_SDK_ROOT has to be set for compiling the essential Android
java classes into Qt6AndroidBindings.jar. This .jar file will be
shipped with the Android wheels.
Task-number: PYSIDE-1612
Change-Id: I496f7578a6e104d947e6d643993a645c887151b4
Reviewed-by: Cristian Maureira-Fredes <[email protected]>
|
|
|
|
|
|
|
|
|
| |
- uses a cross compiled Python to build Qt for Python wheels for
a specified Android target platform
Task-number: PYSIDE-1612
Change-Id: I3200e3cc749ef687ca62c0093065fbb23cd74cc8
Reviewed-by: Cristian Maureira-Fredes <[email protected]>
|
|
- script to cross compile Python for Android
- Downloads CPython 3.9. For Python cross compilation, the host
Python should match the target Python. python_for_android
project packages the 3.9.9 interpreter along with the python
application
- Python script creates used jinja2 to create a bash script which
run ./configure on CPython with various options
Task-number: PYSIDE-1612
Change-Id: Ia50811d6f89a1ac6e8acaf5d7e9f3841a2851e3f
Reviewed-by: Cristian Maureira-Fredes <[email protected]>
|