1 |
commit: c25d9d6e155fb609e375e6a85aeb585fde5a2f67 |
2 |
Author: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Nov 28 08:55:55 2022 +0000 |
4 |
Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Nov 28 08:56:44 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c25d9d6e |
7 |
|
8 |
media-libs/libffado: bump to 2.4.7 + fix for config load crash |
9 |
|
10 |
patch by Adam Wenocur <awenocur <AT> gmail.com> |
11 |
|
12 |
Closes: https://bugs.gentoo.org/744364 |
13 |
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org> |
14 |
|
15 |
media-libs/libffado/Manifest | 1 + |
16 |
.../libffado-2.4.7-fix-config-load-crash.patch | 13 +++ |
17 |
media-libs/libffado/libffado-2.4.7.ebuild | 125 +++++++++++++++++++++ |
18 |
3 files changed, 139 insertions(+) |
19 |
|
20 |
diff --git a/media-libs/libffado/Manifest b/media-libs/libffado/Manifest |
21 |
index 522d1cda4de7..d09d38ce2d34 100644 |
22 |
--- a/media-libs/libffado/Manifest |
23 |
+++ b/media-libs/libffado/Manifest |
24 |
@@ -1 +1,2 @@ |
25 |
DIST libffado-2.4.6.tgz 1230455 BLAKE2B 1e86e7f9179e94c00a74514dbd7c0c299de6d1870f22c4d9ba14cb6b105b41c9dda62d19d0d660e84eee7e0f02c0bf7c44fbe58e24634ccf9cc9e41f1d38b5c2 SHA512 dac651233ea94c19834e810c64230bcbd5516de9e694ced1b6497ad927d734c527b3a556281676393674d33da768cb2431e7da1a0fdfc6ceb268e897029aa584 |
26 |
+DIST libffado-2.4.7.tgz 1231931 BLAKE2B 3c304011259ddbd35ce8fd725d38a5f50fca962981f9c5af6e377493a14985e4b96c64bcc54ba5a341028ec17dc6f2c42ce527422779f2edc6f9a1a61220cf51 SHA512 424a9ca7ded12e72d77a50d7ddf4e50dc0d55b80d725499df7609ce60d0eac8b24a41d9b8e4e74f78bdefe114b61bd5f1ec09a6d083f4a58475e66d61153f075 |
27 |
|
28 |
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 |
29 |
new file mode 100644 |
30 |
index 000000000000..05ede6ebf653 |
31 |
--- /dev/null |
32 |
+++ b/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch |
33 |
@@ -0,0 +1,13 @@ |
34 |
+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 |
35 |
+index 7078b0e..d184d73 100644 |
36 |
+--- libffado-2.4.1-old/support/mixer-qt4/ffado/mixer/globalmixer.py |
37 |
++++ libffado-2.4.1/support/mixer-qt4/ffado/mixer/globalmixer.py |
38 |
+@@ -96,7 +96,6 @@ class GlobalMixer(QWidget): |
39 |
+ @pyqtSlot() |
40 |
+ def on_txtNickname_returnPressed( self ): |
41 |
+ if self.nickname.canChangeValue(): |
42 |
+- asciiData = self.txtNickname.text().toAscii() |
43 |
+- self.nickname.setText( asciiData.data() ) |
44 |
++ self.nickname.setText( self.txtNickname.text().encode('utf-8') ) |
45 |
+ else: |
46 |
+ self.txtNickname.setText( self.nickname.text() ) |
47 |
|
48 |
diff --git a/media-libs/libffado/libffado-2.4.7.ebuild b/media-libs/libffado/libffado-2.4.7.ebuild |
49 |
new file mode 100644 |
50 |
index 000000000000..116efcf9375f |
51 |
--- /dev/null |
52 |
+++ b/media-libs/libffado/libffado-2.4.7.ebuild |
53 |
@@ -0,0 +1,125 @@ |
54 |
+# Copyright 1999-2022 Gentoo Authors |
55 |
+# Distributed under the terms of the GNU General Public License v2 |
56 |
+ |
57 |
+EAPI=8 |
58 |
+ |
59 |
+PYTHON_COMPAT=( python3_{8..10} ) |
60 |
+ |
61 |
+inherit desktop python-single-r1 scons-utils toolchain-funcs udev multilib-minimal |
62 |
+ |
63 |
+DESCRIPTION="Driver for IEEE1394 (Firewire) audio interfaces" |
64 |
+HOMEPAGE="http://www.ffado.org" |
65 |
+ |
66 |
+if [[ "${PV}" = "9999" ]]; then |
67 |
+ inherit subversion |
68 |
+ ESVN_REPO_URI="http://subversion.ffado.org/ffado/trunk/${PN}" |
69 |
+else |
70 |
+ SRC_URI="http://www.ffado.org/files/${P}.tgz" |
71 |
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" |
72 |
+fi |
73 |
+ |
74 |
+LICENSE="GPL-2 GPL-3" |
75 |
+SLOT="0" |
76 |
+IUSE="debug qt5 test-programs" |
77 |
+REQUIRED_USE="${PYTHON_REQUIRED_USE}" |
78 |
+ |
79 |
+BDEPEND=" |
80 |
+ virtual/pkgconfig |
81 |
+" |
82 |
+CDEPEND="${PYTHON_DEPS} |
83 |
+ dev-cpp/libxmlpp:2.6[${MULTILIB_USEDEP}] |
84 |
+ dev-libs/dbus-c++ |
85 |
+ dev-libs/libconfig:=[cxx,${MULTILIB_USEDEP}] |
86 |
+ media-libs/alsa-lib |
87 |
+ media-libs/libiec61883[${MULTILIB_USEDEP}] |
88 |
+ sys-apps/dbus |
89 |
+ sys-libs/libavc1394[${MULTILIB_USEDEP}] |
90 |
+ sys-libs/libraw1394[${MULTILIB_USEDEP}] |
91 |
+ qt5? ( |
92 |
+ $(python_gen_cond_dep ' |
93 |
+ dev-python/dbus-python[${PYTHON_USEDEP}] |
94 |
+ dev-python/PyQt5[dbus,${PYTHON_USEDEP}] |
95 |
+ ') |
96 |
+ x11-misc/xdg-utils |
97 |
+ )" |
98 |
+DEPEND="${CDEPEND}" |
99 |
+RDEPEND="${CDEPEND}" |
100 |
+ |
101 |
+PATCHES=( |
102 |
+ "${FILESDIR}/libffado-2.4.7-fix-config-load-crash.patch" |
103 |
+) |
104 |
+ |
105 |
+myescons() { |
106 |
+ local myesconsargs=( |
107 |
+ PREFIX="${EPREFIX}/usr" |
108 |
+ LIBDIR="${EPREFIX}/usr/$(get_libdir)" |
109 |
+ MANDIR="${EPREFIX}/usr/share/man" |
110 |
+ UDEVDIR="$(get_udevdir)/rules.d" |
111 |
+ CUSTOM_ENV=true |
112 |
+ DETECT_USERSPACE_ENV=false |
113 |
+ DEBUG=$(usex debug) |
114 |
+ PYPKGDIR="$(python_get_sitedir)" |
115 |
+ # ENABLE_OPTIMIZATIONS detects cpu type and sets flags accordingly |
116 |
+ # -fomit-frame-pointer is added also which can cripple debugging. |
117 |
+ # we set flags from portage instead |
118 |
+ ENABLE_OPTIMIZATIONS=false |
119 |
+ # This only works for JACK1>=0.122.0 or JACK2>=1.9.9. |
120 |
+ ENABLE_SETBUFFERSIZE_API_VER=force |
121 |
+ ) |
122 |
+ if multilib_is_native_abi; then |
123 |
+ myesconsargs+=( |
124 |
+ BUILD_MIXER=$(usex qt5 true false) |
125 |
+ BUILD_TESTS=$(usex test-programs) |
126 |
+ ) |
127 |
+ else |
128 |
+ myesconsargs+=( |
129 |
+ BUILD_MIXER=false |
130 |
+ BUILD_TESTS=false |
131 |
+ ) |
132 |
+ fi |
133 |
+ escons "${myesconsargs[@]}" "${@}" |
134 |
+} |
135 |
+ |
136 |
+src_prepare() { |
137 |
+ default |
138 |
+ |
139 |
+ # Bug #808853 |
140 |
+ cp "${BROOT}"/usr/share/gnuconfig/config.guess admin/ || die "Failed to update config.guess" |
141 |
+ |
142 |
+ # Always use Qt5 |
143 |
+ sed -i -e 's/try:/if False:/' -e 's/except.*/else:/' support/mixer-qt4/ffado/import_pyqt.py || die |
144 |
+ |
145 |
+ # Bugs #658052, #659226 |
146 |
+ sed -i -e 's/^CacheDir/#CacheDir/' SConstruct || die |
147 |
+ |
148 |
+ multilib_copy_sources |
149 |
+} |
150 |
+ |
151 |
+multilib_src_compile() { |
152 |
+ tc-export CC CXX |
153 |
+ myescons |
154 |
+} |
155 |
+ |
156 |
+multilib_src_install() { |
157 |
+ myescons DESTDIR="${D}" WILL_DEAL_WITH_XDG_MYSELF="True" install |
158 |
+} |
159 |
+ |
160 |
+multilib_src_install_all() { |
161 |
+ einstalldocs |
162 |
+ |
163 |
+ python_fix_shebang "${D}" |
164 |
+ python_optimize "${D}" |
165 |
+ |
166 |
+ if use qt5; then |
167 |
+ newicon "support/xdg/hi64-apps-ffado.png" "ffado.png" |
168 |
+ newmenu "support/xdg/ffado.org-ffadomixer.desktop" "ffado-mixer.desktop" |
169 |
+ fi |
170 |
+} |
171 |
+ |
172 |
+pkg_postinst() { |
173 |
+ udev_reload |
174 |
+} |
175 |
+ |
176 |
+pkg_postrm() { |
177 |
+ udev_reload |
178 |
+} |