diff options
-rw-r--r-- | main/asterisk/103-rundir.patch | 11 | ||||
-rw-r--r-- | main/asterisk/201-incomplete.patch | 121 | ||||
-rw-r--r-- | main/asterisk/301-libpri-autoconf.patch | 21 | ||||
-rw-r--r-- | main/asterisk/400-bug-227.patch (renamed from testing/asterisk/400-bug-227.patch) | 0 | ||||
-rw-r--r-- | main/asterisk/400-destroy-no-response-234131.patch | 39 | ||||
-rw-r--r-- | main/asterisk/APKBUILD | 38 | ||||
-rw-r--r-- | testing/asterisk/100-uclibc-daemon.patch | 44 | ||||
-rw-r--r-- | testing/asterisk/101-caps-uclibc.patch | 17 | ||||
-rw-r--r-- | testing/asterisk/102-gsm-pic.patch | 54 | ||||
-rw-r--r-- | testing/asterisk/APKBUILD | 114 | ||||
-rw-r--r-- | testing/asterisk/asterisk.confd | 91 | ||||
-rw-r--r-- | testing/asterisk/asterisk.initd | 251 | ||||
-rw-r--r-- | testing/asterisk/asterisk.logrotate | 17 | ||||
-rw-r--r-- | testing/asterisk/asterisk.post-install | 11 | ||||
-rw-r--r-- | testing/asterisk/asterisk.pre-install | 12 | ||||
-rw-r--r-- | testing/asterisk/asterisk.pre-upgrade | 12 |
16 files changed, 24 insertions, 829 deletions
diff --git a/main/asterisk/103-rundir.patch b/main/asterisk/103-rundir.patch deleted file mode 100644 index 367dc7163f..0000000000 --- a/main/asterisk/103-rundir.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- asterisk-1.4.0/Makefile.orig 2006-12-24 03:07:19.000000000 +0000 -+++ asterisk-1.4.0/Makefile 2006-12-24 03:07:57.000000000 +0000 -@@ -109,7 +109,7 @@ - ASTSBINDIR=$(sbindir) - ASTSPOOLDIR=$(localstatedir)/spool/asterisk - ASTLOGDIR=$(localstatedir)/log/asterisk -- ASTVARRUNDIR=$(localstatedir)/run -+ ASTVARRUNDIR=$(localstatedir)/run/asterisk - ASTMANDIR=$(mandir) - ifeq ($(OSARCH),FreeBSD) - ASTVARLIBDIR=$(prefix)/share/asterisk diff --git a/main/asterisk/201-incomplete.patch b/main/asterisk/201-incomplete.patch deleted file mode 100644 index 2566134f38..0000000000 --- a/main/asterisk/201-incomplete.patch +++ /dev/null @@ -1,121 +0,0 @@ -Index: include/asterisk/pbx.h -=================================================================== ---- a/include/asterisk/pbx.h (revision 112598) -+++ b/include/asterisk/pbx.h (working copy) -@@ -42,6 +42,7 @@ - - /*! \brief Special return values from applications to the PBX { */ - #define AST_PBX_ERROR 1 /*!< Jump to the 'e' exten */ -+#define AST_PBX_INCOMPLETE 12 /*!< Return to PBX matching, allowing more digits for the extension */ - /*! } */ - - #define PRIORITY_HINT -1 /*!< Special Priority for a hint */ -Index: main/pbx.c -=================================================================== ---- a/main/pbx.c (revision 112598) -+++ b/main/pbx.c (working copy) -@@ -302,6 +302,7 @@ - static int pbx_builtin_background(struct ast_channel *, void *); - static int pbx_builtin_wait(struct ast_channel *, void *); - static int pbx_builtin_waitexten(struct ast_channel *, void *); -+static int pbx_builtin_incomplete(struct ast_channel *, void *); - static int pbx_builtin_resetcdr(struct ast_channel *, void *); - static int pbx_builtin_setamaflags(struct ast_channel *, void *); - static int pbx_builtin_ringing(struct ast_channel *, void *); -@@ -579,6 +580,16 @@ - "value.\n" - }, - -+ { "Incomplete", pbx_builtin_incomplete, -+ "returns AST_PBX_INCOMPLETE value", -+ " Incomplete([n]): Signals the PBX routines that the previous matched extension\n" -+ "is incomplete and that further input should be allowed before matching can\n" -+ "be considered to be complete. Can be used within a pattern match when\n" -+ "certain criteria warrants a longer match.\n" -+ " If the 'n' option is specified, then Incomplete will not attempt to answer\n" -+ "the channel first. Note that most channel types need to be in Answer state\n" -+ "in order to receive DTMF.\n" -+ }, - { "NoOp", pbx_builtin_noop, - "Do Nothing (No Operation)", - " NoOp(): This application does nothing. However, it is useful for debugging\n" -@@ -3539,6 +3551,8 @@ - char dst_exten[256]; /* buffer to accumulate digits */ - int pos = 0; /* XXX should check bounds */ - int digit = 0; -+ int invalid = 0; -+ int timeout = 0; - - /* loop on priorities in this context/exten */ - while ( !(res = ast_spawn_extension(c, c->context, c->exten, c->priority, c->cid.cid_num, &found,1))) { -@@ -3574,6 +3588,18 @@ - pos = 0; - dst_exten[pos++] = digit = res; - dst_exten[pos] = '\0'; -+ } else if (res == AST_PBX_INCOMPLETE) { -+ ast_debug(1, "Spawn extension (%s,%s,%d) exited INCOMPLETE on '%s'\n", c->context, c->exten, c->priority, c->name); -+ ast_verb(2, "Spawn extension (%s, %s, %d) exited INCOMPLETE on '%s'\n", c->context, c->exten, c->priority, c->name); -+ -+ /* Don't cycle on incomplete - this will happen if the only extension that matches is our "incomplete" extension */ -+ if (!ast_matchmore_extension(c, c->context, c->exten, c->priority, c->cid.cid_num)) { -+ invalid = 1; -+ } else { -+ ast_copy_string(dst_exten, c->exten, sizeof(dst_exten)); -+ digit = 1; -+ pos = strlen(dst_exten); -+ } - } else { - ast_debug(1, "Spawn extension (%s,%s,%d) exited non-zero on '%s'\n", c->context, c->exten, c->priority, c->name); - ast_verb(2, "Spawn extension (%s, %s, %d) exited non-zero on '%s'\n", c->context, c->exten, c->priority, c->name); -@@ -3610,7 +3636,7 @@ - * hangup. We have options, here. We can either catch the failure - * and continue, or we can drop out entirely. */ - -- if (!ast_exists_extension(c, c->context, c->exten, 1, c->cid.cid_num)) { -+ if (invalid || !ast_exists_extension(c, c->context, c->exten, 1, c->cid.cid_num)) { - /*!\note - * If there is no match at priority 1, it is not a valid extension anymore. - * Try to continue at "i" (for invalid) or "e" (for exception) or exit if -@@ -3654,11 +3680,13 @@ - - if (collect_digits(c, waittime, dst_exten, sizeof(dst_exten), pos)) - break; -- if (ast_exists_extension(c, c->context, dst_exten, 1, c->cid.cid_num)) /* Prepare the next cycle */ -+ if (res == AST_PBX_INCOMPLETE && ast_strlen_zero(&dst_exten[pos])) -+ timeout = 1; -+ if (!timeout && ast_exists_extension(c, c->context, dst_exten, 1, c->cid.cid_num)) /* Prepare the next cycle */ - set_ext_pri(c, dst_exten, 1); - else { - /* No such extension */ -- if (!ast_strlen_zero(dst_exten)) { -+ if (!timeout && !ast_strlen_zero(dst_exten)) { - /* An invalid extension */ - if (ast_exists_extension(c, c->context, "i", 1, c->cid.cid_num)) { - ast_verb(3, "Invalid extension '%s' in context '%s' on %s\n", dst_exten, c->context, c->name); -@@ -7315,6 +7343,26 @@ - return AST_PBX_KEEPALIVE; - } - -+static int pbx_builtin_incomplete(struct ast_channel *chan, void *data) -+{ -+ char *options = data; -+ int answer = 1; -+ -+ /* Some channels can receive DTMF in unanswered state; some cannot */ -+ if (!ast_strlen_zero(options) && strchr(options, 'n')) { -+ answer = 0; -+ } -+ -+ /* If the channel is hungup, stop waiting */ -+ if (ast_check_hangup(chan)) { -+ return -1; -+ } else if (chan->_state != AST_STATE_UP && answer) { -+ __ast_answer(chan, 0, 1); -+ } -+ -+ return AST_PBX_INCOMPLETE; -+} -+ - AST_APP_OPTIONS(resetcdr_opts, { - AST_APP_OPTION('w', AST_CDR_FLAG_POSTED), - AST_APP_OPTION('a', AST_CDR_FLAG_LOCKED), diff --git a/main/asterisk/301-libpri-autoconf.patch b/main/asterisk/301-libpri-autoconf.patch deleted file mode 100644 index 0893b0323a..0000000000 --- a/main/asterisk/301-libpri-autoconf.patch +++ /dev/null @@ -1,21 +0,0 @@ -Index: configure.ac -=================================================================== ---- a/configure.ac.orig Fri Nov 27 22:58:39 2009 -+++ b/configure.ac Sat Nov 28 00:14:40 2009 -@@ -261,11 +261,11 @@ - AST_EXT_LIB_SETUP([POPT], [popt], [popt]) - AST_EXT_LIB_SETUP([PORTAUDIO], [PortAudio], [portaudio]) - AST_EXT_LIB_SETUP([PRI], [ISDN PRI], [pri]) --AST_EXT_LIB_SETUP_DEPENDENT([PRI_VERSION], [ISDN PRI get_version], [PRI], [pri]) --AST_EXT_LIB_SETUP_DEPENDENT([PRI_INBANDDISCONNECT], [ISDN PRI set_inbanddisconnect], [PRI], [pri]) --AST_EXT_LIB_SETUP_DEPENDENT([PRI_PROG_W_CAUSE], [ISDN progress with cause], [PRI], [pri]) --AST_EXT_LIB_SETUP_DEPENDENT([PRI_SERVICE_MESSAGES], [ISDN service messages], [PRI], [pri]) --AST_EXT_LIB_SETUP_DEPENDENT([PRI_REVERSE_CHARGE], [ISDN reverse charge], [PRI], [pri]) -+#AST_EXT_LIB_SETUP_DEPENDENT([PRI_VERSION], [ISDN PRI get_version], [PRI], [pri]) -+#AST_EXT_LIB_SETUP_DEPENDENT([PRI_INBANDDISCONNECT], [ISDN PRI set_inbanddisconnect], [PRI], [pri]) -+#AST_EXT_LIB_SETUP_DEPENDENT([PRI_PROG_W_CAUSE], [ISDN progress with cause], [PRI], [pri]) -+#AST_EXT_LIB_SETUP_DEPENDENT([PRI_SERVICE_MESSAGES], [ISDN service messages], [PRI], [pri]) -+#AST_EXT_LIB_SETUP_DEPENDENT([PRI_REVERSE_CHARGE], [ISDN reverse charge], [PRI], [pri]) - AST_EXT_LIB_SETUP([RESAMPLE], [LIBRESAMPLE], [resample]) - AST_EXT_LIB_SETUP([SPANDSP], [SPANDSP], [spandsp]) - AST_EXT_LIB_SETUP([SS7], [ISDN SS7], [ss7]) diff --git a/testing/asterisk/400-bug-227.patch b/main/asterisk/400-bug-227.patch index f8187379e1..f8187379e1 100644 --- a/testing/asterisk/400-bug-227.patch +++ b/main/asterisk/400-bug-227.patch diff --git a/main/asterisk/400-destroy-no-response-234131.patch b/main/asterisk/400-destroy-no-response-234131.patch deleted file mode 100644 index 16eef51090..0000000000 --- a/main/asterisk/400-destroy-no-response-234131.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- 1.6.0/channels/chan_sip.c 2009/12/10 16:24:36 234130 -+++ 1.6.0/channels/chan_sip.c 2009/12/10 16:30:22 234131 -@@ -4523,6 +4523,9 @@ - ast_queue_control(p->owner, AST_CONTROL_CONGESTION); - ast_channel_unlock(p->owner); - } -+ -+ /* Give the channel a chance to act before we proceed with destruction */ -+ sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT); - } - sip_pvt_unlock(p); - return 0; -@@ -5186,19 +5189,20 @@ - if (needcancel) { /* Outgoing call, not up */ - if (ast_test_flag(&p->flags[0], SIP_OUTGOING)) { - /* stop retransmitting an INVITE that has not received a response */ -- struct sip_pkt *cur; -- for (cur = p->packets; cur; cur = cur->next) { -- __sip_semi_ack(p, cur->seqno, cur->is_resp, cur->method ? cur->method : find_sip_method(cur->data)); -- } -- - /* if we can't send right now, mark it pending */ - if (p->invitestate == INV_CALLING) { - /* We can't send anything in CALLING state */ - ast_set_flag(&p->flags[0], SIP_PENDINGBYE); -- /* Do we need a timer here if we don't hear from them at all? */ -+ __sip_pretend_ack(p); -+ /* Do we need a timer here if we don't hear from them at all? Yes we do or else we will get hung dialogs and those are no fun. */ - sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT); - append_history(p, "DELAY", "Not sending cancel, waiting for timeout"); - } else { -+ struct sip_pkt *cur; -+ -+ for (cur = p->packets; cur; cur = cur->next) { -+ __sip_semi_ack(p, cur->seqno, cur->is_resp, cur->method ? cur->method : find_sip_method(cur->data)); -+ } - p->invitestate = INV_CANCELLED; - /* Send a new request: CANCEL */ - transmit_request(p, SIP_CANCEL, p->lastinvite, XMIT_RELIABLE, FALSE); diff --git a/main/asterisk/APKBUILD b/main/asterisk/APKBUILD index d76ed9567a..d416e778b0 100644 --- a/main/asterisk/APKBUILD +++ b/main/asterisk/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Timo Teras <timo.teras@iki.fi> # Maintainer: Timo Teras <timo.teras@iki.fi> pkgname=asterisk -pkgver=1.6.0.20 -pkgrel=1 +pkgver=1.6.2.1 +pkgrel=0 pkgdesc="Asterisk: A Module Open Source PBX System" url="http://www.asterisk.org/" license="GPL" @@ -12,21 +12,20 @@ makedepends="autoconf automake libtool ncurses-dev popt-dev newt-dev zlib-dev freetds-dev openssl-dev lua-dev alsa-lib-dev" install="$pkgname.pre-install $pkgname.pre-upgrade $pkgname.post-install" subpackages="$pkgname-dev $pkgname-doc $pkgname-pgsql $pkgname-odbc - $pkgname-tds" + $pkgname-tds $pkgname-sample-config:sample" source="http://downloads.digium.com/pub/asterisk/releases/$pkgname-$pkgver.tar.gz 100-uclibc-daemon.patch 101-caps-uclibc.patch 102-gsm-pic.patch - 103-rundir.patch - 201-incomplete.patch - 301-libpri-autoconf.patch - 400-destroy-no-response-234131.patch + 400-bug-227.patch asterisk.initd asterisk.confd asterisk.logrotate" -build() { - cd "$srcdir/$pkgname-$pkgver" +_builddir="$srcdir/$pkgname-$pkgver" + +prepare() { + cd "$_builddir" for i in ../[1-9]*.patch; do msg "Apply $i" patch -p1 < $i || return 1 @@ -36,6 +35,10 @@ build() { sed -i -e 's/PBX_ICONV=1/PBX_ICONV=0/g' configure.ac ./bootstrap.sh +} + +build() { + cd "$_builddir" ./configure --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ @@ -54,6 +57,10 @@ build() { rm menuselect.makeopts make menuselect.makeopts make -j1 || return 1 +} + +package() { + cd "$_builddir" make -j1 DESTDIR="$pkgdir" install install -d "$pkgdir"/var/run/asterisk @@ -91,14 +98,17 @@ tds() { _find_and_move '*_tds*' } -md5sums="649c905c897824cebcf9bc2cee1f9398 asterisk-1.6.0.20.tar.gz +sample() { + pkgdesc="Sample configuration files for asterisk" + cd "$_builddir" + make samples DESTDIR="$subpkgdir" +} + +md5sums="8fbc60f9d80e686c749ae95292e225d8 asterisk-1.6.2.1.tar.gz b00c9d98ce2ad445501248a197c6e436 100-uclibc-daemon.patch 6e1129e30c4fd2c25c86c81685a485a9 101-caps-uclibc.patch 97b39fd9777a2521d4f9f095482b7ac2 102-gsm-pic.patch -5008f51c737ec91f5047519bc9f25b85 103-rundir.patch -57825b74526187075ff7cb6816c55467 201-incomplete.patch -5771a5ab34b187dbfe8e23950b04213b 301-libpri-autoconf.patch -e35d40d688f6e4e4034c7aca8f955f46 400-destroy-no-response-234131.patch +79e9634b5054bceb3b8dc246654bb243 400-bug-227.patch 0ce3219e05f55af884a7dc6b99c2b276 asterisk.initd ed31d7ba37bcf8b0346dcf8593c395f0 asterisk.confd 3e65172275684373e1a25c8a11224411 asterisk.logrotate" diff --git a/testing/asterisk/100-uclibc-daemon.patch b/testing/asterisk/100-uclibc-daemon.patch deleted file mode 100644 index 4956791d4d..0000000000 --- a/testing/asterisk/100-uclibc-daemon.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff -Nru asterisk-1.6.1-beta4.org/main/asterisk.c asterisk-1.6.1-beta4/main/asterisk.c ---- asterisk-1.6.1-beta4.org/main/asterisk.c 2008-12-12 23:05:58.000000000 +0100 -+++ asterisk-1.6.1-beta4/main/asterisk.c 2008-12-23 15:28:21.000000000 +0100 -@@ -3295,9 +3295,40 @@ - #if HAVE_WORKING_FORK - if (ast_opt_always_fork || !ast_opt_no_fork) { - #ifndef HAVE_SBIN_LAUNCHD -+#ifndef __UCLIBC__ - if (daemon(1, 0) < 0) { - ast_log(LOG_ERROR, "daemon() failed: %s\n", strerror(errno)); - } -+#else -+ /* -+ * workaround for uClibc-0.9.29 mipsel bug: -+ * recursive mutexes do not work if uClibc daemon() function has been called, -+ * if parent thread locks a mutex -+ * the child thread cannot acquire a lock with the same name -+ * (same code works if daemon() is not called) -+ * but duplication of uClibc daemon.c code in here does work. -+ */ -+ int fd; -+ switch (fork()) { -+ case -1: -+ exit(1); -+ case 0: -+ break; -+ default: -+ _exit(0); -+ } -+ if (setsid() == -1) -+ exit(1); -+ if (fork()) -+ _exit(0); -+ if ((fd = open("/dev/null", O_RDWR, 0)) != -1) { -+ dup2(fd, STDIN_FILENO); -+ dup2(fd, STDOUT_FILENO); -+ dup2(fd, STDERR_FILENO); -+ if (fd > 2) -+ close(fd); -+ } -+#endif - ast_mainpid = getpid(); - /* Blindly re-write pid file since we are forking */ - unlink(ast_config_AST_PID); diff --git a/testing/asterisk/101-caps-uclibc.patch b/testing/asterisk/101-caps-uclibc.patch deleted file mode 100644 index bb32d1ece1..0000000000 --- a/testing/asterisk/101-caps-uclibc.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- asterisk-1.6.0.18/configure.ac.orig Mon Oct 26 23:13:28 2009 -+++ asterisk-1.6.0.18/configure.ac Fri Nov 27 21:42:36 2009 -@@ -627,9 +627,11 @@ - - AST_EXT_LIB_CHECK([CURSES], [curses], [initscr], [curses.h]) - --if test "x${OSARCH}" = "xlinux-gnu" ; then -- AST_EXT_LIB_CHECK([CAP], [cap], [cap_from_text], [sys/capability.h]) --fi -+case "${OSARCH}" in -+ linux*) -+ AST_EXT_LIB_CHECK([CAP], [cap], [cap_from_text], [sys/capability.h]) -+ ;; -+esac - - AST_C_DEFINE_CHECK([DAHDI], [DAHDI_CODE], [dahdi/user.h]) - diff --git a/testing/asterisk/102-gsm-pic.patch b/testing/asterisk/102-gsm-pic.patch deleted file mode 100644 index 71370ec0b7..0000000000 --- a/testing/asterisk/102-gsm-pic.patch +++ /dev/null @@ -1,54 +0,0 @@ ---- a/codecs/gsm/Makefile.org 2008-03-29 11:33:09.000000000 +0100 -+++ b/codecs/gsm/Makefile 2008-03-29 11:44:40.000000000 +0100 -@@ -37,23 +37,6 @@ - ######### ppro's, etc, as well as the AMD K6 and K7. The compile will - ######### probably require gcc. - --ifeq (, $(findstring $(OSARCH) , Darwin SunOS )) --ifeq (, $(findstring $(PROC) , x86_64 amd64 ultrasparc sparc64 arm armv5b armeb ppc powerpc ppc64 ia64 s390 bfin mipsel mips)) --ifeq (, $(findstring $(shell uname -m) , ppc ppc64 alpha armv4l s390 )) --OPTIMIZE+=-march=$(PROC) --endif --endif --endif -- --#The problem with sparc is the best stuff is in newer versions of gcc (post 3.0) only. --#This works for even old (2.96) versions of gcc and provides a small boost either way. --#A ultrasparc cpu is really v9 but the stock debian stable 3.0 gcc doesn't support it. --#So we go lowest common available by gcc and go a step down, still a step up from --#the default as we now have a better instruction set to work with. - Belgarath --ifeq ($(PROC),ultrasparc) --OPTIMIZE+=-mcpu=v8 -mtune=$(PROC) -O3 --endif -- - PG = - #PG = -g -pg - ######### Profiling flags. If you don't know what that means, leave it blank. -@@ -208,12 +191,10 @@ - # XXX Keep a space after each findstring argument - # XXX should merge with GSM_OBJECTS - ifeq ($(OSARCH),linux-gnu) --ifeq (,$(findstring $(shell uname -m) , x86_64 amd64 ppc ppc64 alpha armv4l sparc64 parisc s390 )) --ifeq (,$(findstring $(PROC) , arm armv5b armeb powerpc ia64 s390 bfin mipsel mips )) -+ifneq ($(K6OPT),) - GSM_SOURCES+= $(SRC)/k6opt.s - endif - endif --endif - - TOAST_SOURCES = $(SRC)/toast.c \ - $(SRC)/toast_lin.c \ -@@ -260,12 +241,10 @@ - $(SRC)/table.o - - ifeq ($(OSARCH),linux-gnu) --ifeq (,$(findstring $(shell uname -m) , x86_64 amd64 ppc ppc64 alpha armv4l sparc64 parisc )) --ifeq (,$(findstring $(PROC) , arm armv5b armeb powerpc ia64 bfin mipsel mips )) -+ifneq ($(K6OPT),) - GSM_OBJECTS+= $(SRC)/k6opt.o - endif - endif --endif - - TOAST_OBJECTS = $(SRC)/toast.o \ - $(SRC)/toast_lin.o \ diff --git a/testing/asterisk/APKBUILD b/testing/asterisk/APKBUILD deleted file mode 100644 index d416e778b0..0000000000 --- a/testing/asterisk/APKBUILD +++ /dev/null @@ -1,114 +0,0 @@ -# Contributor: Timo Teras <timo.teras@iki.fi> -# Maintainer: Timo Teras <timo.teras@iki.fi> -pkgname=asterisk -pkgver=1.6.2.1 -pkgrel=0 -pkgdesc="Asterisk: A Module Open Source PBX System" -url="http://www.asterisk.org/" -license="GPL" -depends= -makedepends="autoconf automake libtool ncurses-dev popt-dev newt-dev zlib-dev - postgresql-dev unixodbc-dev dahdi-tools-dev libpri-dev tar - freetds-dev openssl-dev lua-dev alsa-lib-dev" -install="$pkgname.pre-install $pkgname.pre-upgrade $pkgname.post-install" -subpackages="$pkgname-dev $pkgname-doc $pkgname-pgsql $pkgname-odbc - $pkgname-tds $pkgname-sample-config:sample" -source="http://downloads.digium.com/pub/asterisk/releases/$pkgname-$pkgver.tar.gz - 100-uclibc-daemon.patch - 101-caps-uclibc.patch - 102-gsm-pic.patch - 400-bug-227.patch - asterisk.initd - asterisk.confd - asterisk.logrotate" - -_builddir="$srcdir/$pkgname-$pkgver" - -prepare() { - cd "$_builddir" - for i in ../[1-9]*.patch; do - msg "Apply $i" - patch -p1 < $i || return 1 - done - - sed -i -e 's:lua5.1/::' pbx/pbx_lua.c - sed -i -e 's/PBX_ICONV=1/PBX_ICONV=0/g' configure.ac - - ./bootstrap.sh -} - -build() { - cd "$_builddir" - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - --libdir=/usr/lib \ - --localstatedir=/var \ - --disable-xmldoc --with-gsm=internal \ - --without-iconv --with-popt --with-z --with-newt \ - --with-odbc --with-postgres --with-tds \ - --with-dahdi --with-pri --with-tonezone \ - --with-asound \ - --without-x11 \ - || return 1 - - # and figure out which modules to build - rm menuselect.makeopts - make menuselect.makeopts - make -j1 || return 1 -} - -package() { - cd "$_builddir" - make -j1 DESTDIR="$pkgdir" install - - install -d "$pkgdir"/var/run/asterisk - install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname - install -m644 -D "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname - install -m644 -D "$srcdir"/$pkgname.logrotate \ - "$pkgdir"/etc/logrotate.d/$pkgname -} - -_find_and_move() { - local pattern="$1" - cd "$pkgdir" || return 1 - find -name "$pattern" -type f | while read f; do - local dest="$subpkgdir/${f%/*}" - mkdir -p "$dest" - mv "$f" "$dest" - done -} - -pgsql() { - depends= - install= - _find_and_move '*_pgsql*' -} - -odbc() { - depends= - install= - _find_and_move '*odbc*' -} - -tds() { - depends= - install= - _find_and_move '*_tds*' -} - -sample() { - pkgdesc="Sample configuration files for asterisk" - cd "$_builddir" - make samples DESTDIR="$subpkgdir" -} - -md5sums="8fbc60f9d80e686c749ae95292e225d8 asterisk-1.6.2.1.tar.gz -b00c9d98ce2ad445501248a197c6e436 100-uclibc-daemon.patch -6e1129e30c4fd2c25c86c81685a485a9 101-caps-uclibc.patch -97b39fd9777a2521d4f9f095482b7ac2 102-gsm-pic.patch -79e9634b5054bceb3b8dc246654bb243 400-bug-227.patch -0ce3219e05f55af884a7dc6b99c2b276 asterisk.initd -ed31d7ba37bcf8b0346dcf8593c395f0 asterisk.confd -3e65172275684373e1a25c8a11224411 asterisk.logrotate" diff --git a/testing/asterisk/asterisk.confd b/testing/asterisk/asterisk.confd deleted file mode 100644 index fe9f138ab7..0000000000 --- a/testing/asterisk/asterisk.confd +++ /dev/null @@ -1,91 +0,0 @@ -# -# Additional options for asterisk -# -# see "asterisk -h" for a list of options -# -ASTERISK_OPTS="" - -# -# User and group to run asterisk as -# -# Value: double-colon separated list of user and group, or empty to run as root: -# -# -# "asterisk:asterisk" to run as user "asterisk" and group "asterisk" -# "asterisk" to run as user "asterisk" and all groups that user "asterisk" is a member of -# ":asterisk" to run as user "root" and group "asterisk" -# "" to run as user "root" and group "root" -# -ASTERISK_USER="asterisk" - -# -# Nicelevel -# -# Set the priority of the asterisk process -# -# Value: (highest) -20..19 (lowest) -# -#ASTERISK_NICE="19" - -# -# Wrapper script -# -# Value: yes or no/empty -# -ASTERISK_WRAPPER="no" - -############# Wrapper script settings ############# - -# -# Send crash notifications emails to this address -# (needs a working mail service and /usr/sbin/sendmail to do so (e.g. ssmtp)) -# -# Value: Email address or empty to disable -# -#ASTERISK_NOTIFY_EMAIL="root" - -# -# Send asterisk's output to this terminal -# -# Value: Full path to device node or a number -# -#ASTERISK_TTY="/dev/tty9" - -# -# Start an asterisk console on the terminal specified by ASTERISK_TTY -# -# Warning! Use only for debugging, this is a potential security issue! -# -# Value: yes or no/empty -# -ASTERISK_CONSOLE="no" - -# -# Maximum size of core files. -# -# Value: Size in bytes, unlimited for no limit or empty to disable. -# -#ASTERISK_CORE_SIZE="unlimited" - -# -# ASTERISK_CORE_DIR -# -# Value: Directory (will be created if non-existant), default is /tmp -# -ASTERISK_CORE_DIR="/var/lib/asterisk/coredump" - -# -# Max number of filedescriptors -# -# Value: Number of descriptors -# -#ASTERISK_MAX_FD="1024" - -# -# Kill these tasks after asterisk crashed (ASTERISK_WRAPPER=yes only!) -# -# Warning! This will kill _ALL_ tasks with the specified names! -# -# Value: Space separated list of names in double quotes (e.g. "mpg123 mad") -# -#ASTERISK_CLEANUP_ON_CRASH="mpg123 asterisk-mpg123 mad" diff --git a/testing/asterisk/asterisk.initd b/testing/asterisk/asterisk.initd deleted file mode 100644 index 284898ae22..0000000000 --- a/testing/asterisk/asterisk.initd +++ /dev/null @@ -1,251 +0,0 @@ -#!/sbin/runscript - -opts="${opts} forcestop reload" - -depend() { - need net - after firewall - use nscd dns zaptel mysql postgresql slapd capi -} - -is_running() { - if [ -z "$(pidof asterisk)" ]; then - return 1 - else - PID="$(cat /var/run/asterisk/asterisk.pid 2>/dev/null)" - for x in $(pidof asterisk); do - if [ "${x}" = "${PID}" ]; then - return 0 - fi - done - fi - - return 1 -} - -asterisk_run_loop() { - local OPTS ARGS MSG NICE="" - local result=0 signal=0 - - # default options - OPTS="-f" # don't fork / detach breaks wrapper script... - - # filter (redundant) arguments - ARGS="$(echo "${@}" | sed -e "s:-c\|-f::g")" - - # mangle yes/no options - ASTERISK_CONSOLE="$(echo ${ASTERISK_CONSOLE} | tr '[:lower:]' '[:upper:]')" - - if [ -n "${ASTERISK_CORE_SIZE}" ] && - [ "${ASTERISK_CORE_SIZE}" != "0" ]; then - ulimit -c ${ASTERISK_CORE_SIZE} - - if [ -n "${ASTERISK_CORE_DIR}" ] && \ - [ ! -d "${ASTERISK_CORE_DIR}" ] - then - mkdir -m750 -p "${ASTERISK_CORE_DIR}" - - if [ -n "${ASTERISK_USER}" ]; then - chown -R "${ASTERISK_USER}" "${ASTERISK_CORE_DIR}" - fi - fi - ASTERISK_CORE_DIR="${ASTERISK_CORE_DIR:-/tmp}" - - cd "${ASTERISK_CORE_DIR}" - echo " Core dump size : ${ASTERISK_CORE_SIZE}" - echo " Core dump location : ${ASTERISK_CORE_DIR}" - fi - - if [ -n "${ASTERISK_MAX_FD}" ]; then - ulimit -n ${ASTERISK_MAX_FD} - echo " Max open filedescriptors : ${ASTERISK_MAX_FD}" - fi - - if [ -n "${ASTERISK_NICE}" ]; then - echo " Nice level : ${ASTERISK_NICE}" - NICE="nice -n ${ASTERISK_NICE} --" - fi - - if [ -n "${ASTERISK_NOTIFY_EMAIL}" ]; then - if [ -x /usr/sbin/sendmail ]; then - echo " Email notifications go to : ${ASTERISK_NOTIFY_EMAIL}" - else - echo " Notifications disabled, /usr/sbin/sendmail doesn't exist or is not executable!" - unset ASTERISK_NOTIFY_EMAIL - fi - fi - - if [ -n "${ASTERISK_TTY}" ]; then - for x in ${ASTERISK_TTY} \ - /dev/tty${ASTERISK_TTY} \ - /dev/vc/${ASTERISK_TTY} - do - if [ -c "${x}" ]; then - TTY="${x}" - fi - done - [ -n "${TTY}" ] && \ - echo " Messages are sent to : ${TTY}" - fi - - if [ "${ASTERISK_CONSOLE}" = "YES" ] && [ -n "${TTY}" ]; then - echo " Starting Asterisk console : ${ASTERISK_CONSOLE}" - OPTS="${OPTS} -c" - fi - - OPTS="${OPTS} ${ARGS}" - - while :; do - - if [ -n "${TTY}" ]; then - /usr/bin/stty -F ${TTY} sane - ${NICE} /usr/sbin/asterisk ${OPTS} >${TTY} 2>&1 <${TTY} - result=$? - else - ${NICE} /usr/sbin/asterisk ${OPTS} &>/dev/null - result=$? - fi - - if [ $result -eq 0 ]; then - echo "Asterisk terminated normally" - break - else - if [ $result -gt 128 ]; then - signal=$((result - 128)) - MSG="Asterisk terminated with Signal: $signal" - - CORE_TARGET="core-$(date "+%Y%m%d-%h%M%s")" - - local CORE_DUMPED=0 - if [ -f "${ASTERISK_CORE_DIR}/core" ]; then - mv "${ASTERISK_CORE_DIR}/core" \ - "${ASTERISK_CORE_DIR}/${CORE_TARGET}" - CORE_DUMPED=1 - - elif [ -f "${ASTERISK_CORE_DIR}/core.${PID}" ]; then - mv "${ASTERISK_CORE_DIR}/core.${PID}" \ - "${ASTERISK_CORE_DIR}/${CORE_TARGET}" - CORE_DUMPED=1 - - fi - - [ $CORE_DUMPED -eq 1 ] && \ - MSG="${MSG}\n\rCore dumped: ${ASTERISK_CORE_DIR}/${CORE_TARGET}" - else - MSG="Asterisk terminated with return code: $result" - fi - - # kill left-over tasks - for X in ${ASTERISK_CLEANUP_ON_CRASH}; do - kill -9 $(pidof ${X}); - done - fi - - [ -n "${TTY}" ] \ - && echo "${MSG}" >${TTY} \ - || echo "${MSG}" - - - if [ -n "${ASTERISK_NOTIFY_EMAIL}" ] && \ - [ -x /usr/sbin/sendmail ]; then - echo -e -n "Subject: Asterisk crashed\n\r${MSG}\n\r" |\ - /usr/sbin/sendmail "${ASTERISK_NOTIFY_EMAIL}" - fi - sleep 5 - echo "Restarting Asterisk..." - done - return 0 -} - -start() { - local OPTS USER GROUP PID - local tmp x - - if [ -n "${ASTERISK_NICE}" ]; then - if [ ${ASTERISK_NICE} -ge -20 ] && \ - [ ${ASTERISK_NICE} -le 19 ]; then - OPTS="--nicelevel ${ASTERISK_NICE}" - else - eerror "Nice value must be between -20 and 19" - return 1 - fi - fi - - if [ -n "${ASTERISK_USER}" ]; then - USER=$(echo $ASTERISK_USER | sed 's/:.*//') - GROUP=$(echo $ASTERISK_USER | awk -F: '/.*:.*/ { print $2 }') - if [ -n "${USER}" ]; then - ASTERISK_OPTS="${ASTERISK_OPTS} -U ${USER}" - fi - if [ -n "${GROUP}" ]; then - ASTERISK_OPTS="${ASTERISK_OPTS} -G ${GROUP}" - GROUP=":${GROUP}" # make it look nice... - fi - ebegin "Starting asterisk PBX (as ${USER}${GROUP})" - else - ebegin "Starting asterisk PBX (as root)" - fi - - if [ "$(echo ${ASTERISK_WRAPPER} | tr '[:upper:]' '[:lower:]')" != "yes" ]; then - start-stop-daemon --start --exec /usr/sbin/asterisk \ - ${OPTS} -- ${ASTERISK_OPTS} - result=$? - else - asterisk_run_loop ${ASTERISK_OPTS} 2>/dev/null & - result=$? - fi - - if [ $result -eq 0 ]; then - # 2 seconds should be enough for asterisk to start - sleep 2 - is_running - result=$? - fi - - eend $result -} - -forcestop() { - ebegin "Stopping asterisk PBX" - start-stop-daemon --stop --pidfile /var/run/asterisk/asterisk.pid - eend $? -} - -stop() { - if ! is_running; then - eerror "Asterisk is not running!" - return 0 - fi - - ebegin "Stopping asterisk PBX now" - /usr/sbin/asterisk -r -x "core stop now" &>/dev/null - # Now we have to wait until asterisk has _really_ stopped. - sleep 1 - if is_running; then - einfon "Waiting for asterisk to shutdown ." - local cnt=0 - while is_running; do - cnt=`expr $cnt + 1` - if [ $cnt -gt 60 ] ; then - # Waited 120 seconds now. Fail. - echo - eend 1 "Failed." - return - fi - sleep 2 - echo -n "." - done - echo - fi - eend 0 -} - -reload() { - if is_running; then - ebegin "Forcing asterisk to reload configuration" - /usr/sbin/asterisk -r -x "modules reload" &>/dev/null - eend $? - else - eerror "Asterisk is not running!" - fi -} diff --git a/testing/asterisk/asterisk.logrotate b/testing/asterisk/asterisk.logrotate deleted file mode 100644 index 30836c5c11..0000000000 --- a/testing/asterisk/asterisk.logrotate +++ /dev/null @@ -1,17 +0,0 @@ -/var/log/asterisk/messages /var/log/asterisk/*log { - missingok - rotate 5 - weekly - create 0640 asterisk asterisk - postrotate - /usr/sbin/asterisk -rx 'logger reload' > /dev/null 2> /dev/null - endscript -} - -/var/log/asterisk/cdr-csv/*csv { - missingok - rotate 5 - monthly - create 0640 asterisk asterisk -} - diff --git a/testing/asterisk/asterisk.post-install b/testing/asterisk/asterisk.post-install deleted file mode 100644 index fd51c7fa5d..0000000000 --- a/testing/asterisk/asterisk.post-install +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh - -chown -R asterisk:asterisk /var/*/asterisk -chown -R asterisk:asterisk /etc/asterisk -chmod -R u=rwX,g=rX,o= /etc/asterisk - -# set IP ToS -# iptables -A OUTPUT -t mangle -p udp -m udp --dport 5060 -j DSCP --set-dscp 0x28 -#iptables -A OUTPUT -t mangle -p udp -m udp --sport 10000:20000 -j DSCP --set-dscp 0x28 -# more info: http://www.voip-info.org/wiki-Asterisk+non-root - diff --git a/testing/asterisk/asterisk.pre-install b/testing/asterisk/asterisk.pre-install deleted file mode 100644 index 09985d7cdb..0000000000 --- a/testing/asterisk/asterisk.pre-install +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -user=asterisk -home=/var/lib/asterisk -adduser -h $home -s /bin/false -D $user 2>/dev/null -mkdir -p $home -chown $user:$user $home - -addgroup dialout 2>/dev/null -addgroup $user dialout 2>/dev/null -exit 0 - diff --git a/testing/asterisk/asterisk.pre-upgrade b/testing/asterisk/asterisk.pre-upgrade deleted file mode 100644 index 09985d7cdb..0000000000 --- a/testing/asterisk/asterisk.pre-upgrade +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -user=asterisk -home=/var/lib/asterisk -adduser -h $home -s /bin/false -D $user 2>/dev/null -mkdir -p $home -chown $user:$user $home - -addgroup dialout 2>/dev/null -addgroup $user dialout 2>/dev/null -exit 0 - |