From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:41982) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgC-0001Ix-GJ for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzg9-00006U-S8 for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:08 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46195) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzg9-0008WQ-LC for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:05 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzg9-0002z0-JW for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:05 -0500 Subject: [bug#38532] [PATCH 08/11] gnu: Add kmplayer. Resent-Message-ID: From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:52 +0100 Message-Id: <20191208164355.7374-8-h.goebel@crazy-compilers.com> In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 38532@debbugs.gnu.org `guix lint` reports two CVEs, both are unrelated: - CVE-2018-5200: for vendor "pandora" and some 4.2.2.x version - CVE-2019-9133: windows only (I assume it it alsow relates to the "pandora" vendor, since the version the CVE refers to as "solving the issue" does not exist at KDE.) * gnu/packages/kde-multimedia.scm (kmplayer): New variable. * gnu/packages/patches/kmplayer-aarch64.patch, gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch: New files. * gnu/local.mk: Add them. --- gnu/local.mk | 2 + gnu/packages/kde-multimedia.scm | 66 +++++++++++++++++++ gnu/packages/patches/kmplayer-aarch64.patch | 57 ++++++++++++++++ ...layer-upstream_Fix-build-with-Qt-5.9.patch | 42 ++++++++++++ 4 files changed, 167 insertions(+) create mode 100644 gnu/packages/patches/kmplayer-aarch64.patch create mode 100644 gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch diff --git a/gnu/local.mk b/gnu/local.mk index ecff13b540..6b631f945f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1037,6 +1037,8 @@ dist_patch_DATA = \ %D%/packages/patches/kmod-module-directory.patch \ %D%/packages/patches/kmscon-runtime-keymap-switch.patch \ %D%/packages/patches/kpackage-allow-external-paths.patch \ + %D/packages/patches/kmplayer-aarch64.patch \ + %D/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch \ %D%/packages/patches/kpmcore-fix-tests.patch \ %D%/packages/patches/kpmcore-remove-broken-test.patch \ %D%/packages/patches/kobodeluxe-paths.patch \ diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index fad5b75b2a..17f4cb7e06 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -335,3 +335,69 @@ recording inputs, and set other hardware options. This package is part of the KDE multimedia module.") (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) + +(define-public kmplayer + (package + (name "kmplayer") + (version "0.12.0b") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/kmplayer/0.12" + "/kmplayer-" version ".tar.bz2")) + (sha256 + (base32 "0wzdxym4fc83wvqyhcwid65yv59a2wvp1lq303cn124mpnlwx62y")) + (patches (search-patches + "kmplayer-aarch64.patch" + "kmplayer-upstream_Fix-build-with-Qt-5.9.patch")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("kdoctools" ,kdoctools))) + (inputs + `(("kconfig" ,kconfig) + ("kcoreaddons" ,kcoreaddons) + ("kdelibs4support" ,kdelibs4support) + ("ki18n" ,ki18n) + ("kinit" ,kinit) + ("kio" ,kio) + ("kparts" ,kparts) + ("kmediaplayer" ,kmediaplayer) + ("kwidgetsaddons" ,kwidgetsaddons) + ("libxcb" ,libxcb) ;; FIXME: why does cmake not find XEVIE and XPRINT? + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("phonon" ,phonon) + ("qtbase" ,qtbase) + ("cairo" ,cairo) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras) + ("xcb-util" ,xcb-util) + ("xcb-util-cursor" ,xcb-util-cursor) + ("xcb-util-errors" ,xcb-util-errors) + ("xcb-util-image" ,xcb-util-image) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm))) + (arguments + `(#:configure-flags + (list (string-append + "-DCMAKE_CXX_FLAGS=-I" + (assoc-ref %build-inputs "qtx11extras") "/include/qt5")))) + (home-page "https://kde.org/applications/multimedia/org.kde.kmplayer") + (synopsis "Media player using mplayer/phonon as backend") + (description "Kmplayer can play all the audio/video supported by +mplayer/phonon from a local file or URL and be embedded in Konqueror and +KHTML. It also plays DVDs. + +Some features: +@itemize +@item play DVD/VCD movies (from file or url and from a video device) +@item embed inside konqueror (movie is played inside konqueror) +@item embed inside khtml (movie playback inside a html page) +@item Movie recording using mencoder (part of the mplayer package) +@item No video during recording, but you can always open a new window and play it +@item Broadcasting, http streaming, using ffserver/ffmpeg +@item For TV sources, you need v4lctl (part of the xawtv package) +@end itemize") + (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) diff --git a/gnu/packages/patches/kmplayer-aarch64.patch b/gnu/packages/patches/kmplayer-aarch64.patch new file mode 100644 index 0000000000..76f713be96 --- /dev/null +++ b/gnu/packages/patches/kmplayer-aarch64.patch @@ -0,0 +1,57 @@ +Index: b/src/moz-sdk/prcpucfg.h +=================================================================== +--- a/src/moz-sdk/prcpucfg.h ++++ b/src/moz-sdk/prcpucfg.h +@@ -288,6 +288,52 @@ + #define PR_BYTES_PER_WORD_LOG2 3 + #define PR_BYTES_PER_DWORD_LOG2 3 + ++#elif defined(__aarch64__) ++ ++#define IS_LITTLE_ENDIAN 1 ++#undef IS_BIG_ENDIAN ++#define IS_64 ++ ++#define PR_BYTES_PER_BYTE 1 ++#define PR_BYTES_PER_SHORT 2 ++#define PR_BYTES_PER_INT 4 ++#define PR_BYTES_PER_INT64 8 ++#define PR_BYTES_PER_LONG 8 ++#define PR_BYTES_PER_FLOAT 4 ++#define PR_BYTES_PER_DOUBLE 8 ++#define PR_BYTES_PER_WORD 8 ++#define PR_BYTES_PER_DWORD 8 ++ ++#define PR_BITS_PER_BYTE 8 ++#define PR_BITS_PER_SHORT 16 ++#define PR_BITS_PER_INT 32 ++#define PR_BITS_PER_INT64 64 ++#define PR_BITS_PER_LONG 64 ++#define PR_BITS_PER_FLOAT 32 ++#define PR_BITS_PER_DOUBLE 64 ++#define PR_BITS_PER_WORD 64 ++ ++#define PR_BITS_PER_BYTE_LOG2 3 ++#define PR_BITS_PER_SHORT_LOG2 4 ++#define PR_BITS_PER_INT_LOG2 5 ++#define PR_BITS_PER_INT64_LOG2 6 ++#define PR_BITS_PER_LONG_LOG2 6 ++#define PR_BITS_PER_FLOAT_LOG2 5 ++#define PR_BITS_PER_DOUBLE_LOG2 6 ++#define PR_BITS_PER_WORD_LOG2 6 ++ ++#define PR_ALIGN_OF_SHORT 2 ++#define PR_ALIGN_OF_INT 4 ++#define PR_ALIGN_OF_LONG 8 ++#define PR_ALIGN_OF_INT64 8 ++#define PR_ALIGN_OF_FLOAT 4 ++#define PR_ALIGN_OF_DOUBLE 8 ++#define PR_ALIGN_OF_POINTER 8 ++#define PR_ALIGN_OF_WORD 8 ++ ++#define PR_BYTES_PER_WORD_LOG2 3 ++#define PR_BYTES_PER_DWORD_LOG2 3 ++ + #elif defined(__mc68000__) + + #undef IS_LITTLE_ENDIAN diff --git a/gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch b/gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch new file mode 100644 index 0000000000..6a40dbe347 --- /dev/null +++ b/gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch @@ -0,0 +1,42 @@ +From 3def65075c09af4961cd399e8e78ed78cca72e65 Mon Sep 17 00:00:00 2001 +From: Wolfgang Bauer +Date: Wed, 11 Oct 2017 22:16:02 +0200 +Subject: [PATCH] Fix build with Qt 5.9 + +Summary: +moc 5.9 errors out when building: +Error: Plugin Metadata file "" could not be opened: file to open is a directory + +Same issue and fix as https://phabricator.kde.org/D5392 for khtml. + +CCBUG: 377490 + +Test Plan: builds fine now with Qt 5.9.0rc and also earlier versions. + +Reviewers: vriezen, pino + +Reviewed By: pino + +Subscribers: pino + +Differential Revision: https://phabricator.kde.org/D5985 +--- + src/kmplayer_part.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/kmplayer_part.h b/src/kmplayer_part.h +index f90f85d..0fddbaa 100644 +--- a/src/kmplayer_part.h ++++ b/src/kmplayer_part.h +@@ -36,7 +36,7 @@ namespace KMPlayer { + + class KMPlayerFactory : public KPluginFactory { + Q_OBJECT +- Q_PLUGIN_METADATA(IID "org.kde.KPluginFactory" FILE "") ++ Q_PLUGIN_METADATA(IID "org.kde.KPluginFactory") + Q_INTERFACES(KPluginFactory) + public: + KMPlayerFactory(); +-- +2.14.2 + -- 2.21.0