GentooRepository/media-video/makemkv/makemkv-1.17.1.ebuild

128 lines
3.0 KiB
Bash

# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic linux-info xdg
MY_P=makemkv-oss-${PV}
MY_PB=makemkv-bin-${PV}
DESCRIPTION="Tool for ripping and streaming Blu-ray, HD-DVD and DVD discs"
HOMEPAGE="http://www.makemkv.com/"
SRC_URI="http://www.makemkv.com/download/${MY_P}.tar.gz
http://www.makemkv.com/download/${MY_PB}.tar.gz"
LICENSE="GPL-2 LGPL-2.1 MPL-1.1 MakeMKV-EULA openssl"
SLOT="0"
KEYWORDS="-* ~amd64 ~x86"
IUSE="+gui +java"
RESTRICT="bindist mirror"
QA_PREBUILT="usr/bin/makemkvcon usr/bin/mmdtsdec"
DEPEND="
dev-libs/expat
dev-libs/openssl:0=[-bindist(-)]
>=media-video/ffmpeg-1.0.0:0=
<sys-libs/glibc-2.36
sys-libs/zlib
gui? (
dev-qt/qtcore:5
dev-qt/qtdbus:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
)
"
RDEPEND="
${DEPEND}
java? ( >=virtual/jre-1.8 )
"
BDEPEND="
virtual/pkgconfig
gui? ( dev-qt/qtcore:5 )
"
CONFIG_CHECK="~CHR_DEV_SG"
S="${WORKDIR}/${MY_P}"
PATCHES=(
"${FILESDIR}"/${PN}-path.patch
)
src_prepare() {
default
if ! use java; then
rm -v "${WORKDIR}/${MY_PB}"/src/share/blues.* || die
fi
}
src_configure() {
# See bug #439380.
replace-flags -O* -Os
econf \
--enable-debug \
--disable-noec \
$(use_enable gui) \
$(use_enable gui qt5)
}
src_install() {
local myarch
case "${ARCH}" in
arm) myarch=armel ;;
x86) myarch=i386 ;;
*) myarch=${ARCH} ;;
esac
default
# add missing symlinks for QA
dosym libdriveio.so.0 /usr/$(get_libdir)/libdriveio.so.0.${PV}
dosym libdriveio.so.0 /usr/$(get_libdir)/libdriveio.so
dosym libmakemkv.so.1 /usr/$(get_libdir)/libmakemkv.so.1.${PV}
dosym libmakemkv.so.1 /usr/$(get_libdir)/libmakemkv.so
dosym libmmbd.so.0 /usr/$(get_libdir)/libmmbd.so
dosym libmmbd.so.0 /usr/$(get_libdir)/libmmbd.so.0.${PV}
cd "${WORKDIR}"/${MY_PB} || die
# install prebuilt bin
dobin bin/"${myarch}"/makemkvcon
# additional tool is actually part of makemkvcon
dosym makemkvcon /usr/bin/sdftool
# install profiles and locales
insinto /usr/share/MakeMKV
doins src/share/*
# install unofficial man page
doman "${FILESDIR}"/makemkvcon.1
}
pkg_postinst() {
xdg_pkg_postinst
elog "While MakeMKV is in beta mode, upstream has provided a license"
elog "to use if you do not want to purchase one."
elog ""
elog "See this forum thread for more information, including the key:"
elog "https://www.makemkv.com/forum/viewtopic.php?f=5&t=1053"
elog ""
elog "Note that beta license may have an expiration date and you will"
elog "need to check for newer licenses/releases. "
elog ""
elog "We previously said to copy default.mmcp.xml to ~/.MakeMKV/. This"
elog "is no longer necessary and you should delete it from there to"
elog "avoid warning messages."
elog ""
elog "MakeMKV can also act as a drop-in replacement for libaacs and"
elog "libbdplus, allowing transparent decryption of a wider range of"
elog "titles under players like VLC and mplayer. To enable this, set"
elog "the following variables when launching the player:"
elog "LIBAACS_PATH=libmmbd LIBBDPLUS_PATH=libmmbd"
}