Index: dahdi-2.2.0.2.ebuild =================================================================== --- dahdi-2.2.0.2.ebuild (revision 65) +++ dahdi-2.2.0.2.ebuild (revision 67) @@ -19,7 +19,7 @@ LICENSE="LGPL-2.1" SLOT="0" KEYWORDS="~amd64 ~x86" -IUSE="" +IUSE="ecoslec" DEPEND="" RDEPEND="" @@ -51,6 +51,15 @@ # GCC 4.4 compatibility, the quick 'n dirty way # error: dereferencing pointer to incomplete type epatch "${FILESDIR}"/${P}-gcc44-hack.patch + + if use ecoslec; then + elog "Support for OSLEC echo canceller." + mkdir "${MY_P}/drivers/staging" || die "Error creating staging folder." + cp -a "${KERNEL_DIR}/drivers/staging/echo" "${MY_P}/drivers/staging/" \ + || die "Error copying staging/echo folder" + sed -re 's,^#(obj-m \+= (dahdi_echocan_oslec.o|\.\./staging/echo/))$,\1,' -i "${MY_P}/drivers/dahdi/Kbuild" \ + || die "Error enabling OSLEC" + fi } src_compile() { @@ -69,3 +78,11 @@ emake KSRC="${KERNEL_DIR}" DESTDIR="${D}" install || die "Installation failed" rm -rf "$D"/lib/modules/*/modules.* } + +pkg_postinst() { + if use ecoslec && linux-info_get_any_version && linux_config_src_exists; then + CONFIG_CHECK="~ECHO" + local ERROR_ECHO="You need CONFIG_ECHO enabled in your kernel sources in order to use oslec support." + check_extra_config + fi +}