diff options
| -rw-r--r-- | media-video/mkvtoolnix/Manifest | 2 | ||||
| -rw-r--r-- | media-video/mkvtoolnix/mkvtoolnix-95.0.ebuild | 161 | ||||
| -rw-r--r-- | media-video/mkvtoolnix/mkvtoolnix-9999.ebuild | 4 |
3 files changed, 165 insertions, 2 deletions
diff --git a/media-video/mkvtoolnix/Manifest b/media-video/mkvtoolnix/Manifest index da9e8db78ecb..17d302644ce3 100644 --- a/media-video/mkvtoolnix/Manifest +++ b/media-video/mkvtoolnix/Manifest @@ -4,3 +4,5 @@ DIST mkvtoolnix-93.0.tar.xz 11423512 BLAKE2B a5bc9e01de4404f596dcbf897cffb59147d DIST mkvtoolnix-93.0.tar.xz.sig 833 BLAKE2B 78968f7b6c9a97029f7ddbbac81c3073df68225fa62b03d9e739f050a01ec234ea7b503a215d556f7dae93dbb4038b1d54e84a06d3bfe0a37d5521306c6ef701 SHA512 4a7cf98c32c8c61287d28b427b571c892a3d52ebe5406e173f39b2dc2c012828499cc5c7229e55fd5de529ceaeec4a7845c4420887fe25e725b57fc2744796cc DIST mkvtoolnix-94.0.tar.xz 11708096 BLAKE2B 1ec535f56c8840594ba98d0ee0f1c2d0c2c4777a9358b98ebd9a32724aff5c62cb0c983653feeb939c7bf9ca94c13b51c745e6c46075cba6d90667bef94d9b75 SHA512 72b6c8f42ffe9c29032b412bf45371fbbd5a0db4f082bb5c0d3850ee378a42ec33515487565ec52232f1f30f3e9dac2778f5022caac616c718034ca79137b9ee DIST mkvtoolnix-94.0.tar.xz.sig 833 BLAKE2B 584e806f696039641f1c9affc8981cc58165ca8f8991e2a37e34594cf8aa22781341fa625768927c6d4f89cdd1db658ad5f30a8407e2ec776d9c5bc6e27ebdb2 SHA512 47a1be7b3f9c564bdc61c2b26ece6fdcc07cb4e7793e6b8caf91373ae505bc20f363e8163cb5f94122a44bef3d3da84427b73bda888185e509ef601e2c91b84a +DIST mkvtoolnix-95.0.tar.xz 11746244 BLAKE2B 83b06e4551778ca12fdf413fe150ba9efc3e981563ca6582e656a6e6c11f4a60ce7a7511fad8819bfe719acc18a7e23ea60439e05151f88e92c12857a194949c SHA512 e8aaccd4fb7a4cd11fadbfff230df85c68ea8af60f9c51536cb11c2bb58cce823b52e47123aa829414a776baeeb91ebfab81bf67075c387fb87171e63c1b014f +DIST mkvtoolnix-95.0.tar.xz.sig 833 BLAKE2B 438e3c884dffda81efddcbc01950e21f6187af8c7738d0ebca4500cd82a877fd00873f39f156db99b119a5bb64958d010c6b81758b97b9937882899a56616497 SHA512 079c228b6a51ba1e4d535d874adc666ebbdf4830d4f954e78826ea6a4dbe8a36107455d6e0faf3ffd9ab1338b4760f04f2e8ec545130549b72531fedf6821005 diff --git a/media-video/mkvtoolnix/mkvtoolnix-95.0.ebuild b/media-video/mkvtoolnix/mkvtoolnix-95.0.ebuild new file mode 100644 index 000000000000..22613794bad6 --- /dev/null +++ b/media-video/mkvtoolnix/mkvtoolnix-95.0.ebuild @@ -0,0 +1,161 @@ +# Copyright 1999-2025 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 + sys-libs/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 +} diff --git a/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild b/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild index 51b487c445ed..22613794bad6 100644 --- a/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild +++ b/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild @@ -17,7 +17,7 @@ else https://mkvtoolnix.download/sources/${P}.tar.xz verify-sig? ( https://mkvtoolnix.download/sources/${P}.tar.xz.sig ) " - KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/mkvtoolnix.asc" fi @@ -35,7 +35,7 @@ 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:= + >=dev-libs/boost-1.74.0:= dev-libs/gmp:= >=dev-libs/libebml-1.4.5:= >=dev-libs/libfmt-8.0.1:= |
