New version, fixes #166679 #170233
authorGustavo Zacarias <gustavoz@gentoo.org>
Thu, 19 Apr 2007 18:02:46 +0000 (18:02 +0000)
committerGustavo Zacarias <gustavoz@gentoo.org>
Thu, 19 Apr 2007 18:02:46 +0000 (18:02 +0000)
Package-Manager: portage-2.1.2.2

net-misc/zaptel/ChangeLog
net-misc/zaptel/Manifest
net-misc/zaptel/files/digest-zaptel-1.2.16 [new file with mode: 0644]
net-misc/zaptel/files/zaptel-1.2.16-gentoo.diff [new file with mode: 0644]
net-misc/zaptel/zaptel-1.2.16.ebuild [new file with mode: 0644]

index 35cf8d14d2fe0b268329ce825390cfbe8385ce7c..8ee0ee8f58a20ad8c14151b1feb3207dee2cf150 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for net-misc/zaptel
 # Copyright 2000-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/zaptel/ChangeLog,v 1.91 2007/03/13 19:57:38 opfer Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/zaptel/ChangeLog,v 1.92 2007/04/19 18:02:46 gustavoz Exp $
+
+*zaptel-1.2.16 (19 Apr 2007)
+
+  19 Apr 2007; Gustavo Zacarias <gustavoz@gentoo.org>
+  +files/zaptel-1.2.16-gentoo.diff, +zaptel-1.2.16.ebuild:
+  New version, fixes #166679 #170233
 
   13 Mar 2007; Christian Faulhammer <opfer@gentoo.org>
   zaptel-1.2.12-r1.ebuild:
index f63487997ce4de7992ae01d08359971332628fd9..fc252d2c6d6c3621a2b099523201ceb7d42d060e 100644 (file)
@@ -41,6 +41,10 @@ AUX zaptel-1.2.12-gentoo.diff 5088 RMD160 ebf8bd689f7b9e051f3476a2cad429d95458da
 MD5 e7764f8ac5e6d6cc9a787c427f089f6f files/zaptel-1.2.12-gentoo.diff 5088
 RMD160 ebf8bd689f7b9e051f3476a2cad429d95458dafc files/zaptel-1.2.12-gentoo.diff 5088
 SHA256 797226ee1ee56d13829ac9a027d9176503c850777beed6442299935953bcb198 files/zaptel-1.2.12-gentoo.diff 5088
+AUX zaptel-1.2.16-gentoo.diff 5295 RMD160 fe847e40ecdf041970bf91fe38f088cf3e1be4c3 SHA1 03badeb90d7b97e69878d6fed64d6ce317a09ea5 SHA256 f7caa5824fc7ef39149b6a52dd9b4520d4580db20211b0c8995275ae89ff2c31
+MD5 27729c0ff28af11c6753094db7c4ac7d files/zaptel-1.2.16-gentoo.diff 5295
+RMD160 fe847e40ecdf041970bf91fe38f088cf3e1be4c3 files/zaptel-1.2.16-gentoo.diff 5295
+SHA256 f7caa5824fc7ef39149b6a52dd9b4520d4580db20211b0c8995275ae89ff2c31 files/zaptel-1.2.16-gentoo.diff 5295
 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
@@ -77,10 +81,12 @@ DIST bristuff-0.2.0-RC8q.tar.gz 152037 RMD160 aaa9ca23eaeb74abc96dd7240f67e7886d
 DIST bristuff-0.3.0-PRE-1s.tar.gz 265953 RMD160 8d3abdbbae4c376d52225395c72f4538e1f84a94 SHA1 1d942df9e4fd963755080e011caba88a33601c1b SHA256 30adea4f070ed44d1952163e850c177f976857b96965e18844ccd492ccef968d
 DIST bristuff-0.3.0-PRE-1v.tar.gz 267644 RMD160 5c5f034d29f4156351a495f40c9c4b176f65e06e SHA1 0ffbe79cd44119b09eb744eb9bf1b6fb90fa1bab SHA256 91254dd6c71b74a5990df622b523d06c2f0399c6e47630e5155392c1598fd39e
 DIST bristuff-0.3.0-PRE-1x.tar.gz 279200 RMD160 bc84aa50370627cfead9e0646cf87c16ddff7b00 SHA1 e02a82cebaefa0d666ad56532369310aae818d91 SHA256 13d98160d4a10b46b77c822577e6c64ad7dadbc2df1b4cd0a1007ae3bbbd4aa8
