media-video/mkvtoolnix: add live ebuild
authorTim Harder <radhermit@gentoo.org>
Wed, 23 Aug 2017 13:26:45 +0000 (09:26 -0400)
committerTim Harder <radhermit@gentoo.org>
Wed, 23 Aug 2017 14:45:38 +0000 (10:45 -0400)
media-video/mkvtoolnix/mkvtoolnix-15.0.0-r1.ebuild
media-video/mkvtoolnix/mkvtoolnix-9999.ebuild [new file with mode: 0644]

index cecc4e7454dee5616dea3ab7c52615b9a3ad8f35..6afdf1023862aba7d9b212bb2461fe229d507fb2 100644 (file)
@@ -2,15 +2,21 @@
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
-inherit toolchain-funcs versionator multiprocessing autotools
+inherit toolchain-funcs versionator multiprocessing
+
+if [[ ${PV} == "9999" ]] ; then
+       EGIT_REPO_URI="https://github.com/mbunkus/mkvtoolnix.git"
+       inherit git-r3
+else
+       SRC_URI="https://mkvtoolnix.download/sources/${P}.tar.xz"
+       KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+fi
 
 DESCRIPTION="Tools to create, alter, and inspect Matroska files"
 HOMEPAGE="https://mkvtoolnix.download/ https://github.com/mbunkus/mkvtoolnix"
-SRC_URI="https://mkvtoolnix.download/sources/${P}.tar.xz"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
 IUSE="debug pch test qt5"
 
 # check NEWS.md for build system changes entries for boost/libebml/libmatroska
@@ -59,7 +65,7 @@ pkg_pretend() {
 
 src_prepare() {
        default
-       eautoreconf
+       [[ ${PV} == "9999" ]] && { ./autogen.sh || die; }
 }
 
 src_configure() {
diff --git a/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild b/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild
new file mode 100644 (file)
index 0000000..6afdf10
--- /dev/null
@@ -0,0 +1,110 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit toolchain-funcs versionator multiprocessing
+
+if [[ ${PV} == "9999" ]] ; then
+       EGIT_REPO_URI="https://github.com/mbunkus/mkvtoolnix.git"
+       inherit git-r3
+else
+       SRC_URI="https://mkvtoolnix.download/sources/${P}.tar.xz"
+       KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+fi
+
+DESCRIPTION="Tools to create, alter, and inspect Matroska files"
+HOMEPAGE="https://mkvtoolnix.download/ https://github.com/mbunkus/mkvtoolnix"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug pch test qt5"
+
+# check NEWS.md for build system changes entries for boost/libebml/libmatroska
+# version requirement updates and other packaging info
+RDEPEND="
+       >=dev-libs/boost-1.49.0:=
+       >=dev-libs/libebml-1.3.5:=
+       dev-libs/jsoncpp:=
+       dev-libs/pugixml
+       media-libs/flac
+       >=media-libs/libmatroska-1.4.5:=
+       media-libs/libogg
+       media-libs/libvorbis
+       sys-apps/file
+       sys-libs/zlib
+       qt5? (
+               dev-qt/qtcore:5
+               dev-qt/qtgui:5
+               dev-qt/qtnetwork:5
+               dev-qt/qtwidgets:5
+               dev-qt/qtconcurrent:5
+               dev-qt/qtmultimedia:5
+       )
+"
+DEPEND="${RDEPEND}
+       dev-ruby/rake
+       sys-devel/gettext
+       virtual/pkgconfig
+       dev-libs/libxslt
+       app-text/docbook-xsl-stylesheets
+       app-text/po4a
+       test? ( dev-cpp/gtest )
+"
+
+DOCS="AUTHORS NEWS.md README.md"
+
+pkg_pretend() {
+       # https://bugs.gentoo.org/419257
+       local ver=4.6
+       local msg="You need at least GCC ${ver}.x for C++11 range-based 'for' and nullptr support."
+       if ! version_is_at_least ${ver} $(gcc-version); then
+               eerror ${msg}
+               die ${msg}
+       fi
+}
+
+src_prepare() {
+       default
+       [[ ${PV} == "9999" ]] && { ./autogen.sh || die; }
+}
+
+src_configure() {
+       local myconf
+
+       if use qt5 ; then
+               # ac/qt5.m4 finds default Qt version set by qtchooser, bug #532600
+               myconf+=(
+                       --with-moc=/usr/$(get_libdir)/qt5/bin/moc
+                       --with-uic=/usr/$(get_libdir)/qt5/bin/uic
+                       --with-rcc=/usr/$(get_libdir)/qt5/bin/rcc
+                       --with-qmake=/usr/$(get_libdir)/qt5/bin/qmake
+               )
+       fi
+
+       econf \
+               $(use_enable debug) \
+               $(use_enable qt5 qt) \
+               $(usex pch "" --disable-precompiled-headers) \
+               "${myconf[@]}" \
+               --disable-update-check \
+               --disable-optimization \
+               --docdir="${EPREFIX}"/usr/share/doc/${PF} \
+               --with-boost="${EPREFIX}"/usr \
+               --with-boost-libdir="${EPREFIX}"/usr/$(get_libdir)
+}
+
+src_compile() {
+       rake V=1 -j$(makeopts_jobs) || die
+}
+
+src_test() {
+       rake V=1 -j$(makeopts_jobs) tests:unit || die
+       rake V=1 -j$(makeopts_jobs) tests:run_unit || die
+}
+
+src_install() {
+       DESTDIR="${D}" rake -j$(makeopts_jobs) install || die
+
+       einstalldocs
+       doman doc/man/*.1
+}