summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Knoblich <stkn@gentoo.org>2005-08-19 19:19:45 +0000
committerStefan Knoblich <stkn@gentoo.org>2005-08-19 19:19:45 +0000
commit4c544a2ff7ab0669831ec9dedaceb76c766f158b (patch)
tree44847559084c2a4bec85ebb1bd7445e3d5f1178d /net-misc/zaptel
parentStable on ppc. (diff)
downloadgentoo-2-4c544a2ff7ab0669831ec9dedaceb76c766f158b.tar.gz
gentoo-2-4c544a2ff7ab0669831ec9dedaceb76c766f158b.tar.bz2
gentoo-2-4c544a2ff7ab0669831ec9dedaceb76c766f158b.zip
Pre-release version, work-in-progress.
(Portage version: 2.0.51.22-r2)
Diffstat (limited to 'net-misc/zaptel')
-rw-r--r--net-misc/zaptel/ChangeLog9
-rw-r--r--net-misc/zaptel/files/digest-zaptel-1.2.0_pre200508181
-rw-r--r--net-misc/zaptel/files/zaptel-1.2.0_pre20050818-gentoo.diff124
-rw-r--r--net-misc/zaptel/zaptel-1.2.0_pre20050818.ebuild357
4 files changed, 490 insertions, 1 deletions
diff --git a/net-misc/zaptel/ChangeLog b/net-misc/zaptel/ChangeLog
index 769d13e9e864..374972397a6c 100644
--- a/net-misc/zaptel/ChangeLog
+++ b/net-misc/zaptel/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-misc/zaptel
# Copyright 2000-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/zaptel/ChangeLog,v 1.56 2005/08/18 18:02:49 stkn Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/zaptel/ChangeLog,v 1.57 2005/08/19 19:19:45 stkn Exp $
+
+*zaptel-1.2.0_pre20050818 (19 Aug 2005)
+
+ 19 Aug 2005; Stefan Knoblich <stkn@gentoo.org>
+ +files/zaptel-1.2.0_pre20050818-gentoo.diff,
+ +zaptel-1.2.0_pre20050818.ebuild:
+ Pre-release version, work-in-progress.
*zaptel-1.0.9_p1-r1 (18 Aug 2005)
diff --git a/net-misc/zaptel/files/digest-zaptel-1.2.0_pre20050818 b/net-misc/zaptel/files/digest-zaptel-1.2.0_pre20050818
new file mode 100644
index 000000000000..c6bc0459e30b
--- /dev/null
+++ b/net-misc/zaptel/files/digest-zaptel-1.2.0_pre20050818
@@ -0,0 +1 @@
+MD5 a051237a5197fddefdab5f647fdfbf11 zaptel-1.2.0_pre20050818.tar.bz2 484157
diff --git a/net-misc/zaptel/files/zaptel-1.2.0_pre20050818-gentoo.diff b/net-misc/zaptel/files/zaptel-1.2.0_pre20050818-gentoo.diff
new file mode 100644
index 000000000000..f8445f72290f
--- /dev/null
+++ b/net-misc/zaptel/files/zaptel-1.2.0_pre20050818-gentoo.diff
@@ -0,0 +1,124 @@
+--- zaptel/Makefile.orig 2005-08-15 18:18:49.000000000 +0200
++++ zaptel/Makefile 2005-08-15 18:33:42.000000000 +0200
+@@ -21,7 +21,7 @@
+ endif
+ KINCLUDES:=$(KSRC)/include
+
+-CFLAGS+=-I. -O4 -g -Wall -DBUILDING_TONEZONE #-DTONEZONE_DRIVER
++CFLAGS+=-I. -g -Wall -DBUILDING_TONEZONE #-DTONEZONE_DRIVER
+ CFLAGS_PPC:=$(shell if uname -m | grep -q ppc; then echo "-fsigned-char"; fi)
+ CFLAGS_X86-64:=$(shell if uname -m | grep -q x86_64; then echo "-m64"; fi)
+ CFLAGS+=$(CFLAGS_PPC) $(CFLAGS_X64-64)
+@@ -55,27 +55,7 @@
+ BUILDVER:=linux24
+ endif
+
+-ifeq ($(BUILDVER),linux26)
+- ifneq (,$(wildcard $(ROOT_PREFIX)/etc/modprobe.d))
+- MODCONF:=$(ROOT_PREFIX)/etc/modprobe.d/zaptel
+- else
+- ifneq (,$(wildcard $(ROOT_PREFIX)/etc/modprobe.conf))
+- MODCONF:=$(ROOT_PREFIX)/etc/modprobe.conf
+- else
+- ifneq (,$(wildcard $(ROOT_PREFIX)/etc/conf.modules))
+- MODCONF:=$(ROOT_PREFIX)/etc/conf.modules
+- endif
+- endif
+- endif
+-else # BUILDVER == linux24
+- ifneq (,$(wildcard $(ROOT_PREFIX)/etc/modutils))
+- MODCONF:=$(ROOT_PREFIX)/etc/modutils/zaptel
+- else
+- ifneq (,$(wildcard $(ROOT_PREFIX)/etc/modules.conf))
+- MODCONF:=$(ROOT_PREFIX)/etc/modules.conf
+- endif
+- endif
+-endif
++MODCONF:=$(INSTALL_PREFIX)/etc/modules.d/zaptel
+
+ ifeq (${BUILDVER},linux24)
+ #We only support DEVFS in linux 2.4 kernels, since its considered obsolete post 2.4
+@@ -83,7 +63,7 @@
+ endif
+ ifeq (${BUILDVER},linux26)
+ #Tests for newer linux-2.6 udev support
+-DYNFS:=$(shell ps ax | grep -v grep | grep udevd && echo "yes")
++DYNFS:=$(shell ps ax | grep -v grep | grep -q udevd && echo "yes")
+ endif
+
+ CHKCONFIG:=$(shell sh -c 'type -p chkconfig' 2> /dev/null)
+@@ -312,7 +292,7 @@
+ docbook2man -o doc doc/ztmonitor.sgml
+ gzip doc/ztmonitor.8
+
+-install: all devices
++install: devices
+ install -D -m 755 ztcfg $(INSTALL_PREFIX)/sbin/ztcfg
+ if [ -f sethdlc-new ]; then \
+ install -D -m 755 sethdlc-new $(INSTALL_PREFIX)/sbin/sethdlc; \
+@@ -339,49 +319,27 @@
+ rm -f $(INSTALL_PREFIX)/lib/modules/$(KVERS)/misc/wcfxs.o; \
+ fi
+ install -D -m 755 $(LIBTONEZONE_SO) $(INSTALL_PREFIX)/usr/lib/$(LIBTONEZONE_SO).$(LIBTONEZONE_SO_MAJOR_VER).$(LIBTONEZONE_SO_MINOR_VER)
+- [ `id -u` = 0 ] && /sbin/ldconfig || :
+ rm -f $(INSTALL_PREFIX)/usr/lib/$(LIBTONEZONE_SO)
+ ln -sf $(LIBTONEZONE_SO).$(LIBTONEZONE_SO_MAJOR_VER) $(INSTALL_PREFIX)/usr/lib/$(LIBTONEZONE_SO)
+- if [ -x /usr/sbin/sestatus ] && (/usr/sbin/sestatus | grep "SELinux status:" | grep -q "enabled") ; then restorecon -v $(INSTALL_PREFIX)/usr/lib/$(LIBTONEZONE_SO); fi
+ install -D -m 644 zaptel.h $(INSTALL_PREFIX)/usr/include/linux/zaptel.h
+ install -D -m 644 torisa.h $(INSTALL_PREFIX)/usr/include/linux/torisa.h
+ install -D -m 644 tonezone.h $(INSTALL_PREFIX)/usr/include/tonezone.h
+- install -m 644 doc/ztcfg.8.gz $(INSTALL_PREFIX)/usr/share/man/man8
+- install -m 644 doc/ztmonitor.8.gz $(INSTALL_PREFIX)/usr/share/man/man8
+- install -m 644 doc/zttool.8.gz $(INSTALL_PREFIX)/usr/share/man/man8
+- if [ -f $(MODCONF) ]; then mv -f $(MODCONF) $(MODCONF).bak ; fi
+- cat $(MODCONF).bak | grep -v "alias char-major-250" | \
+- grep -v "post-install torisa /sbin/ztcfg" | \
+- grep -v "post-install wcfxsusb /sbin/ztcfg" | \
+- grep -v "alias wctdm" | \
+- grep -v "post-install wctdm /sbin/ztcfg" > $(MODCONF) || true
++ install -D -m 644 doc/ztcfg.8.gz $(INSTALL_PREFIX)/usr/share/man/man8
++ install -D -m 644 doc/ztmonitor.8.gz $(INSTALL_PREFIX)/usr/share/man/man8
++ install -D -m 644 doc/zttool.8.gz $(INSTALL_PREFIX)/usr/share/man/man8
++ if [ ! -d `dirname $(MODCONF)` ]; then install -d -m 755 `dirname $(MODCONF)` ; fi
+ if ! grep "options torisa" $(MODCONF); then \
+ echo "options torisa base=$(BASEADDR)" >> $(MODCONF); \
+ fi
+ if ! grep "alias char-major-196" $(MODCONF); then \
+ echo "alias char-major-196 $(PRIMARY)" >> $(MODCONF); \
+ fi
+- for x in $(MODULES); do \
+- if ! grep -q "post-install $$x" $(MODCONF); then \
+- if ! grep -q "install $$x " $(MODCONF); then \
+- if [ "$$x" != "zaptel" ] ; then \
+- if [ -f zaptel.ko ]; then echo "install $$x /sbin/modprobe --ignore-install $$x && /sbin/ztcfg" >> $(MODCONF); \
+- else echo "post-install $$x /sbin/ztcfg" >> $(MODCONF); \
+- fi; \
+- fi; \
+- fi; \
+- fi; \
+- done
+ if ! grep "alias wcfxs" $(MODCONF); then \
+ echo "alias wcfxs wctdm" >> $(MODCONF); \
+ fi
+ if ! grep "alias wct2xxp" $(MODCONF); then \
+ echo "alias wct2xxp wct4xxp" >> $(MODCONF); \
+ fi
+- if [ -d /etc/modutils ]; then \
+- /sbin/update-modules ; \
+- fi
+- [ `id -u` = 0 ] && /sbin/depmod -a || :
+ [ -f $(CONFIG_FILE) ] || install -D -m 644 zaptel.conf.sample $(CONFIG_FILE)
+
+ install-udev:
+--- zaptel/zconfig.h.orig 2005-08-16 21:33:25.000000000 +0200
++++ zaptel/zconfig.h 2005-08-16 21:33:58.000000000 +0200
+@@ -133,5 +133,10 @@
+ */
+ /* #define EMFLASH */
+
++/*
++ * Enable RTC support
++ */
++/* #define USE_RTC */
++
+ #endif
diff --git a/net-misc/zaptel/zaptel-1.2.0_pre20050818.ebuild b/net-misc/zaptel/zaptel-1.2.0_pre20050818.ebuild
new file mode 100644
index 000000000000..1e67d38a4eea
--- /dev/null
+++ b/net-misc/zaptel/zaptel-1.2.0_pre20050818.ebuild
@@ -0,0 +1,357 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/zaptel/zaptel-1.2.0_pre20050818.ebuild,v 1.1 2005/08/19 19:19:45 stkn Exp $
+
+inherit toolchain-funcs eutils linux-mod
+
+## TODO:
+#
+# - bristuff (waiting for next upstream release...)
+# - cleanup (work-in-progress)
+# - testing of new features (zapras / -net)
+#
+
+#BRI_VERSION="0.2.0-RC8h"
+#FLORZ_VERSION="0.2.0-RC8a_florz-6"
+
+IUSE="devfs26 rtc ecmark ecmark2 ecmark3 ecaggressive ecsteve ecsteve2 watchdog zapras zapnet"
+
+DESCRIPTION="Drivers for Digium and ZapataTelephony cards"
+HOMEPAGE="http://www.asterisk.org"
+SRC_URI="http://www.netdomination.org/pub/asterisk/${P}.tar.bz2"
+# bri? ( http://www.junghanns.net/asterisk/downloads/bristuff-${BRI_VERSION}.tar.gz )
+# florz? ( http://zaphfc.florz.dyndns.org/zaphfc_${FLORZ_VERSION}.diff.gz )"
+
+S="${WORKDIR}/${PN}"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~x86 ~ppc ~amd64"
+
+DEPEND="virtual/libc
+ virtual/linux-sources
+ >=dev-libs/newt-0.50.0"
+
+# list of echo canceller use flags,
+# first active in this list is selected (=order does matter)
+ZAP_EC_FLAGS="ecmark ecmark2 ecmark3 ecsteve ecsteve2"
+
+### Begin: Helper functions
+
+select_echo_cancel() {
+ local myEC=""
+
+ for x in ${ZAP_EC_FLAGS}; do
+ if use $x; then
+ myEC=$(echo "$x" | sed -e "s:^ec::" | tr '[:lower:]' '[:upper:]')
+ break;
+ fi
+ done
+
+ echo ${myEC}
+}
+
+zconfig_disable() {
+ if grep -q "${1}" ${S}/zconfig.h; then
+ # match a little more than ${1} so we can use zconfig_disable
+ # to disable all echo cancellers in zconfig.h w/o calling it several times
+ sed -i -e "s:^[ \t]*#define[ \t]\+\(${1}[a-zA-Z0-9_-]*\).*:#undef \1:" \
+ ${S}/zconfig.h || die "QA error: No substitution performed"
+ fi
+
+ return $?
+}
+
+zconfig_enable() {
+ if grep -q "${1}" ${S}/zconfig.h; then
+ sed -i -e "s:^/\*[ \t]*#define[ \t]\+\(${1}\).*:#define \1:" \
+ -e "s:^[ \t]*#undef[ \t]\+\(${1}\).*:#define \1:" \
+ ${S}/zconfig.h || die "QA error: No substitution performed"
+ fi
+
+ return $?
+}
+
+### End: Helper functions
+
+pkg_setup() {
+ local result=0 numec=0
+
+ linux-mod_pkg_setup
+
+ einfo "Running pre-flight checks..."
+
+ # basic zaptel checks
+ if ! linux_chkconfig_present CRC_CCITT; then
+ echo
+ eerror "Your kernel lacks CRC_CCIT support!"
+ eerror "Enable CONFIG_CRC_CCIT!"
+ result=$((result+1))
+ fi
+
+ # check if multiple echo cancellers have been selected
+ for x in ${ZAP_EC_FLAGS}; do
+ use $x && numec=$((numec+1))
+ 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
+ echo
+ ewarn "Multiple echo canceller flags are active but only one will be used!"
+ ewarn "Selected: $(select_echo_cancel)"
+ fi
+
+ # we need at least HDLC generic support
+ if use zapnet && ! linux_chkconfig_present HDLC; then
+ echo
+ eerror "zapnet: Your kernel lacks HDLC support!"
+ eerror "zapnet: Enable CONFIG_HDLC* to use zaptel network support!"
+ result=$((result+1))
+ fi
+
+ # zapras needs PPP support
+ if use zapras && ! linux_chkconfig_present PPP; then
+ echo
+ eerror "zapras: Your kernel lacks PPP support!"
+ eerror "zapras: Enable CONFIG_PPP* to use zaptel ras support!"
+ result=$((result+1))
+ fi
+
+ # rtc needs linux-2.6 and CONFIG_RTC
+ if use rtc; then
+ if ! kernel_is 2 6; then
+ echo
+ eerror "rtc: >=Linux-2.6.0 is needed for rtc support!"
+ result=$((result+1))
+ fi
+
+ if ! linux_chkconfig_present RTC; then
+ eerror "rtc: Your kernel lacks RealTime-Clock support!"
+ result=$((result+1))
+ fi
+ fi
+
+ if [[ $result -gt 0 ]]; then
+ echo
+ ewarn "One or more of the neccessary precondition(s) is/are not met!"
+ ewarn "Look at the messages above, resolve the problem (or disable the use-flag) and try again"
+ echo
+
+ # no alcohol or drugs involved here
+ if [[ $result -lt 3 ]]; then
+ eerror "[$result Error(s)] Zaptel is not happy :("
+ else
+ eerror "[$result Error(s)] You're making zaptel cry :´("
+ fi
+ die "[$result] Precondition(s) not met"
+ fi
+
+ echo
+ einfo "Zaptel is happy and continues... :)"
+}
+
+src_unpack() {
+ unpack ${A}
+
+ cd ${S}
+ epatch ${FILESDIR}/${P}-gentoo.diff
+
+ if use devfs26; then
+ epatch ${FILESDIR}/${PN}-1.0.4-experimental-devfs26.diff
+
+ # fix Makefile to not create device nodes for
+ # devfs enabled 2.6 kernels
+ sed -i -e 's:grep -q udevd:grep -q \"udevd\\|devfsd\":' \
+ Makefile || die "QA error: No substitution performed"
+ fi
+
+ # try to apply bristuff patch
+# if use bri; then
+# einfo "Patching zaptel w/ BRI stuff (${BRI_VERSION})"
+# epatch ${FILESDIR}/zaptel-bristuff-${BRI_VERSION}.patch
+#
+# cd ${WORKDIR}/bristuff-${BRI_VERSION}
+#
+# if use florz; then
+# einfo "Using florz patches (${FLORZ_VERSION}) for zaphfc"
+#
+# # remove as soon as there's a new florz patch available
+# sed -i -e "s:zaptel-1\.0\.7:zaptel-1.0.8:g" \
+# ${WORKDIR}/zaphfc_${FLORZ_VERSION}.diff
+#
+# epatch ${WORKDIR}/zaphfc_${FLORZ_VERSION}.diff
+# fi
+#
+# # patch includes
+# sed -i -e "s:^#include.*zaptel\.h.*:#include <zaptel.h>:" \
+# qozap/qozap.c \
+# zaphfc/zaphfc.c \
+# cwain/cwain.c
+#
+# # patch makefiles
+# sed -i -e "s:^ZAP[\t ]*=.*:ZAP=-I${S}:" \
+# -e "s:^MODCONF=.*:MODCONF=/etc/modules.d/zaptel:" \
+# -e "s:linux-2.6:linux:g" \
+# qozap/Makefile \
+# zaphfc/Makefile \
+# cwain/Makefile
+#
+# sed -i -e "s:^\(CFLAGS+=-I. \).*:\1 \$(ZAP):" \
+# zaphfc/Makefile
+# fi
+
+### Configuration changes
+ local myEC
+
+ # prepare zconfig.h
+ myEC=$(select_echo_cancel)
+ if [[ -n "${myEC}" ]]; then
+ einfo "Selected echo canceller: ${myEC}"
+ # disable default first, set new selected ec afterwards
+ zconfig_disable ECHO_CAN
+ zconfig_enable ECHO_CAN_${myEC}
+ fi
+
+ # enable rtc support on 2.6
+ if use rtc && linux_chkconfig_present RTC && kernel_is 2 6; then
+ einfo "Enabling ztdummy RTC support"
+ zconfig_enable USE_RTC
+ fi
+
+ # disable udev support on devfs26 systems
+ use devfs26 && \
+ zconfig_disable CONFIG_ZAP_UDEV
+
+ # enable agressive echo surpression
+ use ecaggressive && \
+ zconfig_enable AGGRESSIVE_SUPPRESSOR
+
+ # ppp ras support
+ use zapras && \
+ zconfig_enable CONFIG_ZAPATA_PPP
+
+ # frame relay, syncppp...
+ use zapnet && \
+ zconfig_enable CONFIG_ZAPATA_NET
+
+ # zaptel watchdog
+ use watchdog && \
+ zconfig_enable CONFIG_ZAPTEL_WATCHDOG
+}
+
+src_compile() {
+ # build
+ make KVERS=${KV_FULL} \
+ KSRC=/usr/src/linux ARCH=$(tc-arch-kernel) || die
+
+# if use bri; then
+# cd ${WORKDIR}/bristuff-${BRI_VERSION}
+# make -C qozap || die
+# make -C zaphfc || die
+# make -C cwain || die
+# fi
+}
+
+src_install() {
+ make INSTALL_PREFIX=${D} ARCH=$(tc-arch-kernel) \
+ KVERS=${KV_FULL} KSRC=/usr/src/linux install || die
+
+ dodoc ChangeLog README README.udev README.Linux26 README.fxsusb zaptel.init
+ dodoc zaptel.conf.sample LICENSE zaptel.sysconfig
+
+ # additional tools
+ dobin ztmonitor ztspeed zttest
+
+ # install all header files, several packages need the complete set
+ # (e.g. sangoma wanpipe)
+ insinto /usr/include/zaptel
+ doins *.h
+
+# if use bri; then
+# einfo "Installing bri"
+# cd ${WORKDIR}/bristuff-${BRI_VERSION}
+#
+# insinto /lib/modules/${KV_FULL}/misc
+# doins qozap/qozap.${KV_OBJ}
+# doins zaphfc/zaphfc.${KV_OBJ}
+# doins cwain/cwain.${KV_OBJ}
+#
+# # install example configs for octoBRI and quadBRI
+# insinto /etc
+# doins qozap/zaptel.conf.octoBRI
+# newins qozap/zaptel.conf zaptel.conf.quadBRI
+# newins zaphfc/zaptel.conf zaptel.conf.zaphfc
+#
+# insinto /etc/asterisk
+# doins qozap/zapata.conf.octoBRI
+# newins qozap/zapata.conf zapata.conf.quadBRI
+# newins zaphfc/zapata.conf zapata.conf.zaphfc
+#
+# docinto bristuff
+# dodoc CHANGES INSTALL
+#
+# docinto bristuff/qozap
+# dodoc qozap/LICENSE qozap/TODO qozap/*.conf*
+#
+# docinto bristuff/zaphfc
+# dodoc zaphfc/LICENSE zaphfc/*.conf
+#
+# docinto bristuff/cwain
+# dodoc cwain/TODO cwain/LICENSE
+# fi
+
+ # install init script
+ newinitd ${FILESDIR}/zaptel.rc6 zaptel
+ newconfd ${FILESDIR}/zaptel.confd zaptel
+
+ # install devfsd rule file
+ insinto /etc/devfs.d
+ newins ${FILESDIR}/zaptel.devfsd zaptel
+
+ # install udev rule file
+ insinto /etc/udev/rules.d
+ newins ${FILESDIR}/zaptel.udevd 10-zaptel.rules
+
+ # fix permissions if there's no udev / devfs around
+ if [[ -d ${D}/dev/zap ]]; then
+ chown -R root:dialout ${D}/dev/zap
+ chmod -R u=rwX,g=rwX,o= ${D}/dev/zap
+ fi
+}
+
+pkg_postinst() {
+ linux-mod_pkg_postinst
+
+ if use devfs26; then
+ ewarn "*** Warning! ***"
+ ewarn "Devfs support for linux-2.6 is experimental and not"
+ ewarn "supported by digium or the asterisk project!"
+ echo
+ ewarn "Send bug-reports to: stkn@gentoo.org"
+ fi
+
+ echo
+ einfo "Use the /etc/init.d/zaptel script to load zaptel.conf settings on startup!"
+ echo
+
+# if use bri; then
+# einfo "Bristuff configs have been merged as:"
+# einfo ""
+# einfo "${ROOT}etc/"
+# einfo " zaptel.conf.zaphfc"
+# einfo " zaptel.conf.quadBRI"
+# einfo " zaptel.conf.octoBRI"
+# einfo ""
+# einfo "${ROOT}etc/asterisk/"
+# einfo " zapata.conf.zaphfc"
+# einfo " zapata.conf.quadBRI"
+# einfo " zapata.conf.octoBRI"
+# echo
+# fi
+
+ # fix permissions if there's no udev / devfs around
+ if [[ -d ${ROOT}dev/zap ]]; then
+ chown -R root:dialout ${ROOT}dev/zap
+ chmod -R u=rwX,g=rwX,o= ${ROOT}dev/zap
+ fi
+}