public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "James Le Cuirot" <chewi@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/makemkv/, media-video/makemkv/files/
Date: Sun, 27 Dec 2015 12:10:08 +0000 (UTC)	[thread overview]
Message-ID: <1451218189.a7865d18b3ecb8fd9fd7da9dc2ad0aba73795d60.chewi@gentoo> (raw)

commit:     a7865d18b3ecb8fd9fd7da9dc2ad0aba73795d60
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 27 12:05:23 2015 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sun Dec 27 12:09:49 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a7865d18

media-video/makemkv: Add Qt5 support, closes bug #569768

Qt5 always trumps Qt4 if it is available. There are no configure
options or variables to control this and there is no publicly
available configure.ac either so we have to selectively patch the raw
configure script directly.

Also make a couple of simplifications. src_configure checked for a
configure script even though there is always one there now. I also
couldn't see any reason for having virtual/opengl as a dependency.

Package-Manager: portage-2.2.26

 media-video/makemkv/files/makemkv-qt4.patch        | 34 ++++++++++++++++++++++
 media-video/makemkv/files/makemkv-qt5.patch        | 28 ++++++++++++++++++
 ...akemkv-1.9.8.ebuild => makemkv-1.9.8-r1.ebuild} | 31 +++++++++++++++-----
 3 files changed, 86 insertions(+), 7 deletions(-)

diff --git a/media-video/makemkv/files/makemkv-qt4.patch b/media-video/makemkv/files/makemkv-qt4.patch
new file mode 100644
index 0000000..cbc2fa0
--- /dev/null
+++ b/media-video/makemkv/files/makemkv-qt4.patch
@@ -0,0 +1,34 @@
+--- makemkv-oss-1.9.8/configure.orig	2015-12-20 16:22:19.000000000 +0000
++++ makemkv-oss-1.9.8/configure	2015-12-26 23:59:44.601387071 +0000
+@@ -5048,6 +5048,7 @@
+ if test "$enable_gui" != "no"; then
+ 
+ 
++: '
+ pkg_failed=no
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for qt5" >&5
+ $as_echo_n "checking for qt5... " >&6; }
+@@ -5105,6 +5106,7 @@
+         fi
+ 	# Put the nasty error message in config.log where it belongs
+ 	echo "$qt5_PKG_ERRORS" >&5
++'
+ 
+ 
+ 
+@@ -5271,6 +5273,7 @@
+ 
+ fi
+ 
++: '
+ else
+ 	qt5_CFLAGS=$pkg_cv_qt5_CFLAGS
+ 	qt5_LIBS=$pkg_cv_qt5_LIBS
+@@ -5283,6 +5286,7 @@
+     QT_MOC="$qt5_host_bins/moc";
+ 
+ fi
++'
+ 
+ QT_INC=$QT_INC
+ 

diff --git a/media-video/makemkv/files/makemkv-qt5.patch b/media-video/makemkv/files/makemkv-qt5.patch
new file mode 100644
index 0000000..58b5e41
--- /dev/null
+++ b/media-video/makemkv/files/makemkv-qt5.patch
@@ -0,0 +1,28 @@
+--- makemkv-oss-1.9.8/configure.orig	2015-12-20 16:22:19.000000000 +0000
++++ makemkv-oss-1.9.8/configure	2015-12-27 00:05:18.659860655 +0000
+@@ -5108,6 +5108,7 @@
+ 
+ 
+ 
++: '
+ pkg_failed=no
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for qt4" >&5
+ $as_echo_n "checking for qt4... " >&6; }
+@@ -5257,7 +5258,9 @@
+      	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ $as_echo "no" >&6; }
+ 
++'
+       as_fn_error $? "Qt library (version 5 or 4) is required to build GUI" "$LINENO" 5
++: '
+ 
+ else
+ 	qt4_CFLAGS=$pkg_cv_qt4_CFLAGS
+@@ -5270,6 +5273,7 @@
+       QT_MOC=`$PKG_CONFIG --variable moc_location "QtCore" 2>/dev/null`;
+ 
+ fi
++'
+ 
+ else
+ 	qt5_CFLAGS=$pkg_cv_qt5_CFLAGS

diff --git a/media-video/makemkv/makemkv-1.9.8.ebuild b/media-video/makemkv/makemkv-1.9.8-r1.ebuild
similarity index 85%
rename from media-video/makemkv/makemkv-1.9.8.ebuild
rename to media-video/makemkv/makemkv-1.9.8-r1.ebuild
index 74150ad..252dc73 100644
--- a/media-video/makemkv/makemkv-1.9.8.ebuild
+++ b/media-video/makemkv/makemkv-1.9.8-r1.ebuild
@@ -16,7 +16,8 @@ SRC_URI="http://www.makemkv.com/download/${MY_P}.tar.gz
 LICENSE="LGPL-2.1 MPL-1.1 MakeMKV-EULA openssl"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="libav multilib qt4"
+IUSE="libav multilib qt4 qt5"
+REQUIRED_USE="?? ( qt4 qt5 )"
 
 QA_PREBUILT="opt/bin/makemkvcon opt/bin/mmdtsdec"
 
@@ -26,11 +27,16 @@ RDEPEND="
 	dev-libs/openssl:0
 	sys-libs/zlib
 	qt4? (
-		virtual/opengl
 		dev-qt/qtcore:4
 		dev-qt/qtdbus:4
 		dev-qt/qtgui:4
 	)
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	)
 	!libav? ( >=media-video/ffmpeg-1.0.0:0= )
 	libav? ( >=media-video/libav-0.8.9:0= )
 "
@@ -40,14 +46,25 @@ S=${WORKDIR}/makemkv-oss-${PV}
 
 src_prepare() {
 	epatch "${FILESDIR}"/${PN}-{makefile,path}.patch
+
+	# Qt5 always trumps Qt4 if it is available. There are no configure
+	# options or variables to control this and there is no publicly
+	# available configure.ac either.
+	if use qt4; then
+		epatch "${FILESDIR}"/${PN}-qt4.patch
+	elif use qt5; then
+		epatch "${FILESDIR}"/${PN}-qt5.patch
+	fi
 }
 
 src_configure() {
+	# See bug #439380.
 	replace-flags -O* -Os
-	local args=""
-	use qt4 || args="--disable-gui"
-	if [[ -x ${ECONF_SOURCE:-.}/configure ]] ; then
-		econf $args
+
+	if use qt4 || use qt5; then
+		econf --enable-gui
+	else
+		econf --disable-gui
 	fi
 }
 
@@ -68,7 +85,7 @@ src_install() {
 	dosym libmmbd.so.0    /usr/$(get_libdir)/libmmbd.so.0.${PV}
 	into /opt
 
-	if use qt4; then
+	if use qt4 || use qt5; then
 		dobin out/makemkv
 
 		local res


             reply	other threads:[~2015-12-27 12:10 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-27 12:10 James Le Cuirot [this message]
  -- strict thread matches above, loose matches on Subject: below --
2016-05-08 16:28 [gentoo-commits] repo/gentoo:master commit in: media-video/makemkv/, media-video/makemkv/files/ James Le Cuirot
2017-03-26 20:28 James Le Cuirot
2018-04-30 22:30 James Le Cuirot
2018-05-14 21:48 James Le Cuirot
2020-10-02 20:43 James Le Cuirot
2021-03-30 22:32 James Le Cuirot
2023-09-26 20:27 James Le Cuirot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1451218189.a7865d18b3ecb8fd9fd7da9dc2ad0aba73795d60.chewi@gentoo \
    --to=chewi@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox