aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-lang/python/Manifest3
-rw-r--r--dev-lang/python/files/python-2.7.6-includeflags.patch33
-rw-r--r--dev-lang/python/python-2.7.6-r1.ebuild206
-rw-r--r--media-libs/libffado/ChangeLog90
-rw-r--r--media-libs/libffado/Manifest11
-rw-r--r--media-libs/libffado/files/libffado-2.1.0-no-jackd-version.patch65
-rw-r--r--media-libs/libffado/files/libffado-2.1.0/0001-honour-toolchain-env.patch39
-rw-r--r--media-libs/libffado/files/libffado-2.1.0/0002-remove-O2.patch25
-rw-r--r--media-libs/libffado/files/libffado-9999-no-jackd-version.patch67
-rw-r--r--media-libs/libffado/files/libffado-9999/0001-honour-toolchain-env.patch39
-rw-r--r--media-libs/libffado/files/libffado-9999/0003-remove-O2.patch25
-rw-r--r--media-libs/libffado/libffado-2.1.0-r2.ebuild81
-rw-r--r--media-libs/libffado/metadata.xml11
13 files changed, 629 insertions, 66 deletions
diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
index 3758a69..a0d0243 100644
--- a/dev-lang/python/Manifest
+++ b/dev-lang/python/Manifest
@@ -9,6 +9,7 @@ AUX python-2.7-issue18851.patch 11805 SHA256 4ecff8db20cdc4d9b0692a126859c318a9b
AUX python-2.7.5-library-path.patch 991 SHA256 ff7a4a1846ebcadc2dbf979ea619072caac22e47909fe188fc4b6becce6ea2eb SHA512 74916d541eb38c526dc1243fe5e5a9de3a7875f02c53e5f49e60182ba042de2f15514364e7fbd821146dcf92db2bba88d8a9f46d4c71237b73fd39cbabf93d85 WHIRLPOOL 62bb1c85941ccaac7ca6f6fb2d93dc27f206cf9f815b90ef1f89748dfdd1d38deda9f6bf7eb2ce9fd8635d1a77576819192e8049ec5de52fdeb9f981dfb32f9f
AUX python-2.7.5-nonfatal-compileall.patch 750 SHA256 3f5a137602f1b3f0522f561c168a740f0080b29c2c888cb3a8dbbcc4407c2d9e SHA512 d2e93e2a6fcd55d516df0ddaca31af97faed677ea6b4be282eb99e7864f8a7399b5ca11139844a4b3c264832183483b0f4c8c9865c05de0e8520e6d2c8f1dbc6 WHIRLPOOL ab576e3a4e67f881d6d5c705503230ace125fe94d907d7f69bb573dd492070b8b34078a2b1205f315eb45244fbae8855c0f15ce35158f1d356f1bd4acf83b3c2
AUX python-2.7.5-re_unsigned_ptrdiff.patch 941 SHA256 5b0c0465a23d27e1c8f0961a8d88b3af75fbc9933ab60c2a71091720a3681079 SHA512 d46fbbc8411fae78cdfca2564faca42f32bb95ee348b9aa3fd1ca90b346cc52cd468945cee07e6df4dff46c10cee6856a58004f8e453960f6dca2751c077802b WHIRLPOOL 10bb08242dd9a055f6bdaf3eb1546786b58f180667c6355ea7276114cbac0ffba6c34822add7965fe3b5d41cc92ce8ec45e2d1d56377d8a6aa2755ef4267d101
+AUX python-2.7.6-includeflags.patch 1495 SHA256 f04b18b09c8e8bddfb9d92186a5457735a036fe541c1510c4b44a1c4005b3d79 SHA512 6b656ab8612798eac4aa09c4bc856d9f71f4df73b0aabbabec5952fbbe71bb2774c7f633f5cbc80e4e9802aba97ba698fdbc9795f3353c591fe888c8ef592fbb WHIRLPOOL e1de6155105c4b87d0b0e649570c60c3ddd7a024e8fb82d4443de3b4a9b5777bf9b9f78fe0236c2f9455d9339df2139002388432560d1be1fa99c9894c6c5a61
AUX python-3.2-CVE-2013-2099.patch 2102 SHA256 76a89951e7efcf14d37e30e0104446429ca121c68cbb1753ec362a177c1b5a54 SHA512 03d2a09fe730bf8c94df1eb10f8bac37a31a28dfb45b7d49abe1c3ffe26ca948f8d00eb58319d34102f8a747a038d447d3507b11c051c778c42ae21ac1066c8e WHIRLPOOL 3cd701c606ef1f4f557d1d250af41a860a6a5c4b6d9ff9a9f469ab6974f13e1205d2c4c791e9bd353fd4ff726f6cbf979f9a3927b83b04af5128c1aea7070496
AUX python-3.2-issue16248.patch 738 SHA256 b5e94ead2622f355d733232dcfdac4dab53889aab12980fa1e4496c296191e77 SHA512 6fcf3d4cf05e41758a6d51ad9cc25ce9fcd1d33854f096b599811a07ef6b7f0cc4f178c4db6b15c5c9ee86eb53fcc736fede0dfb4eae81ca429d0fad62d84db9 WHIRLPOOL dd620bdce394a74910f4deed50b8bcd2b5d6b61af1e2e225a7c36fe4f293560fe1237a2111a4a4a334dfd1272fa4b7faf6289b2a018864c4f154c8a8a8b85c5c
AUX python-3.3-CVE-2013-2099.patch 2102 SHA256 d5ccc8de43a176d9d16c3a7be58d32dcf3c952147d8866f84dffcd8fa66f6396 SHA512 a8e2c8fd3d3c3924acb856e89b6dc6965c887688e4c7d078c27abacfaf6b33b12484d86942b75643f28e4a14a465e2ec6a30fe53acf2ab036ae667fb7f76d737 WHIRLPOOL c02bd815d5143b6a916a91f40bb7971f1be188e836ab6095a5befd6410545acba0d44b4b0a75a5f7e7d84105018c0ef27887eefdcd883c73e68f872bb4138e35
@@ -19,7 +20,7 @@ DIST Python-3.3.3.tar.xz 12057744 SHA256 339275b30a1a3fef1589016bf6302c14e870f7a
DIST python-gentoo-patches-2.7.6-0.tar.xz 13916 SHA256 01971f3cfe464d80a775d2838a519b16715be02fce0145a0c4fdc361fa57ef49 SHA512 32b0d3f49294d2f7935be459bbcf0892598fc856a266abea11f4cd109e174f4de8b8bef8b74737253e1820b6de23f5df070a0927dcc499adf607eb5ac11c3709 WHIRLPOOL fb9a448ebebc7b7c68ad4460c7ae51e1619224570540e15d6b6c05039ed09da52acd364374c9f85d8d36c299d86394a078e0fb10bfb359b83a91426f1a886066
DIST python-gentoo-patches-3.2.5-0.tar.xz 13892 SHA256 ebbfacc81486493ce4c16a697e53d77e9dc5c9d700e86cf92ae93b5e3e03abee SHA512 6d09ef5ed583dedd587d4247c7d0e99daf20d7cadb7afbcf4d951931e3a574a82f1b9dbc4e4f93d3dc55773808452284f50dee2fbfb6b68aff5f1f53c1665359 WHIRLPOOL 55b1ba0a25612b3987af93e252dd2dbd71ff0f4ff0bcadda9ba0b11e19278acdb3fa91166a854dcbe3d27bb570a104ee63a3976111d6f608614f7b3d9f734f67
DIST python-gentoo-patches-3.3.3-0.tar.xz 12992 SHA256 38b5c604416947fdd7d87ada2ccd3febf7407f00c1e67e6a99be8765f1b25c49 SHA512 d803b287c0f407c68dd766974296239419fb35441f1796081681f28d17b1f6c7e50e0aae807ad147469eb586db8fe486a013a166cb76e08f2b7a9ba39acb1760 WHIRLPOOL 09a9dbd1831c2e7022f4df27b57435dd1df7eace294e8fa069ce5fa5c1719f64ba9bcd8f27d614a8c13ee8605db37c7e75c13fa14885b76ce289667bf2871aaf
-EBUILD python-2.7.6-r1.ebuild 10038 SHA256 da6771fbecb5dd4a9a48d58ed6c9ea4301cb27ea8c9fa1dcc6bbb8d193a32e93 SHA512 e32ebcdac234d9b4d39bf109e2303d08e2088256d6de0cdca233b3e295d5eb957533d32178d8943bf75a9853198110b76c519a469a90b7aead9044c2f191e688 WHIRLPOOL defeea6d5172c66c16789843e30b40088384651cadf51a9ddb61b65f6daeb14844e275aaf040b75d265d0b43907e2bdb21bc056d5617b591eca39219a95bb9d1
+EBUILD python-2.7.6-r1.ebuild 12576 SHA256 fc49b898e8a1a361035b8967444e33987b85ade13969e779cef7b379b0d1c6d3 SHA512 94327b2d914176208613f38d7243d9e448ff3219cea38c2453be62eefba28eb15975290d2c6667f17e270b8a49b375a4c0d460470715195d1ce50d846f69b873 WHIRLPOOL aacdfadd6f882f8d1158ce0f5bfd7ddf6dda08530f8bc70ece73ffcb24bba148bb9a401114ca12bddac11f0d14c74abd43495ab2591ae3b30ae35a28ff46baf2
EBUILD python-3.2.5-r4.ebuild 10625 SHA256 ec1ff663e5451d2e021b362d016238900e4153f7bac28e25b9a5901d3e1aa684 SHA512 8856676c5e120c1230e4f17dac4b14f6dcf647102e755ae3f769564255a98ded4a629240a33f93cd5d8c47fa951c25bc3f12aba74ce4cdf6927151ae11c27d16 WHIRLPOOL 68725726c33faab42be22c1bfdd7041e688f57154244db97932e524b62d578397c1fd3099c36cf957d0c62e286c7c0dfe1906b22fd74f2767bc2758b1cfbb513
EBUILD python-3.3.3-r1.ebuild 9072 SHA256 84f9ffa940b13349f1acba7573c767f79d319794d13cc789f2ead6dbb01812b4 SHA512 18a6cfd83df529c29ac82e8de652e058e4ad8ac67c62414339c5f4f869ba673b7d55d6c93911fbb32af9b8f0314be3b55598cf6ad6cb0a9a4560c30cbab019c7 WHIRLPOOL 1fbedf693cf990337958b6c58e885579f57b5d58735a11f3dab0a027803ebb1b9750cb01a872f27b89f01d0b382ee0639c4abc9fe3791402bbd5381cbb07c518
MISC ChangeLog 27576 SHA256 d9b6928b2234df665a3ce1868f4452b24d2cc7e012e6ac08c116d8b786ab4859 SHA512 c54030c7f02a0663eea1c2a0fb5b9d0377b9245bb1de7330e85d341a05c7c3c6db117df20ac121fa1e549da3e76470714c9e4b723499716f00ee8ae6d4a64d50 WHIRLPOOL 8a878d2be539d36d6fd4102df9d493c63b528cd46a7ee3b0c89429a2370bdab90c50925e73adaf4c5920cef23efd54993d5b0e0d2cd5d946648a97b2bbbb7405
diff --git a/dev-lang/python/files/python-2.7.6-includeflags.patch b/dev-lang/python/files/python-2.7.6-includeflags.patch
new file mode 100644
index 0000000..a76dcdd
--- /dev/null
+++ b/dev-lang/python/files/python-2.7.6-includeflags.patch
@@ -0,0 +1,33 @@
+diff -urpN Python-2.7.6.orig/Misc/python-config.in Python-2.7.6/Misc/python-config.in
+--- Python-2.7.6.orig/Misc/python-config.in 2014-01-02 05:59:02.832703535 -0800
++++ Python-2.7.6/Misc/python-config.in 2014-01-02 06:57:36.856587292 -0800
+@@ -37,8 +37,18 @@ for opt in opt_flags:
+ print sysconfig.EXEC_PREFIX
+
+ elif opt in ('--includes', '--cflags'):
++ pyi = sysconfig.get_python_inc(plat_specific=True)
+ flags = ['-I' + sysconfig.get_python_inc(),
+- '-I' + sysconfig.get_python_inc(plat_specific=True)]
++ '-I' + pyi]
++
++ # gentoo multilib header de-wrappification
++ chost = os.getenv('CTARGET')
++ if not chost:
++ chost = os.getenv('CHOST')
++ if chost:
++ if pyi.endswith('/python%s' % pyver):
++ flags.insert(0, '-I' + pyi.rsplit('/python%s' % pyver, 1)[0] + '/%s/python%s' % (chost, pyver))
++
+ if opt == '--cflags':
+ flags.extend(getvar('CFLAGS').split())
+ print ' '.join(flags)
+diff -urpN Python-2.7.6.orig/Misc/python.pc.in Python-2.7.6/Misc/python.pc.in
+--- Python-2.7.6.orig/Misc/python.pc.in 2013-11-09 23:36:41.000000000 -0800
++++ Python-2.7.6/Misc/python.pc.in 2014-01-02 07:24:35.488961005 -0800
+@@ -9,5 +9,5 @@ Requires:
+ Version: @VERSION@
+ Libs.private: @LIBS@
+ Libs: -L${libdir} -lpython@VERSION@
+-Cflags: -I${includedir}/python@VERSION@
++Cflags: -I${includedir}/@host_alias@/python@VERSION@ -I${includedir}/python@VERSION@
+
diff --git a/dev-lang/python/python-2.7.6-r1.ebuild b/dev-lang/python/python-2.7.6-r1.ebuild
index f9d4b0c..4e14c3f 100644
--- a/dev-lang/python/python-2.7.6-r1.ebuild
+++ b/dev-lang/python/python-2.7.6-r1.ebuild
@@ -6,7 +6,7 @@ EAPI="4"
WANT_AUTOMAKE="none"
WANT_LIBTOOL="none"
-inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
+inherit autotools eutils flag-o-matic multilib pax-utils python-utils-multilib-r1 toolchain-funcs multiprocessing multilib-minimal
MY_P="Python-${PV}"
PATCHSET_REVISION="0"
@@ -19,7 +19,7 @@ SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
LICENSE="PSF-2"
SLOT="2.7"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="~amd64"
IUSE="-berkdb build doc elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
# Do not add a dependency on dev-lang/python to this ebuild.
@@ -27,36 +27,36 @@ IUSE="-berkdb build doc elibc_uclibc examples gdbm hardened ipv6 +ncurses +readl
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
-RDEPEND="app-arch/bzip2
- >=sys-libs/zlib-1.1.3
- virtual/libffi
- virtual/libintl
+RDEPEND="app-arch/bzip2[${MULTILIB_USEDEP}]
+ >=sys-libs/zlib-1.1.3[${MULTILIB_USEDEP}]
+ virtual/libffi[${MULTILIB_USEDEP}]
+ virtual/libintl[${MULTILIB_USEDEP}]
!build? (
berkdb? ( || (
- sys-libs/db:5.3
- sys-libs/db:5.2
- sys-libs/db:5.1
- sys-libs/db:5.0
- sys-libs/db:4.8
- sys-libs/db:4.7
- sys-libs/db:4.6
- sys-libs/db:4.5
- sys-libs/db:4.4
- sys-libs/db:4.3
- sys-libs/db:4.2
+ sys-libs/db:5.3[${MULTILIB_USEDEP}]
+ sys-libs/db:5.2[${MULTILIB_USEDEP}]
+ sys-libs/db:5.1[${MULTILIB_USEDEP}]
+ sys-libs/db:5.0[${MULTILIB_USEDEP}]
+ sys-libs/db:4.8[${MULTILIB_USEDEP}]
+ sys-libs/db:4.7[${MULTILIB_USEDEP}]
+ sys-libs/db:4.6[${MULTILIB_USEDEP}]
+ sys-libs/db:4.5[${MULTILIB_USEDEP}]
+ sys-libs/db:4.4[${MULTILIB_USEDEP}]
+ sys-libs/db:4.3[${MULTILIB_USEDEP}]
+ sys-libs/db:4.2[${MULTILIB_USEDEP}]
) )
- gdbm? ( sys-libs/gdbm[berkdb] )
+ gdbm? ( sys-libs/gdbm[berkdb,${MULTILIB_USEDEP}] )
ncurses? (
- >=sys-libs/ncurses-5.2
- readline? ( >=sys-libs/readline-4.1 )
+ >=sys-libs/ncurses-5.2[${MULTILIB_USEDEP}]
+ readline? ( >=sys-libs/readline-4.1[${MULTILIB_USEDEP}] )
)
- sqlite? ( >=dev-db/sqlite-3.3.8:3 )
- ssl? ( dev-libs/openssl )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3[${MULTILIB_USEDEP}] )
+ ssl? ( dev-libs/openssl[${MULTILIB_USEDEP}] )
tk? (
- >=dev-lang/tk-8.0
- dev-tcltk/blt
+ >=dev-lang/tk-8.0[${MULTILIB_USEDEP}]
+ dev-tcltk/blt[${MULTILIB_USEDEP}]
)
- xml? ( >=dev-libs/expat-2.1 )
+ xml? ( >=dev-libs/expat-2.1[${MULTILIB_USEDEP}] )
)
!!<sys-apps/portage-2.1.9"
DEPEND="${RDEPEND}
@@ -70,6 +70,19 @@ PDEPEND="app-admin/eselect-python
S="${WORKDIR}/${MY_P}"
+
+MULTILIB_WRAPPED_HEADERS=(
+ ^/usr/include/python${SLOT}/pyconfig.h
+)
+MULTILIB_WRAPPED_EXECUTABLES=(
+ /usr/bin/python${SLOT}
+ /usr/bin/python${SLOT}-config
+ /usr/bin/2to3-${SLOT}
+ /usr/bin/pydoc${SLOT}
+ /usr/bin/idle${SLOT}
+)
+MULTILIB_PARALLEL_PHASES=( src_configure src_compile )
+
pkg_setup() {
if use berkdb; then
ewarn "'bsddb' module is out-of-date and no longer maintained inside"
@@ -100,6 +113,19 @@ src_prepare() {
# Fix for cross-compiling.
epatch "${FILESDIR}/python-2.7.5-nonfatal-compileall.patch"
+ # multilib header includes
+ local abis=( $(multilib_get_enabled_abis) )
+ [[ ${#abis[@]} -gt 1 ]] && \
+ epatch "${FILESDIR}/python-2.7.6-includeflags.patch"
+
+ epatch_user
+
+ multilib_copy_sources
+
+ multilib_parallel_foreach_abi multilib-build_run_in_build_dir abi_src_prepare
+}
+
+abi_src_prepare() {
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
Lib/distutils/command/install.py \
Lib/distutils/sysconfig.py \
@@ -111,8 +137,6 @@ src_prepare() {
Modules/getpath.c \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
- epatch_user
-
eautoconf
eautoheader
}
@@ -162,28 +186,40 @@ src_configure() {
use hardened && replace-flags -O3 -O2
fi
+ local dbmliborder
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+ if use berkdb; then
+ dbmliborder+="${dbmliborder:+:}bdb"
+ fi
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
# Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
- tc-export CXX
+ local CXX
+ export CXX="${CXX:-$(tc-getCXX)}"
+
# The configure script fails to use pkg-config correctly.
# http://bugs.python.org/issue15506
- export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
+ export ac_cv_path_PKG_CONFIG=${PKG_CONFIG:-$(tc-getPKG_CONFIG)}
# Set LDFLAGS so we link modules with -lpython2.7 correctly.
# Needed on FreeBSD unless Python 2.7 is already installed.
# Please query BSD team before removing this!
+ local LDFLAGS="${LDFLAGS}"
append-ldflags "-L."
- local dbmliborder
- if use gdbm; then
- dbmliborder+="${dbmliborder:+:}gdbm"
- fi
- if use berkdb; then
- dbmliborder+="${dbmliborder:+:}bdb"
- fi
+ local BUILD_DIR="${BUILD_DIR}"
+ local S="${BUILD_DIR}"
+
+ local ABI="${ABI:-default}"
+ BUILD_DIR="${WORKDIR}/${CHOST}-${ABI}"
- BUILD_DIR="${WORKDIR}/${CHOST}"
mkdir -p "${BUILD_DIR}" || die
- cd "${BUILD_DIR}" || die
+ pushd "${BUILD_DIR}" > /dev/null || die
ECONF_SOURCE="${S}" OPT="" \
econf \
@@ -199,13 +235,24 @@ src_configure() {
--enable-loadable-sqlite-extensions \
--with-system-expat \
--with-system-ffi
+
+ if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+ popd > /dev/null || die
}
-src_compile() {
+multilib_src_compile() {
+ local S="${BUILD_DIR}"
+ local ABI="${ABI:-default}"
+ local BUILD_DIR="${WORKDIR}/${CHOST}-${ABI}"
+
# Avoid invoking pgen for cross-compiles.
touch Include/graminit.h Python/graminit.c
- cd "${BUILD_DIR}" || die
+ pushd "${BUILD_DIR}" > /dev/null || die
emake
# Work around bug 329499. See also bug 413751 and 457194.
@@ -214,22 +261,26 @@ src_compile() {
else
pax-mark m python
fi
+ popd > /dev/null || die
}
-src_test() {
+multilib_src_test() {
+ local S="${BUILD_DIR}"
+ local ABI="${ABI:-default}"
+ local BUILD_DIR="${WORKDIR}/${CHOST}-${ABI}"
+ pushd "${BUILD_DIR}" > /dev/null || die
+
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
- cd "${BUILD_DIR}" || die
-
# Skip failing tests.
local skipped_tests="distutils gdb"
for test in ${skipped_tests}; do
- mv "${S}"/Lib/test/test_${test}.py "${T}"
+ mv "${S}"/Lib/test/test_${test}.py "${T}/test_${test}-${ABI}.py"
done
# Rerun failed tests in verbose mode (regrtest -w).
@@ -237,7 +288,7 @@ src_test() {
local result="$?"
for test in ${skipped_tests}; do
- mv "${T}/test_${test}.py" "${S}"/Lib/test
+ mv "${T}/test_${test}-${ABI}.py" "${S}/Lib/test/test_${test}.py"
done
elog "The following tests have been skipped:"
@@ -252,19 +303,20 @@ src_test() {
if [[ "${result}" -ne 0 ]]; then
die "emake test failed"
fi
+ popd > /dev/null || die
}
-src_install() {
- local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
+multilib_src_install() {
+ local S="${BUILD_DIR}"
+ local ABI="${ABI:-default}"
+ local BUILD_DIR="${WORKDIR}/${CHOST}-${ABI}"
+ pushd "${BUILD_DIR}" > /dev/null || die
- cd "${BUILD_DIR}" || die
emake DESTDIR="${D}" altinstall
+ local libdir=${ED}usr/$(get_libdir)/python${SLOT}
sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die "sed failed"
- # Backwards compat with Gentoo divergence.
- dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
-
# Fix collisions between different slots of Python.
mv "${ED}usr/bin/2to3" "${ED}usr/bin/2to3-${SLOT}"
mv "${ED}usr/bin/pydoc" "${ED}usr/bin/pydoc${SLOT}"
@@ -283,26 +335,13 @@ src_install() {
use threads || rm -r "${libdir}/multiprocessing" || die
use wininst || rm -r "${libdir}/distutils/command/"wininst-*.exe || die
- dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
-
- if use examples; then
- insinto /usr/share/doc/${PF}/examples
- doins -r "${S}"/Tools
- fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
- newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
- newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
- sed \
- -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
- -e "s:@PYDOC@:pydoc${SLOT}:" \
- -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
-
# for python-exec
- python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
+ python_export python${SLOT}-${ABI} EPYTHON PYTHON PYTHON_SITEDIR
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
@@ -312,6 +351,43 @@ src_install() {
echo "EPYTHON='${EPYTHON}'" > epython.py
python_domodule epython.py
+
+ popd > /dev/null || die
+}
+
+multilib_src_install_all() {
+ # Backwards compat with Gentoo divergence.
+ dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
+
+ dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins -r "${S}"/Tools
+ fi
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${SLOT}:" \
+ -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
+
+ declare -a abis=( $(multilib_get_enabled_abis) )
+ local abi file abifile
+ local bestabi=${abis[$(( ${#abis[@]} - 1 ))]}
+ for abi in "${abis[@]}" ; do
+ for file in "${MULTILIB_WRAPPED_EXECUTABLES[@]#@}" ; do
+ [[ ${file} == /usr/bin/python${SLOT} ]] && continue
+ # the rest want shebang hacks
+ abifile="${ED}${file#/}-${abi}"
+ if [[ -f ${abifile} ]] ; then
+ python_rewrite_shebang_multilib "python${SLOT}-${abi}" "${abifile}"
+ else
+ die "Couldn't find \"${abifile}\""
+ fi
+ done
+ done
}
pkg_preinst() {
diff --git a/media-libs/libffado/ChangeLog b/media-libs/libffado/ChangeLog
new file mode 100644
index 0000000..242e053
--- /dev/null
+++ b/media-libs/libffado/ChangeLog
@@ -0,0 +1,90 @@
+# ChangeLog for media-libs/libffado
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+ 29 Nov 2013; Karl Linden (lilrc) <lilrc@users.sourceforge.net>
+ -libffado-2.1.0.ebuild, -libffado-9999.ebuild:
+ Removed old python eclass ebuilds.
+
+ 02 Apr 2013; Karl Linden (lilrc) <lilrc@users.sourceforge.net>
+ files/libffado-2.1.0-no-jackd-version.patch,
+ files/libffado-9999-no-jackd-version.patch:
+ Update patches so that jackd --version wont be called later on in the build
+ process. (and fix typo)
+ Many thanks to Sebastian Rose for reporting the issue.
+
+*libffado-9999-r1 (01 Apr 2013)
+*libffado-2.1.0-r1 (01 Apr 2013)
+
+ 01 Apr 2013; Karl Linden (lilrc) <lilrc@users.sourceforge.net>
+ +libffado-2.1.0-r1.ebuild, +files/libffado-2.1.0-no-jackd-version.patch,
+ +libffado-9999-r1.ebuild, +files/libffado-9999-no-jackd-version.patch:
+ Add patch to avoid build system calling jackd --version. Addpredicts
+ deleted.
+ Move to EAPI 5, base eclass and python-single-r1 eclass.
+ Explicitly specify udev rules directory.
+ Optimize before merging to file system (gives portage better file
+ control)
+
+ 03 Feb 2013; Karl Linden (lilrc) <lilrc@users.sourceforge.net>
+ libffado-2.1.0.ebuild:
+ Keyworded for ~ppc. This is not completely OK as dbus-c++ does not
+ support ~ppc yet, but it is better than getting alot of warnings when
+ when running repoman in media-sound/jack-audio-connection-kit.
+
+*libffado-2.1.0 (27 Sep 2012)
+
+ 27 Sep 2012; Gavin Pryke (gavlee) <gavinlee303@googlemail.com>
+ -files/libffado-2.0_rc1-dbus_mainloop.patch, -libffado-2.0.0.ebuild,
+ -libffado-2.0.1.ebuild, +libffado-2.1.0.ebuild,
+ +files/libffado-2.1.0/0001-honour-toolchain-env.patch,
+ +files/libffado-2.1.0/0002-remove-O2.patch, libffado-9999.ebuild,
+ +files/libffado-9999/0001-honour-toolchain-env.patch,
+ +files/libffado-9999/0003-remove-O2.patch, metadata.xml:
+ bump to 2.1.0 and sync live ebuild. add patches for honouring flags from
+ portage environment. tweak deps. set python version 2 and make use of eclass
+ features. remove old ebuilds and patches. Thanks to all on list for info and
+ Sebastian Rose, Nedko Arnaudov for help.
+
+ 10 May 2012; Hakan Demiralp <keenblade@tuxfamily.org> libffado-2.0.0.ebuild,
+ libffado-2.0.1.ebuild, libffado-9999.ebuild:
+ libffado: all ebuilds updated. Thanks to Natanael for fixing sandbox
+ violation
+
+ 04 Mar 2011; Frieder Buerzele <evermind@tuxfamily.org>
+ libffado-9999.ebuild:
+ fix bug #108 #107 (dbus-c++ and libconfig)
+
+*libffado-2.0.1 (17 Jul 2010)
+
+ 17 Jul 2010; Frieder Buerzele <evermind@tuxfamily.org>
+ +libffado-2.0.1.ebuild:
+ bumped thx Trinine, this version works with the new firewire stack
+
+*libffado-2.0.0 (26 Feb 2010)
+
+ 26 Feb 2010; Frieder Buerzele <evermind@tuxfamily.org>
+ -libffado-2.0_rc2.ebuild, +libffado-2.0.0.ebuild:
+ bumped libffado-2.0.0
+
+*libffado-2.0_rc2 (10 Sep 2009)
+
+ 10 Sep 2009; Frieder Buerzele <evermind@tuxfamily.org
+ -libffado-2.0_rc1.ebuild, +libffado-2.0_rc2.ebuild:
+ bumped
+
+ 19 Dec 2008; Thomas Kuther <gimpel@sonnenkinder.org>
+ +files/libffado-2.0_rc1-dbus_mailoop.patch, +L, libffado-2.0_rc1.ebuild,
+ libffado-9999.ebuild:
+ libffado updates: * libffado-2.0_rc1: apply patch from trunk to find
+ dbus.mainloop.qt py module * rename useflag mixer -> qt4 * allow qt < 4.4
+ * merge optimization useflag with debug
+
+ 30 Sep 2008; Frieder Buerzele <evermind@tuxfamily.org;
+ libffado-9999.ebuild:
+ fix dependency: use dev-cpp/libxmlpp instead dev-libs/libxml2
+
+ 25 Sep 2008; Frieder Buerzele <evermind@tuxfamily.org;
+ +libffado-9999.ebuild:
+ inital ebuild
+
diff --git a/media-libs/libffado/Manifest b/media-libs/libffado/Manifest
new file mode 100644
index 0000000..79ceeab
--- /dev/null
+++ b/media-libs/libffado/Manifest
@@ -0,0 +1,11 @@
+AUX libffado-2.1.0-no-jackd-version.patch 3334 SHA256 818eaeb938932960e716834623a349b2eeccc6b0ce397ab45068a50928ae5e5a SHA512 390de7cedd6e5c7854bcd30f70e4cf508688092688ae9283af016a9c2dbf363f96038886cfa9085693259df02b421e1d0dd066461020571cccd2bd3fdeae5c42 WHIRLPOOL 9c711f173df5a0ddd90a527ed3fa2c0e1dc695dfe990e8bd9becc83ef00717a19e9274076586eb838ba8bafbe4680ae5db8b2344cb5b13f7383dc90800923f03
+AUX libffado-2.1.0/0001-honour-toolchain-env.patch 1306 SHA256 a9a83c2b15fe35eaa018fe58c240f8a8fa6644241163ee9455b9c2d772f93c11 SHA512 a96d8fbd54dac1a9ac2bb1ca16714c612267b431ea59d91e483f3b6df2ff42b174a22bc0aace54efd83ccb5eb07ed7632e6d49220f9beb0da266387f2181b6c3 WHIRLPOOL c443d68afe36e144bd577ef7a0d328c01dbf2cdf9de8b2e3a4311edcf6d293fc8c099de16033d15bf231b04b6409df2588e6bf6b33f7d1a9744366488d4e0491
+AUX libffado-2.1.0/0002-remove-O2.patch 639 SHA256 9e185836abe972dbeb250e9adf8878baf36d14bbce1c07fd173e7ec66cce5ccf SHA512 e31b376b8281703ccac8b4cb19a9f93f154c171b8b718aa722e2e9c0b534df24115658161ee41731559af0added7dd10895c79a1fbe68ea1c29109d42c3770df WHIRLPOOL 0e46ab21ba0f2f13004171b0a579c20d82963983f906efb982158a56fe6a8531cd2e0be935f34d8b6c96c3a3200892939f53cd710db7880053160e43006c39e0
+AUX libffado-9999-no-jackd-version.patch 3205 SHA256 a5605ba1212439eb437a85dcda4af77540bdda84a7a4d4b83461ad7aaf378bc7 SHA512 1bcb72cd145c216eb0ad9d90452476640471b757c73d8870c115e2f1726d02dbba902299440b9d61f32bff11e295c1672a323c1a7e33719425ad5f4319cb0bc1 WHIRLPOOL 655ec1280881016a4f0b2149472d29aa083f36a65a264f2c6f94a2819526538e6e35f305ac65e6c01d6b9354e26edd663a922c8962e06a7a88daff320318d20e
+AUX libffado-9999/0001-honour-toolchain-env.patch 1306 SHA256 c8ae6927b896d570af7ef6c717339e64ed777ec3239f21d6b272d7b066aad141 SHA512 010b64d96dd2b802bcb5b78a38ed560af3c8fe0a4c0dc5eeb3c4d1dff94493f7fba176b0bebe5dcc18fe04e9688b2011970995f51a2eef217059e44f93f747ee WHIRLPOOL 04005043306b69216fe85ee3e2e2c6aafdf3b0876dec840b01c1623d25c810502406ed12c90c2f85ab2551e951ad9c7d48d4a46c611bba3b904bc56d8c3227b7
+AUX libffado-9999/0003-remove-O2.patch 638 SHA256 46c7906e3801dcbd24f43dc823f53c8f89f2160be0751c3fe134da7520dc5464 SHA512 b58aa81395b6a9818b45db06707122467542cf8ced487bd1b62536bdba748f6f4a3155485096c42d1bed07207bfdaabbcfdb73845a17fc9bae9bf4498cf89c91 WHIRLPOOL 35a21d38ef57653856763d3b37cfd79732305eb3b5ce8823323c8c8efebf79a8e7058cd4b698d50aac41465d747a1e19c8ce01469dee66911aa1500a01abbf7a
+DIST libffado-2.1.0.tgz 1153758 SHA256 dec0ea985e738be698c64fb3184844f4bc9bcb38349c20241027051686af9d85 SHA512 37179cb32920f16577e9f887cf90aca8d46081573080cbe408654c5234c7f45433521c977918057e330ddaa5fefa98c983ea7806d4f1f33c950112cbe66d013b WHIRLPOOL a4802d6a9318912f9d88fe17febdb05f0d990e124921b5d1d8c754ca1ca7d7457cf5aef8f662b074e0205df23b04fec0ad242640dff87903db32de0eccde9667
+EBUILD libffado-2.1.0-r1.ebuild 1871 SHA256 fcae7b7ff53f36fb1c75789c12e477995d5b7b02a42dc6f9dddba9ca9c942c59 SHA512 2e8293e64ed5ec12b12f36ba8da16b41a0e9944fa1754de135f312562661f5adf14b1345f0a211cca03275f5f0fe396c77b9aaece454f1d6c90210ddde40c072 WHIRLPOOL 13014aca13bef8f1ec15450a280db397b96ee691f88e0262bdd6dacdf34f5224bc87ea8d57ecd04103fb931c060d900444be5087f9db1a6837ecc81c01463ace
+EBUILD libffado-9999-r1.ebuild 1882 SHA256 e13bbb5f85525c8cfd7b19f14e242cd48cd6990a573aa0e1e38f6fd13fcdf70f SHA512 3956553213f8f40cd148f9d85a234c96169563bf22853d9d07e2fd80b81bd759e70876d90fbef3d2af2d4a5883c72eaa45c212b66225a3913a9b5fb9e5041d98 WHIRLPOOL ad6a0808656cd4052f13e68c4e6f8beb41d336c93e83aea3241a0ed9889aee913b957f1b1b13d630654a5766025f2107f0a99bb931740ae397b417ca8110cf68
+MISC ChangeLog 3599 SHA256 1d7e51ad3844e06a55c694e0576e79972f1078953c8cd9c57ce92f61b4240b91 SHA512 4f70cbfa51c525c7beb7eab1ff47216a7ba504f347ba56866fdee5cfdc7fe35de6fdc7df3737a5a02265d678f182ea7991e4e330b6a00f11487806ae3e25d7b9 WHIRLPOOL 6aa90abba1daa2d5b671b9c42b01f05c2e86a863bbd5d814f76705c375f545be879c6b637236d3f64aed582852a20f835c49f27b2aa26bf370aa84ffa64b58e8
+MISC metadata.xml 353 SHA256 608a4a6b28282ff02bda855731c407ccec16d907de90968b75241be123780a64 SHA512 f0399d9fbe3ffcd86066d1442c7a9dd178ac7601dea53280b6bd570bc5a839f4e63051b6bdd04d38c58a5edd6a39dac33af90b82bf46c633516d9ec3a5ee78b9 WHIRLPOOL a75323edc62d5cc245791c7d0cd56d16827d8f8778932c862684cbe59295821339ada5a3ed8a26de27a61f7f7c8ab0df8391efc4c42c608406314d9c579fad72
diff --git a/media-libs/libffado/files/libffado-2.1.0-no-jackd-version.patch b/media-libs/libffado/files/libffado-2.1.0-no-jackd-version.patch
new file mode 100644
index 0000000..78b24b3
--- /dev/null
+++ b/media-libs/libffado/files/libffado-2.1.0-no-jackd-version.patch
@@ -0,0 +1,65 @@
+# AUTHOR: lilrc <lilrc@users-sourceforge.net>
+# A patch to avoid calling jackd --version from within the build system
+# which generates a sandbox violation. Instead use pkgconfig as jack
+# will install the necessary pkgconfig files.
+
+diff -ur libffado-2.1.0.a/SConstruct libffado-2.1.0.b/SConstruct
+--- libffado-2.1.0.a/SConstruct 2013-04-01 12:55:08.239992516 +0200
++++ libffado-2.1.0.b/SConstruct 2013-04-01 13:54:42.019972442 +0200
+@@ -194,16 +194,6 @@
+ # restricted to 0-255.
+ return (int(maj) << 24) | (int(min) << 8) | int(patch)
+
+-def CheckJackdVer():
+- print 'Checking jackd version...',
+- ret = Popen("which jackd >/dev/null 2>&1 && jackd --version | cut -d ' ' -f 3", shell=True, stdout=PIPE).stdout.read()[:-1]
+- if (ret == ""):
+- print "not installed"
+- return -1
+- else:
+- print ret
+- return VersionInt(ret)
+-
+ if env['SERIALIZE_USE_EXPAT']:
+ env['SERIALIZE_USE_EXPAT']=1
+ else:
+@@ -248,24 +238,9 @@
+ if not env['SERIALIZE_USE_EXPAT']:
+ pkgs['libxml++-2.6'] = '2.13.0'
+
+- # Provide a way for users to compile newer libffado which will work
+- # against older jack installations which will not accept the new API
+- # version reported at runtime.
+- jackd_ver = CheckJackdVer()
+- if (jackd_ver != -1):
+- # If jackd is available, use the version number reported by it. This
+- # means users don't have to have jack development files present on
+- # their system for this to work.
+- have_jack = (jackd_ver >= VersionInt('0.0.0'))
+- good_jack1 = (jackd_ver < VersionInt('1.9.0')) and (jackd_ver >= VersionInt('0.122.0'))
+- good_jack2 = (jackd_ver >= VersionInt('1.9.9'))
+- else:
+- # Jackd is not runnable. Attempt to identify a version from
+- # pkgconfig on the off-chance jack details are available from there.
+- print "Will retry jack detection using pkg-config"
+- have_jack = conf.CheckPKG('jack >= 0.0.0')
+- good_jack1 = conf.CheckPKG('jack < 1.9.0') and conf.CheckPKG('jack >= 0.122.0')
+- good_jack2 = conf.CheckPKG('jack >= 1.9.9')
++ have_jack = conf.CheckPKG('jack >= 0.0.0')
++ good_jack1 = conf.CheckPKG('jack < 1.9.0') and conf.CheckPKG('jack >= 0.122.0')
++ good_jack2 = conf.CheckPKG('jack >= 1.9.9')
+ if env['ENABLE_SETBUFFERSIZE_API_VER'] == 'auto':
+ if not(have_jack):
+ print """
+diff -ur libffado-2.1.0.a/support/tools/ffado-diag-static libffado-2.1.0.b/support/tools/ffado-diag-static
+--- libffado-2.1.0.a/support/tools/ffado-diag-static 2010-05-03 21:37:15.000000000 +0200
++++ libffado-2.1.0.b/support/tools/ffado-diag-static 2013-04-02 17:45:15.924979761 +0200
+@@ -75,7 +75,7 @@
+ print " gcc ............... %s" % get_version_first_line('gcc --version')
+ print " g++ ............... %s" % get_version_first_line('g++ --version')
+ print " PyQt4 (by pyuic4) . %s" % get_version_first_line('pyuic4 --version')
+- print " jackd ............. %s" % get_version_first_line('jackd --version')
++ print " jackd ............. %s" % get_version_first_line('pkg-config --modversion jack')
+ print " path ............ %s" % get_command_path('jackd')
+ print " flags ........... %s" % get_package_flags("jack")
+ print " libraw1394 ........ %s" % get_package_version("libraw1394")
diff --git a/media-libs/libffado/files/libffado-2.1.0/0001-honour-toolchain-env.patch b/media-libs/libffado/files/libffado-2.1.0/0001-honour-toolchain-env.patch
new file mode 100644
index 0000000..51a748e
--- /dev/null
+++ b/media-libs/libffado/files/libffado-2.1.0/0001-honour-toolchain-env.patch
@@ -0,0 +1,39 @@
+From 1dc8c363d1b312f99d6cb4512727ba6f6e0b2b9f Mon Sep 17 00:00:00 2001
+From: "Gavin Pryke (gavlee)" <gavinlee303@googlemail.com>
+Date: Fri, 7 Sep 2012 17:13:31 +0100
+Subject: [PATCH 1/4] honour toolchain env
+
+---
+ SConstruct | 16 ++++++++++++++++
+ 1 files changed, 16 insertions(+), 0 deletions(-)
+
+diff --git a/SConstruct b/SConstruct
+index 0e40c7c..b816115 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -481,6 +481,22 @@ env['REGISTRATION_URL'] = "http://ffado.org/deviceregistration/register.php?acti
+ #
+ env['top_srcdir'] = env.Dir( "." ).abspath
+
++# Respect toolchain settings from environment
++# code found on http://http://dev.gentoo.org/~vapier/scons-blows.txt
++# and modified to strip the double quotes, this should allows setting CFLAGS
++# containing things like --param l1-cache-line-size=64
++import SCons.Util
++if os.environ.has_key('CC'):
++ env['CC'] = os.environ['CC']
++if os.environ.has_key('CFLAGS'):
++ env.Append(CFLAGS = str(os.environ['CFLAGS']).replace('\"', ''))
++if os.environ.has_key('CXX'):
++ env['CXX'] = os.environ['CXX']
++if os.environ.has_key('CXXFLAGS'):
++ env.Append(CXXFLAGS = str(os.environ['CXXFLAGS'].replace('\"', '')))
++if os.environ.has_key('LDFLAGS'):
++ env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
++
+ #
+ # Start building
+ #
+--
+1.7.8.6
+
diff --git a/media-libs/libffado/files/libffado-2.1.0/0002-remove-O2.patch b/media-libs/libffado/files/libffado-2.1.0/0002-remove-O2.patch
new file mode 100644
index 0000000..5ddf585
--- /dev/null
+++ b/media-libs/libffado/files/libffado-2.1.0/0002-remove-O2.patch
@@ -0,0 +1,25 @@
+From d176b5d168ff7fd016fd83c7fadde843c2e29a45 Mon Sep 17 00:00:00 2001
+From: "Gavin Pryke (gavlee)" <gavinlee303@googlemail.com>
+Date: Wed, 26 Sep 2012 16:19:56 +0100
+Subject: [PATCH 2/4] remove -O2
+
+---
+ SConstruct | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/SConstruct b/SConstruct
+index 0798516..b3a4182 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -410,7 +410,7 @@ if env['DEBUG']:
+ print "Doing a DEBUG build"
+ env.MergeFlags( "-DDEBUG -Wall -g" )
+ else:
+- env.MergeFlags( "-O2 -DNDEBUG" )
++ env.MergeFlags( "-DNDEBUG" )
+
+ if env['PROFILE']:
+ print "Doing a PROFILE build"
+--
+1.7.8.6
+
diff --git a/media-libs/libffado/files/libffado-9999-no-jackd-version.patch b/media-libs/libffado/files/libffado-9999-no-jackd-version.patch
new file mode 100644
index 0000000..c6a5ecf
--- /dev/null
+++ b/media-libs/libffado/files/libffado-9999-no-jackd-version.patch
@@ -0,0 +1,67 @@
+# AUTHOR: lilrc <lilrc@users-sourceforge.net>
+# A patch to avoid calling jackd --version from within the build system
+# which generates a sandbox violation. Instead use pkgconfig as jack
+# will install the necessary pkgconfig files.
+
+Index: SConstruct
+===================================================================
+--- SConstruct (revision 2285)
++++ SConstruct (working copy)
+@@ -194,16 +194,6 @@
+ # restricted to 0-255.
+ return (int(maj) << 24) | (int(min) << 8) | int(patch)
+
+-def CheckJackdVer():
+- print 'Checking jackd version...',
+- ret = Popen("which jackd >/dev/null 2>&1 && jackd --version | cut -d ' ' -f 3", shell=True, stdout=PIPE).stdout.read()[:-1]
+- if (ret == ""):
+- print "not installed"
+- return -1
+- else:
+- print ret
+- return VersionInt(ret)
+-
+ if env['SERIALIZE_USE_EXPAT']:
+ env['SERIALIZE_USE_EXPAT']=1
+ else:
+@@ -248,24 +238,9 @@
+ if not env['SERIALIZE_USE_EXPAT']:
+ pkgs['libxml++-2.6'] = '2.13.0'
+
+- # Provide a way for users to compile newer libffado which will work
+- # against older jack installations which will not accept the new API
+- # version reported at runtime.
+- jackd_ver = CheckJackdVer()
+- if (jackd_ver != -1):
+- # If jackd is available, use the version number reported by it. This
+- # means users don't have to have jack development files present on
+- # their system for this to work.
+- have_jack = (jackd_ver >= VersionInt('0.0.0'))
+- good_jack1 = (jackd_ver < VersionInt('1.9.0')) and (jackd_ver >= VersionInt('0.122.0'))
+- good_jack2 = (jackd_ver >= VersionInt('1.9.9'))
+- else:
+- # Jackd is not runnable. Attempt to identify a version from
+- # pkgconfig on the off-chance jack details are available from there.
+- print "Will retry jack detection using pkg-config"
+- have_jack = conf.CheckPKG('jack >= 0.0.0')
+- good_jack1 = conf.CheckPKG('jack < 1.9.0') and conf.CheckPKG('jack >= 0.122.0')
+- good_jack2 = conf.CheckPKG('jack >= 1.9.9')
++ have_jack = conf.CheckPKG('jack >= 0.0.0')
++ good_jack1 = conf.CheckPKG('jack < 1.9.0') and conf.CheckPKG('jack >= 0.122.0')
++ good_jack2 = conf.CheckPKG('jack >= 1.9.9')
+ if env['ENABLE_SETBUFFERSIZE_API_VER'] == 'auto':
+ if not(have_jack):
+ print """
+Index: support/tools/ffado-diag-static
+===================================================================
+--- support/tools/ffado-diag-static (revision 2285)
++++ support/tools/ffado-diag-static (working copy)
+@@ -75,7 +75,7 @@
+ print " gcc ............... %s" % get_version_first_line('gcc --version')
+ print " g++ ............... %s" % get_version_first_line('g++ --version')
+ print " PyQt4 (by pyuic4) . %s" % get_version_first_line('pyuic4 --version')
+- print " jackd ............. %s" % get_version_first_line('jackd --version')
++ print " jackd ............. %s" % get_version_first_line('pkg-config --modversion jack')
+ print " path ............ %s" % get_command_path('jackd')
+ print " flags ........... %s" % get_package_flags("jack")
+ print " libraw1394 ........ %s" % get_package_version("libraw1394")
diff --git a/media-libs/libffado/files/libffado-9999/0001-honour-toolchain-env.patch b/media-libs/libffado/files/libffado-9999/0001-honour-toolchain-env.patch
new file mode 100644
index 0000000..08bb57e
--- /dev/null
+++ b/media-libs/libffado/files/libffado-9999/0001-honour-toolchain-env.patch
@@ -0,0 +1,39 @@
+From 8b6da1dc378e6eb95c73f63a08a7ed3492cc6992 Mon Sep 17 00:00:00 2001
+From: "Gavin Pryke (gavlee)" <gavinlee303@googlemail.com>
+Date: Sat, 8 Sep 2012 00:57:49 +0100
+Subject: [PATCH 1/4] honour toolchain env
+
+---
+ SConstruct | 16 ++++++++++++++++
+ 1 files changed, 16 insertions(+), 0 deletions(-)
+
+diff --git a/SConstruct b/SConstruct
+index d969f6b..749ae51 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -629,6 +629,22 @@ env['REGISTRATION_URL'] = "http://ffado.org/deviceregistration/register.php?acti
+ #
+ env['top_srcdir'] = env.Dir( "." ).abspath
+
++# Respect toolchain settings from environment
++# code found on http://http://dev.gentoo.org/~vapier/scons-blows.txt
++# and modified to strip the double quotes, this should allows setting CFLAGS
++# containing things like --param l1-cache-line-size=64
++import SCons.Util
++if os.environ.has_key('CC'):
++ env['CC'] = os.environ['CC']
++if os.environ.has_key('CFLAGS'):
++ env.Append(CFLAGS = str(os.environ['CFLAGS']).replace('\"', ''))
++if os.environ.has_key('CXX'):
++ env['CXX'] = os.environ['CXX']
++if os.environ.has_key('CXXFLAGS'):
++ env.Append(CXXFLAGS = str(os.environ['CXXFLAGS'].replace('\"', '')))
++if os.environ.has_key('LDFLAGS'):
++ env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
++
+ #
+ # Start building
+ #
+--
+1.7.8.6
+
diff --git a/media-libs/libffado/files/libffado-9999/0003-remove-O2.patch b/media-libs/libffado/files/libffado-9999/0003-remove-O2.patch
new file mode 100644
index 0000000..252d1d7
--- /dev/null
+++ b/media-libs/libffado/files/libffado-9999/0003-remove-O2.patch
@@ -0,0 +1,25 @@
+From ba280ef176ca6abed986a925f25b4374796f6fa9 Mon Sep 17 00:00:00 2001
+From: "Gavin Pryke (gavlee)" <gavinlee303@googlemail.com>
+Date: Sat, 8 Sep 2012 00:58:34 +0100
+Subject: [PATCH 3/4] remove -O2
+
+---
+ SConstruct | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/SConstruct b/SConstruct
+index a150e1c..98dd87d 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -410,7 +410,7 @@ if env['DEBUG']:
+ print "Doing a DEBUG build"
+ env.MergeFlags( "-DDEBUG -Wall -g" )
+ else:
+- env.MergeFlags( "-O2 -DNDEBUG" )
++ env.MergeFlags( "-DNDEBUG" )
+
+ if env['PROFILE']:
+ print "Doing a PROFILE build"
+--
+1.7.8.6
+
diff --git a/media-libs/libffado/libffado-2.1.0-r2.ebuild b/media-libs/libffado/libffado-2.1.0-r2.ebuild
new file mode 100644
index 0000000..7a5aae3
--- /dev/null
+++ b/media-libs/libffado/libffado-2.1.0-r2.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+inherit base scons-utils eutils toolchain-funcs multilib python-single-r1 udev
+
+DESCRIPTION="Successor for freebob: Library for accessing BeBoB IEEE1394 devices"
+HOMEPAGE="http://www.ffado.org"
+SRC_URI="http://www.ffado.org/files/${P}.tgz"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~x86"
+SLOT="0"
+IUSE="debug qt4 +test-programs"
+
+RDEPEND=">=dev-cpp/libxmlpp-2.6.13
+ >=dev-libs/dbus-c++-0.9.0
+ >=dev-libs/libconfig-1.4.8
+ >=media-libs/alsa-lib-1.0.0
+ >=media-libs/libiec61883-1.1.0
+ >=sys-apps/dbus-1.0
+ >=sys-libs/libraw1394-2.0.7
+ >=sys-libs/libavc1394-0.5.3
+ qt4? (
+ dev-python/PyQt4[${PYTHON_USEDEP}]
+ >=dev-python/dbus-python-0.83.0[${PYTHON_USEDEP}]
+ ${PYTHON_DEPS}
+ )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+RESTRICT="mirror"
+
+DOCS=( AUTHORS ChangeLog README )
+
+PATCHES=(
+ "${FILESDIR}/${P}"
+ "${FILESDIR}/${P}-no-jackd-version.patch"
+)
+EPATCH_SUFFIX="patch"
+
+src_prepare() {
+ base_src_prepare
+ python_fix_shebang "${S}"
+}
+
+src_configure() {
+ myesconsargs=(
+ PREFIX="${EPREFIX}/usr"
+ LIBDIR="${EPREFIX}/usr/$(get_libdir)"
+ MANDIR="${EPREFIX}/usr/share/man"
+ UDEVDIR="$(get_udevdir)/rules.d"
+ $(use_scons debug DEBUG)
+ $(use_scons test-programs BUILD_TESTS)
+ # 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
+ )
+}
+
+src_compile () {
+ tc-export CC CXX
+ escons
+}
+
+src_install () {
+ escons DESTDIR="${D}" WILL_DEAL_WITH_XDG_MYSELF="True" install
+
+ base_src_install_docs
+
+ python_optimize "${D}"
+
+ if use qt4; then
+ newicon "support/xdg/hi64-apps-ffado.png" "ffado.png"
+ newmenu "support/xdg/ffado.org-ffadomixer.desktop" "ffado-mixer.desktop"
+ fi
+}
diff --git a/media-libs/libffado/metadata.xml b/media-libs/libffado/metadata.xml
new file mode 100644
index 0000000..a7b1ca0
--- /dev/null
+++ b/media-libs/libffado/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>proaudio@tuxfamily.org</email>
+ <name>pro-audio overlay team</name>
+ </maintainer>
+ <use>
+ <flag name="test-programs">Install programs for testing of various ffado functions</flag>
+ </use>
+</pkgmetadata>