diff options
author | NHOrus <jy6x2b32pie9@yahoo.com> | 2024-04-02 12:13:05 +0400 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-05-09 01:34:07 +0100 |
commit | b8bb7f1065bf5701e62f118b5ef7cf727543d0de (patch) | |
tree | 2b40a1d01d7452591c47023f6216647fce42846c /media-libs | |
parent | app-emulation/qemu: drop 8.2.1, 8.2.2 (diff) | |
download | gentoo-b8bb7f1065bf5701e62f118b5ef7cf727543d0de.tar.gz gentoo-b8bb7f1065bf5701e62f118b5ef7cf727543d0de.tar.bz2 gentoo-b8bb7f1065bf5701e62f118b5ef7cf727543d0de.zip |
media-libs/audiofile: replace deprecated template unary_function
Adds the patch from the bug to the tree.
[sam: Add bug ref to patch.]
Closes: https://bugs.gentoo.org/914349
Signed-off-by: NHOrus <jy6x2b32pie9@yahoo.com>
Closes: https://github.com/gentoo/gentoo/pull/36054
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-libs')
-rw-r--r-- | media-libs/audiofile/audiofile-0.3.6-r6.ebuild | 59 | ||||
-rw-r--r-- | media-libs/audiofile/files/audiofile-0.3.6-clang-deprecation.patch | 68 |
2 files changed, 127 insertions, 0 deletions
diff --git a/media-libs/audiofile/audiofile-0.3.6-r6.ebuild b/media-libs/audiofile/audiofile-0.3.6-r6.ebuild new file mode 100644 index 000000000000..63b3eb3bfc60 --- /dev/null +++ b/media-libs/audiofile/audiofile-0.3.6-r6.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools gnome.org multilib-minimal + +DESCRIPTION="An elegant API for accessing audio files" +HOMEPAGE="https://audiofile.68k.org/" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0/1" # subslot = soname major version +KEYWORDS="~amd64" +IUSE="flac" + +RDEPEND="flac? ( >=media-libs/flac-1.2.1:=[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.6-gcc6-build-fixes.patch + "${FILESDIR}"/${PN}-0.3.6-CVE-2015-7747.patch + "${FILESDIR}"/${PN}-0.3.6-mingw32.patch + "${FILESDIR}"/${PN}-0.3.6-CVE-2017-68xx.patch + "${FILESDIR}"/${PN}-0.3.6-CVE-2018-13440-CVE-2018-17095.patch + "${FILESDIR}"/${PN}-0.3.6-strict-prototypes.patch + "${FILESDIR}"/${PN}-0.3.6-clang-deprecation.patch +) + +src_prepare() { + default + eautoreconf +} + +multilib_src_configure() { + # Tests depend on statically compiled binaries to work, so we'll have to + # delete them later rather than not compile them at all + local myconf=( + --enable-largefile + # static needed for tests, bug #869677 + --enable-static + --disable-werror + --disable-examples + $(use_enable flac) + ) + ECONF_SOURCE="${S}" econf "${myconf[@]}" +} + +multilib_src_test() { + emake check +} + +multilib_src_install_all() { + einstalldocs + + # package provides .pc file + find "${ED}" -name '*.la' -delete || die + find "${ED}" -name '*.a' -delete || die +} diff --git a/media-libs/audiofile/files/audiofile-0.3.6-clang-deprecation.patch b/media-libs/audiofile/files/audiofile-0.3.6-clang-deprecation.patch new file mode 100644 index 000000000000..bccb9c1948e9 --- /dev/null +++ b/media-libs/audiofile/files/audiofile-0.3.6-clang-deprecation.patch @@ -0,0 +1,68 @@ +https://bugs.gentoo.org/914349 +--- a/libaudiofile/modules/SimpleModule.h ++++ b/libaudiofile/modules/SimpleModule.h +@@ -125,13 +125,17 @@ struct signConverter + static const int kScaleBits = (Format + 1) * CHAR_BIT - 1; + static const int kMinSignedValue = -1 << kScaleBits; + +- struct signedToUnsigned : public std::unary_function<SignedType, UnsignedType> ++ struct signedToUnsigned + { ++ typedef SignedType argument_type; ++ typedef UnsignedType result_type; + UnsignedType operator()(SignedType x) { return x - kMinSignedValue; } + }; + +- struct unsignedToSigned : public std::unary_function<SignedType, UnsignedType> ++ struct unsignedToSigned + { ++ typedef SignedType argument_type; ++ typedef UnsignedType result_type; + SignedType operator()(UnsignedType x) { return x + kMinSignedValue; } + }; + }; +@@ -323,8 +327,10 @@ private: + }; + + template <typename Arg, typename Result> +-struct intToFloat : public std::unary_function<Arg, Result> ++struct intToFloat + { ++ typedef Arg argument_type; ++ typedef Result result_type; + Result operator()(Arg x) const { return x; } + }; + +@@ -389,14 +395,18 @@ private: + }; + + template <typename Arg, typename Result, unsigned shift> +-struct lshift : public std::unary_function<Arg, Result> ++struct lshift + { ++ typedef Arg argument_type; ++ typedef Result result_type; + Result operator()(const Arg &x) const { return x << shift; } + }; + + template <typename Arg, typename Result, unsigned shift> +-struct rshift : public std::unary_function<Arg, Result> ++struct rshift + { ++ typedef Arg argument_type; ++ typedef Result result_type; + Result operator()(const Arg &x) const { return x >> shift; } + }; + +@@ -491,8 +501,10 @@ private: + }; + + template <typename Arg, typename Result> +-struct floatToFloat : public std::unary_function<Arg, Result> ++struct floatToFloat + { ++ typedef Arg argument_type; ++ typedef Result result_type; + Result operator()(Arg x) const { return x; } + }; + |