New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts #18054
Conversation
The title of this PR is a bit misleading, as there is only one commit out of 6 which is PVR related. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, also runtime tested and addons now only call their own contexts.
@phunkyfish did you have the chance to test migration API level 6.x.x -> 7.0.0? For me, the old addons silently (!) disappeared from list of installed addons. I had to manually reinstall all my pvr client addons. If I understand correctly, this PR should contain a fix for that. |
I did not as I had already built and installed the PR before it was merged my my addon were already the new version. |
But to test this we would need this merged and to release the pvr addons right? |
|
jenkins build this with addons please |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm, runtime-tested, "incompatible addon disabled" dialog appears now.
There seem by clang builds a problem that a interface function of other addons is called instead of correct addon.
Make only on begin and end this
This have the "C" alone on end for other languages and safe ABI.
This to allow both names xbmc.pvrclient (for updates e.g. Leia to Matrix) and kodi.pvrclient where now used. Further allow this also other names changes if needed.
Changes before affected all addons, there no need to increase min. but on all places and all have the version a bit increased.
4ac4fbb
to
3e835f6
Compare
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
[addon] prevent publicate of C++ functions / classes from headers, fix old to new pvr update and cleanup General parts
Description
This fix the stupid clang feature about export of C++ parts within addon headers, where a on addon A compiled class or function becomes public on addon B and this call A instead his.
Further is the General part cleaned up and "C++" / "C" parts separated.
Also is a change added to allow two different addon type ID's, to allow better change and update of it.
Addons not need a recompile! only want to have them in before the rest of PVR's becomes updated.
Motivation and Context
How Has This Been Tested?
Screenshots (if appropriate):
Types of change
Checklist: