summaryrefslogtreecommitdiff
path: root/media-video/mkvtoolnix
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-07-09 15:43:36 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-07-09 15:43:36 +0100
commit2719f73b6813d11d13a9650cdd2ab8ec6e69385d (patch)
tree8c816148bcbd22757d892089c989ae614eae4f5a /media-video/mkvtoolnix
parent0f558761aa2dee1017b4751e4017205e015a9560 (diff)
gentoo resync : 09.07.2022
Diffstat (limited to 'media-video/mkvtoolnix')
-rw-r--r--media-video/mkvtoolnix/Manifest13
-rw-r--r--media-video/mkvtoolnix/files/mkvtoolnix-68.0.0-fmt-9.patch293
-rw-r--r--media-video/mkvtoolnix/mkvtoolnix-60.0.0.ebuild1
-rw-r--r--media-video/mkvtoolnix/mkvtoolnix-61.0.0.ebuild1
-rw-r--r--media-video/mkvtoolnix/mkvtoolnix-64.0.0.ebuild1
-rw-r--r--media-video/mkvtoolnix/mkvtoolnix-67.0.0.ebuild1
-rw-r--r--media-video/mkvtoolnix/mkvtoolnix-68.0.0-r3.ebuild133
-rw-r--r--media-video/mkvtoolnix/mkvtoolnix-9999.ebuild1
8 files changed, 439 insertions, 5 deletions
diff --git a/media-video/mkvtoolnix/Manifest b/media-video/mkvtoolnix/Manifest
index 2f7273525c6d..b796e4c2378a 100644
--- a/media-video/mkvtoolnix/Manifest
+++ b/media-video/mkvtoolnix/Manifest
@@ -2,15 +2,18 @@ AUX mkvtoolnix-49.0.0-qt5dbus.patch 1442 BLAKE2B 041c33dcb691377b4b50a4c24f1eac5
AUX mkvtoolnix-56.1.0-optlevel.patch 607 BLAKE2B 62c3ef3717a54030b1acc586e9468f4d8d783755f7762ccebe18b0f8b0214268477a5a218b2fc02f3e2f770664507d43119f13046a31c94f865f01d0000a8a68 SHA512 b8eec05844aa8ef4f27416a78f5231496e34a112126e8ef403d18cab26b94756bd60323b51cf0d59a5a44d7b379bbf09f6b7b1b7e29b9282a0a2e82a5b3f325e
AUX mkvtoolnix-58.0.0-qt5dbus.patch 1500 BLAKE2B f85f6a50bd4d4f44470ec6f85729cfca22518859b34e2cf6e1dac25a35d58170b626afe3a1f12f41b1f2d34d4763ab3b180139b402675071794a0dcd29503209 SHA512 6c6ffc83f6c4ed482347cc172467189add3662430a029d74e94d1373a1f0e519fced494812691d7b38c054bc010f1c670f1f6be97819fc142c402d5264c3595e
AUX mkvtoolnix-67.0.0-no-uic-qtwidgets.patch 2494 BLAKE2B 1d23ca6e908947d80e3ea7567508714cd73461a7571dda88a227bf9d4ca3ec86113ad596ff64dc6bfea641c8b097fffa1b4b359a17f5b24c0305c7e6628103b7 SHA512 982953a7f992def139140298a5a6b2ceeae6afaf5123b8e12c46523ab1f799994aa2f5d435bebb8091ca63e56bb44310a39a6382c313f8e4083cfea67daff41d
+AUX mkvtoolnix-68.0.0-fmt-9.patch 11851 BLAKE2B 936383fa62ce4bf2d3a08e62854c3c520a2bff8d56efc59c1ab6e75326f06a6af50e716513ca29e080f4579e2501b64d8a502c1d73c56fe270189676deaaf065 SHA512 7431eea6a3c559a802ce07a19e28588bea0842185748c03be1e9f2e70056465dea07ad7dc77cfbc18d39d046b6cdddd70d0cf24748b3fdae69881bde434cacfb
DIST mkvtoolnix-57.0.0.tar.xz 7635780 BLAKE2B e0253dc0f48b0c98ee30590560daecbb7cef19e0f92f5baa4694c829c75f28146f7cde58a85a02575b314c2f94efc048003e51f8f6b29abeff2ca1a8d1f28a18 SHA512 583cd9148a361f0886a3e18f32597a980b5ca56d1bba95b36ca613ee291f2cb3d95a0c749a32e6fa480e8dc8f8375e2bd04a1c4b21fd15d8056d8bb2d6082b99
DIST mkvtoolnix-60.0.0.tar.xz 7657960 BLAKE2B 094c13ac7e73e79f3cc7eae0768625482c4808a4323239a93de34d1406583bfe676d71855dd1f7eae9a8a0ff0a7badf50c04c71f9d2fbb4afd9ff5f05b9353ea SHA512 90bbb95c3a7a91bd47f76aaec9459a1f6f26a381ff03db1047c0fdb41cb87bdd96160c448152357a2b306adbd26f478112ac5d5e8215ee37331a15fc89fa43c3
DIST mkvtoolnix-61.0.0.tar.xz 7662500 BLAKE2B de9d73658fe779b34b21fded8e6676b76fed5ce5ecd598aeff12e8c4f120353f63413f260bacc30c0a102a4eb6d4b907feaabdd84d80d20469a3ae8341bce5f1 SHA512 9f35b5af8784eb4b92b437f41b5df677aa7fc859827eaef4d0e2d8531ad9908331f70a852c7e6e965a5f8cec47b38c6c91b8fbdbcaee0edca54f8cbb000ba582
DIST mkvtoolnix-64.0.0.tar.xz 7700012 BLAKE2B f0c64786fdc3d05915650a08ca398dc7f5356b9a9ce9cb108fb40a4394a7518dd45143717fde7af1dccd3e7e43d343f81d69633c78f1201670924257529baede SHA512 252fdf0a9497d34f2a407ca0d3e584d1cd5a2f566b793a3a6b9af8473855d89e55ce79a8b4aff71d5a25f7a15ca991f84a3c4441168553af9feffdfe75e19844
DIST mkvtoolnix-67.0.0.tar.xz 7791720 BLAKE2B 815172f1e120d90ec33cbc6dac1bb3aad793edc0b629f0bab9400a0732d3b692f983d7eca82c61c453ccd245dea948d0950bcb357e3104d2012554871e09c80c SHA512 eed390cb305b5fcaddf11d68a9021f9ddc22a62d1eb95f4c0a34161a7662dd62495c87193a2d951f0fe30fb9a6b5b93f06ed7fedc24ed674da531f2c2317c997
+DIST mkvtoolnix-68.0.0.tar.xz 10911424 BLAKE2B e4704592212aa919a7cbd62b3906b5af6c4bb88293299e93a4ad65cc8857615b1654ed554c17daf60e1b001d8e5265afda808e81ee51f372be2f738d737fdd4d SHA512 fd078208f5ef0438f06b3bb19c3f3c477f87561997a847c56a731265ee9627b089cc568e1d31a9a2c7e46f63aeeabccf98a27694b6b4b1586ba93f7656d20838
EBUILD mkvtoolnix-57.0.0.ebuild 2969 BLAKE2B 402ed70eb494854ce19cebf3e78809b8f96df652dcdaa385210eb0b7417a342aed1065245ffc06a76b62c05a5be009ff38f562049fc07ad2f7100f32e4fbc8d9 SHA512 2f6ee7dbfb8702dcd1cb9c358906e0fc850f8cd3d209ae21144311f0cef58f5a037cb3d748390206ec65b026ac22797636f1d11b81afc4c7ba75ed4a0fbf4d37
-EBUILD mkvtoolnix-60.0.0.ebuild 2687 BLAKE2B 97fdbe6d11985f608d996dc43954480ea3a007ad753a610836ad62d04977c319a2ebee16af88d4b1072032a54356088705cac8a4acabad1a7a94045710b6b7c3 SHA512 7e80c992f5bab78ba16a4a8540d5f3a54883d3a9ee58d4690964f2d07cf829d4762cc21941bde4ead37528d81c45f73d72996235bc7137bd7f39493be897818f
-EBUILD mkvtoolnix-61.0.0.ebuild 2707 BLAKE2B f2a49d0826ba6790ae810dde53e798490312b8ce89257ebcf69f0f1a5e0cebf76a77098920fa2d07d4f6a84ee2eeeeb0546f006423e941332b664707d4177acf SHA512 c78a908c2be0e394ae42100b4196347e79903df925e2c436cc6140bf0d54e4f18ee798bd2f4e6643f202a0106d57f2fadbc2d9724f938126f98c2f960d6f4acc
-EBUILD mkvtoolnix-64.0.0.ebuild 2717 BLAKE2B b5711556f9c73bda4a13cdb51e01db8a7c98966cb5579ff6c8cb01169e979a11e516c8e0d3884ffb1b5f2e941b885182c2b7b031deb1742798a06f0339ca1e72 SHA512 b6c8a32ef2c59cdf1a9587ec3d48e1d89f319c8b1c41caa6729f6baf7e5d215bf28c86ce35cfd00ca34908e06245fb400a0f69c3915a8bee5095922fb2a1b2db
-EBUILD mkvtoolnix-67.0.0.ebuild 2927 BLAKE2B c2fdc8769179233ce9de4ab683b27c1e73e58af440907817cb08ddbe33598d0ed67f96831b9250dcf510ec659edc6a15be39f3546eae41371137a0bcd96d7b73 SHA512 2856e3ae8d784b23497ac56be624e0830974fe2339ac031f7cda247ad772ab8052972a62964e788ec06d2269efcab5e5cfa74a09f801ff3baee400cca481ce96
-EBUILD mkvtoolnix-9999.ebuild 2931 BLAKE2B baf0ebefaf8adbb46010c76d55f71d1950453d4f4ef32821be0d646cb8428d5bd9884e0ff50fc8ce9baf4362e5cd2f9dc5e3e38bdab72958dcddba19399dedf8 SHA512 8f93889fd7e55f80d55ab4cfbf7b89b7cc683c09b0eb7646d740ecf164d417434ffde452dbfd069a90eccfb1cc8b0ebf79ab6b7ec12cfca6e4146027a319fee3
+EBUILD mkvtoolnix-60.0.0.ebuild 2713 BLAKE2B 8b6c460647fad06911cf9f6f4cbbd1e0122470eea052d9693f76ccffe7500287713aeb8199994d2642ff4081e291e0b686302d10a81fb6197cf1d25705efd084 SHA512 6799f52699577880d685ecb602d5a1788fbb7e7948a37cbd4e712f07705fe172b0288e2ef35f5d542e96991940567d6905113f8d160d0ecad841cf2a7b1e007a
+EBUILD mkvtoolnix-61.0.0.ebuild 2733 BLAKE2B 4b3262642f5bf64e60ee3e5537f65881ec6287113f1ba7d160c118454f425a87dc257ee73dbb9d0a7b96f72551c6ae8d337b9d8120f5ec86519122375b9370c5 SHA512 fdddc73a07386bd68d0b85894f384e88405f09285b78210a31fdb2b2a1d1341d04b9329f94872480482a24aa60ad8c261df4c2e6b5d82b570526f0b263df168c
+EBUILD mkvtoolnix-64.0.0.ebuild 2743 BLAKE2B 128120db4c38bea554f5a19ceecee021cd9dac3e5b3771a901dbcc2180dad5ead753f53a373323a8b86d6ca18023f441253325174ae9cbd7b014cccb933734e4 SHA512 91fa7c061c2be25ab775156a163c552690d5f91ce797988e9f24689a0ccfc2a612dd1f7eb0dc2b4706cb16060f8f1d2e15c8db36d9ae298fbd94e00f51ff7afd
+EBUILD mkvtoolnix-67.0.0.ebuild 2953 BLAKE2B 3c3c1b2ca1234d7bec20a30ad859673be073655a8182021d4b1ae20e2132da41a949d5f9a8203cd466f0fe1008aa0a3778fff243328c9ed1119e84c9a916bbb6 SHA512 c3d1772e7363c6ca4c9760e6a40c87141d3da03e24fddb98255204b1320dbf104525082738a2a3c653acdf857ac6f868b5e6527e199748e9e86f75f68eae2845
+EBUILD mkvtoolnix-68.0.0-r3.ebuild 2980 BLAKE2B a7319bb5c1d79c2aae66e770ca1b47c7b31c8fcc4493464e5858d5b95bc7007cf57d1150d8d86e400d7e346fd410076461450ea605a6487269f37a03d57f0fdc SHA512 ae05fc55bc96b737dbbba190c8290fce78d9a745522fc5ac5c1e766ee80ab4cee2a72894fa236fab2858a50c5819cf9c9120a4cf70defb5b1e671a05ade08dbe
+EBUILD mkvtoolnix-9999.ebuild 2948 BLAKE2B fb49d9e001092d07f347ec622247943d8a06b1b31d9b2ecf80bd2009d8e37118c6cc1751d2e5cf6529fa73cb1e73879c431d1329576525636a093fdbee7afe18 SHA512 8d5b9e3d413ce32b352f0dbc35c153f2b5dc765912bbd39597b7bcebdfe99966964c75ffe3f2ceb614d767a4557ddf2e979b702441e5929fb8d2441f8670d42b
MISC metadata.xml 256 BLAKE2B ff2b5536809c94dc64867bca73d779a31bd343559cd65520c9b5684091734b3ccf7bf495335890df5533857480794cb3258566e5836e8dce7514b6833ba93f37 SHA512 b7f3d0564d06254ff552beec9594236b84ebc3ad87adab673f68963bcc4dfbf2e29b401e75486ba41b9b526de74b73f65e9d5e901221f810363497aa694c8567
diff --git a/media-video/mkvtoolnix/files/mkvtoolnix-68.0.0-fmt-9.patch b/media-video/mkvtoolnix/files/mkvtoolnix-68.0.0-fmt-9.patch
new file mode 100644
index 000000000000..a0e3c1780db9
--- /dev/null
+++ b/media-video/mkvtoolnix/files/mkvtoolnix-68.0.0-fmt-9.patch
@@ -0,0 +1,293 @@
+https://gitlab.com/mbunkus/mkvtoolnix/-/commit/1e1076e43fe8f38e33246fff3ce8651a93c371d9
+https://bugs.gentoo.org/856700
+
+From: Moritz Bunkus <mo@bunkus.online>
+Date: Thu, 7 Jul 2022 13:11:34 +0200
+Subject: [PATCH] fix compilation with fmt v9.0.0
+
+Prior to v9 all types that were outputtable via `operator<<` to
+`std::ostream` could be formatted. v9 changed that to require explicit
+tagging of those types that should work this way. This commit adds
+those tags for the types that are currently formatted via fmt.
+
+Fixes #3366.
+--- a/src/common/aac.h
++++ b/src/common/aac.h
+@@ -221,3 +221,7 @@ protected:
+ using parser_cptr = std::shared_ptr<parser_c>;
+
+ } // namespace mtx::aac
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<mtx::aac::header_c> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/bcp47.h
++++ b/src/common/bcp47.h
+@@ -176,3 +176,8 @@ struct hash<mtx::bcp47::language_c> {
+ };
+
+ } // namespace mtx::bcp47
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<mtx::bcp47::language_c::extension_t> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::bcp47::language_c> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/bluray/track_chapter_names.cpp
++++ b/src/common/bluray/track_chapter_names.cpp
+@@ -18,6 +18,7 @@
+ #include "common/bluray/track_chapter_names.h"
+ #include "common/bluray/util.h"
+ #include "common/debugging.h"
++#include "common/path.h"
+ #include "common/qt.h"
+ #include "common/xml/xml.h"
+
+--- a/src/common/error.h
++++ b/src/common/error.h
+@@ -45,3 +45,7 @@ operator <<(std::ostream &out,
+ }
+
+ }
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<mtx::exception> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/fourcc.h
++++ b/src/common/fourcc.h
+@@ -83,3 +83,7 @@ operator <<(std::ostream &out,
+ out << fourcc.str();
+ return out;
+ }
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<fourcc_c> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/kax_analyzer.h
++++ b/src/common/kax_analyzer.h
+@@ -239,3 +239,7 @@ public:
+ virtual void debug_abort_process();
+ };
+ using console_kax_analyzer_cptr = std::shared_ptr<console_kax_analyzer_c>;
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<mtx::kax_analyzer_x> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/math_fwd.h
++++ b/src/common/math_fwd.h
+@@ -18,6 +18,11 @@
+ using mtx_mp_rational_t = boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, boost::multiprecision::et_off>;
+ using mtx_mp_int_t = boost::multiprecision::number<boost::multiprecision::backends::gmp_int, boost::multiprecision::et_off>;
+
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<mtx_mp_rational_t> : ostream_formatter {};
++template <> struct fmt::formatter<mtx_mp_int_t> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
++
+ namespace mtx {
+
+ // This conversion function exists to work around incomplete
+--- a/src/common/mm_io_x.h
++++ b/src/common/mm_io_x.h
+@@ -155,3 +155,16 @@ operator <<(std::ostream &out,
+ }
+
+ }}
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<mtx::mm_io::exception> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::mm_io::end_of_file_x> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::mm_io::seek_x> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::mm_io::read_write_x> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::mm_io::open_x> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::mm_io::wrong_read_write_access_x>: ostream_formatter {};
++template <> struct fmt::formatter<mtx::mm_io::insufficient_space_x> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::mm_io::create_directory_x> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::mm_io::text::exception> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::mm_io::text::invalid_utf8_char_x>: ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/opus.h
++++ b/src/common/opus.h
+@@ -91,3 +91,9 @@ operator <<(std::ostream &out,
+ }
+
+ }
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<mtx::opus::decode_error> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::opus::id_header_t> : ostream_formatter {};
++template <> struct fmt::formatter<mtx::opus::toc_t> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/path.h
++++ b/src/common/path.h
+@@ -36,3 +36,7 @@ std::filesystem::path absolute(std::filesystem::path const &p);
+ void create_directories(std::filesystem::path const &path, std::error_code &error_code);
+
+ } // namespace mtx::fs
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<std::filesystem::path> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/qt.h
++++ b/src/common/qt.h
+@@ -102,3 +102,7 @@ operator <<(std::wostream &out,
+ out << string.toStdWString();
+ return out;
+ }
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<QString> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/strings/formatting.h
++++ b/src/common/strings/formatting.h
+@@ -129,3 +129,7 @@ operator <<(std::ostream &out,
+ out << mtx::string::format_timestamp(timestamp);
+ return out;
+ }
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<basic_timestamp_c<int64_t>> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/common/translation.h
++++ b/src/common/translation.h
+@@ -80,4 +80,8 @@ operator <<(std::ostream &out,
+ return out;
+ }
+
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<translatable_string_c> : ostream_formatter {};
++#endif
++
+ void init_locales(std::string locale = "");
+--- a/src/input/r_flac.cpp
++++ b/src/input/r_flac.cpp
+@@ -240,7 +240,7 @@ flac_reader_c::handle_picture_metadata(FLAC__StreamMetadata const *metadata) {
+ mxdebug_if(m_debug, fmt::format("flac_reader: MIME type: {0}\n", attachment->mime_type));
+ mxdebug_if(m_debug, fmt::format("flac_reader: data length: {0}\n", picture.data_length));
+ mxdebug_if(m_debug, fmt::format("flac_reader: ID: {0}\n", m_attachment_id));
+- mxdebug_if(m_debug, fmt::format("flac_reader: mode: {0}\n", attach_mode));
++ mxdebug_if(m_debug, fmt::format("flac_reader: mode: {0}\n", static_cast<unsigned int>(attach_mode)));
+
+ if (attachment->mime_type.empty() || attachment->name.empty())
+ return;
+@@ -276,7 +276,7 @@ flac_reader_c::flac_metadata_cb(const FLAC__StreamMetadata *metadata) {
+ : metadata->type == FLAC__METADATA_TYPE_VORBIS_COMMENT ? "VORBIS COMMENT"
+ : metadata->type == FLAC__METADATA_TYPE_CUESHEET ? "CUESHEET"
+ : "UNDEFINED",
+- metadata->type, metadata->length));
++ static_cast<unsigned int>(metadata->type), metadata->length));
+ break;
+ }
+ }
+--- a/src/input/r_flv.h
++++ b/src/input/r_flv.h
+@@ -173,3 +173,8 @@ protected:
+
+ unsigned int add_track(char type);
+ };
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<flv_header_t> : ostream_formatter {};
++template <> struct fmt::formatter<flv_tag_c> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/input/r_mpeg_ps.h
++++ b/src/input/r_mpeg_ps.h
+@@ -244,3 +244,8 @@ private:
+ void sort_tracks();
+ void calculate_global_timestamp_offset();
+ };
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<mpeg_ps_id_t> : ostream_formatter {};
++template <> struct fmt::formatter<mpeg_ps_packet_c> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/input/r_ogm_flac.cpp
++++ b/src/input/r_ogm_flac.cpp
+@@ -104,7 +104,7 @@ fhe_metadata_cb(const FLAC__StreamDecoder *,
+ : metadata->type == FLAC__METADATA_TYPE_VORBIS_COMMENT ? "VORBIS COMMENT"
+ : metadata->type == FLAC__METADATA_TYPE_CUESHEET ? "CUESHEET"
+ : "UNDEFINED",
+- metadata->type, metadata->length));
++ static_cast<unsigned int>(metadata->type), metadata->length));
+ break;
+ }
+ }
+--- a/src/input/r_qtmp4.h
++++ b/src/input/r_qtmp4.h
+@@ -590,3 +590,7 @@ protected:
+
+ virtual void process_atom(qt_atom_t const &parent, int level, std::function<void(qt_atom_t const &)> const &handler);
+ };
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<qt_atom_t> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/merge/item_selector.h
++++ b/src/merge/item_selector.h
+@@ -139,3 +139,7 @@ operator <<(std::ostream &out,
+
+ return out;
+ }
++
++#if FMT_VERSION >= 90000
++template <typename T> struct fmt::formatter<item_selector_c<T>> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/propedit/attachment_target.cpp
++++ b/src/propedit/attachment_target.cpp
+@@ -83,14 +83,14 @@ attachment_target_c::dump_info()
+ " selector_num_arg: {6}\n"
+ " selector_string_arg: {7}\n",
+ m_file_name,
+- m_command,
++ static_cast<unsigned int>(m_command),
+ ac_add == m_command ? "add"
+ : ac_delete == m_command ? "delete"
+ : ac_replace == m_command ? "replace"
+ : ac_update == m_command ? "update"
+ : "unknown",
+ m_options,
+- m_selector_type,
++ static_cast<unsigned int>(m_selector_type),
+ st_id == m_selector_type ? "ID"
+ : st_uid == m_selector_type ? "UID"
+ : st_name == m_selector_type ? "name"
+--- a/src/propedit/attachment_target.h
++++ b/src/propedit/attachment_target.h
+@@ -130,3 +130,7 @@ operator <<(std::ostream &out,
+
+ return out;
+ }
++
++#if FMT_VERSION >= 90000
++template <> struct fmt::formatter<attachment_target_c::options_t> : ostream_formatter {};
++#endif // FMT_VERSION >= 90000
+--- a/src/propedit/tag_target.cpp
++++ b/src/propedit/tag_target.cpp
+@@ -104,10 +104,10 @@ tag_target_c::dump_info()
+ " selection_track_type: {3}\n"
+ " track_uid: {4}\n"
+ " file_name: {5}\n",
+- static_cast<int>(m_operation_mode),
+- static_cast<int>(m_selection_mode),
++ static_cast<unsigned int>(m_operation_mode),
++ static_cast<unsigned int>(m_selection_mode),
+ m_selection_param,
+- m_selection_track_type,
++ static_cast<unsigned int>(m_selection_track_type),
+ m_track_uid,
+ m_file_name));
+
+--- a/src/propedit/track_target.cpp
++++ b/src/propedit/track_target.cpp
+@@ -78,9 +78,9 @@ track_target_c::dump_info()
+ " selection_track_type: {2}\n"
+ " track_uid: {3}\n"
+ " file_name: {4}\n",
+- static_cast<int>(m_selection_mode),
++ static_cast<unsigned int>(m_selection_mode),
+ m_selection_param,
+- m_selection_track_type,
++ static_cast<unsigned int>(m_selection_track_type),
+ m_track_uid,
+ m_file_name));
+
+GitLab
diff --git a/media-video/mkvtoolnix/mkvtoolnix-60.0.0.ebuild b/media-video/mkvtoolnix/mkvtoolnix-60.0.0.ebuild
index cd70327db014..d249b81b99d8 100644
--- a/media-video/mkvtoolnix/mkvtoolnix-60.0.0.ebuild
+++ b/media-video/mkvtoolnix/mkvtoolnix-60.0.0.ebuild
@@ -28,6 +28,7 @@ RDEPEND="
>=dev-libs/boost-1.66:=
>=dev-libs/libebml-1.4.0:=
>=dev-libs/libfmt-6.1.0:=
+ <dev-libs/libfmt-9.0.0:=
dev-libs/libpcre2:=
dev-libs/pugixml:=
media-libs/flac:=
diff --git a/media-video/mkvtoolnix/mkvtoolnix-61.0.0.ebuild b/media-video/mkvtoolnix/mkvtoolnix-61.0.0.ebuild
index cd4d49f2c426..94c85413024d 100644
--- a/media-video/mkvtoolnix/mkvtoolnix-61.0.0.ebuild
+++ b/media-video/mkvtoolnix/mkvtoolnix-61.0.0.ebuild
@@ -28,6 +28,7 @@ RDEPEND="
>=dev-libs/boost-1.66:=
>=dev-libs/libebml-1.4.0:=
>=dev-libs/libfmt-6.1.0:=
+ <dev-libs/libfmt-9.0.0:=
dev-libs/libpcre2:=
dev-libs/pugixml:=
media-libs/flac:=
diff --git a/media-video/mkvtoolnix/mkvtoolnix-64.0.0.ebuild b/media-video/mkvtoolnix/mkvtoolnix-64.0.0.ebuild
index 7e1ffe9d6374..5e0ad3ee70e7 100644
--- a/media-video/mkvtoolnix/mkvtoolnix-64.0.0.ebuild
+++ b/media-video/mkvtoolnix/mkvtoolnix-64.0.0.ebuild
@@ -29,6 +29,7 @@ RDEPEND="
dev-libs/gmp:=
>=dev-libs/libebml-1.4.2:=
>=dev-libs/libfmt-8.0.1:=
+ <dev-libs/libfmt-9.0.0:=
>=dev-libs/pugixml-1.11:=
media-libs/flac:=
>=media-libs/libmatroska-1.6.3:=
diff --git a/media-video/mkvtoolnix/mkvtoolnix-67.0.0.ebuild b/media-video/mkvtoolnix/mkvtoolnix-67.0.0.ebuild
index 0b4de7083e3b..664482898d27 100644
--- a/media-video/mkvtoolnix/mkvtoolnix-67.0.0.ebuild
+++ b/media-video/mkvtoolnix/mkvtoolnix-67.0.0.ebuild
@@ -29,6 +29,7 @@ RDEPEND="
dev-libs/gmp:=
>=dev-libs/libebml-1.4.2:=
>=dev-libs/libfmt-8.0.1:=
+ <dev-libs/libfmt-9.0.0:=
>=dev-libs/pugixml-1.11:=
media-libs/flac:=
>=media-libs/libmatroska-1.6.3:=
diff --git a/media-video/mkvtoolnix/mkvtoolnix-68.0.0-r3.ebuild b/media-video/mkvtoolnix/mkvtoolnix-68.0.0-r3.ebuild
new file mode 100644
index 000000000000..f5a1084acaf8
--- /dev/null
+++ b/media-video/mkvtoolnix/mkvtoolnix-68.0.0-r3.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic multiprocessing qmake-utils xdg
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://gitlab.com/mbunkus/mkvtoolnix.git"
+ EGIT_SUBMODULES=()
+ inherit git-r3
+else
+ SRC_URI="https://mkvtoolnix.download/sources/${P}.tar.xz"
+ KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+fi
+
+DESCRIPTION="Tools to create, alter, and inspect Matroska files"
+HOMEPAGE="https://mkvtoolnix.download/ https://gitlab.com/mbunkus/mkvtoolnix"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="dbus debug dvd gui nls pch test"
+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.66:=
+ dev-libs/gmp:=
+ >=dev-libs/libebml-1.4.2:=
+ >=dev-libs/libfmt-8.0.1:=
+ >=dev-libs/pugixml-1.11:=
+ media-libs/flac:=
+ >=media-libs/libmatroska-1.6.3:=
+ media-libs/libogg:=
+ media-libs/libvorbis:=
+ sys-libs/zlib
+ dvd? ( media-libs/libdvdread:= )
+ dev-qt/qtcore:5
+ gui? (
+ dev-qt/qtsvg:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtconcurrent:5
+ dev-qt/qtmultimedia:5
+ )
+ app-text/cmark:0=
+ dbus? ( dev-qt/qtdbus:5 )
+"
+DEPEND="${RDEPEND}
+ >=dev-cpp/nlohmann_json-3.9.1
+ >=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
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/mkvtoolnix-58.0.0-qt5dbus.patch
+ "${FILESDIR}"/mkvtoolnix-67.0.0-no-uic-qtwidgets.patch
+ "${FILESDIR}"/${P}-fmt-9.patch
+)
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == *9999 ]]; then
+ ./autogen.sh || die
+ fi
+
+ # bug #692018
+ sed -i -e 's/pandoc/diSaBlEd/' ac/pandoc.m4 || die
+
+ 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 debug)
+ $(usex pch "" --disable-precompiled-headers)
+ $(use_enable dbus)
+
+ # 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.
+ --disable-qt6
+ --enable-qt5
+ $(use_enable gui)
+ --with-qmake="$(qt5_get_bindir)"/qmake
+
+ $(use_with dvd dvdread)
+ $(use_with nls gettext)
+ $(usex nls "" --with-po4a-translate=false)
+ --disable-update-check
+ --disable-optimization
+ --with-boost="${ESYSROOT}"/usr
+ --with-boost-libdir="${ESYSROOT}"/usr/$(get_libdir)
+ )
+
+ 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 0939d7201a9b..3b7b072da517 100644
--- a/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild
+++ b/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild
@@ -38,6 +38,7 @@ RDEPEND="
dvd? ( media-libs/libdvdread:= )
dev-qt/qtcore:5
gui? (
+ dev-qt/qtsvg:5
dev-qt/qtgui:5
dev-qt/qtnetwork:5
dev-qt/qtwidgets:5