From 1fa9229b7486ee0986d3486cddd65e209d770084 Mon Sep 17 00:00:00 2001 From: Kenton Groombridge Date: Tue, 6 Dec 2022 14:28:31 -0500 Subject: net-voip/mumble: fix 1.4.287 build on x86, increase tests timeout Closes: https://bugs.gentoo.org/884049 Signed-off-by: Kenton Groombridge --- .../mumble/files/mumble-1.4-force-alignment.patch | 28 ++++ net-voip/mumble/mumble-1.4.287-r1.ebuild | 158 +++++++++++++++++++++ net-voip/mumble/mumble-1.4.287.ebuild | 150 ------------------- 3 files changed, 186 insertions(+), 150 deletions(-) create mode 100644 net-voip/mumble/files/mumble-1.4-force-alignment.patch create mode 100644 net-voip/mumble/mumble-1.4.287-r1.ebuild delete mode 100644 net-voip/mumble/mumble-1.4.287.ebuild (limited to 'net-voip') diff --git a/net-voip/mumble/files/mumble-1.4-force-alignment.patch b/net-voip/mumble/files/mumble-1.4-force-alignment.patch new file mode 100644 index 000000000000..ea0ae4792443 --- /dev/null +++ b/net-voip/mumble/files/mumble-1.4-force-alignment.patch @@ -0,0 +1,28 @@ +From 13c051b36b387356815cff5d685bc628b74ba136 Mon Sep 17 00:00:00 2001 +From: Davide Beatrici +Date: Thu, 1 Sep 2022 23:32:57 +0200 +Subject: [PATCH] FIX(positional-audio): Force 8 bytes alignment for + CCameraAngles in GTAV plugin + +https://en.cppreference.com/w/cpp/language/alignas + +This fixes compilation when the implicit alignment is not 8 bytes. + +It can be the case with 32 bit targets. +--- + plugins/gtav/structs.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/plugins/gtav/structs.h b/plugins/gtav/structs.h +index 2829dc11e1..0e4f76edab 100644 +--- a/plugins/gtav/structs.h ++++ b/plugins/gtav/structs.h +@@ -118,7 +118,7 @@ struct CCameraManagerAngles { + ptr_t cameraAngles; // CCameraAngles * + }; + +-struct CCameraAngles { ++struct alignas(8) CCameraAngles { + uint8_t pad1[960]; + ptr_t playerAngles; // CPlayerAngles * + uint8_t pad2[60]; diff --git a/net-voip/mumble/mumble-1.4.287-r1.ebuild b/net-voip/mumble/mumble-1.4.287-r1.ebuild new file mode 100644 index 000000000000..9bef3ee35ff6 --- /dev/null +++ b/net-voip/mumble/mumble-1.4.287-r1.ebuild @@ -0,0 +1,158 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +inherit cmake flag-o-matic python-any-r1 xdg + +DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software" +HOMEPAGE="https://wiki.mumble.info" +if [[ "${PV}" == 9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/mumble-voip/mumble.git" + EGIT_SUBMODULES=( '-*' celt-0.7.0-src celt-0.11.0-src themes/Mumble 3rdparty/rnnoise-src 3rdparty/FindPythonInterpreter ) +else + if [[ "${PV}" == *_pre* ]] ; then + SRC_URI="https://dev.gentoo.org/~concord/distfiles/${P}.tar.xz" + else + MY_PV="${PV/_/-}" + MY_P="${PN}-${MY_PV}" + SRC_URI="https://github.com/mumble-voip/mumble/releases/download/v${MY_PV}/${MY_P}.tar.gz" + S="${WORKDIR}/${P}.src" + fi + KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" +fi + +SRC_URI+=" https://dev.gentoo.org/~concord/distfiles/${PN}-1.4-openssl3.patch.xz" +SRC_URI+=" https://dev.gentoo.org/~concord/distfiles/${PN}-1.4-crypto-threads.patch.xz" +SRC_URI+=" https://dev.gentoo.org/~concord/distfiles/${PN}-1.4-odr.patch.xz" + +LICENSE="BSD MIT" +SLOT="0" +IUSE="+alsa +dbus debug g15 jack pipewire portaudio pulseaudio multilib nls +rnnoise speech test zeroconf" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/openssl-1.0.0b:0= + dev-libs/poco[util,xml,zip] + >=dev-libs/protobuf-2.2.0:= + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5[ssl] + dev-qt/qtsql:5[sqlite] + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + >=media-libs/libsndfile-1.0.20[-minimal] + >=media-libs/opus-1.3.1 + >=media-libs/speex-1.2.0 + media-libs/speexdsp + sys-apps/lsb-release + x11-libs/libX11 + x11-libs/libXi + alsa? ( media-libs/alsa-lib ) + dbus? ( dev-qt/qtdbus:5 ) + g15? ( app-misc/g15daemon:= ) + jack? ( virtual/jack ) + portaudio? ( media-libs/portaudio ) + pulseaudio? ( media-sound/pulseaudio ) + pipewire? ( media-video/pipewire ) + speech? ( >=app-accessibility/speech-dispatcher-0.8.0 ) + zeroconf? ( net-dns/avahi[mdnsresponder-compat] ) +" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + dev-qt/qtconcurrent:5 + dev-qt/qttest:5 + dev-libs/boost + x11-base/xorg-proto +" +BDEPEND=" + dev-qt/linguist-tools:5 + virtual/pkgconfig +" + +PATCHES=( + "${WORKDIR}/${PN}-1.4-openssl3.patch" + "${WORKDIR}/${PN}-1.4-crypto-threads.patch" + "${WORKDIR}/${PN}-1.4-odr.patch" + "${FILESDIR}/${PN}-1.4-force-alignment.patch" +) + +pkg_setup() { + python-any-r1_pkg_setup +} + +src_prepare() { + # required because of xdg.eclass also providing src_prepare + cmake_src_prepare +} + +src_configure() { + + local mycmakeargs=( + -Dalsa="$(usex alsa)" + -Dtests="$(usex test)" + -Dbundled-celt="ON" + -Dbundled-opus="OFF" + -Dbundled-speex="OFF" + -Ddbus="$(usex dbus)" + -Dg15="$(usex g15)" + -Djackaudio="$(usex jack)" + -Doverlay="ON" + -Dportaudio="$(usex portaudio)" + -Doverlay-xcompile="$(usex multilib)" + -Dpipewire="$(usex pipewire)" + -Dpulseaudio="$(usex pulseaudio)" + -Drnnoise="$(usex rnnoise)" + -Dserver="OFF" + -Dspeechd="$(usex speech)" + -Dtranslations="$(usex nls)" + -Dupdate="OFF" + -Dwarnings-as-errors="OFF" + -Dzeroconf="$(usex zeroconf)" + ) + + if [[ "${PV}" != 9999 ]] ; then + mycmakeargs+=( -DBUILD_NUMBER="$(ver_cut 3)" ) + fi + + # https://bugs.gentoo.org/832978 + # fix tests (and possibly runtime issues) on arches with unsigned chars + append-cxxflags -fsigned-char + + cmake_src_configure +} + +src_test() { + # https://bugs.gentoo.org/884049 + # increase timeout for tests + local -x QTEST_FUNCTION_TIMEOUT=600000 + cmake_src_test +} + +src_install() { + cmake_src_install + + if use amd64 && use multilib ; then + # The 32bit overlay library gets built when multilib is enabled. + # Install it into the correct 32bit lib dir. + local libdir_64="/usr/$(get_libdir)/mumble" + local libdir_32="/usr/$(get_abi_var LIBDIR x86)/mumble" + dodir ${libdir_32} + mv "${ED}"/${libdir_64}/libmumbleoverlay.x86.so* \ + "${ED}"/${libdir_32}/ || die + fi + + insinto /usr/share/mumble + doins -r samples +} + +pkg_postinst() { + xdg_pkg_postinst + echo + elog "Visit https://wiki.mumble.info/ for futher configuration instructions." + elog "Run 'mumble-overlay ' to start the OpenGL overlay (after starting mumble)." + echo +} diff --git a/net-voip/mumble/mumble-1.4.287.ebuild b/net-voip/mumble/mumble-1.4.287.ebuild deleted file mode 100644 index 58bb301f3470..000000000000 --- a/net-voip/mumble/mumble-1.4.287.ebuild +++ /dev/null @@ -1,150 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} ) -inherit cmake flag-o-matic python-any-r1 xdg - -DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software" -HOMEPAGE="https://wiki.mumble.info" -if [[ "${PV}" == 9999 ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/mumble-voip/mumble.git" - EGIT_SUBMODULES=( '-*' celt-0.7.0-src celt-0.11.0-src themes/Mumble 3rdparty/rnnoise-src 3rdparty/FindPythonInterpreter ) -else - if [[ "${PV}" == *_pre* ]] ; then - SRC_URI="https://dev.gentoo.org/~concord/distfiles/${P}.tar.xz" - else - MY_PV="${PV/_/-}" - MY_P="${PN}-${MY_PV}" - SRC_URI="https://github.com/mumble-voip/mumble/releases/download/v${MY_PV}/${MY_P}.tar.gz" - S="${WORKDIR}/${P}.src" - fi - KEYWORDS="amd64 ~arm64 ~ppc64 ~x86" -fi - -SRC_URI+=" https://dev.gentoo.org/~concord/distfiles/${PN}-1.4-openssl3.patch.xz" -SRC_URI+=" https://dev.gentoo.org/~concord/distfiles/${PN}-1.4-crypto-threads.patch.xz" -SRC_URI+=" https://dev.gentoo.org/~concord/distfiles/${PN}-1.4-odr.patch.xz" - -LICENSE="BSD MIT" -SLOT="0" -IUSE="+alsa +dbus debug g15 jack pipewire portaudio pulseaudio multilib nls +rnnoise speech test zeroconf" -RESTRICT="!test? ( test )" - -RDEPEND=" - >=dev-libs/openssl-1.0.0b:0= - dev-libs/poco[util,xml,zip] - >=dev-libs/protobuf-2.2.0:= - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtnetwork:5[ssl] - dev-qt/qtsql:5[sqlite] - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5 - dev-qt/qtxml:5 - >=media-libs/libsndfile-1.0.20[-minimal] - >=media-libs/opus-1.3.1 - >=media-libs/speex-1.2.0 - media-libs/speexdsp - sys-apps/lsb-release - x11-libs/libX11 - x11-libs/libXi - alsa? ( media-libs/alsa-lib ) - dbus? ( dev-qt/qtdbus:5 ) - g15? ( app-misc/g15daemon:= ) - jack? ( virtual/jack ) - portaudio? ( media-libs/portaudio ) - pulseaudio? ( media-sound/pulseaudio ) - pipewire? ( media-video/pipewire ) - speech? ( >=app-accessibility/speech-dispatcher-0.8.0 ) - zeroconf? ( net-dns/avahi[mdnsresponder-compat] ) -" -DEPEND="${RDEPEND} - ${PYTHON_DEPS} - dev-qt/qtconcurrent:5 - dev-qt/qttest:5 - dev-libs/boost - x11-base/xorg-proto -" -BDEPEND=" - dev-qt/linguist-tools:5 - virtual/pkgconfig -" - -PATCHES=( - "${WORKDIR}/${PN}-1.4-openssl3.patch" - "${WORKDIR}/${PN}-1.4-crypto-threads.patch" - "${WORKDIR}/${PN}-1.4-odr.patch" -) - -pkg_setup() { - python-any-r1_pkg_setup -} - -src_prepare() { - # required because of xdg.eclass also providing src_prepare - cmake_src_prepare -} - -src_configure() { - - local mycmakeargs=( - -Dalsa="$(usex alsa)" - -Dtests="$(usex test)" - -Dbundled-celt="ON" - -Dbundled-opus="OFF" - -Dbundled-speex="OFF" - -Ddbus="$(usex dbus)" - -Dg15="$(usex g15)" - -Djackaudio="$(usex jack)" - -Doverlay="ON" - -Dportaudio="$(usex portaudio)" - -Doverlay-xcompile="$(usex multilib)" - -Dpipewire="$(usex pipewire)" - -Dpulseaudio="$(usex pulseaudio)" - -Drnnoise="$(usex rnnoise)" - -Dserver="OFF" - -Dspeechd="$(usex speech)" - -Dtranslations="$(usex nls)" - -Dupdate="OFF" - -Dwarnings-as-errors="OFF" - -Dzeroconf="$(usex zeroconf)" - ) - - if [[ "${PV}" != 9999 ]] ; then - mycmakeargs+=( -DBUILD_NUMBER="$(ver_cut 3)" ) - fi - - # https://bugs.gentoo.org/832978 - # fix tests (and possibly runtime issues) on arches with unsigned chars - append-cxxflags -fsigned-char - - cmake_src_configure -} - -src_install() { - cmake_src_install - - if use amd64 && use multilib ; then - # The 32bit overlay library gets built when multilib is enabled. - # Install it into the correct 32bit lib dir. - local libdir_64="/usr/$(get_libdir)/mumble" - local libdir_32="/usr/$(get_abi_var LIBDIR x86)/mumble" - dodir ${libdir_32} - mv "${ED}"/${libdir_64}/libmumbleoverlay.x86.so* \ - "${ED}"/${libdir_32}/ || die - fi - - insinto /usr/share/mumble - doins -r samples -} - -pkg_postinst() { - xdg_pkg_postinst - echo - elog "Visit https://wiki.mumble.info/ for futher configuration instructions." - elog "Run 'mumble-overlay ' to start the OpenGL overlay (after starting mumble)." - echo -} -- cgit v1.2.3-65-gdbad