Merge branch 'staging' into core-updates
[jackhill/guix/guix.git] / gnu / packages / kodi.scm
index 822fceb..bc61e96 100644 (file)
@@ -1,8 +1,8 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
-;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -29,6 +29,7 @@
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system trivial)
+  #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages autotools)
@@ -42,6 +43,7 @@
   #:use-module (gnu packages databases)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages fribidi)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages ghostscript)
@@ -65,6 +67,7 @@
   #:use-module (gnu packages samba)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages serialization)
+  #:use-module (gnu packages sqlite)
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages swig)
   #:use-module (gnu packages textutils)
            (replace 'build
              (lambda _
                (invoke "g++" "-c" "guid.cpp" "-o" "guid.o"
-                       "-std=c++11" "-DGUID_LIBUUID")
+                        "-DGUID_LIBUUID")
                (invoke "ar" "rvs" "libcrossguid.a" "guid.o")))
            (replace 'check
              (lambda _
-               (invoke "g++" "-c" "test.cpp" "-o" "test.o"
-                       "-std=c++11")
-               (invoke "g++" "-c" "testmain.cpp" "-o" "testmain.o"
-                       "-std=c++11")
+               (invoke "g++" "-c" "test.cpp" "-o" "test.o")
+               (invoke "g++" "-c" "testmain.cpp" "-o" "testmain.o")
                (invoke "g++" "test.o" "guid.o" "testmain.o"
                        "-o" "test" "-luuid")
                (invoke (string-append (getcwd) "/test"))))
                                (string-append out "/lib"))
                  #t))))))
       (inputs
-       `(("util-linux" ,util-linux)))
+       `(("libuuid" ,util-linux "lib")))
       (synopsis "Lightweight universal identifier library")
       (description "CrossGuid is a minimal GUID/UUID
 generator library for C++.")
@@ -268,7 +269,7 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.")
 (define-public kodi
   (package
     (name "kodi")
-    (version "18.0rc1")
+    (version "18.4")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -277,7 +278,10 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0xzzp4x8l0ywx8aq93a1323il6wwslmgdbhasv0r8zp3w1c0wqf1"))
+                "1m0295czxabdcqyqf5m94av9d88pzhnzjvyfs1q07xqq82h313p7"))
+              (patches (search-patches "kodi-skip-test-449.patch"
+                                       "kodi-increase-test-timeout.patch"
+                                       "kodi-set-libcurl-ssl-parameters.patch"))
               (snippet
                '(begin
                   (use-modules (guix build utils))
@@ -431,7 +435,8 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.")
        ("libxrender" ,libxrender)
        ("libxslt" ,libxslt)
        ("lzo" ,lzo)
-       ("mariadb" ,mariadb)
+       ("mariadb" ,mariadb "lib")
+       ("mariadb-dev" ,mariadb "dev")
        ("openssl" ,openssl)
        ("pcre" ,pcre)
        ("pulseaudio" ,pulseaudio)
@@ -459,6 +464,23 @@ plug-in system.")
                    license:bsd-3                  ;misc, gtest
                    license:bsd-2))))              ;xbmc/freebsd
 
+(define-public kodi/wayland
+  (package/inherit kodi
+    (name "kodi-wayland")
+    (arguments
+     (substitute-keyword-arguments (package-arguments kodi)
+       ((#:configure-flags flags)
+        `(append '("-DCORE_PLATFORM_NAME=wayland"
+                   "-DWAYLAND_RENDER_SYSTEM=gl")
+                   ,flags))))
+    (inputs
+     `(("libinput" ,libinput)
+       ("libxkbcommon" ,libxkbcommon)
+       ("waylandpp" ,waylandpp)
+       ("waylandp-protocols" ,wayland-protocols)
+       ,@(package-inputs kodi)))
+    (synopsis "Kodi with Wayland rendering backend")))
+
 (define-public kodi-cli
   (let ((commit "104dc23b2a993c8e6db8c46f4f8bec24b146549b") ; Add support for
         (revision "1"))                                     ; `$HOME/.kodirc'.