diff options
author | Brahmajit Das <brahmajit.xyz@gmail.com> | 2023-07-22 09:24:48 +0000 |
---|---|---|
committer | Joonas Niilola <juippis@gentoo.org> | 2023-08-22 09:49:55 +0300 |
commit | ad4d831484211ce970eb3028a8b4a3dc8e05044b (patch) | |
tree | cea63df469176a9c6f0feeb384fc4c223d37372c | |
parent | dev-db/repmgr: Fix incompatible integer to pointer conversion (diff) | |
download | gentoo-ad4d831484211ce970eb3028a8b4a3dc8e05044b.tar.gz gentoo-ad4d831484211ce970eb3028a8b4a3dc8e05044b.tar.bz2 gentoo-ad4d831484211ce970eb3028a8b4a3dc8e05044b.zip |
media-libs/exempi: Fix no template named binary_function in namespace
Closes: https://bugs.gentoo.org/910494
Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/31997
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
-rw-r--r-- | media-libs/exempi/exempi-2.6.3-r1.ebuild | 68 | ||||
-rw-r--r-- | media-libs/exempi/files/exempi-2.6.3-clang16-binary_function.patch | 33 |
2 files changed, 101 insertions, 0 deletions
diff --git a/media-libs/exempi/exempi-2.6.3-r1.ebuild b/media-libs/exempi/exempi-2.6.3-r1.ebuild new file mode 100644 index 000000000000..e5669843463f --- /dev/null +++ b/media-libs/exempi/exempi-2.6.3-r1.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Port of the Adobe XMP SDK to work on UNIX" +HOMEPAGE="https://libopenraw.freedesktop.org/wiki/Exempi" +SRC_URI="https://libopenraw.freedesktop.org/download/${P}.tar.xz" + +LICENSE="BSD" +SLOT="2/8" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="examples test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/expat-2:= + sys-libs/zlib + virtual/libiconv +" +DEPEND=" + ${RDEPEND} + test? ( dev-libs/boost ) +" +BDEPEND=" + sys-devel/autoconf-archive + sys-devel/gettext +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.4.2-iconv.patch + "${FILESDIR}"/${PN}-2.6.3-clang16-binary_function.patch +) + +src_prepare() { + default + + # Needed for autoconf 2.71 + config_rpath_update . + eautoreconf +} + +src_configure() { + # - --enable-static as --disable-static breaks build + # - Valgrind detection is "disabled" due to bug #295875 + econf \ + --enable-static \ + $(use_enable test unittest) \ + VALGRIND="" +} + +src_install() { + default + + if use examples; then + emake -C samples/source distclean + rm samples/{,source,testfiles}/Makefile* || die + docinto examples + dodoc -r samples/. + fi + + # --disable-static breaks tests + rm -rf "${ED}/usr/$(get_libdir)/libexempi.a" || die + + find "${ED}" -name '*.la' -delete || die +} diff --git a/media-libs/exempi/files/exempi-2.6.3-clang16-binary_function.patch b/media-libs/exempi/files/exempi-2.6.3-clang16-binary_function.patch new file mode 100644 index 000000000000..bbe535ed1380 --- /dev/null +++ b/media-libs/exempi/files/exempi-2.6.3-clang16-binary_function.patch @@ -0,0 +1,33 @@ +Bug: https://bugs.gentoo.org/910494 +--- a/XMPFiles/source/PluginHandler/XMPAtoms.h ++++ b/XMPFiles/source/PluginHandler/XMPAtoms.h +@@ -83,8 +83,12 @@ enum + + #define XMPAtomNull emptyStr_K + +-struct StringCompare : std::binary_function<const std::string &, const std::string &, bool> ++struct StringCompare + { ++ public: ++ using first_argument_type = const std::string &; ++ using second_argument_type = const std::string &; ++ using result_type = bool; + bool operator() (const std::string & a, const std::string & b) const + { + return ( a.compare(b) < 0 ); +--- a/XMPFilesPlugins/api/source/PluginRegistry.h ++++ b/XMPFilesPlugins/api/source/PluginRegistry.h +@@ -68,8 +68,12 @@ public: + + private: + +- struct StringCompare : std::binary_function< const std::string &, const std::string &, bool > ++ struct StringCompare + { ++ public: ++ using first_argument_type = const std::string &; ++ using second_argument_type = const std::string &; ++ using result_type = bool; + bool operator()( const std::string & a, const std::string & b ) const + { + return ( a.compare(b) < 0 ); |