summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArthur Zamarin <arthurzam@gentoo.org>2022-10-23 21:37:39 +0300
committerArthur Zamarin <arthurzam@gentoo.org>2022-10-23 21:37:39 +0300
commit1801c947d72fd756a7433d49584a367a6a3bad14 (patch)
treec59227bd2ec45e46eb9c8c5e92b84c71d06c08e4 /media-video/qmplay2
parentdev-python/tavern: add 1.23.4 (diff)
downloadgentoo-1801c947d72fd756a7433d49584a367a6a3bad14.tar.gz
gentoo-1801c947d72fd756a7433d49584a367a6a3bad14.tar.bz2
gentoo-1801c947d72fd756a7433d49584a367a6a3bad14.zip
media-video/qmplay2: add 22.10.23
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
Diffstat (limited to 'media-video/qmplay2')
-rw-r--r--media-video/qmplay2/Manifest1
-rw-r--r--media-video/qmplay2/files/qmplay2-22.10.23-fix-includes.patch44
-rw-r--r--media-video/qmplay2/qmplay2-22.10.23.ebuild141
3 files changed, 186 insertions, 0 deletions
diff --git a/media-video/qmplay2/Manifest b/media-video/qmplay2/Manifest
index 3de11e337f22..8088d0a7b6c3 100644
--- a/media-video/qmplay2/Manifest
+++ b/media-video/qmplay2/Manifest
@@ -1 +1,2 @@
DIST QMPlay2-src-22.08.21.tar.xz 1618824 BLAKE2B ac980c4ad018749d4ee5dcd2dc580c96cccb82a73ff4fd52c65beb1d7131e294d2af65814c8966ffbe2a04eb489f9b9ba23b2764b83aa3f3d57546125dde4ceb SHA512 a6abc71bf87a8bcb2c2c0c63889f75de4e2de4375de0a528cb6950d2fb1ac6e767386d13a0e3f26b59cfccb88b4db4a8c26cbf57299da2031239a73e4971a4de
+DIST QMPlay2-src-22.10.23.tar.xz 1414804 BLAKE2B c0db1187538be8ab0806abd41fbfdae5a71dda450505af1956989a3ccc10fa52997b8652f280cd66837d12a84a7a058783b65df3d4bd35665c92f1262cd8d004 SHA512 80c9408a9085084857b5b433f009bf62784cf73ceb90218ec09132be227aae97136095811ffa1211375dcbfc1f51cbefaa3690c56fc8df51d9b1cf022ce0709f
diff --git a/media-video/qmplay2/files/qmplay2-22.10.23-fix-includes.patch b/media-video/qmplay2/files/qmplay2-22.10.23-fix-includes.patch
new file mode 100644
index 000000000000..eb77927f6ea9
--- /dev/null
+++ b/media-video/qmplay2/files/qmplay2-22.10.23-fix-includes.patch
@@ -0,0 +1,44 @@
+https://github.com/zaps166/QMPlay2/pull/541
+
+fix include memory with USE_VULKAN=OFF
+
+Those header files are using std::shared_ptr from memory header even
+when USE_VULKAN is OFF, so we must include them unconditionally.
+
+Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
+--- a/src/qmplay2/LibASS.hpp
++++ b/src/qmplay2/LibASS.hpp
+@@ -23,6 +23,7 @@
+ #include <QByteArray>
+ #include <QList>
+
++#include <memory>
+ #include <set>
+
+ class Settings;
+@@ -35,7 +36,6 @@ struct ass_renderer;
+ struct ass_image;
+
+ #ifdef USE_VULKAN
+-#include <memory>
+ namespace QmVk {
+ class BufferPool;
+ }
+--- a/src/qmplay2/QMPlay2OSD.hpp
++++ b/src/qmplay2/QMPlay2OSD.hpp
+@@ -25,14 +25,13 @@
+ #include <QRect>
+
+ #include <functional>
++#include <memory>
+ #include <vector>
+ #include <mutex>
+
+ #ifdef USE_VULKAN
+ # include <QVector4D>
+
+-# include <memory>
+-
+ namespace QmVk {
+
+ class Buffer;
diff --git a/media-video/qmplay2/qmplay2-22.10.23.ebuild b/media-video/qmplay2/qmplay2-22.10.23.ebuild
new file mode 100644
index 000000000000..1ef2e8a50818
--- /dev/null
+++ b/media-video/qmplay2/qmplay2-22.10.23.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake xdg
+
+DESCRIPTION="A Qt-based video player, which can play most formats and codecs"
+HOMEPAGE="https://github.com/zaps166/QMPlay2"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/zaps166/QMPlay2"
+else
+ SRC_URI="https://github.com/zaps166/QMPlay2/releases/download/${PV}/QMPlay2-src-${PV}.tar.xz"
+ S="${WORKDIR}/QMPlay2-src-${PV}"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="LGPL-3"
+SLOT="0"
+
+IUSE="avdevice +audiofilters +alsa cdio cuvid extensions gme inputs libass
+ modplug notifications opengl pipewire portaudio pulseaudio sid shaders
+ +taglib vaapi vdpau videofilters visualizations vulkan xv"
+
+REQUIRED_USE="
+ audiofilters? ( || ( alsa pipewire portaudio pulseaudio ) )
+ shaders? ( vulkan )"
+
+RDEPEND="
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ media-video/ffmpeg
+ || (
+ dev-qt/qtgui:5[X(-)]
+ dev-qt/qtgui:5[xcb(-)]
+ )
+ alsa? ( media-libs/alsa-lib )
+ cdio? ( dev-libs/libcdio[cddb] )
+ extensions? ( dev-qt/qtdeclarative:5 )
+ gme? ( media-libs/game-music-emu )
+ libass? ( media-libs/libass )
+ opengl? ( virtual/opengl )
+ pipewire? ( media-video/pipewire )
+ portaudio? ( media-libs/portaudio )
+ pulseaudio? ( media-sound/pulseaudio )
+ sid? ( media-libs/libsidplayfp )
+ shaders? ( >=media-libs/shaderc-2020.1 )
+ taglib? ( media-libs/taglib )
+ vaapi? (
+ >=media-video/ffmpeg-4.1.3[vaapi]
+ media-libs/libva[X]
+ )
+ vdpau? ( media-video/ffmpeg[vdpau] )
+ videofilters? ( dev-qt/qtconcurrent:5 )
+ vulkan? (
+ >=dev-qt/qtgui-5.14.1:5[vulkan]
+ >=media-libs/vulkan-loader-1.2.133
+ )
+ xv? ( x11-libs/libXv )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-qt/linguist-tools:5"
+
+PATCHES=(
+ "${FILESDIR}/${P}-fix-includes.patch"
+)
+
+src_prepare() {
+ # disable compress man pages
+ sed -r \
+ -e 's/if\(GZIP\)/if\(TRUE\)/' \
+ -e 's/(install.+QMPlay2\.1)\.gz/\1/' \
+ -i src/gui/CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ # core
+ -DUSE_LINK_TIME_OPTIMIZATION=false
+ -DUSE_UPDATES=OFF
+ -DUSE_ALSA=$(usex alsa)
+ -DUSE_AUDIOCD=$(usex cdio)
+ -DUSE_DBUS_SUSPEND=ON
+ -DUSE_FREEDESKTOP_NOTIFICATIONS=ON
+ -DUSE_LIBASS=$(usex libass)
+ -DUSE_NOTIFY=$(usex notifications)
+ -DUSE_OPENGL=$(usex opengl)
+ -DUSE_VULKAN=$(usex vulkan)
+ -DUSE_GLSLC=$(usex shaders)
+ -DUSE_XVIDEO=$(usex xv)
+
+ # ffmpeg
+ -DUSE_FFMPEG_AVDEVICE=$(usex avdevice)
+ -DUSE_FFMPEG_VAAPI=$(usex vaapi)
+ -DUSE_FFMPEG_VDPAU=$(usex vdpau)
+
+ # chiptune
+ -DUSE_CHIPTUNE_GME=$(usex gme)
+ -DUSE_CHIPTUNE_SID=$(usex sid)
+
+ # modules
+ -DUSE_AUDIOFILTERS=$(usex audiofilters)
+ -DUSE_CUVID=$(usex cuvid)
+ -DUSE_INPUTS=$(usex inputs)
+ -DUSE_MODPLUG=$(usex modplug)
+ -DUSE_PIPEWIRE=$(usex pipewire)
+ -DUSE_PORTAUDIO=$(usex portaudio)
+ -DUSE_PULSEAUDIO=$(usex pulseaudio)
+ -DUSE_TAGLIB=$(usex taglib)
+ -DUSE_VIDEOFILTERS=$(usex videofilters)
+ -DUSE_VISUALIZATIONS=$(usex visualizations)
+
+ # extensions
+ -DUSE_EXTENSIONS=$(usex extensions)
+ )
+
+ if use extensions; then
+ # Move inside an if, to remove unused option warning
+ mycmakeargs+=(
+ -DUSE_LASTFM=ON
+ -DUSE_LYRICS=ON
+ -DUSE_MEDIABROWSER=ON
+ -DUSE_MPRIS2=ON
+ )
+ fi
+
+ if [[ ${PV} == *9999 ]]; then
+ mycmakeargs+=( -DUSE_GIT_VERSION=true )
+ else
+ mycmakeargs+=( -DUSE_GIT_VERSION=false )
+ fi
+
+ cmake_src_configure
+}