+DIST bristuff-0.3.0-PRE-1y-d.tar.gz 286165 RMD160 7424e3f6876ff1e9415c11d3c8ed70014c5a0f4f SHA1 cb984daf1616c847d02d4824e36e13d55a142ade SHA256 99688819bce753910b154ad0866d77f861e25842a1e810d0baf80a0a02cfef25
 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.11.tar.gz 1425625 RMD160 6ae43a2f5801dab17216912f976e67371d8e51d2 SHA1 30a2001449ff50b5a47970b76a77500986602211 SHA256 3641c8ef684862b3cc9fd3c3341d25095909a9c2f901d31b7cc9394210cb50e8
 DIST zaptel-1.2.12.tar.gz 1487021 RMD160 4cbf2627a8bbbad65ec43578c1c89e79f1682bdb SHA1 733dcc3f90a7485808ff2e76832d6e78dca5728c SHA256 ab1e87645ceaae9269493f4e448596045732389197a9bb8c21bd5be88533e48f
+DIST zaptel-1.2.16.tar.gz 3047775 RMD160 dba8d97334aa7668166b33ef64498d2e3a27b6ad SHA1 b39e23012127ddad586335c0163850ce828c6370 SHA256 efe0a3ecc36cf8c8cd8dc2e017c71fa9d2c32ee7bdae60818f9ba64b9c11924c
 DIST zaptel-1.2.9.1.tar.gz 1255412 RMD160 caf2ad931e2ae439500805a6ca4376dc8083de5a SHA1 6145301bb47107c0910a098e26b4ca5cdb2377ab SHA256 7def44c259352397af2ad80f3c0eb103ff640ffbc7c95f37c3802fee75c10ede
 EBUILD zaptel-1.0.10-r2.ebuild 7200 RMD160 b2c3dc3d5a3df8926e9fafd7051a831ca64c3ec1 SHA1 48e6fa1749f31e9054ff3baf00568debccd436f5 SHA256 3f387be5cb5604e11953f6cfef79e3544357774616396c1325b8e407f3cfea94
 MD5 c7680ee19e6e9fb426a1fff90fa32829 zaptel-1.0.10-r2.ebuild 7200
@@ -98,14 +104,18 @@ EBUILD zaptel-1.2.12.ebuild 9018 RMD160 98db97e401944feff969a6bdd884fe21cb53b0c6
 MD5 49c53ac3b0bf4842511db0ef2becdc88 zaptel-1.2.12.ebuild 9018
 RMD160 98db97e401944feff969a6bdd884fe21cb53b0c6 zaptel-1.2.12.ebuild 9018
 SHA256 350fab1289b413a6714a4965a3caefdd1c457f2b362d9f1537729f1a424de0a2 zaptel-1.2.12.ebuild 9018
+EBUILD zaptel-1.2.16.ebuild 9123 RMD160 2c17a64128d9342b468015cbb910bf49adbc6c37 SHA1 790d97d17e4b2c5a34b30157a18b09a93e7059a4 SHA256 655b558d0720b5b73a83efa7fe1c07fca888939c6afca06e8783d52308bd5019
+MD5 1937db85dc7851ff2044ef9904ce9470 zaptel-1.2.16.ebuild 9123
+RMD160 2c17a64128d9342b468015cbb910bf49adbc6c37 zaptel-1.2.16.ebuild 9123
+SHA256 655b558d0720b5b73a83efa7fe1c07fca888939c6afca06e8783d52308bd5019 zaptel-1.2.16.ebuild 9123
 EBUILD zaptel-1.2.9.1-r1.ebuild 8577 RMD160 b487dfe2f52b91b5cd5a75667a2c702bb65397c5 SHA1 b304a51b4e762ca281a54ddac822f3e2deabc4b7 SHA256 36b1e47f352425665c6ed1c77ba9a53374b5bb04e8aaabd8b9483b4c377df8bd
 MD5 3137e2eae66b020b7ac2d239b8d4008b zaptel-1.2.9.1-r1.ebuild 8577
 RMD160 b487dfe2f52b91b5cd5a75667a2c702bb65397c5 zaptel-1.2.9.1-r1.ebuild 8577
 SHA256 36b1e47f352425665c6ed1c77ba9a53374b5bb04e8aaabd8b9483b4c377df8bd zaptel-1.2.9.1-r1.ebuild 8577
