Closed themarpe closed 8 months ago
Thanks, and I'm sorry for not responding to your previous PR – it touched a number of complex areas, so it wasn't easy for me to find time to review. This one looks a lot easier to handle.
One of those areas which has become a bit simpler in the last few days is actually installing and running CMake. Please merge from the master branch to pick up these:
I've removed the special case for cmake
in the build
requirements section of meta.yaml, and made CMake just another package which is installed from PyPI. This means that recipes which list CMake in their meta.yaml file are now required to give a CMake version number. However, it turns out that many Python packages that use CMake already list it in their pyproject.toml file, in which case the meta.yaml entry should just be removed.
build-wheel.py now sets the CMAKE_TOOLCHAIN_FILE
environment variable which is recognized by CMake 3.21 and later. So that can probably be removed from the patch.
Also, to add a new package, we need a test script to verify that it works. Please do the following:
To circumvent that, package had to be patch in the background to accomodate for older NDA
What does "NDA" mean?
Thanks for the comments! Addressed & force pushed!
To circumvent that, package had to be patch in the background to accomodate for older NDA
What does "NDA" mean?
Sorry, meant NDK here.
Added test case, tested against
python3.8
arm64-v8a
It looks like since you explicitly added libpython to the link in the CMakeLists file, the changes to the toolchain file were no longer necessary, so I've removed them.
The cmake-example recipe had to be fixed in the same way – removing the --no-undefined
flag allowed it to build, but without the libpython link, the module still couldn't be loaded at runtime.
I was unable to add these changes to this PR because you apparently disabled the "Allow edits from maintainers" option when you created it. Please leave this enabled in future PRs.
This package is now in the public repository for Python 3.8 - 3.12. Thanks for the contribution!
This contains a couple of parts to get everything in place:
This is an iteration/simplification of: https://github.com/chaquo/chaquopy/pull/1010, to not require bump of API. To circumvent that, package had to be patch in the background to accomodate for older NDA and explicit link to -lpython3.x had to be added as a patch.
Otherwise a more straightforward PR and still functions as expected