Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 545002

Summary: media-tv/kodi: Use more external libraries
Product: Gentoo Linux Reporter: Sebastian <sebastian_ml>
Component: Current packagesAssignee: Craig Andrews <candrews>
Status: RESOLVED FIXED    
Severity: normal CC: aklhfex, arthur, proxy-maint
Priority: Normal Keywords: PATCH
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: ebuild patch
disabled gtest patch
privacy patch (disables version check by default)
patch to use external dvdread
patch to use external jbig
patch to use external hdhomerun
patch to use external sidplay
new jasper/jbig patch
new ebuild
kodi-15.1.ebuild
kodi-15.1-disable-gtest.patch
kodi-15.1-privacy.patch
kodi-15.1-remove-ljbig-and-ljasper.patch
kodi-15.1-use-external-dvdread.patch
kodi-15.1-use-external-libhdhomerun.patch

Description Sebastian 2015-03-29 21:08:49 UTC
Hello all,

I had a look at the patches that Debian and Fedora are using. I added them to the kodi-14.1 ebuild. The result:

- using external libdvdread
- external jbig
- external sidplay
- external hdhomerun (if user wants it, otherwise it doesn't get built)

Also I added a patch that disables the version check by default (kodi-14.1-privacy.patch) and one disables 'gtest'.

In the ebuild itself I've added the necessary deps. Plus an extra one, sys-apps/lsb-release, because the status page didn't show the OS properly.

I've also added a section where a lot of libraries are simply deleted, like Fedora and Debian both do it, hoping that this way external libraries get used instead.

Maybe it's a little much in one place. But I think this is not a stable package anyway, so we can just give it a try :-)

The patches should apply cleanly to 14.2 as well.


Reproducible: Always
Comment 1 Sebastian 2015-03-29 21:09:57 UTC
Created attachment 400076 [details, diff]
ebuild patch
Comment 2 Sebastian 2015-03-29 21:10:51 UTC
Created attachment 400078 [details, diff]
disabled gtest patch
Comment 3 Sebastian 2015-03-29 21:11:32 UTC
Created attachment 400080 [details, diff]
privacy patch (disables version check by default)
Comment 4 Sebastian 2015-03-29 21:11:53 UTC
Created attachment 400082 [details, diff]
patch to use external dvdread
Comment 5 Sebastian 2015-03-29 21:12:13 UTC
Created attachment 400084 [details, diff]
patch to use external jbig
Comment 6 Sebastian 2015-03-29 21:12:37 UTC
Created attachment 400086 [details, diff]
patch to use external hdhomerun
Comment 7 Sebastian 2015-03-29 21:12:57 UTC
Created attachment 400088 [details, diff]
patch to use external sidplay
Comment 8 Sebastian 2015-03-29 21:16:19 UTC
Just realized the privacy patch has nothing to do with the version check. I just disables the RSS feed by default.
Comment 9 Sebastian 2015-04-01 17:11:31 UTC
Created attachment 400348 [details, diff]
new jasper/jbig patch

Checked the binaries for traces of jasper/jbig. None found. It didn't even link to the external jbig when I had told it to (--as-needed in LDFLAGS took care of that). Then I checked the source again and saw that jbig and jasper aren't even enabled in cximage (check CxImage/ximadef.h & CxImage/ximacfg.h for the logic).

This patch gets rid of both.
Comment 10 Sebastian 2015-04-01 17:12:39 UTC
Created attachment 400350 [details]
new ebuild

Removed deps on jasper and jbigkit from the ebuild.
Comment 11 SpanKY gentoo-dev 2015-08-26 05:25:05 UTC
(In reply to Sebastian from comment #9)

could you send this upstream via github ?
Comment 12 Sebastian 2015-09-10 05:56:00 UTC
Hello Spanky,

I've mailed the person who I believe authored the original patches and asked if he already tried to push them upstream, but didn't receive a response, yet. I'd feel weird trying to push _his_ patches upstream myself. Plus, I think that further polishing of the patches would be necessary because some (hdhomerun, libdvdread) require additional action when building (see ebuild). I don't really have time for this currently.

Maybe we can agree to put this to "Wontfix" for now? I'll upload the patches for 15.1 anyway.

Kind regards,
Sebastian
Comment 13 Sebastian 2015-09-10 05:58:42 UTC
Created attachment 411472 [details]
kodi-15.1.ebuild

Sidplay support was removed upstream, so no more sidplay patch.
Comment 14 Sebastian 2015-09-10 05:59:18 UTC
Created attachment 411474 [details, diff]
kodi-15.1-disable-gtest.patch
Comment 15 Sebastian 2015-09-10 05:59:48 UTC
Created attachment 411476 [details, diff]
kodi-15.1-privacy.patch
Comment 16 Sebastian 2015-09-10 06:00:18 UTC
Created attachment 411478 [details, diff]
kodi-15.1-remove-ljbig-and-ljasper.patch
Comment 17 Sebastian 2015-09-10 06:00:38 UTC
Created attachment 411480 [details, diff]
kodi-15.1-use-external-dvdread.patch
Comment 18 Sebastian 2015-09-10 06:01:00 UTC
Created attachment 411482 [details, diff]
kodi-15.1-use-external-libhdhomerun.patch
Comment 19 SpanKY gentoo-dev 2015-09-11 21:33:28 UTC
(In reply to Sebastian from comment #12)

if you could post them to the xbmc github repo, that'd be great.  then we'd just mark this bug as UPSTREAM so we know things won't get lost in the long run.
Comment 20 SpanKY gentoo-dev 2016-02-23 19:36:37 UTC
some of these are fixed in 16.0 or git because they don't ship/use them anymore
Comment 21 Chris Mayo 2016-07-31 12:11:51 UTC
(In reply to Sebastian from comment #17)
> Created attachment 411480 [details, diff] [details, diff]
> kodi-15.1-use-external-dvdread.patch

Kodi have forked libdvdread:
https://github.com/xbmc/libdvdread

also libdvdnav:
https://github.com/xbmc/libdvdnav

and libdvdcss:
https://github.com/xbmc/libdvdcss

with changes, even some API differences making using upstream releases tricky to impossible.
Comment 22 Craig Andrews gentoo-dev 2017-06-05 18:16:45 UTC
As far as I know, all external libraries mentioned in this bug and that I've been tracking (for years) have finally been externalized upstream (as of Kodi 17).

Therefore, I'm closing this issue - if there are any libraries that are still bundled that I haven't noticed / am not aware of / that are added in future versions of Kodi, please don't hesitate to open new bugs.