-MISC ChangeLog 18019 RMD160 87e159af1be472330a28287d8bbb64d2b4f3d239 SHA1 ebf1177b0ef6432e05d5182f8d490c9dc898b268 SHA256 181dd3b8c34933e835434f62bfba374730ddb17177d109476838d3dfb7b14026
-MD5 66aa86310071ac767b136b5fb7961fbd ChangeLog 18019
-RMD160 87e159af1be472330a28287d8bbb64d2b4f3d239 ChangeLog 18019
-SHA256 181dd3b8c34933e835434f62bfba374730ddb17177d109476838d3dfb7b14026 ChangeLog 18019
+MISC ChangeLog 18203 RMD160 319a8234542fdc97c1a17a373163d6411bc46784 SHA1 1bd8221ed29e485251bf85eeb511a6363136110d SHA256 6463246d0e1f1890dfff32818ba93490b59b0f065f0755a273f04009a779ffff
+MD5 18d32532758d9d4608476d1dbe811f6d ChangeLog 18203
+RMD160 319a8234542fdc97c1a17a373163d6411bc46784 ChangeLog 18203
+SHA256 6463246d0e1f1890dfff32818ba93490b59b0f065f0755a273f04009a779ffff ChangeLog 18203
 MISC metadata.xml 382 RMD160 315172442a4bfaa87b855d4c421b22a2527e97b2 SHA1 7b95f41def10946742929592db1d76b7e3bb0a19 SHA256 f79d5cd273e9ecc2181e60ea226a7cb0128011d877fc7531b2df30bd5fd9ae20
 MD5 f3d5d5b8a638e7a9a83fe0eb0d94282c metadata.xml 382
 RMD160 315172442a4bfaa87b855d4c421b22a2527e97b2 metadata.xml 382
@@ -122,13 +132,16 @@ SHA256 65df7b2070133e6588ce57412a539fc6dbf9e0ad58207ae7f2434c8fc2af46b8 files/di
 MD5 50a26754b0e2aaf6c64e65f389164e86 files/digest-zaptel-1.2.12-r1 795
 RMD160 232323602018067046f8699c1d87ffcb3b33af60 files/digest-zaptel-1.2.12-r1 795
 SHA256 54460d35717d16cc7f701365a8e3b927ebb1f5ec41bf1588ab30e87e29e7e6c1 files/digest-zaptel-1.2.12-r1 795
+MD5 994eff5def5e98df0bd5dbf64ad76562 files/digest-zaptel-1.2.16 801
+RMD160 c17584aa71e918d88f8d3601b0ee531b9672d9bc files/digest-zaptel-1.2.16 801
+SHA256 19ce993b416dedfb32e4bc7b3fb6658ebec4143b3a4da280dddd5915b841baeb files/digest-zaptel-1.2.16 801
 MD5 4f0bce568656b2bd56047db290089c5e files/digest-zaptel-1.2.9.1-r1 658
 RMD160 fed5eacf2bbc84ace2c5fdd4a4375d04312a761f files/digest-zaptel-1.2.9.1-r1 658
 SHA256 9322dafee7f351be55a54eec5d617e1ee98b3a32aa5cb25546bd9631ac34487f files/digest-zaptel-1.2.9.1-r1 658
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.6 (GNU/Linux)
+Version: GnuPG v1.4.6-ecc01.6 (GNU/Linux)
 
-iD8DBQFF9wIANQqtfCuFneMRAsGvAJ0anltxJLidk92qVJ3IPXcthsZ+1QCfYHDU
-50EADKJX6/Ah5qOX4gzC+Nc=
-=ktV6
+iD8DBQFGJ67TKRy60XGEcJIRApNHAKCIJHZB25BCAy+M8skUXZe1LLh/lgCfZ2Xq
+YPwaaGsXisonI8WxLDodDqg=
+=Mz8O
 -----END PGP SIGNATURE-----
