summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkpfleming <kpfleming@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2005-12-17 02:04:30 +0000
committerkpfleming <kpfleming@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2005-12-17 02:04:30 +0000
commit51be44f5b34ffe5032414266787aca1aa8213316 (patch)
tree55ab2c637dfc5ed17fbd0b48c512de387b2041e0
parent5c705fd2ffc223e3557a4e959b3db941422b3017 (diff)
Merged revisions 865 via svnmerge from
https://origsvn.digium.com/svn/zaptel/branches/1.2 ........ r865 | kpfleming | 2005-12-16 20:04:05 -0600 (Fri, 16 Dec 2005) | 3 lines add version and echo canceller selection reporting when zaptel module is loaded make 'update' target work like the Asterisk one and report conflicts ........ git-svn-id: http://svn.digium.com/svn/zaptel/trunk@866 5390a7c7-147a-4af0-8ec9-7488f05a26cb
-rw-r--r--Makefile46
-rwxr-xr-xbuild_tools/make_svn_branch_name50
-rwxr-xr-xbuild_tools/make_version_h9
-rw-r--r--zaptel.c6
-rw-r--r--zaptel.h13
5 files changed, 119 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index b6c05df..e1d25a4 100644
--- a/Makefile
+++ b/Makefile
@@ -95,6 +95,21 @@ ifndef CHKCONFIG
CHKCONFIG:=:
endif
+ifneq ($(wildcard .version),)
+ ZAPTELVERSION:=$(shell cat .version)
+endif
+
+# CVS mirrors of SVN have .svnrevision files showing
+# which SVN revision they are based on, and .svnbranch
+# showing the branch they are made from
+ifneq ($(wildcard .svnrevision),)
+ ZAPTELVERSION:=SVN-$(shell cat .svnbranch)-r$(shell cat .svnrevision)
+else
+ ifneq ($(wildcard .svn),)
+ ZAPTELVERSION=SVN-$(shell build_tools/make_svn_branch_name)
+ endif
+endif
+
TZOBJS:=zonedata.lo tonezone.lo
LIBTONEZONE_SO:=libtonezone.so
LIBTONEZONE_SO_MAJOR_VER:=1
@@ -137,13 +152,20 @@ obj-m := $(MODULESO)
MOD_DESTDIR:=zaptel
+version.h: FORCE
+ ZAPTELVERSION="${ZAPTELVERSION}" build_tools/make_version_h > $@.tmp
+ if cmp -s $@.tmp $@ ; then echo; else \
+ mv $@.tmp $@ ; \
+ fi
+ rm -f $@.tmp
+
devel: tor2ee
tests: patgen pattest patlooptest hdlcstress hdlctest hdlcgen hdlcverify timertest
tor2.o: tor2-hw.h tor2fw.h zaptel.h
-zaptel.o: zaptel.h digits.h arith.h sec.h mec.h sec-2.h mec2.h mec3.h zconfig.h
+zaptel.o: zaptel.h digits.h arith.h sec.h mec.h sec-2.h mec2.h mec3.h zconfig.h version.h
torisa.o: zaptel.h torisa.h
@@ -206,7 +228,7 @@ gendigits: gendigits.o
zaptel.c: tones.h
-prereq: tones.h tor2fw.h radfw.h
+prereq: tones.h tor2fw.h radfw.h version.h
zttool.o: zttool.c zaptel.h
@@ -400,12 +422,24 @@ config:
update:
@if [ -d .svn ]; then \
echo "Updating from Subversion..." ; \
- svn update -q; \
+ svn update | tee update.out; \
+ rm -f .version; \
+ if [ `grep -c ^C update.out` -gt 0 ]; then \
+ echo ; echo "The following files have conflicts:" ; \
+ grep ^C update.out | cut -b4- ; \
+ fi ; \
+ rm -f update.out; \
elif [ -d CVS ]; then \
echo "Updating from CVS..." ; \
- cvs -q -z3 update -Pd; \
+ cvs -q -z3 update -Pd | tee update.out; \
+ rm -f .version; \
+ if [ `grep -c ^C update.out` -gt 0 ]; then \
+ echo ; echo "The following files have conflicts:" ; \
+ grep ^C update.out | cut -d' ' -f2- ; \
+ fi ; \
+ rm -f update.out; \
else \
- echo "Not under version control"; \
+ echo "Not under version control"; \
fi
clean:
@@ -421,3 +455,5 @@ clean:
rm -f fxotune
rm -f core
rm -f ztcfg-shared fxstest
+
+FORCE:
diff --git a/build_tools/make_svn_branch_name b/build_tools/make_svn_branch_name
new file mode 100755
index 0000000..1fe7507
--- /dev/null
+++ b/build_tools/make_svn_branch_name
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+PARTS=`LANG=C svn info | grep URL | awk '{print $2;}' | sed -e s:^.*/svn/zaptel/:: | sed -e 's:/: :g'`
+BRANCH=0
+TEAM=0
+
+REV=`svnversion -c . | cut -d: -f2`
+
+if [ "${PARTS}" = "trunk" ]
+then
+ echo 'trunk'-r${REV}
+ exit 0
+fi
+
+for PART in $PARTS
+do
+ if [ ${BRANCH} != 0 ]
+ then
+ RESULT="${RESULT}-${PART}"
+ break
+ fi
+
+ if [ ${TEAM} != 0 ]
+ then
+ RESULT="${RESULT}-${PART}"
+ continue
+ fi
+
+ if [ "${PART}" = "branches" ]
+ then
+ BRANCH=1
+ RESULT="branch"
+ continue
+ fi
+
+ if [ "${PART}" = "tags" ]
+ then
+ BRANCH=1
+ RESULT="tag"
+ continue
+ fi
+
+ if [ "${PART}" = "team" ]
+ then
+ TEAM=1
+ continue
+ fi
+done
+
+echo ${RESULT##-}-r${REV}
diff --git a/build_tools/make_version_h b/build_tools/make_version_h
new file mode 100755
index 0000000..01d9c31
--- /dev/null
+++ b/build_tools/make_version_h
@@ -0,0 +1,9 @@
+#!/bin/sh
+cat << END
+/*
+ * version.h
+ * Automatically generated
+ */
+#define ZAPTEL_VERSION "${ZAPTELVERSION}"
+
+END
diff --git a/zaptel.c b/zaptel.c
index 4d23dae..4cc996d 100644
--- a/zaptel.c
+++ b/zaptel.c
@@ -38,6 +38,7 @@
#include "zconfig.h"
+#include "version.h"
#include <linux/kernel.h>
#include <linux/errno.h>
@@ -6422,6 +6423,9 @@ MODULE_DESCRIPTION("Zapata Telephony Interface");
#ifdef MODULE_LICENSE
MODULE_LICENSE("GPL");
#endif
+#ifdef MODULE_VERSION
+MODULE_VERSION(ZAPTEL_VERSION);
+#endif
#ifdef LINUX26
module_param(debug, int, 0600);
@@ -6540,6 +6544,8 @@ static int __init zt_init(void) {
#endif /* CONFIG_DEVFS_FS */
printk(KERN_INFO "Zapata Telephony Interface Registered on major %d\n", ZT_MAJOR);
+ printk(KERN_INFO "Zaptel Version: %s Echo Canceller: %s\n", ZAPTEL_VERSION,
+ ZAPTEL_ECHO_CANCELLER ZAPTEL_ECHO_AGGRESSIVE);
zt_conv_init();
tone_zone_init();
fasthdlc_precalc();
diff --git a/zaptel.h b/zaptel.h
index 612637c..471a9a8 100644
--- a/zaptel.h
+++ b/zaptel.h
@@ -151,21 +151,34 @@
#define RING_DEBOUNCE_TIME 2000 /* 2000 ms ring debounce time */
+#ifdef AGGRESSIVE_SUPPRESSOR
+#define ZAPTEL_ECHO_AGGRESSIVE " (aggressive)"
+#else
+#define ZAPTEL_ECHO_AGGRESSIVE
+#endif
+
#ifdef __KERNEL__
/* Echo cancellation */
#if defined(ECHO_CAN_STEVE)
+#define ZAPTEL_ECHO_CANCELLER "STEVE"
#include "sec.h"
#elif defined(ECHO_CAN_STEVE2)
+#define ZAPTEL_ECHO_CANCELLER "STEVE2"
#include "sec-2.h"
#elif defined(ECHO_CAN_MARK)
+#define ZAPTEL_ECHO_CANCELLER "MARK"
#include "mec.h"
#elif defined(ECHO_CAN_MARK2)
+#define ZAPTEL_ECHO_CANCELLER "MARK2"
#include "mec2.h"
#elif defined(ECHO_CAN_KB1)
+#define ZAPTEL_ECHO_CANCELLER "KB1"
#include "kb1ec.h"
#elif defined(ECHO_CAN_MG2)
+#define ZAPTEL_ECHO_CANCELLER "MG2"
#include "mg2ec.h"
#else
+#define ZAPTEL_ECHO_CANCELLER "MARK3"
#include "mec3.h"
#endif
#endif