summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiroslav Šulc <fordfrog@gentoo.org>2022-11-28 09:55:55 +0100
committerMiroslav Šulc <fordfrog@gentoo.org>2022-11-28 09:56:44 +0100
commitc25d9d6e155fb609e375e6a85aeb585fde5a2f67 (patch)
tree09e9d7bcd8290ace51820799bd8846cf7c2ce093 /media-libs/libffado
parentprofiles/arch/loong: mask USE=nas for now (diff)
downloadgentoo-c25d9d6e155fb609e375e6a85aeb585fde5a2f67.tar.gz
gentoo-c25d9d6e155fb609e375e6a85aeb585fde5a2f67.tar.bz2
gentoo-c25d9d6e155fb609e375e6a85aeb585fde5a2f67.zip
media-libs/libffado: bump to 2.4.7 + fix for config load crash
patch by Adam Wenocur <awenocur@gmail.com> Closes: https://bugs.gentoo.org/744364 Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
Diffstat (limited to 'media-libs/libffado')
-rw-r--r--media-libs/libffado/Manifest1
-rw-r--r--media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch13
-rw-r--r--media-libs/libffado/libffado-2.4.7.ebuild125
3 files changed, 139 insertions, 0 deletions
diff --git a/media-libs/libffado/Manifest b/media-libs/libffado/Manifest
index 522d1cda4de7..d09d38ce2d34 100644
--- a/media-libs/libffado/Manifest
+++ b/media-libs/libffado/Manifest
@@ -1 +1,2 @@
DIST libffado-2.4.6.tgz 1230455 BLAKE2B 1e86e7f9179e94c00a74514dbd7c0c299de6d1870f22c4d9ba14cb6b105b41c9dda62d19d0d660e84eee7e0f02c0bf7c44fbe58e24634ccf9cc9e41f1d38b5c2 SHA512 dac651233ea94c19834e810c64230bcbd5516de9e694ced1b6497ad927d734c527b3a556281676393674d33da768cb2431e7da1a0fdfc6ceb268e897029aa584
+DIST libffado-2.4.7.tgz 1231931 BLAKE2B 3c304011259ddbd35ce8fd725d38a5f50fca962981f9c5af6e377493a14985e4b96c64bcc54ba5a341028ec17dc6f2c42ce527422779f2edc6f9a1a61220cf51 SHA512 424a9ca7ded12e72d77a50d7ddf4e50dc0d55b80d725499df7609ce60d0eac8b24a41d9b8e4e74f78bdefe114b61bd5f1ec09a6d083f4a58475e66d61153f075
diff --git a/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch b/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch
new file mode 100644
index 000000000000..05ede6ebf653
--- /dev/null
+++ b/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch
@@ -0,0 +1,13 @@
+diff --git a/libffado-2.4.1/support/mixer-qt4/ffado/mixer/globalmixer.py b/libffado-2.4.1-patched/support/mixer-qt4/ffado/mixer/globalmixer.py
+index 7078b0e..d184d73 100644
+--- libffado-2.4.1-old/support/mixer-qt4/ffado/mixer/globalmixer.py
++++ libffado-2.4.1/support/mixer-qt4/ffado/mixer/globalmixer.py
+@@ -96,7 +96,6 @@ class GlobalMixer(QWidget):
+ @pyqtSlot()
+ def on_txtNickname_returnPressed( self ):
+ if self.nickname.canChangeValue():
+- asciiData = self.txtNickname.text().toAscii()
+- self.nickname.setText( asciiData.data() )
++ self.nickname.setText( self.txtNickname.text().encode('utf-8') )
+ else:
+ self.txtNickname.setText( self.nickname.text() )
diff --git a/media-libs/libffado/libffado-2.4.7.ebuild b/media-libs/libffado/libffado-2.4.7.ebuild
new file mode 100644
index 000000000000..116efcf9375f
--- /dev/null
+++ b/media-libs/libffado/libffado-2.4.7.ebuild
@@ -0,0 +1,125 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit desktop python-single-r1 scons-utils toolchain-funcs udev multilib-minimal
+
+DESCRIPTION="Driver for IEEE1394 (Firewire) audio interfaces"
+HOMEPAGE="http://www.ffado.org"
+
+if [[ "${PV}" = "9999" ]]; then
+ inherit subversion
+ ESVN_REPO_URI="http://subversion.ffado.org/ffado/trunk/${PN}"
+else
+ SRC_URI="http://www.ffado.org/files/${P}.tgz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+LICENSE="GPL-2 GPL-3"
+SLOT="0"
+IUSE="debug qt5 test-programs"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+CDEPEND="${PYTHON_DEPS}
+ dev-cpp/libxmlpp:2.6[${MULTILIB_USEDEP}]
+ dev-libs/dbus-c++
+ dev-libs/libconfig:=[cxx,${MULTILIB_USEDEP}]
+ media-libs/alsa-lib
+ media-libs/libiec61883[${MULTILIB_USEDEP}]
+ sys-apps/dbus
+ sys-libs/libavc1394[${MULTILIB_USEDEP}]
+ sys-libs/libraw1394[${MULTILIB_USEDEP}]
+ qt5? (
+ $(python_gen_cond_dep '
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/PyQt5[dbus,${PYTHON_USEDEP}]
+ ')
+ x11-misc/xdg-utils
+ )"
+DEPEND="${CDEPEND}"
+RDEPEND="${CDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/libffado-2.4.7-fix-config-load-crash.patch"
+)
+
+myescons() {
+ local myesconsargs=(
+ PREFIX="${EPREFIX}/usr"
+ LIBDIR="${EPREFIX}/usr/$(get_libdir)"
+ MANDIR="${EPREFIX}/usr/share/man"
+ UDEVDIR="$(get_udevdir)/rules.d"
+ CUSTOM_ENV=true
+ DETECT_USERSPACE_ENV=false
+ DEBUG=$(usex debug)
+ PYPKGDIR="$(python_get_sitedir)"
+ # ENABLE_OPTIMIZATIONS detects cpu type and sets flags accordingly
+ # -fomit-frame-pointer is added also which can cripple debugging.
+ # we set flags from portage instead
+ ENABLE_OPTIMIZATIONS=false
+ # This only works for JACK1>=0.122.0 or JACK2>=1.9.9.
+ ENABLE_SETBUFFERSIZE_API_VER=force
+ )
+ if multilib_is_native_abi; then
+ myesconsargs+=(
+ BUILD_MIXER=$(usex qt5 true false)
+ BUILD_TESTS=$(usex test-programs)
+ )
+ else
+ myesconsargs+=(
+ BUILD_MIXER=false
+ BUILD_TESTS=false
+ )
+ fi
+ escons "${myesconsargs[@]}" "${@}"
+}
+
+src_prepare() {
+ default
+
+ # Bug #808853
+ cp "${BROOT}"/usr/share/gnuconfig/config.guess admin/ || die "Failed to update config.guess"
+
+ # Always use Qt5
+ sed -i -e 's/try:/if False:/' -e 's/except.*/else:/' support/mixer-qt4/ffado/import_pyqt.py || die
+
+ # Bugs #658052, #659226
+ sed -i -e 's/^CacheDir/#CacheDir/' SConstruct || die
+
+ multilib_copy_sources
+}
+
+multilib_src_compile() {
+ tc-export CC CXX
+ myescons
+}
+
+multilib_src_install() {
+ myescons DESTDIR="${D}" WILL_DEAL_WITH_XDG_MYSELF="True" install
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ python_fix_shebang "${D}"
+ python_optimize "${D}"
+
+ if use qt5; then
+ newicon "support/xdg/hi64-apps-ffado.png" "ffado.png"
+ newmenu "support/xdg/ffado.org-ffadomixer.desktop" "ffado-mixer.desktop"
+ fi
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}