summaryrefslogtreecommitdiff
path: root/media-libs/libffado
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-11-01 03:04:34 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-11-01 03:04:34 +0000
commitaac5e1b02ac846f5e1ce85f4f66fdec46aa9b0d1 (patch)
treec95b33a77f5b447d4d4e83204c5a846a5c481a08 /media-libs/libffado
parentb846e1a1ef5685462a20abbc77cf57ead9064b85 (diff)
gentoo auto-resync : 01:11:2024 - 03:04:33
Diffstat (limited to 'media-libs/libffado')
-rw-r--r--media-libs/libffado/Manifest3
-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, 142 insertions, 0 deletions
diff --git a/media-libs/libffado/Manifest b/media-libs/libffado/Manifest
index 34fcf2a7a4ff..ff1e4aa2e761 100644
--- a/media-libs/libffado/Manifest
+++ b/media-libs/libffado/Manifest
@@ -1,5 +1,8 @@
AUX libffado-2.4.7-fix-config-load-crash.patch 555 BLAKE2B bac518fa7d80dece2c5fa728e05910096d0da458afda9618b0b174521899e686ba060c9a9edec138506d279f1e799ad0c5bdd9925cb91129ca35d55cd632a15c SHA512 28c95fb7a5701c387066db7356aad52b3b33e9e5cad948b9ea578f3826e999d1552b0c1baa0c3f63748828e927137f4143c1dbd0d28db480aadb92446a0288db
AUX libffado-2.4.8-python3.12.patch 2722 BLAKE2B b9d65ea9dd9026d968e732454e4c90ed5bce577b3d262c501e24e38a8957eec7fb6541afb7edcbda1e381096b0686a0f1592e29478d8134c0f74ede775e8f5b4 SHA512 a1ac171048531573de77388dbf3a4cea4babeca71e30e77bba5ebdfeb6e45852af5376bc91bbbc5dfc69fe06f50cf0a25233e21ea6a7fb54a96e5473503f6bab
+AUX libffado-2.4.9-fix-config-load-crash.patch 527 BLAKE2B 8451b5085d805277fa62081157e1ecf2692ff7aed200553941e595cb567fa1c247f365e81439f70d1ce6d164aad514c6aa04dd03360770df3c456f790c2f4c06 SHA512 fffe5817298d7a59ec0c29d5970cae07ddb0b796618a6e440be606aa7d79b329a9e19d47c3d70aa483d66f723cef9abf967f8d202b102b158b75add2f2afa440
DIST libffado-2.4.8.tgz 1237955 BLAKE2B 14b83d55fc9a7b33c888b893c808f8419292fefaa2c2239b4b51c2b84070a584ea72821c8469bb8d965a9a5e6473b6fcfb5e85f4eecd2d424e3167322f8abb81 SHA512 fbbcd30640c55315f2e65fc6c07afc71a77dd2c9d1b6127ee55cd17e76511ad5f0563135e52397dbf113fb0d5925021a38780f231409bdd920da52e6c1ce3acc
+DIST libffado-2.4.9.tgz 1229651 BLAKE2B ec8300066d47d685aa701316efa6831f05d678c509de341d1b74551bf8a3f04b59dcd80d592e2111670212d4056bd1c150cc23dbf43a797a915bf65ae441c85e SHA512 0a0c61cf9339ab542c85eaefbe017b7613f716ae0ed08d11a37782dd7ef5815b18256c5d1b9240f077c9f59bbf4b4878019cefbd6cab78140477bcad6a9d3e44
EBUILD libffado-2.4.8.ebuild 2983 BLAKE2B a5cab924afdc3d6f9471fe44aab4df478f94c0addb615546e9ad2017ef380a9ce0274be4c56d6ad0ed651a0e1ff6ff96d907d49c9c491873ec1ee50a0045e5cd SHA512 9c98f9a814109026ae2ea72364d9ddb1c59c80666319779c37172125aec762027dddd2de4a402626642f499e0fa9dbb48e0e7af45f83b0bc3b650cbf75f6e632
+EBUILD libffado-2.4.9.ebuild 2962 BLAKE2B 5937c5c848370d4e48eeb4d3834924aa93c35ac042df345ffc55aaee9d00af4939832ab61a300e1eb13493649aa1f2b2e12cb9af0667f0ba406ff475cae53436 SHA512 4fc8f79a2956d68b0a7b90aaa9ba738de4d617855b2a174ceeb144974263265dc754e988120584069708b456605c45acd85d450bddef5e1f2c5b281c0453db6d
MISC metadata.xml 344 BLAKE2B a7d2c27caa7e9fa72716534c406145b94bd8a13eadf57d06ea8e3148339857311bd7e8f0434edbf8a70a5e7bfec1726425e1d16734841b056caeee7754471666 SHA512 30d31f76c73ff218fa34e5f9d442e2366082bf4697038c804c093cac0e22720341691b732bf653466f8e5fc7e734c11b08a02cef7dd2a4bd93635968e2c29447
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
+}