diff options
author | Sam James <sam@gentoo.org> | 2022-12-29 23:23:18 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2022-12-29 23:23:18 +0000 |
commit | 08c2a7b554707f11b129914ff64c78256a782ffd (patch) | |
tree | ca940c8232f0e4cf3fdbda8bdca39b3af15efb84 /media-sound/snapcast | |
parent | sci-libs/libqalculate: Stabilize 4.3.0 arm64, #888908 (diff) | |
download | gentoo-08c2a7b554707f11b129914ff64c78256a782ffd.tar.gz gentoo-08c2a7b554707f11b129914ff64c78256a782ffd.tar.bz2 gentoo-08c2a7b554707f11b129914ff64c78256a782ffd.zip |
media-sound/snapcast: fix build w/ boost-1.81
Closes: https://bugs.gentoo.org/886585
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-sound/snapcast')
-rw-r--r-- | media-sound/snapcast/files/snapcast-0.26.0-boost-1.81.patch | 51 | ||||
-rw-r--r-- | media-sound/snapcast/snapcast-0.26.0-r2.ebuild | 73 |
2 files changed, 124 insertions, 0 deletions
diff --git a/media-sound/snapcast/files/snapcast-0.26.0-boost-1.81.patch b/media-sound/snapcast/files/snapcast-0.26.0-boost-1.81.patch new file mode 100644 index 000000000000..d9d691060b42 --- /dev/null +++ b/media-sound/snapcast/files/snapcast-0.26.0-boost-1.81.patch @@ -0,0 +1,51 @@ +https://bugs.gentoo.org/886585 +https://github.com/badaix/snapcast/commit/853c3f622ff2262b56681ee04dd20b4266c72493 +https://github.com/badaix/snapcast/issues/1082 + +From 853c3f622ff2262b56681ee04dd20b4266c72493 Mon Sep 17 00:00:00 2001 +From: Rudi Heitbaum <rudi@heitbaum.com> +Date: Wed, 21 Dec 2022 11:31:29 +0000 +Subject: [PATCH] server/control_session_http: update for boost 1.81.0 + +Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com> +--- a/server/control_session_http.cpp ++++ b/server/control_session_http.cpp +@@ -127,8 +127,8 @@ boost::beast::string_view mime_type(boost::beast::string_view path) + std::string path_cat(boost::beast::string_view base, boost::beast::string_view path) + { + if (base.empty()) +- return path.to_string(); +- std::string result = base.to_string(); ++ return static_cast<std::string>(path); ++ std::string result = static_cast<std::string>(base); + char constexpr path_separator = '/'; + if (result.back() == path_separator) + result.resize(result.size() - 1); +@@ -171,7 +171,7 @@ void ControlSessionHttp::handle_request(http::request<Body, http::basic_fields<A + res.set(http::field::server, HTTP_SERVER_NAME); + res.set(http::field::content_type, "text/html"); + res.keep_alive(req.keep_alive()); +- res.body() = why.to_string(); ++ res.body() = static_cast<std::string>(why); + res.prepare_payload(); + return res; + }; +@@ -182,7 +182,7 @@ void ControlSessionHttp::handle_request(http::request<Body, http::basic_fields<A + res.set(http::field::server, HTTP_SERVER_NAME); + res.set(http::field::content_type, "text/html"); + res.keep_alive(req.keep_alive()); +- res.body() = "The resource '" + target.to_string() + "' was not found."; ++ res.body() = "The resource '" + static_cast<std::string>(target) + "' was not found."; + res.prepare_payload(); + return res; + }; +@@ -204,7 +204,7 @@ void ControlSessionHttp::handle_request(http::request<Body, http::basic_fields<A + res.set(http::field::server, HTTP_SERVER_NAME); + res.set(http::field::content_type, "text/html"); + res.keep_alive(req.keep_alive()); +- res.body() = "An error occurred: '" + what.to_string() + "'"; ++ res.body() = "An error occurred: '" + static_cast<std::string>(what) + "'"; + res.prepare_payload(); + return res; + }; + diff --git a/media-sound/snapcast/snapcast-0.26.0-r2.ebuild b/media-sound/snapcast/snapcast-0.26.0-r2.ebuild new file mode 100644 index 000000000000..cd5cede0e1b4 --- /dev/null +++ b/media-sound/snapcast/snapcast-0.26.0-r2.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Synchronous multi-room audio player" +HOMEPAGE="https://github.com/badaix/snapcast" +SRC_URI="https://github.com/badaix/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~x86" +IUSE="+client +expat +flac +opus +server tremor +vorbis +zeroconf" +REQUIRED_USE="|| ( server client )" + +RDEPEND=" + dev-libs/boost:= + media-libs/alsa-lib + client? ( acct-user/snapclient ) + expat? ( dev-libs/expat ) + flac? ( media-libs/flac:= ) + opus? ( media-libs/opus ) + server? ( + acct-group/snapserver + acct-user/snapserver + ) + tremor? ( media-libs/tremor ) + vorbis? ( media-libs/libvorbis ) + zeroconf? ( net-dns/avahi[dbus] ) +" +DEPEND=" + ${RDEPEND} + >=dev-cpp/aixlog-1.2.1 + >=dev-cpp/asio-1.12.1 + >=dev-cpp/popl-1.2.0 +" + +PATCHES=( + "${FILESDIR}"/${P}-boost-1.81.patch +) + +src_configure() { + local mycmakeargs=( + -DBUILD_CLIENT=$(usex client) + -DBUILD_WITH_EXPAT=$(usex expat) + -DBUILD_WITH_FLAC=$(usex flac) + -DBUILD_WITH_OPUS=$(usex opus) + -DBUILD_SERVER=$(usex server) + -DBUILD_STATIC_LIBS=no + -DBUILD_TESTS=no + -DBUILD_WITH_TREMOR=$(usex tremor) + -DBUILD_WITH_VORBIS=$(usex vorbis) + -DBUILD_WITH_AVAHI=$(usex zeroconf) + -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc" + ) + + cmake_src_configure +} + +src_install() { + cmake_src_install + + for bin in server client ; do + if use ${bin} ; then + doman "${bin}/snap${bin}.1" + + newconfd "${FILESDIR}/snap${bin}.confd" "snap${bin}" + newinitd "${FILESDIR}/snap${bin}.initd" "snap${bin}" + fi + done +} |