diff options
author | Alfred Wingate <parona@protonmail.com> | 2024-06-02 14:33:31 +0300 |
---|---|---|
committer | Joonas Niilola <juippis@gentoo.org> | 2024-06-09 09:24:01 +0300 |
commit | 6cdacfa91764b6ef1ae7789e64d853c27d92b23d (patch) | |
tree | 4a34bb9b70eb50c26e94557f57ad28ef4ae9c169 /media-video | |
parent | media-gfx/librecad: add a patch to fix building with clang (diff) | |
download | gentoo-6cdacfa91764b6ef1ae7789e64d853c27d92b23d.tar.gz gentoo-6cdacfa91764b6ef1ae7789e64d853c27d92b23d.tar.bz2 gentoo-6cdacfa91764b6ef1ae7789e64d853c27d92b23d.zip |
media-video/mkvtoolnix: fix libcxx incompatibility
Closes: https://bugs.gentoo.org/933417
Signed-off-by: Alfred Wingate <parona@protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/36973
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'media-video')
-rw-r--r-- | media-video/mkvtoolnix/files/mkvtoolnix-84.0.0-fix-libcxx-c++20.patch | 44 | ||||
-rw-r--r-- | media-video/mkvtoolnix/mkvtoolnix-84.0-r1.ebuild (renamed from media-video/mkvtoolnix/mkvtoolnix-84.0.ebuild) | 4 |
2 files changed, 48 insertions, 0 deletions
diff --git a/media-video/mkvtoolnix/files/mkvtoolnix-84.0.0-fix-libcxx-c++20.patch b/media-video/mkvtoolnix/files/mkvtoolnix-84.0.0-fix-libcxx-c++20.patch new file mode 100644 index 000000000000..9a45aaa9cb9e --- /dev/null +++ b/media-video/mkvtoolnix/files/mkvtoolnix-84.0.0-fix-libcxx-c++20.patch @@ -0,0 +1,44 @@ +https://bugs.gentoo.org/933417 +https://gitlab.com/mbunkus/mkvtoolnix/-/issues/3695 +https://gitlab.com/mbunkus/mkvtoolnix/-/commit/7e1bea9527616ab6ab38425e7290579f05dd9bb1 + +From 7e1bea9527616ab6ab38425e7290579f05dd9bb1 Mon Sep 17 00:00:00 2001 +From: Moritz Bunkus <mo@bunkus.online> +Date: Tue, 30 Apr 2024 16:05:35 +0200 +Subject: [PATCH] replace removed `std::result_of` with `std::invoke_result` + +`std::result_of` was deprecated in C++17 & removed in C++20. A lot of +compilers still make it available even when running in C++20 mode, +while others don't. + +Therefore replace it with equivalent use of `std::invoke_result`. + +Fixes #3695. +--- a/NEWS.md ++++ b/NEWS.md +@@ -1,3 +1,11 @@ ++# Version ? ++ ++## Bug fixes ++ ++* fixed compilation of `src/common/sorting.h` with certain compilers due to ++ the deprecation & removal of `std::result_of<>` in C++20. Fixes #3695. ++ ++ + # Version 84.0 "Sleeper" 2024-04-28 + + ## New features and enhancements +--- a/src/common/sorting.h ++++ b/src/common/sorting.h +@@ -27,7 +27,7 @@ namespace mtx::sort { + + template< typename Titer + , typename Tcriterion_maker +- , typename Tcriterion = typename std::result_of< Tcriterion_maker(typename std::iterator_traits<Titer>::value_type) >::type ++ , typename Tcriterion = typename std::invoke_result< Tcriterion_maker, typename std::iterator_traits<Titer>::value_type >::type + , typename Tcomparator = std::less<Tcriterion> + > + void +-- +GitLab + diff --git a/media-video/mkvtoolnix/mkvtoolnix-84.0.ebuild b/media-video/mkvtoolnix/mkvtoolnix-84.0-r1.ebuild index 6731cce63b2d..f5eaf0cade1f 100644 --- a/media-video/mkvtoolnix/mkvtoolnix-84.0.ebuild +++ b/media-video/mkvtoolnix/mkvtoolnix-84.0-r1.ebuild @@ -73,6 +73,10 @@ if [[ ${PV} != *9999 ]] ; then BDEPEND+="verify-sig? ( sec-keys/openpgp-keys-mkvtoolnix )" fi +PATCHES=( + "${FILESDIR}"/mkvtoolnix-84.0.0-fix-libcxx-c++20.patch +) + src_prepare() { default |