diff options
author | Stefan Briesenick <sbriesen@gentoo.org> | 2006-10-08 00:46:15 +0000 |
---|---|---|
committer | Stefan Briesenick <sbriesen@gentoo.org> | 2006-10-08 00:46:15 +0000 |
commit | d73b07677448219d9998318a84b8139bc8c07656 (patch) | |
tree | a7316517c1bcaa8d67668f9d63c0335cd5c41cfc /net-dialup/misdn | |
parent | sh love (diff) | |
download | gentoo-2-d73b07677448219d9998318a84b8139bc8c07656.tar.gz gentoo-2-d73b07677448219d9998318a84b8139bc8c07656.tar.bz2 gentoo-2-d73b07677448219d9998318a84b8139bc8c07656.zip |
version bump, adding echo canceler USE-flags.
(Portage version: 2.1.2_pre2-r5)
Diffstat (limited to 'net-dialup/misdn')
-rw-r--r-- | net-dialup/misdn/ChangeLog | 8 | ||||
-rw-r--r-- | net-dialup/misdn/files/digest-misdn-20061003 | 3 | ||||
-rw-r--r-- | net-dialup/misdn/misdn-20061003.ebuild | 178 |
3 files changed, 188 insertions, 1 deletions
diff --git a/net-dialup/misdn/ChangeLog b/net-dialup/misdn/ChangeLog index 8237dce6b8f5..77194e8523b7 100644 --- a/net-dialup/misdn/ChangeLog +++ b/net-dialup/misdn/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-dialup/misdn # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-dialup/misdn/ChangeLog,v 1.12 2006/09/14 22:48:27 genstef Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-dialup/misdn/ChangeLog,v 1.13 2006/10/08 00:46:15 sbriesen Exp $ + +*misdn-20061003 (08 Oct 2006) + + 08 Oct 2006; Stefan Briesenick <sbriesen@gentoo.org> + +misdn-20061003.ebuild: + version bump, adding echo canceler USE-flags. 14 Sep 2006; Stefan Schweizer <genstef@gentoo.org> misdn-20060811.ebuild: MODE="0660" is needed for udev, thanks sbriesen diff --git a/net-dialup/misdn/files/digest-misdn-20061003 b/net-dialup/misdn/files/digest-misdn-20061003 new file mode 100644 index 000000000000..d34cf8f471a4 --- /dev/null +++ b/net-dialup/misdn/files/digest-misdn-20061003 @@ -0,0 +1,3 @@ +MD5 b52fe6dbe35a9761e608294fae3125fb mISDN-CVS-2006-10-03.tar.bz2 367873 +RMD160 d90df08eec78baa1619ee03b8e527c206ecb436b mISDN-CVS-2006-10-03.tar.bz2 367873 +SHA256 b192fabacef6167b4e2f4bdfc433febd1ec3d9d2a384e0b9c1909bf37195e0e1 mISDN-CVS-2006-10-03.tar.bz2 367873 diff --git a/net-dialup/misdn/misdn-20061003.ebuild b/net-dialup/misdn/misdn-20061003.ebuild new file mode 100644 index 000000000000..e06ed5beff06 --- /dev/null +++ b/net-dialup/misdn/misdn-20061003.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-dialup/misdn/misdn-20061003.ebuild,v 1.1 2006/10/08 00:46:15 sbriesen Exp $ + +inherit eutils linux-mod + +MY_P="mISDN-CVS-${PV:0:4}-${PV:4:2}-${PV:6:2}" +DESCRIPTION="mISDN is the new ISDN stack of the linux kernel 2.6." +HOMEPAGE="http://www.isdn4linux.de/mISDN" +SRC_URI="ftp://ftp.isdn4linux.de/pub/isdn4linux/CVS-Snapshots/${MY_P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~x86 ~amd64 ~ppc" +RDEPEND=">=net-dialup/capi4k-utils-20050718" +S="${WORKDIR}/${MY_P}/drivers/isdn/hardware/mISDN" + +# list of echo canceller use flags, +# first active in this list is selected (=order does matter) +MISDN_EC_FLAGS="ecmg2 eckb1 ecmark2" + +# list of card modules +MISDN_MODULES=("avmfritz" "hfcpci" "hfcmulti" "hfcsusb" "hfcsmini" "xhfc" "sedlfax" "w6692pci" "netjetpci") +MISDN_KCONFIG=("AVM_FRITZ" "HFCPCI" "HFCMULTI" "HFCUSB" "HFCMINI" "XHFC" "SPEEDFAX" "W6692" "NETJET") + +IUSE="ecaggressive ${MISDN_EC_FLAGS}" +for i in ${MISDN_MODULES[@]}; do IUSE="${IUSE} misdn_cards_${i}"; done + +### Begin: Helper functions + +select_echo_cancel() { + local myEC="" + for x in ${MISDN_EC_FLAGS}; do + if use ${x}; then + myEC=$(echo "${x}" | sed -e "s:^ec\(.*\):\U\1\E:") + break; + fi + done + echo ${myEC} +} + +dsp_enable() { + local i + for i in "${@}"; do + sed -i -e "s:.*\(#include.*dsp_${i}\):\1:m" dsp.h + done +} + +dsp_disable() { + local i + for i in "${@}"; do + sed -i -e "s:.*\(#include.*dsp_${i}\)://\1:m" dsp.h + done +} + +### End: Helper functions + +pkg_setup() { + local numec=0 + + CONFIG_CHECK="ISDN_CAPI ISDN_CAPI_CAPI20 ISDN_CAPI_CAPIFS_BOOL" + linux-mod_pkg_setup + MODULE_NAMES="mISDN_capi(net:) mISDN_dtmf(net:) mISDN_l1(net:) + mISDN_x25dte(net:) l3udss1(net:) mISDN_core(net:) mISDN_isac(net:) + mISDN_l2(net:) mISDN_dsp(net:)" + BUILD_PARAMS="-C ${KV_DIR} SUBDIRS=${S} MINCLUDES=${WORKDIR}/${MY_P}/include CONFIG_MISDN_DRV=m CONFIG_MISDN_DSP=y" + BUILD_TARGETS="modules" + #I4LmISDN(net:) does not compile :( CONFIG_I4L_CAPI_LAYER=m + # the i4l->capi simulation seems to be only for kernel 2.4 + + # check if multiple echo cancellers have been selected + for x in ${MISDN_EC_FLAGS}; do + use ${x} && : $((numec++)) + done + if [[ ${numec} -gt 1 ]]; then + # multiple flags are active, only the first in the ZAP_EC_FLAGS list + # will be used, make sure the user knows about this + ewarn + ewarn "Multiple echo canceller flags are active but only one will be used!" + ewarn "Selected: $(select_echo_cancel)" + fi + + # Check existence of user selected cards + if [ -n "${MISDN_CARDS}" ]; then + for USERCARD in ${MISDN_CARDS} ; do + for ((CARD=0; CARD < ${#MISDN_MODULES[*]}; CARD++)); do + if [ "${USERCARD}" = "${MISDN_MODULES[CARD]}" ]; then + MODULE_NAMES="${MODULE_NAMES} ${MISDN_MODULES[CARD]}(net:)" + #[ "sedlfax" = "${MISDN_MODULES[CARD]}" ] && MODULE_NAMES="${MODULE_NAMES} faxl3(net:)" + BUILD_PARAMS="${BUILD_PARAMS} CONFIG_MISDN_${MISDN_KCONFIG[CARD]}=y" + continue 2 + fi + done + die "Module ${USERCARD} not present in ${P}" + done + else + einfo + einfo "You can control the modules which are built with the variable" + einfo "MISDN_CARDS which should contain a blank separated list" + einfo "of a selection from the following cards:" + einfo " ${MISDN_MODULES[*]}" + einfo + ewarn "I give you the chance of hitting Ctrl-C and make the necessary" + ewarn "adjustments in /etc/make.conf." + + # enable everything + for ((CARD=0; CARD < ${#MISDN_MODULES[*]}; CARD++)); do + MODULE_NAMES="${MODULE_NAMES} ${MISDN_MODULES[CARD]}(net:)" + #[ "sedlfax" = "${MISDN_MODULES[CARD]}" ] && MODULE_NAMES="${MODULE_NAMES} faxl3(net:)" + BUILD_PARAMS="${BUILD_PARAMS} CONFIG_MISDN_${MISDN_KCONFIG[CARD]}=y" + done + fi +} + +src_unpack() { + unpack ${A} + cd "${S}" + + if use ecaggressive; then + sed -i -e "s:.*#define \(AGGRESSIVE_SUPPRESSOR\):#define \1:m" dsp.h + fi + + case "$(select_echo_cancel)" in + MG2) + dsp_enable mg2ec + dsp_disable kb1ec mec2 + ;; + KB1) + dsp_enable kb1ec + dsp_disable mg2ec mec2 + ;; + MARK2) + dsp_enable mec2 + dsp_disable mg2ec kb1ec + ;; + esac +} + +src_install() { + linux-mod_src_install + + insinto /usr/include/linux + doins "${WORKDIR}/${MY_P}/include/linux/"*.h + + dodir /etc/udev/rules.d + echo 'KERNEL=="obj-*", NAME="mISDN", GROUP="dialout", MODE="0660"' \ + > "${D}/etc/udev/rules.d/53-${PN}.rules" + + insinto /etc/modules.d + newins "${WORKDIR}/${MY_P}/"mISDN.modprobe.d ${PN} + + sed -i -e "s:USER=.*:USER=root:" \ + -e "s:GROUP=.*:GROUP=dialout:" "${WORKDIR}/${MY_P}/"misdn-init + dosbin "${WORKDIR}/${MY_P}/"misdn-init + + dodoc Kconfig.v2.6 + dodoc "${FILESDIR}/README.hfcmulti" "${WORKDIR}/${MY_P}/"README.misdn-init +} + +pkg_preinst() { + if [ -e ${ROOT}/etc/misdn-init.conf ]; then + cp ${ROOT}/etc/misdn-init.conf ${IMAGE}/etc + else + sed -i -e "s:/etc/misdn-init.conf:${IMAGE}\0:" ${IMAGE}/usr/sbin/misdn-init + ${IMAGE}/usr/sbin/misdn-init config + sed -i -e "s:${IMAGE}/etc/misdn-init.conf:/etc/misdn-init.conf:" ${IMAGE}/usr/sbin/misdn-init + fi +} + +pkg_postinst() { + linux-mod_pkg_postinst + + ewarn + ewarn "This driver is still under heavy development" + ewarn "Please report ebuild related bugs / wishes to http://bugs.gentoo.org" + ewarn "Please report driver bugs to the mISDN mailing-list:" + ewarn " https://www.isdn4linux.de/mailman/listinfo/isdn4linux" +} |