pyqtdeploy: Adding complex third-party extensions

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

pyqtdeploy: Adding complex third-party extensions

Patrick Stinson-3
Hello,

What is the recommended way to add a rather complex Python/CPython extension module to a pyqtdeploy project? Is it to manually add the python files under “Other Packages” and the C files under “Other Extension Modules”? Or maybe add the C files under the qmake config?

I want to add pycryptodome, which uses both python and C files. It’s setup.py is attached.

-Patrick


_______________________________________________
PyQt mailing list    [hidden email]
https://www.riverbankcomputing.com/mailman/listinfo/pyqt

setup.py (16K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: pyqtdeploy: Adding complex third-party extensions

Phil Thompson-5
On 1 Feb 2019, at 8:50 am, Patrick Stinson <[hidden email]> wrote:
>
> Hello,
>
> What is the recommended way to add a rather complex Python/CPython extension module to a pyqtdeploy project? Is it to manually add the python files under “Other Packages” and the C files under “Other Extension Modules”?

Yes.

> Or maybe add the C files under the qmake config?
>
> I want to add pycryptodome, which uses both python and C files. It’s setup.py is attached.

I plan to tie pyqtdeploy and the sysroot closer together in a future release. A sysroot will contain meta-data about what it contains, its dependencies and (if necessary) how it is configured. You will then just be able to pick a package from a list as you currently do with the PyQt modules.

Phil
_______________________________________________
PyQt mailing list    [hidden email]
https://www.riverbankcomputing.com/mailman/listinfo/pyqt
Reply | Threaded
Open this post in threaded view
|

Re: pyqtdeploy: Adding complex third-party extensions

Patrick Stinson-3


> On Feb 2, 2019, at 1:46 AM, Phil Thompson <[hidden email]> wrote:
>
> On 1 Feb 2019, at 8:50 am, Patrick Stinson <[hidden email]> wrote:
>>
>> Hello,
>>
>> What is the recommended way to add a rather complex Python/CPython extension module to a pyqtdeploy project? Is it to manually add the python files under “Other Packages” and the C files under “Other Extension Modules”?
>
> Yes.
>
>> Or maybe add the C files under the qmake config?
>>
>> I want to add pycryptodome, which uses both python and C files. It’s setup.py is attached.
>
> I plan to tie pyqtdeploy and the sysroot closer together in a future release. A sysroot will contain meta-data about what it contains, its dependencies and (if necessary) how it is configured. You will then just be able to pick a package from a list as you currently do with the PyQt modules.
>

Wow, that is quite a stout goal. I will be happy to see how you implement it, especially considering how strict you have always appeared to be about principled design. Good luck!

> Phil

_______________________________________________
PyQt mailing list    [hidden email]
https://www.riverbankcomputing.com/mailman/listinfo/pyqt
Reply | Threaded
Open this post in threaded view
|

Re: pyqtdeploy: Adding complex third-party extensions

Patrick Stinson-3
Phil,

For reference while writing this feature, the Crypto module compiles.so binaries that it then dynamically loads the symbols for using ffi via its own python loader code. I imagine that adds complications to your plan.

-Patrick

> On Feb 2, 2019, at 3:53 AM, Patrick Stinson <[hidden email]> wrote:
>
>
>
>> On Feb 2, 2019, at 1:46 AM, Phil Thompson <[hidden email]> wrote:
>>
>> On 1 Feb 2019, at 8:50 am, Patrick Stinson <[hidden email]> wrote:
>>>
>>> Hello,
>>>
>>> What is the recommended way to add a rather complex Python/CPython extension module to a pyqtdeploy project? Is it to manually add the python files under “Other Packages” and the C files under “Other Extension Modules”?
>>
>> Yes.
>>
>>> Or maybe add the C files under the qmake config?
>>>
>>> I want to add pycryptodome, which uses both python and C files. It’s setup.py is attached.
>>
>> I plan to tie pyqtdeploy and the sysroot closer together in a future release. A sysroot will contain meta-data about what it contains, its dependencies and (if necessary) how it is configured. You will then just be able to pick a package from a list as you currently do with the PyQt modules.
>>
>
> Wow, that is quite a stout goal. I will be happy to see how you implement it, especially considering how strict you have always appeared to be about principled design. Good luck!
>
>> Phil
>
_______________________________________________
PyQt mailing list    [hidden email]
https://www.riverbankcomputing.com/mailman/listinfo/pyqt