summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Eversberg2008-10-23 21:26:44 +0200
committerAndreas Eversberg2008-10-23 21:26:44 +0200
commit122a9b232937a3c8dcf791165f6db67c357fd1bf (patch)
tree0a458f2fc3c5bd51acef966f475d7e47f6bfb91a
parentnow chan_lcr.so is moved to asterisk' modules directory when installing. (diff)
downloadlcr-122a9b232937a3c8dcf791165f6db67c357fd1bf.tar.gz
lcr-122a9b232937a3c8dcf791165f6db67c357fd1bf.tar.xz
lcr-122a9b232937a3c8dcf791165f6db67c357fd1bf.zip
added chan_lcr and Makefile.am fixes by Matthias
minor improvements for lcradmin modified: Makefile.am modified: Makefile.in modified: chan_lcr.c modified: configure modified: configure.ac modified: lcradmin.c
-rw-r--r--Makefile.am110
-rw-r--r--Makefile.in158
-rw-r--r--chan_lcr.c29
-rwxr-xr-xconfigure20
-rw-r--r--configure.ac4
-rw-r--r--lcradmin.c5
6 files changed, 178 insertions, 148 deletions
diff --git a/Makefile.am b/Makefile.am
index 8eebb53..844c2d8 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -20,41 +20,58 @@
## the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
## Boston, MA 02110-1301, USA.
-#INSTALLATION_DEFINES = \
-# -DCONFIG_DATA="\"$(pkgsysconfdir)\"" \
-# -DSHARE_DATA="\"$(pkgdatadir)\"" \
-# -DLOG_DIR="\"$(pkglogdir)\"" \
-# -DEXTENSION_DATA="\"$(localstatedir)/lib/lcr\""
+INSTALLdir = $(DESTDIR)/usr/local/lcr
-INSTALLdir = /usr/local/lcr
+pkglogdir=$(localstatedir)/log/@PACKAGE@
+pkgsysconfdir=$(sysconfdir)/@PACKAGE@
+
+#CONFIGdir=$(DESTDIR)$(pkgsysconfdir)
+#SHAREdir=$(DESTDIR)$(pkgdatadir)
+#LOGdir=$(DESTDIR)$(pkglogdir)
+#EXTENSIONdir=$(DESTDIR)$(localstatedir)/lib/lcr
-astmoddir = /usr/lib/asterisk/modules
+CONFIGdir=$(INSTALLdir)
+SHAREdir=$(INSTALLdir)
+LOGdir=$(INSTALLdir)
+EXTENSIONdir=$(INSTALLdir)/extensions
+
+astmoddir = $(DESTDIR)/usr/lib/asterisk/modules
INSTALLATION_DEFINES = \
- -DCONFIG_DATA="\"$(INSTALLdir)\"" \
- -DSHARE_DATA="\"$(INSTALLdir)\"" \
- -DLOG_DIR="\"$(INSTALLdir)\"" \
- -DEXTENSION_DATA="\"$(INSTALLdir)/extensions\""
+ -DCONFIG_DATA="\"$(CONFIGdir)\"" \
+ -DSHARE_DATA="\"$(SHAREdir)\"" \
+ -DLOG_DIR="\"$(LOGdir)\"" \
+ -DEXTENSION_DATA="\"$(EXTENSIONdir)/extensions\""
INCLUDES = $(all_includes) -I/usr/include/mISDNuser $(INSTALLATION_DEFINES)
bin_PROGRAMS = lcradmin gentones genwave
+sbin_PROGRAMS = lcr genrc genextension
+
if ENABLE_ASTERISK_CHANNEL_DRIVER
-sbin_PROGRAMS = lcr genrc genextension chan_lcr.so
-chan_lcr_so_SOURCES =
+noinst_PROGRAMS = chan_lcr.so
+chan_lcr_so_SOURCES =
chan_lcr_so_LDFLAGS = -shared
-chan_lcr_so_LDADD = chan_lcr.o bchannel.o options.o
+chan_lcr_so_LDADD = chan_lcr.po bchannel.po options.po callerid.po
+
+chan_lcr.po: chan_lcr.c chan_lcr.h
+ $(CC) $(INCLUDES) -D_GNU_SOURCE -fPIC -c chan_lcr.c -o chan_lcr.po
-chan_lcr.o: chan_lcr.c chan_lcr.h
- $(CC) $(INCLUDES) -D_GNU_SOURCE -c chan_lcr.c
+bchannel.po: bchannel.c bchannel.h
+ $(CC) $(INCLUDES) -D_GNU_SOURCE -fPIC -c bchannel.c -o bchannel.po
-bchannel.o: bchannel.c bchannel.h
- $(CC) $(INCLUDES) -D_GNU_SOURCE -c bchannel.c
+callerid.po: callerid.c callerid.h
+ $(CC) $(INCLUDES) -D_GNU_SOURCE -fPIC -c callerid.c -o callerid.po
-else
-sbin_PROGRAMS = lcr genrc genextension
+options.po: options.c options.h
+ $(CC) $(INCLUDES) -D_GNU_SOURCE -fPIC -c options.c -o options.po
+
+install-exec-hook:
+ mkdir -p $(astmoddir)
+ $(INSTALL) -d $(astmoddir)
+ $(INSTALL) chan_lcr.so $(astmoddir)
endif
lcr_SOURCES = action.cpp mISDN.cpp tones.c \
@@ -81,43 +98,41 @@ install-data-hook:
@sh -c 'grep -n strncat *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use strncat, use makro instead." ; exit -1 ; fi'
@sh -c 'grep -n sprintf *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use sprintf, use makro instead." ; exit -1 ; fi'
@sh -c 'grep -n snprintf *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use snprintf, use makro instead." ; exit -1 ; fi'
- mkdir -p $(INSTALLdir)
- mkdir -p $(INSTALLdir)/extensions
- @if test -a $(INSTALLdir)/options.conf ; then \
+ mkdir -p $(CONFIGdir)
+ mkdir -p $(SHAREdir)
+ mkdir -p $(LOGdir)
+ mkdir -p $(EXTENSIONdir)
+ @if test -a $(CONFIGdir)/options.conf ; then \
echo "NOTE: options.conf already exists, not changed." ; else \
- cp -v default/options.conf $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/interface.conf ; then \
+ cp -v default/options.conf $(CONFIGdir) ; fi
+ @if test -a $(CONFIGdir)/interface.conf ; then \
echo "NOTE: interface.conf already exists, not changed." ; else \
- cp -v default/interface.conf $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/routing.conf ; then \
+ cp -v default/interface.conf $(CONFIGdir) ; fi
+ @if test -a $(CONFIGdir)/routing.conf ; then \
echo "NOTE: routing.conf already exists, not changed." ; else \
- cp -v default/routing.conf $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/numbering_int.conf ; then \
+ cp -v default/routing.conf $(CONFIGdir) ; fi
+ @if test -a $(CONFIGdir)/numbering_int.conf ; then \
echo "NOTE: numbering_int.conf is obsolete, please use routing." ; fi
- @if test -a $(INSTALLdir)/numbering_ext.conf ; then \
+ @if test -a $(CONFIGdir)/numbering_ext.conf ; then \
echo "NOTE: numbering_ext.conf is obsolete, please use routing." ; fi
- @if test -a $(INSTALLdir)/directory.list ; then \
+ @if test -a $(CONFIGdir)/directory.list ; then \
echo "NOTE: directory.list already exists, not changed." ; else \
- cp -v default/directory.list $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/tones_american ; then \
+ cp -v default/directory.list $(CONFIGdir) ; fi
+ @if test -a $(SHAREdir)/tones_american ; then \
echo "NOTE: american tones already exists, not overwritten." ; else \
- cp -a tones_american $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/tones_german ; then \
+ cp -a tones_american $(SHAREdir) ; fi
+ @if test -a $(SHAREdir)/tones_german ; then \
echo "NOTE: german tones already exists, not overwritten." ; else \
- cp -a tones_german $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/vbox_german ; then \
+ cp -a tones_german $(SHAREdir) ; fi
+ @if test -a $(SHAREdir)/vbox_german ; then \
echo "NOTE: german vbox tones already exists, not overwritten." ; else \
- cp -a vbox_german $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/vbox_english ; then \
+ cp -a vbox_german $(SHAREdir) ; fi
+ @if test -a $(SHAREdir)/vbox_english ; then \
echo "NOTE: english vbox tones already exists, not overwritten." ; else \
- cp -a vbox_english $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/tones_efi ; then \
+ cp -a vbox_english $(SHAREdir) ; fi
+ @if test -a $(SHAREdir)/tones_efi ; then \
echo "NOTE: special efi tones already exists, not overwritten." ; else \
- cp -a tones_efi $(INSTALLdir) ; fi
-if ENABLE_ASTERISK_CHANNEL_DRIVER
- @echo "Moving chan_lcr.so (if it fails, do it manually)"
- mv $(sbindir)/chan_lcr.so $(astmoddir)
-endif
+ cp -a tones_efi $(SHAREdir) ; fi
# test rule, nothing important
#echo:
@@ -129,7 +144,4 @@ endif
COMPILE=$(CXXCOMPILE)
LINK=$(CXXLINK)
-pkglogdir=$(localstatedir)/log/@PACKAGE@
-pkgsysconfdir=$(sysconfdir)/@PACKAGE@
-
diff --git a/Makefile.in b/Makefile.in
index bbe9f66..929550d 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -14,12 +14,6 @@
@SET_MAKE@
-#INSTALLATION_DEFINES = \
-# -DCONFIG_DATA="\"$(pkgsysconfdir)\"" \
-# -DSHARE_DATA="\"$(pkgdatadir)\"" \
-# -DLOG_DIR="\"$(pkglogdir)\"" \
-# -DEXTENSION_DATA="\"$(localstatedir)/lib/lcr\""
-
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
@@ -41,12 +35,8 @@ NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
bin_PROGRAMS = lcradmin$(EXEEXT) gentones$(EXEEXT) genwave$(EXEEXT)
-@ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE@sbin_PROGRAMS = lcr$(EXEEXT) \
-@ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE@ genrc$(EXEEXT) \
-@ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE@ genextension$(EXEEXT)
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@sbin_PROGRAMS = lcr$(EXEEXT) \
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ genrc$(EXEEXT) \
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ genextension$(EXEEXT) \
+sbin_PROGRAMS = lcr$(EXEEXT) genrc$(EXEEXT) genextension$(EXEEXT)
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@noinst_PROGRAMS = \
@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ chan_lcr.so$(EXEEXT)
subdir = .
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
@@ -66,12 +56,12 @@ CONFIG_CLEAN_FILES =
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)"
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
sbinPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
-PROGRAMS = $(bin_PROGRAMS) $(sbin_PROGRAMS)
+PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(sbin_PROGRAMS)
am_chan_lcr_so_OBJECTS =
chan_lcr_so_OBJECTS = $(am_chan_lcr_so_OBJECTS)
@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@chan_lcr_so_DEPENDENCIES = \
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ chan_lcr.o bchannel.o \
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ options.o
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ chan_lcr.po bchannel.po \
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ options.po callerid.po
am_genextension_OBJECTS = genext.$(OBJEXT) options.$(OBJEXT) \
extension.$(OBJEXT)
genextension_OBJECTS = $(am_genextension_OBJECTS)
@@ -215,18 +205,29 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-INSTALLdir = /usr/local/lcr
-astmoddir = /usr/lib/asterisk/modules
+INSTALLdir = $(DESTDIR)/usr/local/lcr
+pkglogdir = $(localstatedir)/log/@PACKAGE@
+pkgsysconfdir = $(sysconfdir)/@PACKAGE@
+
+#CONFIGdir=$(DESTDIR)$(pkgsysconfdir)
+#SHAREdir=$(DESTDIR)$(pkgdatadir)
+#LOGdir=$(DESTDIR)$(pkglogdir)
+#EXTENSIONdir=$(DESTDIR)$(localstatedir)/lib/lcr
+CONFIGdir = $(INSTALLdir)
+SHAREdir = $(INSTALLdir)
+LOGdir = $(INSTALLdir)
+EXTENSIONdir = $(INSTALLdir)/extensions
+astmoddir = $(DESTDIR)/usr/lib/asterisk/modules
INSTALLATION_DEFINES = \
- -DCONFIG_DATA="\"$(INSTALLdir)\"" \
- -DSHARE_DATA="\"$(INSTALLdir)\"" \
- -DLOG_DIR="\"$(INSTALLdir)\"" \
- -DEXTENSION_DATA="\"$(INSTALLdir)/extensions\""
+ -DCONFIG_DATA="\"$(CONFIGdir)\"" \
+ -DSHARE_DATA="\"$(SHAREdir)\"" \
+ -DLOG_DIR="\"$(LOGdir)\"" \
+ -DEXTENSION_DATA="\"$(EXTENSIONdir)/extensions\""
INCLUDES = $(all_includes) -I/usr/include/mISDNuser $(INSTALLATION_DEFINES)
@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@chan_lcr_so_SOURCES =
@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@chan_lcr_so_LDFLAGS = -shared
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@chan_lcr_so_LDADD = chan_lcr.o bchannel.o options.o
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@chan_lcr_so_LDADD = chan_lcr.po bchannel.po options.po callerid.po
lcr_SOURCES = action.cpp mISDN.cpp tones.c \
action_efi.cpp crypt.cpp mail.c trace.c \
action_vbox.cpp dss1.cpp main.c \
@@ -249,8 +250,6 @@ genextension_SOURCES = genext.c options.c extension.c
# This should better be removed and all .c files renamed to .cpp
COMPILE = $(CXXCOMPILE)
LINK = $(CXXLINK)
-pkglogdir = $(localstatedir)/log/@PACKAGE@
-pkgsysconfdir = $(sysconfdir)/@PACKAGE@
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-am
@@ -329,6 +328,9 @@ uninstall-binPROGRAMS:
clean-binPROGRAMS:
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
+
+clean-noinstPROGRAMS:
+ -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS)
install-sbinPROGRAMS: $(sbin_PROGRAMS)
@$(NORMAL_INSTALL)
test -z "$(sbindir)" || $(mkdir_p) "$(DESTDIR)$(sbindir)"
@@ -647,10 +649,11 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
+@ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE@install-exec-hook:
clean: clean-am
-clean-am: clean-binPROGRAMS clean-generic clean-sbinPROGRAMS \
- mostlyclean-am
+clean-am: clean-binPROGRAMS clean-generic clean-noinstPROGRAMS \
+ clean-sbinPROGRAMS mostlyclean-am
distclean: distclean-am
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
@@ -674,6 +677,8 @@ install-data-am:
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
install-exec-am: install-binPROGRAMS install-sbinPROGRAMS
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) install-exec-hook
install-info: install-info-am
@@ -704,26 +709,39 @@ uninstall-am: uninstall-binPROGRAMS uninstall-info-am \
uninstall-sbinPROGRAMS
.PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \
- clean-binPROGRAMS clean-generic clean-sbinPROGRAMS ctags dist \
- dist-all dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip \
- distcheck distclean distclean-compile distclean-generic \
- distclean-hdr distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-binPROGRAMS install-data \
- install-data-am install-data-hook install-exec install-exec-am \
- install-info install-info-am install-man install-sbinPROGRAMS \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-binPROGRAMS \
- uninstall-info-am uninstall-sbinPROGRAMS
-
-
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@chan_lcr.o: chan_lcr.c chan_lcr.h
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ $(CC) $(INCLUDES) -D_GNU_SOURCE -c chan_lcr.c
-
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@bchannel.o: bchannel.c bchannel.h
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ $(CC) $(INCLUDES) -D_GNU_SOURCE -c bchannel.c
+ clean-binPROGRAMS clean-generic clean-noinstPROGRAMS \
+ clean-sbinPROGRAMS ctags dist dist-all dist-bzip2 dist-gzip \
+ dist-shar dist-tarZ dist-zip distcheck distclean \
+ distclean-compile distclean-generic distclean-hdr \
+ distclean-tags distcleancheck distdir distuninstallcheck dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-binPROGRAMS install-data install-data-am \
+ install-data-hook install-exec install-exec-am \
+ install-exec-hook install-info install-info-am install-man \
+ install-sbinPROGRAMS install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+ uninstall-am uninstall-binPROGRAMS uninstall-info-am \
+ uninstall-sbinPROGRAMS
+
+
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@chan_lcr.po: chan_lcr.c chan_lcr.h
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ $(CC) $(INCLUDES) -D_GNU_SOURCE -fPIC -c chan_lcr.c -o chan_lcr.po
+
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@bchannel.po: bchannel.c bchannel.h
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ $(CC) $(INCLUDES) -D_GNU_SOURCE -fPIC -c bchannel.c -o bchannel.po
+
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@callerid.po: callerid.c callerid.h
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ $(CC) $(INCLUDES) -D_GNU_SOURCE -fPIC -c callerid.c -o callerid.po
+
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@options.po: options.c options.h
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ $(CC) $(INCLUDES) -D_GNU_SOURCE -fPIC -c options.c -o options.po
+
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@install-exec-hook:
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ mkdir -p $(astmoddir)
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ $(INSTALL) -d $(astmoddir)
+@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ $(INSTALL) chan_lcr.so $(astmoddir)
# Special install function to preserve existing configs.
# Optimization with equivalen results are welcome
@@ -735,41 +753,41 @@ install-data-hook:
@sh -c 'grep -n strncat *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use strncat, use makro instead." ; exit -1 ; fi'
@sh -c 'grep -n sprintf *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use sprintf, use makro instead." ; exit -1 ; fi'
@sh -c 'grep -n snprintf *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use snprintf, use makro instead." ; exit -1 ; fi'
- mkdir -p $(INSTALLdir)
- mkdir -p $(INSTALLdir)/extensions
- @if test -a $(INSTALLdir)/options.conf ; then \
+ mkdir -p $(CONFIGdir)
+ mkdir -p $(SHAREdir)
+ mkdir -p $(LOGdir)
+ mkdir -p $(EXTENSIONdir)
+ @if test -a $(CONFIGdir)/options.conf ; then \
echo "NOTE: options.conf already exists, not changed." ; else \
- cp -v default/options.conf $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/interface.conf ; then \
+ cp -v default/options.conf $(CONFIGdir) ; fi
+ @if test -a $(CONFIGdir)/interface.conf ; then \
echo "NOTE: interface.conf already exists, not changed." ; else \
- cp -v default/interface.conf $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/routing.conf ; then \
+ cp -v default/interface.conf $(CONFIGdir) ; fi
+ @if test -a $(CONFIGdir)/routing.conf ; then \
echo "NOTE: routing.conf already exists, not changed." ; else \
- cp -v default/routing.conf $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/numbering_int.conf ; then \
+ cp -v default/routing.conf $(CONFIGdir) ; fi
+ @if test -a $(CONFIGdir)/numbering_int.conf ; then \
echo "NOTE: numbering_int.conf is obsolete, please use routing." ; fi
- @if test -a $(INSTALLdir)/numbering_ext.conf ; then \
+ @if test -a $(CONFIGdir)/numbering_ext.conf ; then \
echo "NOTE: numbering_ext.conf is obsolete, please use routing." ; fi
- @if test -a $(INSTALLdir)/directory.list ; then \
+ @if test -a $(CONFIGdir)/directory.list ; then \
echo "NOTE: directory.list already exists, not changed." ; else \
- cp -v default/directory.list $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/tones_american ; then \
+ cp -v default/directory.list $(CONFIGdir) ; fi
+ @if test -a $(SHAREdir)/tones_american ; then \
echo "NOTE: american tones already exists, not overwritten." ; else \
- cp -a tones_american $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/tones_german ; then \
+ cp -a tones_american $(SHAREdir) ; fi
+ @if test -a $(SHAREdir)/tones_german ; then \
echo "NOTE: german tones already exists, not overwritten." ; else \
- cp -a tones_german $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/vbox_german ; then \
+ cp -a tones_german $(SHAREdir) ; fi
+ @if test -a $(SHAREdir)/vbox_german ; then \
echo "NOTE: german vbox tones already exists, not overwritten." ; else \
- cp -a vbox_german $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/vbox_english ; then \
+ cp -a vbox_german $(SHAREdir) ; fi
+ @if test -a $(SHAREdir)/vbox_english ; then \
echo "NOTE: english vbox tones already exists, not overwritten." ; else \
- cp -a vbox_english $(INSTALLdir) ; fi
- @if test -a $(INSTALLdir)/tones_efi ; then \
+ cp -a vbox_english $(SHAREdir) ; fi
+ @if test -a $(SHAREdir)/tones_efi ; then \
echo "NOTE: special efi tones already exists, not overwritten." ; else \
- cp -a tones_efi $(INSTALLdir) ; fi
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ @echo "Moving chan_lcr.so (if it fails, do it manually)"
-@ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE@ mv $(sbindir)/chan_lcr.so $(astmoddir)
+ cp -a tones_efi $(SHAREdir) ; fi
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/chan_lcr.c b/chan_lcr.c
index ee5ae6b..cfd3c61 100644
--- a/chan_lcr.c
+++ b/chan_lcr.c
@@ -649,21 +649,24 @@ static void lcr_start_pbx(struct chan_call *call, struct ast_channel *ast, int c
{
int cause, ret;
union parameter newparam;
+ char *exten = ast->exten;
+ if (!*exten)
+ exten = "s";
- CDEBUG(call, ast, "Try to start pbx. (exten=%s context=%s complete=%s)\n", ast->exten, ast->context, complete?"yes":"no");
+ CDEBUG(call, ast, "Try to start pbx. (exten=%s context=%s complete=%s)\n", exten, ast->context, complete?"yes":"no");
if (complete)
{
/* if not match */
- if (!ast_canmatch_extension(ast, ast->context, ast->exten, 1, call->oad))
+ if (!ast_canmatch_extension(ast, ast->context, exten, 1, call->oad))
{
- CDEBUG(call, ast, "Got 'sending complete', but extension '%s' will not match at context '%s' - releasing.\n", ast->exten, ast->context);
+ CDEBUG(call, ast, "Got 'sending complete', but extension '%s' will not match at context '%s' - releasing.\n", exten, ast->context);
cause = 1;
goto release;
}
- if (!ast_exists_extension(ast, ast->context, ast->exten, 1, call->oad))
+ if (!ast_exists_extension(ast, ast->context, exten, 1, call->oad))
{
- CDEBUG(call, ast, "Got 'sending complete', but extension '%s' would match at context '%s', if more digits would be dialed - releasing.\n", ast->exten, ast->context);
+ CDEBUG(call, ast, "Got 'sending complete', but extension '%s' would match at context '%s', if more digits would be dialed - releasing.\n", exten, ast->context);
cause = 28;
goto release;
}
@@ -678,7 +681,7 @@ static void lcr_start_pbx(struct chan_call *call, struct ast_channel *ast, int c
goto start;
}
- if (ast_canmatch_extension(ast, ast->context, ast->exten, 1, call->oad))
+ if (ast_canmatch_extension(ast, ast->context, exten, 1, call->oad))
{
/* send setup acknowledge to lcr */
if (call->state != CHAN_LCR_STATE_IN_DIALING) {
@@ -690,7 +693,7 @@ static void lcr_start_pbx(struct chan_call *call, struct ast_channel *ast, int c
call->state = CHAN_LCR_STATE_IN_DIALING;
/* if match, start pbx */
- if (ast_exists_extension(ast, ast->context, ast->exten, 1, call->oad)) {
+ if (ast_exists_extension(ast, ast->context, exten, 1, call->oad)) {
CDEBUG(call, ast, "Extensions matches.\n");
goto start;
}
@@ -724,11 +727,7 @@ static void lcr_start_pbx(struct chan_call *call, struct ast_channel *ast, int c
goto release;
}
call->pbx_started = 1;
-// if (call->state == CHAN_LCR_STATE_IN_DIALING)
- ast_setstate(ast, AST_STATE_RINGING);
-// else
-// ast_setstate(ast, AST_STATE_RINGING);
-// return;
+ ast_setstate(ast, AST_STATE_RING);
}
/*
@@ -1961,6 +1960,7 @@ static int lcr_hangup(struct ast_channel *ast)
/* during prepare, we change to release state */
CDEBUG(call, ast, "We must wait until we received our ref, until we can free call instance.\n");
call->state = CHAN_LCR_STATE_RELEASE;
+ call->ast = NULL;
}
}
if (!pthread_equal(tid, chan_tid))
@@ -2125,10 +2125,9 @@ static int lcr_indicate(struct ast_channel *ast, int cond, const void *data, siz
ast_moh_stop(ast);
call->on_hold = 0;
break;
-#ifdef AST_CONTROL_SRCUPDATE
+#if ASTERISK_VERSION_NUM >= 10600
case AST_CONTROL_SRCUPDATE:
- CDEBUG(call, ast, "Received indicate AST_CONTROL_SRCUPDATE from Asterisk.\n");
- res = -1;
+ CDEBUG(call, ast, "Received AST_CONTROL_SRCUPDATE from Asterisk.\n");
break;
#endif
default:
diff --git a/configure b/configure
index bd966c4..a0a90f8 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.63 for lcr 1.2.
+# Generated by GNU Autoconf 2.63 for lcr 1.3.
#
# Report bugs to <andreas@eversberg.eu>.
#
@@ -596,8 +596,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='lcr'
PACKAGE_TARNAME='lcr'
-PACKAGE_VERSION='1.2'
-PACKAGE_STRING='lcr 1.2'
+PACKAGE_VERSION='1.3'
+PACKAGE_STRING='lcr 1.3'
PACKAGE_BUGREPORT='andreas@eversberg.eu'
ac_unique_file="main.c"
@@ -1297,7 +1297,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures lcr 1.2 to adapt to many kinds of systems.
+\`configure' configures lcr 1.3 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1363,7 +1363,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of lcr 1.2:";;
+ short | recursive ) echo "Configuration of lcr 1.3:";;
esac
cat <<\_ACEOF
@@ -1461,7 +1461,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-lcr configure 1.2
+lcr configure 1.3
generated by GNU Autoconf 2.63
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1475,7 +1475,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by lcr $as_me 1.2, which was
+It was created by lcr $as_me 1.3, which was
generated by GNU Autoconf 2.63. Invocation command line was
$ $0 $@
@@ -4033,7 +4033,7 @@ fi
# Define the identity of the package.
PACKAGE=lcr
- VERSION=1.2
+ VERSION=1.3
cat >>confdefs.h <<_ACEOF
@@ -10078,7 +10078,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by lcr $as_me 1.2, which was
+This file was extended by lcr $as_me 1.3, which was
generated by GNU Autoconf 2.63. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -10141,7 +10141,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-lcr config.status 1.2
+lcr config.status 1.3
configured by $0, generated by GNU Autoconf 2.63,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/configure.ac b/configure.ac
index 672bf71..ef76a4e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -24,7 +24,7 @@ dnl Boston, MA 02110-1301, USA.
dnl This keeps being the first instruction.
dnl Change the 2nd argument if the version increases
dnl 1st + 2nd argument is used for distribution package name
-AC_INIT(lcr, 1.2, andreas@eversberg.eu)
+AC_INIT(lcr, 1.3, andreas@eversberg.eu)
AC_PREREQ(2.59)
AC_CONFIG_SRCDIR([main.c])
AM_CONFIG_HEADER(config.h)
@@ -32,7 +32,7 @@ AM_CONFIG_HEADER(config.h)
# fix warnings from autoconf + automake
AC_GNU_SOURCE
# AC_USE_SYSTEM_EXTENSIONS
-AM_INIT_AUTOMAKE(lcr,1.2)
+AM_INIT_AUTOMAKE(lcr,1.3)
diff --git a/lcradmin.c b/lcradmin.c
index 1459aeb..a351fbf 100644
--- a/lcradmin.c
+++ b/lcradmin.c
@@ -1656,7 +1656,7 @@ int main(int argc, char *argv[])
printf("dial <extension> <number> - Tell LCR the next number to dial for extension.\n");
printf("release <number> - Tell LCR to release endpoint with given number.\n");
printf("block <port> - Block given port.\n");
- printf("unblock <port> - Unblock given port.\n");
+ printf("unblock/load <port> - Unblock given port.\n");
printf("unload <port> - Unload port. To load port use 'block' or 'unblock'.\n");
printf("testcall [options] <interface> <callerid> <number> [present|restrict [<capability>]] - Testcall\n");
printf(" -> options = --setup-timeout <seconds> --proceeding-timeout <seconds>\n");
@@ -1693,7 +1693,8 @@ int main(int argc, char *argv[])
goto usage;
mode = MODE_RELEASE;
} else
- if (!(strcasecmp(argv[1],"unblock")))
+ if (!(strcasecmp(argv[1],"unblock"))
+ || !(strcasecmp(argv[1],"load")))
{
if (argc <= 2)
goto usage;