[
https://issues.apache.org/jira/browse/DISPATCH-2272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17483786#comment-17483786
]
ASF GitHub Bot commented on DISPATCH-2272:
------------------------------------------
jiridanek commented on pull request #1413:
URL: https://github.com/apache/qpid-dispatch/pull/1413#issuecomment-1024238237
> > @kgiusti that we'd need devs to be consistent with the use of the new
QD_EXPORT qualifier when adding/modifying new declarations in the codebase.
>
> Yes, that is true. There is a chunk of code in dispatch which IMO tries to
resolve all C functions during startup to discover any possible issues. There
are functions missing here, mostly things added for protocol adaptors.
>
>
https://github.com/apache/qpid-dispatch/blob/main/python/qpid_dispatch_internal/dispatch.py#L51-L79
For example, `qd_entity_refresh_allocator` is not in the list above, where
function signatures get configured. It is not immediately obvious from grepping
the codebase this gets called from Python, because the function name is
computed at runtime:
```python
fname = "qd_entity_refresh_" + entity_type.short_name.replace('.', '_')
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
> Mark all functions called from Python with QD_EXPORT
> ----------------------------------------------------
>
> Key: DISPATCH-2272
> URL: https://issues.apache.org/jira/browse/DISPATCH-2272
> Project: Qpid Dispatch
> Issue Type: Sub-task
> Affects Versions: 1.17.0
> Reporter: Jiri Daněk
> Priority: Major
>
> Dispatch requires that all C functions it calls be exported, because it looks
> them up as if in a dynamic library. This is important on Windows, where
> functions are unexported by default.
> On Windows, use {{__declspec(dllexport)}} to turn on exporting. Without it,
> the functions will not be found from Python.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]