diff --git a/media-libs/libffado/Manifest b/media-libs/libffado/Manifest new file mode 100644 index 000000000..d3949e14d --- /dev/null +++ b/media-libs/libffado/Manifest @@ -0,0 +1 @@ +DIST libffado-2.4.1.tgz 1229295 BLAKE2B 3b42493b68fc8648e116784e04baee2278c21e01fa92b22d990340ef329f67c898e247891e76d494410a758009fcf186ba556e900598eaca539a9879664cc704 SHA512 0859f17b87c68108bbde726d1cf8ab0b99f6f7f02cbe36acd8b451e112688a4d1edc21134eb4a2edc8c92dcf5f5da52efeabb2ad0dc07804ed1aa664a3b38d74 diff --git a/media-libs/libffado/files/libffado-2.4.1-python3-scons-fix.patch b/media-libs/libffado/files/libffado-2.4.1-python3-scons-fix.patch new file mode 100644 index 000000000..e9cb0fb94 --- /dev/null +++ b/media-libs/libffado/files/libffado-2.4.1-python3-scons-fix.patch @@ -0,0 +1,24 @@ +--- libffado-2.4.1-old/support/mixer-qt4/SConscript 2015-04-12 20:18:15.000000000 +0900 ++++ libffado-2.4.1/support/mixer-qt4/SConscript 2018-06-26 19:59:19.015719710 +0900 +@@ -29,16 +29,12 @@ + if env['BUILD_MIXER'] == 'true': + e = env.Clone() + +- def findfiles( arg, dirname, names ): +- for name in names: +- if name.startswith("."): +- names.remove(name) +- for name in names: +- if '.pyc' not in name and '.in' not in name: +- arg.append( os.path.join( dirname, name ) ) +- + pythonfiles = [ 'ffado/config.py' ] +- os.path.walk( "ffado", findfiles, pythonfiles ) ++ for root, dirs, files in os.walk( "ffado" ): ++ for name in files: ++ if name.endswith( '.pyc' ) or '.in' in name or name.startswith("."): ++ continue ++ pythonfiles.append( os.path.join( root, name ) ) + + e.ScanReplace( "ffado/config.py.in" ) + e.Depends( "ffado/config.py", "#/SConstruct" ) diff --git a/media-libs/libffado/libffado-2.4.1-r2.ebuild b/media-libs/libffado/libffado-2.4.1-r2.ebuild new file mode 100644 index 000000000..b5b263cb3 --- /dev/null +++ b/media-libs/libffado/libffado-2.4.1-r2.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +PYTHON_COMPAT=( python3_7 ) + +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="amd64 ~arm ~arm64 ~ppc ~ppc64 x86" +fi + +LICENSE="GPL-2 GPL-3" +SLOT="0" +IUSE="debug qt5 test-programs" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND="${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_MULTI_USEDEP}] + dev-python/PyQt5[dbus,${PYTHON_MULTI_USEDEP}] + ') + x11-misc/xdg-utils + )" +DEPEND="${COMMON_DEPEND} + virtual/pkgconfig" +RDEPEND="${COMMON_DEPEND} + !=0.122.0 or JACK2>=1.9.9, so we block + # lower versions. + 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 + + # 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 +}