diff --git a/net-misc/zaptel/files/digest-zaptel-1.2.16 b/net-misc/zaptel/files/digest-zaptel-1.2.16
new file mode 100644 (file)
index 0000000..40cbd09
--- /dev/null
@@ -0,0 +1,9 @@
+MD5 a9ef013ab1a574074820edc9bb1a96e9 bristuff-0.3.0-PRE-1y-d.tar.gz 286165
+RMD160 7424e3f6876ff1e9415c11d3c8ed70014c5a0f4f bristuff-0.3.0-PRE-1y-d.tar.gz 286165
+SHA256 99688819bce753910b154ad0866d77f861e25842a1e810d0baf80a0a02cfef25 bristuff-0.3.0-PRE-1y-d.tar.gz 286165
+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 2fb725dc960b8a635aaa7a0043460526 zaptel-1.2.16.tar.gz 3047775
+RMD160 dba8d97334aa7668166b33ef64498d2e3a27b6ad zaptel-1.2.16.tar.gz 3047775
+SHA256 efe0a3ecc36cf8c8cd8dc2e017c71fa9d2c32ee7bdae60818f9ba64b9c11924c zaptel-1.2.16.tar.gz 3047775
diff --git a/net-misc/zaptel/files/zaptel-1.2.16-gentoo.diff b/net-misc/zaptel/files/zaptel-1.2.16-gentoo.diff
new file mode 100644 (file)
index 0000000..6b60d8e
--- /dev/null
@@ -0,0 +1,105 @@
+diff -Nura zaptel-1.2.16/build_tools/genmodconf zaptel-1.2.16.gentoo/build_tools/genmodconf
+--- zaptel-1.2.16/build_tools/genmodconf       2007-01-31 11:06:34.000000000 -0300
++++ zaptel-1.2.16.gentoo/build_tools/genmodconf        2007-04-19 12:21:11.955803761 -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 [ -z "${combined}" ]; then
+     echo "***"
+     echo "*** WARNING:"
+diff -Nura zaptel-1.2.16/build_tools/genudevrules zaptel-1.2.16.gentoo/build_tools/genudevrules
+--- zaptel-1.2.16/build_tools/genudevrules     2007-01-31 14:27:30.000000000 -0300
++++ zaptel-1.2.16.gentoo/build_tools/genudevrules      2007-04-19 12:28:20.390284221 -0300
+@@ -22,10 +22,10 @@
+ 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}"zaptranscode", NAME="zap/transcode", 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}"zaptranscode", NAME="zap/transcode", 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.16/Makefile zaptel-1.2.16.gentoo/Makefile
+--- zaptel-1.2.16/Makefile     2007-03-07 16:14:30.000000000 -0300
++++ zaptel-1.2.16.gentoo/Makefile      2007-04-19 12:39:39.943874878 -0300
+@@ -93,7 +93,7 @@
+ INSTALL_PREFIX:=$(DESTDIR)
+-CFLAGS+=-I. -O4 -g -Wall
++CFLAGS+=-I. -Iinclude -g -Wall
+ 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)
+@@ -331,7 +331,8 @@
+ else # DYNFS
+   ifdef UDEVRULES
+       install -d $(INSTALL_PREFIX)/etc/udev/rules.d
+-      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
+@@ -346,7 +347,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; \
+@@ -370,24 +371,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 /sbin/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 ztdummy zttranscode wctc4xxp ztdynamic xpp_usb,$(MODULES)) $(MODULE_ALIASES)"
+-      @if [ -d /etc/modutils ]; then \
+-              /sbin/update-modules ; \
+-      fi
+ install-udev: devices
diff --git a/net-misc/zaptel/zaptel-1.2.16.ebuild b/net-misc/zaptel/zaptel-1.2.16.ebuild
new file mode 100644 (file)
index 0000000..29a1cb3
--- /dev/null
@@ -0,0 +1,373 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/zaptel/zaptel-1.2.16.ebuild,v 1.1 2007/04/19 18:02:46 gustavoz Exp $
+
+inherit toolchain-funcs eutils linux-mod
+
+BRI_VERSION="0.3.0-PRE-1y-d"
+FLORZ_VERSION="0.3.0-PRE-1o_florz-12"
+
+IUSE="bri ecmark ecmark2 ecmark3 ecaggressive eckb1 ecmg2 ecsteve ecsteve2 florz
+rtc 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"
+
+RDEPEND="virtual/libc
+       dev-libs/libusb
+       >=dev-libs/newt-0.50.0"
+
+DEPEND="${RDEPEND} virtual/linux-sources"
+
+# 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 kernel_is 2 4 ; then
+               if ! linux_chkconfig_present CRC32; then
+                       echo
+                       eerror "Your kernel lacks CRC32 support!"
+                       eerror "Enable CONFIG_CRC32!"
+                       result=$((result+1))
+               fi
+       else
+               if ! linux_chkconfig_present CRC_CCITT; then
+                       echo
+                       eerror "Your kernel lacks CRC_CCIT support!"
+                       eerror "Enable CONFIG_CRC_CCIT!"
+                       result=$((result+1))
+               fi
+               if ! linux_chkconfig_present FW_LOADER; then
+                       echo
+                       eerror "Your kernel lacks FW_LOADER support!"
+                       eerror "Enable CONFIG_FW_LOADER!"
+                       result=$((result+1))
+               fi
+       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-ar.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() {
+       # Create firmware directory
+       mkdir -p ${D}/lib/firmware/
+
+       kernel_is 2 4 && cp /etc/modules.conf ${D}/etc
+       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
+}