Skip to content
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

[addons] fix binary addon lib name for iOS #16411

Merged
merged 1 commit into from
Aug 4, 2019

Conversation

AlwinEsch
Copy link
Member

Description

By 609d390 was this forget and overseen from me by review, this fix the name for iOS to have equal with the other.

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):

Types of change

  • Bug fix (non-breaking change which fixes an issue)
  • Clean up (non-breaking change which removes non-working, unmaintained functionality)
  • Improvement (non-breaking change which improves existing functionality)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that will cause existing functionality to change)
  • Cosmetic change (non-breaking change that doesn't touch code)
  • None of the above (please explain below)

Checklist:

  • My code follows the Code Guidelines of this project
  • My change requires a change to the documentation, either Doxygen or wiki
  • I have updated the documentation accordingly
  • I have read the Contributing document
  • I have added tests to cover my change
  • All new and existing tests passed

@AlwinEsch AlwinEsch added this to the Matrix 19.0-alpha 1 milestone Jul 28, 2019
@fuzzard
Copy link
Contributor

fuzzard commented Jul 28, 2019

Ive got a potential issue with this library section. But not entirely sure im across how the library_xxx is used, so disregard if im incorrect in my assumptions.

In the kodi system addons (audioencoder.kodi.builtin., screensaver.xbmc.builtin.) the library name is set based off @CORE_SYSTEM_NAME@. For platforms like rbpi, the code in CBinaryAddonType::GetPlatformLibraryName will never actually match library_rbpi, and will fall through to library_linux. This is the same for why the ios change is needed after your cpluff rework, as core_system_name is darwin_embedded, and core_platform_name is ios.

My proposal would be to change the addons to not use @Core_system_name@, but to actually use @core_platform_name@ (or core_platform_name_lc). This would then mean the match against library_rbpi would/could succeed, and also, you can then leave the ios match for library_ios.

For the linux gbm/x11 matches that you would get, you can just leave the existing fall through to match against library_linux.

This same situation was already in place prior to your cpluff rework, but for some reason it didnt fault during the addon startup, and im guessing that it was mostly by pure luck, not by design.

What im not familiar with is how 3rd party addons interact/use this library_xxx, or if they do at all. If anyone can enlighten me, that would be greatly appreciated just for my own curiosity/info

@AlwinEsch
Copy link
Member Author

From my side it might make maybe sense to remove it completely and use only library=.
And leave the check by <platform>@PLATFORM@</platform>.

Note @PLATFORM@ is on external addons and equal to @CORE_SYSTEM_NAME@, which is not correct enough and maybe improve and use the @PLATFORM_TAG@ (https://github.com/xbmc/xbmc/blob/master/cmake/scripts/common/PrepareEnv.cmake#L39) on cmake.

@AlwinEsch AlwinEsch merged commit 714683a into xbmc:master Aug 4, 2019
@AlwinEsch AlwinEsch deleted the fix-bin-addon branch August 4, 2019 17:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants