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

Pull requests summary #55

Closed
sy6sy2 opened this issue Apr 30, 2019 · 40 comments
Closed

Pull requests summary #55

sy6sy2 opened this issue Apr 30, 2019 · 40 comments

Comments

@sy6sy2
Copy link
Owner

sy6sy2 commented Apr 30, 2019

Disclaimer:

Kodi 19 for Apple TV is still in development and many things do not work yet. If you want a daily Kodi app please follow this tutorial. If you really want to try Kodi 19 from one of the above branches (maybe to find any bug or to help in the development), be sure to have the necessary skills to do it and do not expect any "basic" support here. And last but not least, please do not share any generated deb from this branches! Official Kodi 19 version for Apple TV will be available for end users sooner or later, please be patient and use Kodi 17.

Just a summary to follow our current workflow/plan (I will try to keep it updated with all references) with the needed order.

  1. [Apple TV] Tools and dependencies support - [Apple TV] Tools and dependencies support xbmc/xbmc#15919

    • Status: merged
    • Description: Add tvOS support to build tools and decencies
    • Change:
      • Add tvOS to tools/depends/configure.ac (OS is set to ios and TARGET_PLATFORM is set to appletvos)
      • Fix OpenSSL tvOS build
      • Add doc for tvOS
      • Add Jenkins file conf to build dependencies for tvOS
  2. [iOS] backport audio sink from MrMC - [iOS] backport audio sink from MrMC xbmc/xbmc#16015

    • Status: open
    • Description: Backport of iOS audio sink from MrMC project. Removes dependency on legacy AudioToolbox framework (namely, AudioSession* functions) in favour of AVFoundation framework.
    • Change:
      • File xbmc/cores/AudioEngine/Sinks/AESinkDARWINIOS.mm
  3. [iOS] remove some legacy code - [iOS] remove some legacy code xbmc/xbmc#16017

    • Status: merged
    • Description: Removes runtime checks for class/method presence that now always evaluate to true and pre-iOS 6 orientation code.
    • Change:
      • Files in xbmc/platform/darwin/ios/
  4. [ios] Move keyboard and keyboardview to ios-common - [ios] Move keyboard and keyboardview to ios-common xbmc/xbmc#16018

    • Status: merged
    • Description: Common keyboard related code moved to ios-common
    • Change:
      • Moved common keyboard files sued by both iOS and tvOS in ios-common folder
  5. [ios] change to darwin_embedded from ios for CORE_SYSTEM_NAME + platform defines - [ios] change to darwin_embedded from ios for CORE_SYSTEM_NAME + platform defines xbmc/xbmc#16039

  6. [Apple TV] tvOS support for Kodi (WIP) - [Apple TV] tvOS support for Kodi (WIP) xbmc/xbmc#15956

    • Status: open
    • Description: Add support for tvOS to Kodi
    • Change:
      • Usage of CORE_SYSTEM_NAME = darwin_embedded and CORE_PLATFORM_NAME = tvos
      • Usage of TARGET_DARWIN_EMBEDED and TARGET_DARWIN_TVOS
      • Toolchain
      • Specific tvOS files
  7. [iOS] migrate to Launch Screen storyboard - [iOS] migrate to Launch Screen storyboard xbmc/xbmc#16160

  8. [ios] enable cmakebuildsys to generate xcodeproject - [ios/cmakebuildsys] Add features to cmakebuildsys + jenkins ios xcodebuild xbmc/xbmc#16259

    • Status: merged
    • Description: Adds generator option (GEN) for cmakebuildsys.
      Updated ios build docs to use cmakebuildsys for xcode/xcodebuild build instructions. Also includes support building binary addons.
  9. [iOS] separate storage provider - [iOS] separate storage provider xbmc/xbmc#16374

    • Status: merged
    • Description: Splits DarwinStorageProvider into OSX and iOS implementation and also adds free/total space display to iOS.
  10. [darwin] convert Objective-C code to ARC - [darwin] convert Objective-C code to ARC xbmc/xbmc#16399

    • Status: merged
    • Description: This PR converts macOS and iOS objc code to ARC (Automated Reference Counting). Also, to be compatible with ARC, old hack to intercept hardware keyboard arrows using private API has been replaced with the SDK-provided solution.
  11. [kodi-platform] Update kodi-platform sha for PR29 - [kodi-platform] Update kodi-platform sha for PR29 xbmc/xbmc#16404

  12. [addon] fix ios runtime failure after PR 14908 - [addon] fix ios runtime failure after PR 14908 xbmc/xbmc#16397

  13. [p8-platform] Update p8-platform sha for PR5 - [p8-platform] Update p8-platform sha for PR5 xbmc/xbmc#16417

  14. [settings/cosmetic] Replace "computer" by "device" in setting help text - [settings/cosmetic] Replace "computer" by "device" in setting help text xbmc/xbmc#16487

Feel free to ask me to modify this description!

@fuzzard
Copy link

fuzzard commented Apr 30, 2019

For 4 i have a branch based off master with only ios changes

https://github.com/fuzzard/xbmc/commits/master_darwin-embedded

Just doing a full ios build to make sure no silly mistakes, then ill PR to master

@sy6sy2
Copy link
Owner Author

sy6sy2 commented Apr 30, 2019

Do you mean for point 5.?

@phunkyfish
Copy link
Collaborator

phunkyfish commented Apr 30, 2019

Ya, point 5 make sense. As you already have a PR for 4 and it’s merged 😉

Do you think they will accept 5 without the tvOS PR? Also does this change effect binary addons in any way?

@phunkyfish
Copy link
Collaborator

phunkyfish commented Apr 30, 2019

Also, are you proposing making changes like this:

#include "platform/darwin/ios-common/IOSKeyboard.h"

EDIT: answered myself, just takes longer to figure out from a tiny phone screen (missing my laptop!).

This is really nice work. Even just sifting through your branch @fuzzard the code layout/directory structure makes sense. I can’t say that about before this PR!

@phunkyfish
Copy link
Collaborator

It will mean binary addon changes however.

@sy6sy2
Copy link
Owner Author

sy6sy2 commented Apr 30, 2019

Why the PR number 5 would not be accepted as such?
For me the PR 5 is just here as a "pre-PR" before adding tvOS change.
So with PR 5 we need to be able to build and run Kodi for iOS without any addition of tvOS code.
And PR 6 only add tvOS code with the least possible change on iOS code.

Concerning binary addon, I don't think PR 5 will break binary addon build because the iOS toolchain need to set both TARGET_DARWIN_IOS and TARGET_DARWIN_EMBEDED BUT we will still have to change binary addon code to use TARGET_DARWIN_EMBEDED else we will have problem with tvOS toolchain.

Hoping not to be too wrong in my answer.

Edit: Edit point 5 with @fuzzard branch suggestion

@phunkyfish
Copy link
Collaborator

@sy6sy2
Copy link
Owner Author

sy6sy2 commented Apr 30, 2019

Yes you are right. I just notice that fuzzard changed CORE_SYSTEM_NAME from ios to darwin_embedded .
For me:

  • Bad point: Some binary addon need to be modified according to this change
  • Good point: I prefer darwin_embedded over ios because it is now clear that darwin_embedded is used with both iPhone, iPad and Apple TV

@phunkyfish
Copy link
Collaborator

phunkyfish commented Apr 30, 2019

I completely agree with the change. It’s just that it means a complete run through the binary addons to finish it!

@fuzzard
Copy link

fuzzard commented Apr 30, 2019

I think it's worth the hassle. Won't take long as it will just be 1 or 2 lines each add-on on there findXXX scripts most likely. Best to get it done and out of the way early in v19 Dev, haha

@sy6sy2
Copy link
Owner Author

sy6sy2 commented Apr 30, 2019

Sure.
(I just start trying to build and run your master_darwin-embedded branch on my iPhone)

@fuzzard
Copy link

fuzzard commented May 2, 2019

Step 5 PR'd
xbmc#16039

@sy6sy2
Copy link
Owner Author

sy6sy2 commented May 2, 2019

Thank you.
I just adapted the description according to your PR and changes!

Edit: I will wait before adjusting branch code of PR6...

@phunkyfish
Copy link
Collaborator

So Jenkins failed for OS X, iOS32/64 and tvOS. Didn’t get a chance to dig into why yet.

@sy6sy2
Copy link
Owner Author

sy6sy2 commented May 2, 2019

iOS failed with cat: ./migrate_to_kodi_ios.sh: No such file or directory

This isstrange because this file was renamed to migrate_to_kodi.sh...

@phunkyfish
Copy link
Collaborator

phunkyfish commented May 2, 2019

Must be something in the Jenkins files as it doesn’t happen in a local build

@sy6sy2
Copy link
Owner Author

sy6sy2 commented May 2, 2019 via email

@phunkyfish
Copy link
Collaborator

phunkyfish commented May 2, 2019

Hmmm, I don’t see a build error for OS X. Not an obvious one anyway.

May just be as I’m trying to read the log on my phone 😉

@sy6sy2
Copy link
Owner Author

sy6sy2 commented May 2, 2019

I did not find it either

@sy6sy2
Copy link
Owner Author

sy6sy2 commented May 2, 2019

@fuzzard
Copy link

fuzzard commented May 2, 2019

Missed that one. Odd it built fine on my machine, but I'll get it fixed today sometime

@sy6sy2
Copy link
Owner Author

sy6sy2 commented May 2, 2019

Yes the Kodi target is not affected by this change, only the deb target ;-)

@sy6sy2 sy6sy2 pinned this issue May 8, 2019
@kambala-decapitator
Copy link

opened xbmc#16160, although it doesn't affect tvOS in any way (but modifies Install.cmake)

@kambala-decapitator
Copy link

xbmc#16017 is finally merged

@kambala-decapitator
Copy link

xbmc#16160 has been approved, but to be merged it first needs Jenkins build steps that use Xcode instead of make

@phunkyfish
Copy link
Collaborator

@SylvainCecchetto can we also include xbmc#16259 in the list of PRs

@phunkyfish
Copy link
Collaborator

@kambala-decapitator, so xbmc#16160 is dependent on which PR exactly to use Xcode in stead of make for ios. xbmc#16259?

@kambala-decapitator
Copy link

@phunkyfish yes, correct

@phunkyfish
Copy link
Collaborator

Thanks, updated issue description.

@kambala-decapitator
Copy link

xbmc#16374, xbmc#16399

@phunkyfish
Copy link
Collaborator

@kambala-decapitator these appear to be mainly iOS related. Is tvOS dev dependant on them being included?

@kambala-decapitator
Copy link

like I wrote in Slack, storage code can be used for tvos without changes, and I’ll convert tvos to ARC as well as soon as that PR is merged (tvOS shares some code with iOS, so it's dependent)

@phunkyfish
Copy link
Collaborator

Cool, thanks

@hudokkow
Copy link

All add-on related PRs are merged. Keep up the great work!

@fuzzard
Copy link

fuzzard commented Jul 30, 2019

Thanks @hudokkow . After everything was merged, i found one i missed. PR is open

xbmc/platform#5

@fuzzard
Copy link

fuzzard commented Jul 30, 2019

Also for those playing at home, ive added a commit to xbmc#16259 that will build binary addons as part of the xcode project. This means correctly adding binary addons to the final package for projects built using Xcode.
This will make binary addons package correctly for tvos

@kambala-decapitator
Copy link

just merged my ARC PR, now we can do this for tvOS as well

@kambala-decapitator
Copy link

merged storage change, now disk space will be displayed in tvOS as well xbmc#16374

@fuzzard
Copy link

fuzzard commented Oct 3, 2019

cmakebuildsys changes were actually merged just now - [ios] enable cmakebuildsys to generate xcodeproject - xbmc#16259

This opens the way for the storyboard merge Item 7

@phunkyfish
Copy link
Collaborator

phunkyfish commented Oct 4, 2019

Ok, so apart from the MrMc Audio sink port and tvOS core changes everything on this list is merged!!!!

Well done @fuzzard, @kambala-decapitator and @SylvainCecchetto

@sy6sy2 sy6sy2 closed this as completed Aug 27, 2020
@sy6sy2 sy6sy2 unpinned this issue Aug 27, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants