Gentoo Archives: gentoo-commits

From: Craig Andrews <candrews@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-tv/kodi/
Date: Wed, 12 Sep 2018 19:12:35
Message-Id: 1536779179.76c33462fd519ee4df11fec1426c82af5c4761e6.candrews@gentoo
1 commit: 76c33462fd519ee4df11fec1426c82af5c4761e6
2 Author: Craig Andrews <candrews <AT> gentoo <DOT> org>
3 AuthorDate: Wed Sep 12 19:06:19 2018 +0000
4 Commit: Craig Andrews <candrews <AT> gentoo <DOT> org>
5 CommitDate: Wed Sep 12 19:06:19 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=76c33462
7
8 media-tv/kodi: Use mariadb/mysql connector
9
10 Closes: https://bugs.gentoo.org/665926
11 Package-Manager: Portage-2.3.49, Repoman-2.3.10
12
13 .../kodi/{kodi-9999.ebuild => kodi-17.6-r5.ebuild} | 152 +++++++++------------
14 media-tv/kodi/kodi-9999.ebuild | 7 +-
15 media-tv/kodi/metadata.xml | 1 +
16 3 files changed, 74 insertions(+), 86 deletions(-)
17
18 diff --git a/media-tv/kodi/kodi-9999.ebuild b/media-tv/kodi/kodi-17.6-r5.ebuild
19 similarity index 68%
20 copy from media-tv/kodi/kodi-9999.ebuild
21 copy to media-tv/kodi/kodi-17.6-r5.ebuild
22 index 44cd4f61e39..f30a7cb6c05 100644
23 --- a/media-tv/kodi/kodi-9999.ebuild
24 +++ b/media-tv/kodi/kodi-17.6-r5.ebuild
25 @@ -7,32 +7,34 @@ EAPI=6
26 PYTHON_COMPAT=( python2_7 )
27 PYTHON_REQ_USE="sqlite"
28
29 -inherit autotools cmake-utils eutils linux-info pax-utils python-single-r1
30 +inherit autotools cmake-utils eutils linux-info pax-utils python-single-r1 versionator
31
32 -LIBDVDCSS_VERSION="1.4.1-Leia-Alpha-1"
33 -LIBDVDREAD_VERSION="6.0.0-Leia-Alpha-1"
34 -LIBDVDNAV_VERSION="6.0.0-Leia-Alpha-1"
35 -FFMPEG_VERSION="4.0.1"
36 -CODENAME="Leia"
37 -FFMPEG_KODI_VERSION="Alpha3-1"
38 -SRC_URI="https://github.com/xbmc/libdvdcss/archive/${LIBDVDCSS_VERSION}.tar.gz -> libdvdcss-${LIBDVDCSS_VERSION}.tar.gz
39 - https://github.com/xbmc/libdvdread/archive/${LIBDVDREAD_VERSION}.tar.gz -> libdvdread-${LIBDVDREAD_VERSION}.tar.gz
40 - https://github.com/xbmc/libdvdnav/archive/${LIBDVDNAV_VERSION}.tar.gz -> libdvdnav-${LIBDVDNAV_VERSION}.tar.gz
41 +LIBDVDCSS_COMMIT="2f12236bc1c92f73c21e973363f79eb300de603f"
42 +LIBDVDREAD_COMMIT="17d99db97e7b8f23077b342369d3c22a6250affd"
43 +LIBDVDNAV_COMMIT="43b5f81f5fe30bceae3b7cecf2b0ca57fc930dac"
44 +FFMPEG_VERSION="3.1.11"
45 +FFMPEG_KODI_VERSION="17.5"
46 +CODENAME="Krypton"
47 +PATCHES=(
48 + "${FILESDIR}/${P}-nmblookup.patch"
49 +)
50 +SRC_URI="https://github.com/xbmc/libdvdcss/archive/${LIBDVDCSS_COMMIT}.tar.gz -> libdvdcss-${LIBDVDCSS_COMMIT}.tar.gz
51 + https://github.com/xbmc/libdvdread/archive/${LIBDVDREAD_COMMIT}.tar.gz -> libdvdread-${LIBDVDREAD_COMMIT}.tar.gz
52 + https://github.com/xbmc/libdvdnav/archive/${LIBDVDNAV_COMMIT}.tar.gz -> libdvdnav-${LIBDVDNAV_COMMIT}.tar.gz
53 !system-ffmpeg? ( https://github.com/xbmc/FFmpeg/archive/${FFMPEG_VERSION}-${CODENAME}-${FFMPEG_KODI_VERSION}.tar.gz -> ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}-${FFMPEG_KODI_VERSION}.tar.gz )"
54
55 DESCRIPTION="A free and open source media-player and entertainment hub"
56 HOMEPAGE="https://kodi.tv/ https://kodi.wiki/"
57
58 -LICENSE="GPL-2+"
59 +LICENSE="GPL-2"
60 SLOT="0"
61 # use flag is called libusb so that it doesn't fool people in thinking that
62 # it is _required_ for USB support. Otherwise they'll disable udev and
63 # that's going to be worse.
64 -IUSE="airplay alsa bluetooth bluray caps cec +css dbus debug dvd gbm gles lcms libressl libusb lirc mysql nfs +opengl pulseaudio samba systemd +system-ffmpeg test +udev udisks upnp upower vaapi vdpau wayland webserver +X +xslt zeroconf"
65 +IUSE="airplay alsa bluetooth bluray caps cec +css dbus debug dvd gles lcms libressl libusb lirc mariadb mysql nfs nonfree +opengl pulseaudio samba sftp systemd +system-ffmpeg test +udev udisks upnp upower vaapi vdpau webserver +xslt zeroconf"
66 REQUIRED_USE="
67 ${PYTHON_REQUIRED_USE}
68 || ( gles opengl )
69 - ^^ ( gbm wayland X )
70 udev? ( !libusb )
71 udisks? ( dbus )
72 upower? ( dbus )
73 @@ -40,80 +42,60 @@ REQUIRED_USE="
74
75 COMMON_DEPEND="${PYTHON_DEPS}
76 airplay? (
77 - >=app-pda/libplist-2.0.0[python,${PYTHON_USEDEP}]
78 + app-pda/libplist
79 net-libs/shairplay
80 )
81 - alsa? ( >=media-libs/alsa-lib-1.1.4.1 )
82 + alsa? ( media-libs/alsa-lib )
83 bluetooth? ( net-wireless/bluez )
84 - bluray? ( >=media-libs/libbluray-1.0.2 )
85 + bluray? ( >=media-libs/libbluray-0.7.0 )
86 caps? ( sys-libs/libcap )
87 dbus? ( sys-apps/dbus )
88 dev-db/sqlite
89 dev-libs/expat
90 - dev-libs/flatbuffers
91 - >=dev-libs/fribidi-0.19.7
92 + dev-libs/fribidi
93 cec? ( >=dev-libs/libcec-4.0 )
94 dev-libs/libpcre[cxx]
95 - >=dev-libs/libxml2-2.9.4
96 + dev-libs/libxml2
97 >=dev-libs/lzo-2.04
98 dev-libs/tinyxml[stl]
99 + >=dev-libs/yajl-2
100 dev-python/pillow[${PYTHON_USEDEP}]
101 - >=dev-libs/libcdio-0.94
102 - dev-libs/libfmt
103 - dev-libs/libfstrcmp
104 - gbm? ( media-libs/mesa[gbm] )
105 + dev-libs/libcdio
106 gles? ( media-libs/mesa[gles2] )
107 lcms? ( media-libs/lcms:2 )
108 libusb? ( virtual/libusb:1 )
109 virtual/ttf-fonts
110 + >=media-fonts/noto-20160531
111 media-fonts/roboto
112 - >=media-libs/fontconfig-2.12.4
113 - >=media-libs/freetype-2.8
114 + media-libs/fontconfig
115 + media-libs/freetype
116 >=media-libs/libass-0.13.4
117 media-libs/mesa[egl]
118 >=media-libs/taglib-1.11.1
119 system-ffmpeg? (
120 - >=media-video/ffmpeg-${FFMPEG_VERSION}:=[encode,postproc]
121 - libressl? ( media-video/ffmpeg[libressl,-openssl] )
122 - !libressl? ( media-video/ffmpeg[-libressl,openssl] )
123 + >=media-video/ffmpeg-${FFMPEG_VERSION}:=[encode,openssl,postproc]
124 + <media-video/ffmpeg-3.4
125 )
126 - mysql? ( virtual/mysql )
127 - >=net-misc/curl-7.56.1
128 - nfs? ( >=net-fs/libnfs-2.0.0:= )
129 + mysql? (
130 + !mariadb? ( dev-db/mysql-connector-c:= )
131 + mariadb? ( dev-db/mariadb-connector-c:= )
132 + )
133 + >=net-misc/curl-7.51.0
134 + nfs? ( net-fs/libnfs:= )
135 opengl? ( media-libs/glu )
136 - !libressl? ( >=dev-libs/openssl-1.0.2l:0= )
137 + !libressl? ( >=dev-libs/openssl-1.0.2j:0= )
138 libressl? ( dev-libs/libressl:0= )
139 pulseaudio? ( media-sound/pulseaudio )
140 samba? ( >=net-fs/samba-3.4.6[smbclient(+)] )
141 - >=sys-libs/zlib-1.2.11
142 + sftp? ( net-libs/libssh[sftp] )
143 + sys-libs/zlib
144 udev? ( virtual/udev )
145 - vaapi? (
146 - x11-libs/libva:=
147 - opengl? ( x11-libs/libva[opengl] )
148 - system-ffmpeg? ( media-video/ffmpeg[vaapi] )
149 - vdpau? ( x11-libs/libva[vdpau] )
150 - wayland? ( x11-libs/libva[wayland] )
151 - X? ( x11-libs/libva[X] )
152 - )
153 - virtual/libiconv
154 + vaapi? ( x11-libs/libva:=[opengl] )
155 vdpau? (
156 || ( >=x11-libs/libvdpau-1.1 >=x11-drivers/nvidia-drivers-180.51 )
157 system-ffmpeg? ( media-video/ffmpeg[vdpau] )
158 )
159 - wayland? (
160 - >=dev-cpp/waylandpp-0.2.3:=
161 - media-libs/mesa[wayland]
162 - >=dev-libs/wayland-protocols-1.7
163 - >=x11-libs/libxkbcommon-0.4.1
164 - )
165 - webserver? ( >=net-libs/libmicrohttpd-0.9.55[messages] )
166 - X? (
167 - x11-libs/libX11
168 - x11-libs/libXrandr
169 - x11-libs/libXrender
170 - system-ffmpeg? ( media-video/ffmpeg[X] )
171 - )
172 - x11-libs/libdrm
173 + webserver? ( >=net-libs/libmicrohttpd-0.9.50[messages] )
174 xslt? ( dev-libs/libxslt )
175 zeroconf? ( net-dns/avahi[dbus] )
176 "
177 @@ -122,7 +104,7 @@ RDEPEND="${COMMON_DEPEND}
178 || ( app-misc/lirc app-misc/inputlircd )
179 )
180 !media-tv/xbmc
181 - udisks? ( sys-fs/udisks:2 )
182 + udisks? ( sys-fs/udisks:0 )
183 upower? (
184 systemd? ( sys-power/upower )
185 !systemd? (
186 @@ -132,10 +114,11 @@ RDEPEND="${COMMON_DEPEND}
187 "
188 DEPEND="${COMMON_DEPEND}
189 app-arch/bzip2
190 + app-arch/unzip
191 app-arch/xz-utils
192 + app-arch/zip
193 dev-lang/swig
194 dev-libs/crossguid
195 - dev-libs/rapidjson
196 dev-util/cmake
197 dev-util/gperf
198 media-libs/giflib
199 @@ -179,6 +162,8 @@ In some cases Kodi needs to access multicast addresses.
200 Please consider enabling IP_MULTICAST under Networking options.
201 "
202
203 +CMAKE_USE_DIR=${S}/project/cmake/
204 +
205 pkg_setup() {
206 check_extra_config
207 python-single-r1_pkg_setup
208 @@ -193,7 +178,7 @@ src_prepare() {
209 # avoid long delays when powerkit isn't running #348580
210 sed -i \
211 -e '/dbus_connection_send_with_reply_and_block/s:-1:3000:' \
212 - xbmc/platform/linux/*.cpp || die
213 + xbmc/linux/*.cpp || die
214
215 # Prepare tools and libs witch are configured with autotools during compile time
216 AUTOTOOLS_DIRS=(
217 @@ -212,7 +197,7 @@ src_prepare() {
218
219 # Prevent autoreconf rerun
220 sed -e 's/autoreconf -vif/echo "autoreconf already done in src_prepare()"/' -i \
221 - "${S}"/cmake/modules/FindCpluff.cmake \
222 + "${S}"/project/cmake/modules/FindCpluff.cmake \
223 "${S}"/tools/depends/native/TexturePacker/src/autogen.sh \
224 "${S}"/tools/depends/native/JsonSchemaBuilder/src/autogen.sh \
225 || die
226 @@ -233,27 +218,30 @@ src_configure() {
227 -DENABLE_DVDCSS=$(usex css)
228 -DENABLE_INTERNAL_CROSSGUID=OFF
229 -DENABLE_INTERNAL_FFMPEG="$(usex !system-ffmpeg)"
230 - -DENABLE_INTERNAL_FSTRCMP=OFF
231 -DENABLE_CAP=$(usex caps)
232 -DENABLE_LCMS2=$(usex lcms)
233 - -DENABLE_LIRCCLIENT=$(usex lirc)
234 + -DENABLE_LIRC=$(usex lirc)
235 -DENABLE_MICROHTTPD=$(usex webserver)
236 -DENABLE_MYSQLCLIENT=$(usex mysql)
237 -DENABLE_NFS=$(usex nfs)
238 + -DENABLE_NONFREE=$(usex nonfree)
239 -DENABLE_OPENGLES=$(usex gles)
240 -DENABLE_OPENGL=$(usex opengl)
241 + -DENABLE_OPENSSL=ON
242 -DENABLE_OPTICAL=$(usex dvd)
243 -DENABLE_PLIST=$(usex airplay)
244 -DENABLE_PULSEAUDIO=$(usex pulseaudio)
245 -DENABLE_SMBCLIENT=$(usex samba)
246 + -DENABLE_SSH=$(usex sftp)
247 -DENABLE_UDEV=$(usex udev)
248 -DENABLE_UPNP=$(usex upnp)
249 -DENABLE_VAAPI=$(usex vaapi)
250 -DENABLE_VDPAU=$(usex vdpau)
251 + -DENABLE_X11=ON
252 -DENABLE_XSLT=$(usex xslt)
253 - -Dlibdvdread_URL="${DISTDIR}/libdvdread-${LIBDVDREAD_VERSION}.tar.gz"
254 - -Dlibdvdnav_URL="${DISTDIR}/libdvdnav-${LIBDVDNAV_VERSION}.tar.gz"
255 - -Dlibdvdcss_URL="${DISTDIR}/libdvdcss-${LIBDVDCSS_VERSION}.tar.gz"
256 + -Dlibdvdread_URL="${DISTDIR}/libdvdread-${LIBDVDREAD_COMMIT}.tar.gz"
257 + -Dlibdvdnav_URL="${DISTDIR}/libdvdnav-${LIBDVDNAV_COMMIT}.tar.gz"
258 + -Dlibdvdcss_URL="${DISTDIR}/libdvdcss-${LIBDVDCSS_COMMIT}.tar.gz"
259 )
260
261 use libusb && mycmakeargs+=( -DENABLE_LIBUSB=$(usex libusb) )
262 @@ -264,24 +252,6 @@ src_configure() {
263 mycmakeargs+=( -DFFMPEG_URL="${DISTDIR}/ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}-${FFMPEG_KODI_VERSION}.tar.gz" )
264 fi
265
266 - if use gbm; then
267 - mycmakeargs+=(
268 - -DCORE_PLATFORM_NAME="gbm"
269 - -DGBM_RENDER_SYSTEM="$(usex opengl gl gles)"
270 - )
271 - fi
272 -
273 - if use wayland; then
274 - mycmakeargs+=(
275 - -DCORE_PLATFORM_NAME="wayland"
276 - -DWAYLAND_RENDER_SYSTEM="$(usex opengl gl gles)"
277 - )
278 - fi
279 -
280 - if use X; then
281 - mycmakeargs+=( -DCORE_PLATFORM_NAME="x11" )
282 - fi
283 -
284 cmake-utils_src_configure
285 }
286
287 @@ -299,12 +269,26 @@ src_install() {
288
289 pax-mark Em "${ED%/}"/usr/$(get_libdir)/${PN}/${PN}.bin
290
291 + rm "${ED%/}"/usr/share/doc/*/{LICENSE.GPL,copying.txt}* || die
292 +
293 newicon media/icon48x48.png kodi.png
294
295 + # Replace bundled fonts with system ones.
296 + rm "${ED%/}"/usr/share/kodi/addons/skin.estouchy/fonts/NotoSans-Regular.ttf || die
297 + dosym ../../../../fonts/noto/NotoSans-Regular.ttf \
298 + usr/share/kodi/addons/skin.estouchy/fonts/NotoSans-Regular.ttf
299 +
300 + local f
301 + for f in NotoMono-Regular.ttf NotoSans-Bold.ttf NotoSans-Regular.ttf ; do
302 + rm "${ED%/}"/usr/share/kodi/addons/skin.estuary/fonts/"${f}" || die
303 + dosym ../../../../fonts/noto/"${f}" \
304 + usr/share/kodi/addons/skin.estuary/fonts/"${f}"
305 + done
306 +
307 rm "${ED%/}"/usr/share/kodi/addons/skin.estuary/fonts/Roboto-Thin.ttf || die
308 dosym ../../../../fonts/roboto/Roboto-Thin.ttf \
309 usr/share/kodi/addons/skin.estuary/fonts/Roboto-Thin.ttf
310
311 python_domodule tools/EventClients/lib/python/xbmcclient.py
312 - python_newscript "tools/EventClients/Clients/KodiSend/kodi-send.py" kodi-send
313 + python_newscript "tools/EventClients/Clients/Kodi Send/kodi-send.py" kodi-send
314 }
315
316 diff --git a/media-tv/kodi/kodi-9999.ebuild b/media-tv/kodi/kodi-9999.ebuild
317 index 44cd4f61e39..3b98edc8e7e 100644
318 --- a/media-tv/kodi/kodi-9999.ebuild
319 +++ b/media-tv/kodi/kodi-9999.ebuild
320 @@ -28,7 +28,7 @@ SLOT="0"
321 # use flag is called libusb so that it doesn't fool people in thinking that
322 # it is _required_ for USB support. Otherwise they'll disable udev and
323 # that's going to be worse.
324 -IUSE="airplay alsa bluetooth bluray caps cec +css dbus debug dvd gbm gles lcms libressl libusb lirc mysql nfs +opengl pulseaudio samba systemd +system-ffmpeg test +udev udisks upnp upower vaapi vdpau wayland webserver +X +xslt zeroconf"
325 +IUSE="airplay alsa bluetooth bluray caps cec +css dbus debug dvd gbm gles lcms libressl libusb lirc mariadb mysql nfs +opengl pulseaudio samba systemd +system-ffmpeg test +udev udisks upnp upower vaapi vdpau wayland webserver +X +xslt zeroconf"
326 REQUIRED_USE="
327 ${PYTHON_REQUIRED_USE}
328 || ( gles opengl )
329 @@ -77,7 +77,10 @@ COMMON_DEPEND="${PYTHON_DEPS}
330 libressl? ( media-video/ffmpeg[libressl,-openssl] )
331 !libressl? ( media-video/ffmpeg[-libressl,openssl] )
332 )
333 - mysql? ( virtual/mysql )
334 + mysql? (
335 + !mariadb? ( dev-db/mysql-connector-c:= )
336 + mariadb? ( dev-db/mariadb-connector-c:= )
337 + )
338 >=net-misc/curl-7.56.1
339 nfs? ( >=net-fs/libnfs-2.0.0:= )
340 opengl? ( media-libs/glu )
341
342 diff --git a/media-tv/kodi/metadata.xml b/media-tv/kodi/metadata.xml
343 index 919f9f79dc4..47c36082ac5 100644
344 --- a/media-tv/kodi/metadata.xml
345 +++ b/media-tv/kodi/metadata.xml
346 @@ -12,6 +12,7 @@
347 <flag name="gbm">Use the Graphics Buffer Manager for EGL on KMS.</flag>
348 <flag name="gles">Enable support for GLES</flag>
349 <flag name="lirc">Enable support for controlling Totem with a remote control using <pkg>app-misc/lirc</pkg></flag>
350 + <flag name="mariadb">Add MariaDB support</flag>
351 <flag name="nfs">Enable NFS client support</flag>
352 <flag name="nonfree">Enable non-free components</flag>
353 <flag name="dvd">Enable optical (CD/DVD drive) support</flag>