diff options
author | Gustavo Zacarias <gustavoz@gentoo.org> | 2006-11-17 18:20:35 +0000 |
---|---|---|
committer | Gustavo Zacarias <gustavoz@gentoo.org> | 2006-11-17 18:20:35 +0000 |
commit | 1e57271077ee42d27ea51ee0f9750ea679958ac3 (patch) | |
tree | f170ba9445caaf62b6a5f9547265892ceab60c6d /net-misc/zaptel | |
parent | Add dep on pkgconfig for bug #155002; clean up old version (diff) | |
download | historical-1e57271077ee42d27ea51ee0f9750ea679958ac3.tar.gz historical-1e57271077ee42d27ea51ee0f9750ea679958ac3.tar.bz2 historical-1e57271077ee42d27ea51ee0f9750ea679958ac3.zip |
Revbump to support new digium hardware, also fix #154241
Package-Manager: portage-2.1.1-r1
Diffstat (limited to 'net-misc/zaptel')
-rw-r--r-- | net-misc/zaptel/ChangeLog | 8 | ||||
-rw-r--r-- | net-misc/zaptel/Manifest | 26 | ||||
-rw-r--r-- | net-misc/zaptel/files/digest-zaptel-1.2.11 | 9 | ||||
-rw-r--r-- | net-misc/zaptel/files/zaptel-1.2.11-gentoo.diff | 103 | ||||
-rw-r--r-- | net-misc/zaptel/zaptel-1.2.11.ebuild | 359 |
5 files changed, 497 insertions, 8 deletions
diff --git a/net-misc/zaptel/ChangeLog b/net-misc/zaptel/ChangeLog index 10fd3a3557a6..ef34cbbf4545 100644 --- a/net-misc/zaptel/ChangeLog +++ b/net-misc/zaptel/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-misc/zaptel # Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/zaptel/ChangeLog,v 1.83 2006/11/07 20:09:34 gustavoz Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-misc/zaptel/ChangeLog,v 1.84 2006/11/17 18:20:35 gustavoz Exp $ + +*zaptel-1.2.11 (17 Nov 2006) + + 17 Nov 2006; Gustavo Zacarias <gustavoz@gentoo.org> + +files/zaptel-1.2.11-gentoo.diff, +zaptel-1.2.11.ebuild: + Revbump to support new digium hardware, also fix #154241 *zaptel-1.2.10 (07 Nov 2006) diff --git a/net-misc/zaptel/Manifest b/net-misc/zaptel/Manifest index bd0efa082fc7..1e2a5812e9e8 100644 --- a/net-misc/zaptel/Manifest +++ b/net-misc/zaptel/Manifest @@ -37,6 +37,10 @@ AUX zaptel-1.2.10-gentoo.diff 5178 RMD160 29595663ff4cde4852926525b0ccb29ef5b1ae MD5 74e9e15a5dc001835bcfdfd86d1baab0 files/zaptel-1.2.10-gentoo.diff 5178 RMD160 29595663ff4cde4852926525b0ccb29ef5b1aed7 files/zaptel-1.2.10-gentoo.diff 5178 SHA256 d8edce4d8796c7d9d18b85ab1b4758e9c9cd65182b3cad13d1021cedf0cf04a9 files/zaptel-1.2.10-gentoo.diff 5178 +AUX zaptel-1.2.11-gentoo.diff 5090 RMD160 1a3b1b2b0d1f06ee05f0212a76e3a78a9963f011 SHA1 e69c4175c8ae1bf7e7e1a7c606a61e2bbf86388d SHA256 ed70a2f784f191a9c9cb47bcca90209e6f29b3fda6bee649f361a7ae4fb0cf80 +MD5 b5b5c88abb3d8b1efabdd1d34935c052 files/zaptel-1.2.11-gentoo.diff 5090 +RMD160 1a3b1b2b0d1f06ee05f0212a76e3a78a9963f011 files/zaptel-1.2.11-gentoo.diff 5090 +SHA256 ed70a2f784f191a9c9cb47bcca90209e6f29b3fda6bee649f361a7ae4fb0cf80 files/zaptel-1.2.11-gentoo.diff 5090 AUX zaptel-1.2.9.1-ar.patch 924 RMD160 24eac6e9c5a9576b04df1e595fa6a2e2487772fe SHA1 fdf329d360508d8e629d196d4f0e6ccfabf24dff SHA256 8a8374b2689ed70108d10eb704bb6d3b35550f33a183e039e7efd69c7a681485 MD5 235d2550fd9a0bde64929e27a6a2343d files/zaptel-1.2.9.1-ar.patch 924 RMD160 24eac6e9c5a9576b04df1e595fa6a2e2487772fe files/zaptel-1.2.9.1-ar.patch 924 @@ -75,6 +79,7 @@ DIST bristuff-0.3.0-PRE-1v.tar.gz 267644 RMD160 5c5f034d29f4156351a495f40c9c4b17 DIST zaphfc_0.3.0-PRE-1o_florz-12.diff.gz 10736 RMD160 b95d2301402e1108bc480ce0e66e87e3062eccf8 SHA1 f8ab2f312c6a2b2f607b9e7f3ccbcca0858c53a7 SHA256 04a8dd22d581b5d28d46a589d695f6eb634bf2bf355347a637fe2d560a63528c DIST zaptel-1.0.10.tar.gz 327832 RMD160 a797bb36f35e50c51d30705ad1d628f5728d87ed SHA1 98544260fca2afbcd304f7354b62a56138e15a09 SHA256 7978f3c56a95033bf2bc2cb8d0cb2830c5371aae21e0021503c6dbf2361795d1 DIST zaptel-1.2.10.tar.gz 1258750 RMD160 3e33a496127c78e52178a73255f6da55c2b9a5d2 SHA1 6b69c4822b9cc1dbc48868eb61bc88e3212b7545 SHA256 170a0c18efe2da3cd17946850c6249a9824f753d6705a27ffef47fb8e8a7f9d7 +DIST zaptel-1.2.11.tar.gz 1425625 RMD160 6ae43a2f5801dab17216912f976e67371d8e51d2 SHA1 30a2001449ff50b5a47970b76a77500986602211 SHA256 3641c8ef684862b3cc9fd3c3341d25095909a9c2f901d31b7cc9394210cb50e8 DIST zaptel-1.2.9.1.tar.gz 1255412 RMD160 caf2ad931e2ae439500805a6ca4376dc8083de5a SHA1 6145301bb47107c0910a098e26b4ca5cdb2377ab SHA256 7def44c259352397af2ad80f3c0eb103ff640ffbc7c95f37c3802fee75c10ede EBUILD zaptel-1.0.10-r1.ebuild 7197 RMD160 2f60f18488f4b49ac43e4310fe4501939f96b405 SHA1 e919d6ca40ee2efcc2afe1f898c4118207a1cf6b SHA256 e533d31fd85708fec97e0e315ee738ad964aadfeb84f8f9595059a6efca501a3 MD5 33564fe4757a198a8f2a627408c9a9b1 zaptel-1.0.10-r1.ebuild 7197 @@ -84,14 +89,18 @@ EBUILD zaptel-1.2.10.ebuild 8582 RMD160 a4547a159b07ac039081d686777ea8ec927542c3 MD5 666bb17698ac00689d63042a4d0937da zaptel-1.2.10.ebuild 8582 RMD160 a4547a159b07ac039081d686777ea8ec927542c3 zaptel-1.2.10.ebuild 8582 SHA256 7f6265635c0f97b7cd6a2cda017b1691038308d4c56f2e114f97098234e2ca3a zaptel-1.2.10.ebuild 8582 +EBUILD zaptel-1.2.11.ebuild 8756 RMD160 a3621d88c3826cf8a4ea1bcc0764b6256f9647ee SHA1 eebbbc7096d6457982e5258e0eea1f3317edd650 SHA256 ba3413e8eaf0b875a1c52cad084ad44cbd4cf5a751aa5f94e05ca0a7c4196eb9 +MD5 58d2dfa8557fbc8cc3a66a89f1e14c20 zaptel-1.2.11.ebuild 8756 +RMD160 a3621d88c3826cf8a4ea1bcc0764b6256f9647ee zaptel-1.2.11.ebuild 8756 +SHA256 ba3413e8eaf0b875a1c52cad084ad44cbd4cf5a751aa5f94e05ca0a7c4196eb9 zaptel-1.2.11.ebuild 8756 EBUILD zaptel-1.2.9.1.ebuild 8574 RMD160 cd382f76b994968506eff1b47adb7f3f89711acb SHA1 624312f6d96de7031fcc49013469fac286472232 SHA256 e601e9db582419d90e015a40500ba4473cbf0f00bc9fadf89ce8acc08536c8af MD5 855074ab185dd77d5d0851657c61f313 zaptel-1.2.9.1.ebuild 8574 RMD160 cd382f76b994968506eff1b47adb7f3f89711acb zaptel-1.2.9.1.ebuild 8574 SHA256 e601e9db582419d90e015a40500ba4473cbf0f00bc9fadf89ce8acc08536c8af zaptel-1.2.9.1.ebuild 8574 -MISC ChangeLog 16365 RMD160 5047f0aa20506685ca1632125db5f01ab8949188 SHA1 85e7206cd3194468695478c16b842086c5c394af SHA256 f66c9cadc57412a0352b496c069de61f1fc9284398fd116b7eb86205b20c37a0 -MD5 278844b6c55a116d664aeb62310b89be ChangeLog 16365 -RMD160 5047f0aa20506685ca1632125db5f01ab8949188 ChangeLog 16365 -SHA256 f66c9cadc57412a0352b496c069de61f1fc9284398fd116b7eb86205b20c37a0 ChangeLog 16365 +MISC ChangeLog 16568 RMD160 4544ad69ad2c02a807256932df60259b8f970b29 SHA1 8f1705e9156c83986d8e337e55389093758fa06e SHA256 13b9db66fba147168de0a44c46da5db6c374405ca47a2b384c37883281893c33 +MD5 bcaf5a1f058fe24c15bef15a7cc8bded ChangeLog 16568 +RMD160 4544ad69ad2c02a807256932df60259b8f970b29 ChangeLog 16568 +SHA256 13b9db66fba147168de0a44c46da5db6c374405ca47a2b384c37883281893c33 ChangeLog 16568 MISC metadata.xml 382 RMD160 315172442a4bfaa87b855d4c421b22a2527e97b2 SHA1 7b95f41def10946742929592db1d76b7e3bb0a19 SHA256 f79d5cd273e9ecc2181e60ea226a7cb0128011d877fc7531b2df30bd5fd9ae20 MD5 f3d5d5b8a638e7a9a83fe0eb0d94282c metadata.xml 382 RMD160 315172442a4bfaa87b855d4c421b22a2527e97b2 metadata.xml 382 @@ -102,13 +111,16 @@ SHA256 97f4cbc2c2075338a5fbb1c0da7f79f365725d49e9d6cb89a974db23c6e5a83d files/di MD5 41c03c826202769a4ae6f92c8a5d5226 files/digest-zaptel-1.2.10 795 RMD160 b51b15adcc314cd6f5a6bc11a9730e3a572cfa97 files/digest-zaptel-1.2.10 795 SHA256 00cda49073896bdb9fb26651a85643ae15b02136adfe28feb846db17729c2e37 files/digest-zaptel-1.2.10 795 +MD5 5be62fb2c9ceb80dd67e273749b36f5b files/digest-zaptel-1.2.11 795 +RMD160 f548947b52714f039cb62714ae2baef8049098f0 files/digest-zaptel-1.2.11 795 +SHA256 f25c5f1b434635c05e59971a2061b49113e3ad69290169f5fb0d7a5c83364311 files/digest-zaptel-1.2.11 795 MD5 1e13a9665022158b1d78f47b331688ed files/digest-zaptel-1.2.9.1 798 RMD160 f10faf8fefa2221dfa0fd8e8a85b658a095d803c files/digest-zaptel-1.2.9.1 798 SHA256 367d7228a51892a9ad986338a37a3355564b2fc324af014a65f7af78bf676b3d files/digest-zaptel-1.2.9.1 798 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5-ecc0.1.6 (GNU/Linux) -iD8DBQFFUOf2KRy60XGEcJIRApLfAKCkAIHeRMCPyeKfbhQh9yCpmGCyHgCgnqCf -FT+lwUKy3ddAjp1rda3iWLw= -=r40U +iD8DBQFFXf5BKRy60XGEcJIRAiYWAJ9elK4e6oH+au9YLmcU52W7kY6V6wCgp8jZ +vTMnEqjHg+UDDCf8PnyMNn0= +=8nlF -----END PGP SIGNATURE----- diff --git a/net-misc/zaptel/files/digest-zaptel-1.2.11 b/net-misc/zaptel/files/digest-zaptel-1.2.11 new file mode 100644 index 000000000000..fdeb525e2e3b --- /dev/null +++ b/net-misc/zaptel/files/digest-zaptel-1.2.11 @@ -0,0 +1,9 @@ +MD5 9da38a78556eb09749d1f789a8a2631c bristuff-0.3.0-PRE-1v.tar.gz 267644 +RMD160 5c5f034d29f4156351a495f40c9c4b176f65e06e bristuff-0.3.0-PRE-1v.tar.gz 267644 +SHA256 91254dd6c71b74a5990df622b523d06c2f0399c6e47630e5155392c1598fd39e bristuff-0.3.0-PRE-1v.tar.gz 267644 +MD5 541b0a5910843d3c0b6a9de9467b9401 zaphfc_0.3.0-PRE-1o_florz-12.diff.gz 10736 +RMD160 b95d2301402e1108bc480ce0e66e87e3062eccf8 zaphfc_0.3.0-PRE-1o_florz-12.diff.gz 10736 +SHA256 04a8dd22d581b5d28d46a589d695f6eb634bf2bf355347a637fe2d560a63528c zaphfc_0.3.0-PRE-1o_florz-12.diff.gz 10736 +MD5 f61f77ec35ccf2e5518e23ac315f67b1 zaptel-1.2.11.tar.gz 1425625 +RMD160 6ae43a2f5801dab17216912f976e67371d8e51d2 zaptel-1.2.11.tar.gz 1425625 +SHA256 3641c8ef684862b3cc9fd3c3341d25095909a9c2f901d31b7cc9394210cb50e8 zaptel-1.2.11.tar.gz 1425625 diff --git a/net-misc/zaptel/files/zaptel-1.2.11-gentoo.diff b/net-misc/zaptel/files/zaptel-1.2.11-gentoo.diff new file mode 100644 index 000000000000..ea702ef76f53 --- /dev/null +++ b/net-misc/zaptel/files/zaptel-1.2.11-gentoo.diff @@ -0,0 +1,103 @@ +diff -Nura zaptel-1.2.11/build_tools/genmodconf zaptel-1.2.11.gentoo/build_tools/genmodconf +--- zaptel-1.2.11/build_tools/genmodconf 2006-05-23 14:51:00.000000000 -0300 ++++ zaptel-1.2.11.gentoo/build_tools/genmodconf 2006-11-14 11:54:53.624386476 -0300 +@@ -79,20 +79,6 @@ + + echo Building ${target}... + +-if [ "${1}" == "linux24" ]; then +- for mod in ${3}; do +- if ! grep -q "post-install ${mod} " ${target}; then +- echo "post-install ${mod} /sbin/ztcfg" >> ${target} +- fi +- done +-elif [ "${1}" == "linux26" ]; then +- for mod in ${3}; do +- if ! grep -q "install ${mod} " ${target}; then +- echo "install ${mod} /sbin/modprobe --ignore-install ${mod} ${cmdopts} && /sbin/ztcfg" >> ${target} +- fi +- done +-fi +- + if ! grep -q "alias wcfxs" ${target}; then + echo "alias wcfxs wctdm" >> ${target}; + fi; +diff -Nura zaptel-1.2.11/build_tools/genudevrules zaptel-1.2.11.gentoo/build_tools/genudevrules +--- zaptel-1.2.11/build_tools/genudevrules 2006-05-17 13:49:46.000000000 -0300 ++++ zaptel-1.2.11.gentoo/build_tools/genudevrules 2006-11-14 11:54:53.625386224 -0300 +@@ -22,9 +22,9 @@ + + cat <<EOF + # zaptel devices with ownership/permissions for running as non-root +-KERNEL${match}"zapctl", NAME="zap/ctl", OWNER="asterisk", GROUP="asterisk", MODE="0660" +-KERNEL${match}"zaptimer", NAME="zap/timer", OWNER="asterisk", GROUP="asterisk", MODE="0660" +-KERNEL${match}"zapchannel", NAME="zap/channel", OWNER="asterisk", GROUP="asterisk", MODE="0660" +-KERNEL${match}"zappseudo", NAME="zap/pseudo", OWNER="asterisk", GROUP="asterisk", MODE="0660" +-KERNEL${match}"zap[0-9]*", NAME="zap/%n", OWNER="asterisk", GROUP="asterisk", MODE="0660" ++KERNEL${match}"zapctl", NAME="zap/ctl", OWNER="root", GROUP="dialout", MODE="0660" ++KERNEL${match}"zaptimer", NAME="zap/timer", OWNER="root", GROUP="dialout", MODE="0660" ++KERNEL${match}"zapchannel", NAME="zap/channel", OWNER="root", GROUP="dialout", MODE="0660" ++KERNEL${match}"zappseudo", NAME="zap/pseudo", OWNER="root", GROUP="dialout", MODE="0660" ++KERNEL${match}"zap[0-9]*", NAME="zap/%n", OWNER="root", GROUP="dialout", MODE="0660" + EOF +diff -Nura zaptel-1.2.11/Makefile zaptel-1.2.11.gentoo/Makefile +--- zaptel-1.2.11/Makefile 2006-10-31 03:25:16.000000000 -0300 ++++ zaptel-1.2.11.gentoo/Makefile 2006-11-14 12:00:45.451857178 -0300 +@@ -25,7 +25,7 @@ + endif + KINCLUDES:=$(KSRC)/include + +-CFLAGS+=-I. -O4 -g -Wall -DBUILDING_TONEZONE #-DTONEZONE_DRIVER ++CFLAGS+=-I. -Iinclude -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_X86-64) +@@ -299,7 +299,8 @@ + done + else # DYNFS + ifdef UDEVRULES +- build_tools/genudevrules > $(INSTALL_PREFIX)/etc/udev/rules.d/zaptel.rules ++ build_tools/genudevrules > zaptel.rules ++ install -D -m 644 zaptel.rules $(INSTALL_PREFIX)/etc/udev/rules.d/10-zaptel.rules + else # !UDEVRULES + @echo "**** Dynamic filesystem detected -- not creating device nodes" + endif +@@ -314,7 +315,7 @@ + tar -zxf mISDNuser.tar.gz + $(MAKE) -C mISDNuser install + +-install: all devices firmware ++install: devices firmware + install -D -m 755 ztcfg $(INSTALL_PREFIX)/sbin/ztcfg + if [ -f sethdlc-new ]; then \ + install -D -m 755 sethdlc-new $(INSTALL_PREFIX)/sbin/sethdlc; \ +@@ -337,24 +338,21 @@ + fi; \ + rm -f $(INSTALL_PREFIX)/lib/modules/$(KVERS)/misc/wcfxs.o + 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 || : ++ [ `id -u` = 0 ] && /sbin/ldconfig -n $(INSTALL_PREFIX)/usr/lib || : + rm -f $(INSTALL_PREFIX)/usr/lib/$(LIBTONEZONE_SO) + ln -sf $(LIBTONEZONE_SO).$(LIBTONEZONE_SO_MAJOR_VER).$(LIBTONEZONE_SO_MINOR_VER) \ + $(INSTALL_PREFIX)/usr/lib/$(LIBTONEZONE_SO).$(LIBTONEZONE_SO_MAJOR_VER) + ln -sf $(LIBTONEZONE_SO).$(LIBTONEZONE_SO_MAJOR_VER).$(LIBTONEZONE_SO_MINOR_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 $(INSTALL_PREFIX)/usr/share/man/man8 +- install -m 644 doc/zttool.8 $(INSTALL_PREFIX)/usr/share/man/man8 +- [ `id -u` = 0 ] && /sbin/depmod -a $(KVERS) || : ++ install -d $(INSTALL_PREFIX)/usr/share/man/man8 ++ install -m 644 doc/ztcfg.8 $(INSTALL_PREFIX)/usr/share/man/man8/ ++ install -m 644 doc/zttool.8 $(INSTALL_PREFIX)/usr/share/man/man8/ + [ -f $(CONFIG_FILE) ] || install -D -m 644 zaptel.conf.sample $(CONFIG_FILE) ++ install -d -m 755 $(INSTALL_PREFIX)/etc/modules.d + build_tools/genmodconf $(BUILDVER) "$(INSTALL_PREFIX)" "$(filter-out zaptel,$(MODULES))" +- @if [ -d /etc/modutils ]; then \ +- /sbin/update-modules ; \ +- fi + + install-udev: devices + diff --git a/net-misc/zaptel/zaptel-1.2.11.ebuild b/net-misc/zaptel/zaptel-1.2.11.ebuild new file mode 100644 index 000000000000..4b3f22c9c737 --- /dev/null +++ b/net-misc/zaptel/zaptel-1.2.11.ebuild @@ -0,0 +1,359 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/zaptel/zaptel-1.2.11.ebuild,v 1.1 2006/11/17 18:20:35 gustavoz Exp $ + +inherit toolchain-funcs eutils linux-mod + +## NOTE: +# +# + +BRI_VERSION="0.3.0-PRE-1v" +FLORZ_VERSION="0.3.0-PRE-1o_florz-12" + +IUSE="bri ecmark ecmark2 ecmark3 ecaggressive eckb1 ecmg2 ecsteve ecsteve2 florz rtc ukcid watchdog zapras zapnet" + +MY_P="${P/_/-}" + +DESCRIPTION="Drivers for Digium and ZapataTelephony cards" +HOMEPAGE="http://www.asterisk.org" +SRC_URI="http://ftp.digium.com/pub/zaptel/releases/${MY_P}.tar.gz + bri? ( http://www.junghanns.net/downloads/bristuff-${BRI_VERSION}.tar.gz ) + florz? ( http://www.netdomination.org/pub/asterisk/zaphfc_${FLORZ_VERSION}.diff.gz )" + +S="${WORKDIR}/${MY_P}" + +S_BRI="${WORKDIR}/bristuff-${BRI_VERSION}" + +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~amd64 ~ppc ~x86" + +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 eckb1 ecmg2" + +### 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 + 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 + 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 + + 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 + epatch ${FILESDIR}/zaptel-1.2.9.1-gcc411_is_a_retard-kbuild.patch + epatch ${FILESDIR}/zaptel-1.2.9.1-ar.patch + + use ukcid && \ + epatch ${FILESDIR}/${PN}-1.2.0-ukcid.patch + + # try to apply bristuff patch + if use bri; then + # fix for userpriv + chmod -R a=rwX ${S_BRI} + + einfo "Patching zaptel w/ BRI stuff (${BRI_VERSION})" + epatch ${S_BRI}/patches/zaptel.patch + + cd ${S_BRI} + + 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\.2\.5:zaptel-1.2.6: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 + + cd ${S} + 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 + + # 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=${KV_DIR} ARCH=$(tc-arch-kernel) || die + + cd ${S}/xpp/utils + make || die "make xpp utils failed" + + if use bri; then + cd ${S_BRI} + for x in cwain qozap zaphfc; do + einfo "Building ${x}..." + make KVERS=${KV_FULL} \ + KSRC=/usr/src/linux \ + ARCH=$(tc-arch-kernel) \ + -C ${x} || die "make ${x} failed" + done + 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 README.fxotune + + # additional tools + dobin ztmonitor ztspeed zttest fxotune + + # 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 ${S_BRI} + + 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 + + cd ${S} + 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 + + # install xpp utils + cd ${S}/xpp/utils + make DESTDIR=${D} install || die "failed xpp utils install" +} + +pkg_postinst() { + linux-mod_pkg_postinst + + 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 +} |