commit:     82240140e658f0126f97ed9618e2ed163153424c
Author:     Alfred Wingate <parona <AT> protonmail <DOT> com>
AuthorDate: Tue Jan  6 10:59:48 2026 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 10 12:46:16 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82240140

media-video/mkvtoolnix: add 97.0

Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/45277
Closes: https://github.com/gentoo/gentoo/pull/45277
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-video/mkvtoolnix/Manifest               |   2 +
 media-video/mkvtoolnix/mkvtoolnix-97.0.ebuild | 161 ++++++++++++++++++++++++++
 2 files changed, 163 insertions(+)

diff --git a/media-video/mkvtoolnix/Manifest b/media-video/mkvtoolnix/Manifest
index ab9aab00b5d8..a27da6f88dac 100644
--- a/media-video/mkvtoolnix/Manifest
+++ b/media-video/mkvtoolnix/Manifest
@@ -2,3 +2,5 @@ DIST mkvtoolnix-95.0.tar.xz 11746244 BLAKE2B 
83b06e4551778ca12fdf413fe150ba9efc3
 DIST mkvtoolnix-95.0.tar.xz.sig 833 BLAKE2B 
438e3c884dffda81efddcbc01950e21f6187af8c7738d0ebca4500cd82a877fd00873f39f156db99b119a5bb64958d010c6b81758b97b9937882899a56616497
 SHA512 
079c228b6a51ba1e4d535d874adc666ebbdf4830d4f954e78826ea6a4dbe8a36107455d6e0faf3ffd9ab1338b4760f04f2e8ec545130549b72531fedf6821005
 DIST mkvtoolnix-96.0.tar.xz 11749168 BLAKE2B 
d048bbfa9ca4a943f3fe44aa9fd20f12bef5d90090c6ff1a9feb3169f888d4105875fc5bc5d0b930c929883903edeeddfbfb46717e272bd73ab78b093821b158
 SHA512 
10574069e25e05ed4efa348cf905a28a48a10c90e0f0987dd02e01bb743d7346e5e8575788f47caf30a1ef513e1bc7a3efe66e07790f1e04a285c71501d800c7
 DIST mkvtoolnix-96.0.tar.xz.sig 833 BLAKE2B 
dbe5f2f6ecec87a8846e0c0a1da15306009ed8ba41621561334274963e4f3dc6f2d0ed973bbd8e962d2abfd146999de10b36d77401095f60743cd54a2a4184e1
 SHA512 
ad5b8dccbb06cdb02b067e1a2acd7e272a8377c08a21ed0c40b6dd411c97bb573219ef25a9ffc3e0ac0565f4b2803f59a70f22736cbc8ba7e1be7527eb13f2a3
+DIST mkvtoolnix-97.0.tar.xz 11749232 BLAKE2B 
ef229cc84040ec89ff10dbc83b37b65d1082dc911553346ef641b1795d564adfd99912504330312db442d35daad9fc3a9e9ffad3b7550ce8f35d37e6ca9a2dc4
 SHA512 
d6db63f317bef111b5b1df421484a31c2c1a11e68a52dded46612e5d1e3ec2dda3c5d3e48e1ccf8eb54994a08a9d0a155b1f19bc2778e9c011152c5c9a1dc38a
+DIST mkvtoolnix-97.0.tar.xz.sig 833 BLAKE2B 
a2e76c081d6a608e059aacb43d6e463513e06b79c55a338df2a62515acf06a2804a3f9b5042af3f6f52d4a3ee4c457354b1ff85197f332c052473db39969ddd9
 SHA512 
c79e0ea5643ee82a519234045d2f76f3c9a9081d58fec05b17529d53b9bbd20f04e21129e65be099d2ef80cb4860925899327563000bc345e703bca269e85122

diff --git a/media-video/mkvtoolnix/mkvtoolnix-97.0.ebuild 
b/media-video/mkvtoolnix/mkvtoolnix-97.0.ebuild
new file mode 100644
index 000000000000..47ed7c9ec5e3
--- /dev/null
+++ b/media-video/mkvtoolnix/mkvtoolnix-97.0.ebuild
@@ -0,0 +1,161 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic multiprocessing prefix qmake-utils 
toolchain-funcs xdg
+
+if [[ ${PV} == *9999 ]] ; then
+       inherit git-r3
+
+       EGIT_REPO_URI="https://codeberg.org/mbunkus/mkvtoolnix.git";
+       EGIT_SUBMODULES=()
+else
+       inherit verify-sig
+
+       SRC_URI="
+               https://mkvtoolnix.download/sources/${P}.tar.xz
+               verify-sig? ( 
https://mkvtoolnix.download/sources/${P}.tar.xz.sig )
+       "
+       KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+       VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/mkvtoolnix.asc"
+fi
+
+DESCRIPTION="Tools to create, alter, and inspect Matroska files"
+HOMEPAGE="https://mkvtoolnix.download/ https://codeberg.org/mbunkus/mkvtoolnix";
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="dbus debug dvd gui nls pch test"
+# bug #951192
+REQUIRED_USE="dbus? ( gui )"
+RESTRICT="!test? ( test )"
+
+# check NEWS.md for build system changes entries for boost/libebml/libmatroska
+# version requirement updates and other packaging info
+RDEPEND="
+       >=dev-libs/boost-1.74.0:=
+       dev-libs/gmp:=
+       >=dev-libs/libebml-1.4.5:=
+       >=dev-libs/libfmt-8.0.1:=
+       >=dev-libs/pugixml-1.11
+       >=dev-qt/qtbase-6.2:6[dbus?]
+       media-libs/flac:=
+       >=media-libs/libmatroska-1.7.1:=
+       media-libs/libogg
+       media-libs/libvorbis
+       virtual/zlib:=
+       dvd? ( media-libs/libdvdread:= )
+       gui? (
+               app-text/cmark:0=
+               >=dev-qt/qtbase-6.2:6[concurrent,gui,network,widgets]
+               >=dev-qt/qtmultimedia-6.2:6
+               >=dev-qt/qtsvg-6.2:6
+       )
+"
+DEPEND="${RDEPEND}
+       >=dev-cpp/nlohmann_json-3.11.3
+       >=dev-libs/utfcpp-3.1.2
+       test? ( dev-cpp/gtest )
+"
+BDEPEND="
+       app-text/docbook-xsl-stylesheets
+       dev-libs/libxslt
+       dev-ruby/rake
+       virtual/pkgconfig
+       nls? (
+               sys-devel/gettext
+               app-text/po4a
+       )
+"
+
+if [[ ${PV} != *9999 ]] ; then
+       BDEPEND+="verify-sig? ( sec-keys/openpgp-keys-mkvtoolnix )"
+fi
+
+pkg_setup() {
+       if [[ ${MERGE_TYPE} != binary ]]; then
+               # bug #927497
+               # the compiler used for qtbase affects what compiler arguments 
qmake will use
+               if tc-is-gcc; then
+                       expected_spec="linux-g++"
+               elif tc-is-clang; then
+                       expected_spec="linux-clang"
+               fi
+
+               if [[ ${expected_spec} != $(qmake6 -query QMAKE_SPEC) ]]; then
+                       if tc-is-gcc; then
+                               eerror "Detected non-gcc qmake spec but current 
compiler is gcc."
+                       elif tc-is-clang; then
+                               eerror "Detected non-clang qmake spec but 
current compiler is clang."
+                       fi
+                       eerror "Compiler mismatch: dev-qt/qtbase:6 and 
${CATEGORY}/${PN} have to use the same toolchain https://bugs.gentoo.org/927497";
+               fi
+       fi
+}
+
+src_prepare() {
+       default
+
+       if [[ ${PV} == *9999 ]]; then
+               ./autogen.sh || die
+       fi
+
+       # bug #692018
+       sed -i -e 's/pandoc/diSaBlEd/' ac/pandoc.m4 || die
+
+       # bug #928463
+       hprefixify "${S}/ac/ax_docbook.m4"
+
+       eautoreconf
+
+       # remove bundled libs
+       rm -r lib/{fmt,libebml,libmatroska,nlohmann-json,pugixml,utf8-cpp} || 
die
+}
+
+src_configure() {
+       # bug #692322, use system dev-libs/utfcpp
+       append-cppflags -I"${ESYSROOT}"/usr/include/utf8cpp
+
+       local myeconfargs=(
+               $(use_enable dbus)
+               $(use_enable debug)
+               $(usex pch "" --disable-precompiled-headers)
+               $(use_enable gui)
+               $(use_with dvd dvdread)
+               $(use_with nls gettext)
+               #$(use_with nls po4a)
+               --disable-update-check
+               --disable-optimization
+               --with-boost="${ESYSROOT}"/usr
+               --with-boost-libdir="${ESYSROOT}"/usr/$(get_libdir)
+
+               # Qt (of some version) is always needed, even for non-GUI 
builds,
+               # to do e.g. MIME detection. See e.g. bug #844097.
+               # But most of the Qt deps are conditional on a GUI build.
+               --with-qmake6="$(qt6_get_bindir)"/qmake
+       )
+
+       # Work around bug #904710.
+       use nls || export ac_cv_path_PO4A=
+
+       econf "${myeconfargs[@]}"
+}
+
+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
+       dodoc NEWS.md
+       doman doc/man/*.1
+}

Reply via email to