summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiroslav Šulc <fordfrog@gentoo.org>2024-10-31 21:05:37 +0100
committerMiroslav Šulc <fordfrog@gentoo.org>2024-10-31 21:05:49 +0100
commit56db86d7251a5ab3ee46233a091153dbbf1ec1e1 (patch)
tree9d2566d63e01f40d9d15fbf7aaa0d4c7c34dbe97 /media-libs
parentsys-apps/isapnptools: drop 1.27 (diff)
downloadgentoo-56db86d7251a5ab3ee46233a091153dbbf1ec1e1.tar.gz
gentoo-56db86d7251a5ab3ee46233a091153dbbf1ec1e1.tar.bz2
gentoo-56db86d7251a5ab3ee46233a091153dbbf1ec1e1.zip
media-libs/libffado: bump to 2.4.9
Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/libffado/Manifest1
-rw-r--r--media-libs/libffado/files/libffado-2.4.9-fix-config-load-crash.patch12
-rw-r--r--media-libs/libffado/libffado-2.4.9.ebuild127
3 files changed, 140 insertions, 0 deletions
diff --git a/media-libs/libffado/Manifest b/media-libs/libffado/Manifest
index ec50968e9f57..16bec4cb62b1 100644
--- a/media-libs/libffado/Manifest
+++ b/media-libs/libffado/Manifest
@@ -1 +1,2 @@
DIST libffado-2.4.8.tgz 1237955 BLAKE2B 14b83d55fc9a7b33c888b893c808f8419292fefaa2c2239b4b51c2b84070a584ea72821c8469bb8d965a9a5e6473b6fcfb5e85f4eecd2d424e3167322f8abb81 SHA512 fbbcd30640c55315f2e65fc6c07afc71a77dd2c9d1b6127ee55cd17e76511ad5f0563135e52397dbf113fb0d5925021a38780f231409bdd920da52e6c1ce3acc
+DIST libffado-2.4.9.tgz 1229651 BLAKE2B ec8300066d47d685aa701316efa6831f05d678c509de341d1b74551bf8a3f04b59dcd80d592e2111670212d4056bd1c150cc23dbf43a797a915bf65ae441c85e SHA512 0a0c61cf9339ab542c85eaefbe017b7613f716ae0ed08d11a37782dd7ef5815b18256c5d1b9240f077c9f59bbf4b4878019cefbd6cab78140477bcad6a9d3e44
diff --git a/media-libs/libffado/files/libffado-2.4.9-fix-config-load-crash.patch b/media-libs/libffado/files/libffado-2.4.9-fix-config-load-crash.patch
new file mode 100644
index 000000000000..db28ec831281
--- /dev/null
+++ b/media-libs/libffado/files/libffado-2.4.9-fix-config-load-crash.patch
@@ -0,0 +1,12 @@
+--- a/support/mixer-qt4/ffado/mixer/globalmixer.py
++++ b/support/mixer-qt4/ffado/mixer/globalmixer.py
+@@ -96,8 +96,7 @@ 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.9.ebuild b/media-libs/libffado/libffado-2.4.9.ebuild
new file mode 100644
index 000000000000..47aacae4960b
--- /dev/null
+++ b/media-libs/libffado/libffado-2.4.9.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..13} )
+
+inherit desktop python-single-r1 scons-utils toolchain-funcs udev multilib-minimal xdg
+
+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++-0.9.0-r5
+ 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.9-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/org.ffado.FfadoMixer.desktop" "ffado-mixer.desktop"
+ fi
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ udev_reload
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ udev_reload
+}