Freeswitch-svn
Threads by month
- ----- 2026 -----
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
July 2006
- 15 participants
- 496 discussions
24 Jul '06
Author: mishehu
Date: Mon Jul 24 00:50:44 2006
New Revision: 2072
Modified:
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/basecdr.cpp
Log:
One string comparison in BaseCDR not yet fixed for Win32.
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/basecdr.cpp
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/basecdr.cpp (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/basecdr.cpp Mon Jul 24 00:50:44 2006
@@ -310,8 +310,8 @@
// This one is for processing of supplemental chanvars
void BaseCDR::process_channel_variables(const std::list<std::string>& stringlist, const std::list<std::string>& fixedlist, switch_channel_t *channel,bool repeat)
{
- std::string tempstring = stringlist.front();
- if(tempstring == "*")
+ std::string tempstring = "*";
+ if(stringlist.front() == tempstring)
{
switch_hash_index_t *hi;
void *val;
1
0
24 Jul '06
Author: mishehu
Date: Mon Jul 24 00:47:50 2006
New Revision: 2071
Modified:
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/basecdr.cpp
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/pddcdr.cpp
Log:
Fixed two minor bugs found when building BaseCDR on Win32.
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/basecdr.cpp
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/basecdr.cpp (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/basecdr.cpp Mon Jul 24 00:47:50 2006
@@ -172,8 +172,7 @@
void BaseCDR::parse_channel_variables_xconfig(std::string& unparsed,std::list<std::string>& chanvarlist,bool fixed)
{
std::string tempstring;
- long j = 0;
- for(std::string::size_type i = 0; j != -1; )
+ for(std::string::size_type i = 0, j = 0; j != std::string::npos; )
{
j = unparsed.find(',',i);
if(j > 0)
@@ -311,7 +310,8 @@
// This one is for processing of supplemental chanvars
void BaseCDR::process_channel_variables(const std::list<std::string>& stringlist, const std::list<std::string>& fixedlist, switch_channel_t *channel,bool repeat)
{
- if(stringlist.front() == "*")
+ std::string tempstring = stringlist.front();
+ if(tempstring == "*")
{
switch_hash_index_t *hi;
void *val;
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/pddcdr.cpp
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/pddcdr.cpp (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/pddcdr.cpp Mon Jul 24 00:47:50 2006
@@ -5,8 +5,7 @@
* <freeswitch AT cartissolutions.com>
*
* Description: This C++ source file describes the PddCDR class which handles formatting a CDR out to
-* individual text files in a Perl Data Dumper format. It is named in honor of Anthony Minnesale, as he
-* was the initial requester of this format.
+* individual text files in a Perl Data Dumper format.
*
*
* Version: MPL 1.1
1
0
Author: mikej
Date: Mon Jul 24 00:31:28 2006
New Revision: 2070
Modified:
freeswitch/trunk/src/include/switch.h
freeswitch/trunk/src/include/switch_apr.h
freeswitch/trunk/src/include/switch_platform.h
Log:
fix C linkage when using templates issue when building C++ modules in msvc that stems from including some windows header files inside of an extern C block, when building with C++.
Modified: freeswitch/trunk/src/include/switch.h
==============================================================================
--- freeswitch/trunk/src/include/switch.h (original)
+++ freeswitch/trunk/src/include/switch.h Mon Jul 24 00:31:28 2006
@@ -43,7 +43,6 @@
#define END_EXTERN_C
#endif
-BEGIN_EXTERN_C
//Need to include this before any other includes (MSVC Bug)
#include <switch_platform.h>
@@ -75,7 +74,6 @@
#include <switch_log.h>
#include <switch_xml.h>
-END_EXTERN_C
/** \mainpage FreeSWITCH
* FreeSWITCH Modular Media Switching Software Library / Soft-Switch Application
Modified: freeswitch/trunk/src/include/switch_apr.h
==============================================================================
--- freeswitch/trunk/src/include/switch_apr.h (original)
+++ freeswitch/trunk/src/include/switch_apr.h Mon Jul 24 00:31:28 2006
@@ -39,8 +39,6 @@
#ifndef SWITCH_APR_H
#define SWITCH_APR_H
-BEGIN_EXTERN_C
-
#include <apr.h>
#include <apr_network_io.h>
#include <apr_errno.h>
@@ -64,6 +62,8 @@
#define APR_WANT_STRFUNC
#include <apr_want.h>
#include <apr_env.h>
+
+BEGIN_EXTERN_C
/*
The pieces of apr we allow ppl to pass around between modules we typedef into our namespace and wrap all the functions
Modified: freeswitch/trunk/src/include/switch_platform.h
==============================================================================
--- freeswitch/trunk/src/include/switch_platform.h (original)
+++ freeswitch/trunk/src/include/switch_platform.h Mon Jul 24 00:31:28 2006
@@ -65,7 +65,7 @@
* C4819: The file contains a character that cannot be represented in the current code page
* C4132: 'object' : const object should be initialized (fires innapropriately for prototyped forward declaration of cost var)
*/
-#pragma warning(disable:4152 4054 4100 4142 4200 4204 4706 4055 4214 4819 4132)
+#pragma warning(disable:4152 4054 4100 4142 4200 4204 4706 4055 4214 4819 4132 4510 4512 4610)
#if (_MSC_VER >= 1400) // VC8+
#ifndef _CRT_SECURE_NO_DEPRECATE
1
0
Author: sphere
Date: Mon Jul 24 00:21:02 2006
New Revision: 2069
Added:
freeswitch/branches/yafmf/
Log:
Creating empty folder for yafmf
1
0
24 Jul '06
Author: mishehu
Date: Mon Jul 24 00:13:57 2006
New Revision: 2068
Added:
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/pddcdr.cpp
- copied unchanged from r2067, /freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/pddcdr.h
- copied unchanged from r2067, /freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h
Removed:
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h
Log:
Renamed anthmcdr files to pddcdr as per MikeJ's request.
1
0
24 Jul '06
Author: mishehu
Date: Mon Jul 24 00:13:01 2006
New Revision: 2067
Modified:
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/Makefile
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/README
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h
Log:
Renaming of AnthmCDR and all its related files/settings to PddCDR for Perl Data Dumper, at MikeJ's request
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/Makefile
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/Makefile (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/Makefile Mon Jul 24 00:13:01 2006
@@ -1,7 +1,7 @@
LDFLAGS += -I/usr/include/mysql -L/usr/lib64/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lssl -lcrypto
CFLAGS += -I/usr/include/mysql -L/usr/lib64/mysql
CPPCC = g++
-OBJS=cdrcontainer.o basecdr.o baseregistry.o mysqlcdr.o
+OBJS=cdrcontainer.o basecdr.o baseregistry.o mysqlcdr.o pddcdr.o
all: depends $(OBJS) $(MODNAME).$(DYNAMIC_LIB_EXTEN)
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/README
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/README (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/README Mon Jul 24 00:13:01 2006
@@ -40,10 +40,10 @@
<param name="chanvars_supp" value=""/> value is a comma separated list of supplemental channel variables to log. It can be a wildcard (*). (optional)
<param name="repeat_fixed_in_supp" value=""/> value is a 0 for no, 1 for yes, and is for the case that you might want any fixed channel variables to be repeated in the supplemental list.
-Class: AnthmCDR, located in anthmcdr.h and anthmcdr.cpp
+Class: PddCDR, located in pddcdr.h and pddcdr.cpp
Description: This is the Perl Data Dumper output class. It writes each record to an individual text file
containing all the information. It does not distinguish between fixed and supplemental channel variables. If you are running freeswitch in a high volume environment, it is important to note that these individual files are small, often times between 750 and 1500 bytes. It is therefore recommended to use a partition with small cluster sizes or (on systems supporting) on reiserfs or reiser4 filesystems which are both excellent handlers of large numbers of small files.
-Configuration: Section name: <anthmcdr>
+Configuration: Section name: <pddcdr>
<param name="path" value=""/> value is the path where you want the output files (required)
<param name="chanvars" value=""/> value is a comma separated list of channel variables to log. It can accept a wildcard (*) (optional)
@@ -71,11 +71,11 @@
A: Here is an excerpt from the freeswitch XML configuration file:
<configuration name="mod_cdr.conf" description="CDR Configuration">
- <anthmcdr>
- <param name="path" value="/work/temp/anthmcdr"/>
+ <pddcdr>
+ <param name="path" value="/work/temp/pddcdr"/>
<param name="chanvars" value="username,accountcode"/>
<param name="chanvars_fixed" value="*"/>
- </anthmcdr>
+ </pddcdr>
<csvcdr>
<param name="path" value="/work/temp/csvcdr"/>
<param name="size_limit" value="25"/>
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp Mon Jul 24 00:13:01 2006
@@ -4,7 +4,7 @@
* Copyright 2006, Author: Yossi Neiman, president of Cartis Solutions, Inc.
* <freeswitch AT cartissolutions.com>
*
-* Description: This C++ source file describes the AnthmCDR class which handles formatting a CDR out to
+* Description: This C++ source file describes the PddCDR class which handles formatting a CDR out to
* individual text files in a Perl Data Dumper format. It is named in honor of Anthony Minnesale, as he
* was the initial requester of this format.
*
@@ -23,21 +23,21 @@
* The Core API is the FreeSWITCH Modular Media Switching Software Library / Soft-Switch Application by
* Anthony Minnesale II <anthmct(a)yahoo.com>
*
-* anthmcdr.cpp
+* pddcdr.cpp
*
*/
#include <switch.h>
-#include "anthmcdr.h"
+#include "pddcdr.h"
-AnthmCDR::AnthmCDR() : BaseCDR()
+PddCDR::PddCDR() : BaseCDR()
{
memset(formattedcallstartdate,0,100);
memset(formattedcallanswerdate,0,100);
memset(formattedcallenddate,0,100);
}
-AnthmCDR::AnthmCDR(switch_mod_cdr_newchannel_t *newchannel) : BaseCDR(newchannel)
+PddCDR::PddCDR(switch_mod_cdr_newchannel_t *newchannel) : BaseCDR(newchannel)
{
memset(formattedcallstartdate,0,100);
memset(formattedcallanswerdate,0,100);
@@ -69,7 +69,7 @@
outputfile_name.append(callenddate_forfile); // Make sorting a bit easier, kinda like Maildir does
outputfile_name.append(".");
outputfile_name.append(myuuid); // The goal is to have a resulting filename of "/path/to/myuuid"
- outputfile_name.append(".atm"); // The extension is in honor of anthm
+ outputfile_name.append(".pdd"); // .pdd - "perl data dumper"
outputfile.open(outputfile_name.c_str());
@@ -78,25 +78,25 @@
}
}
-AnthmCDR::~AnthmCDR()
+PddCDR::~PddCDR()
{
outputfile.close();
}
-bool AnthmCDR::activated=0;
-bool AnthmCDR::logchanvars=0;
-bool AnthmCDR::connectionstate=0;
-std::string AnthmCDR::outputfile_path;
-std::list<std::string> AnthmCDR::chanvars_fixed_list;
-std::list<std::string> AnthmCDR::chanvars_supp_list;
+bool PddCDR::activated=0;
+bool PddCDR::logchanvars=0;
+bool PddCDR::connectionstate=0;
+std::string PddCDR::outputfile_path;
+std::list<std::string> PddCDR::chanvars_fixed_list;
+std::list<std::string> PddCDR::chanvars_supp_list;
-void AnthmCDR::connect(switch_xml_t& cfg, switch_xml_t& xml, switch_xml_t& settings, switch_xml_t& param)
+void PddCDR::connect(switch_xml_t& cfg, switch_xml_t& xml, switch_xml_t& settings, switch_xml_t& param)
{
- switch_console_printf(SWITCH_CHANNEL_LOG, "AnthmCDR::connect() - Loading configuration file.\n");
+ switch_console_printf(SWITCH_CHANNEL_LOG, "PddCDR::connect() - Loading configuration file.\n");
activated = 0; // Set it as inactive initially
connectionstate = 0; // Initialize it to false to show that we aren't yet connected.
- if ((settings = switch_xml_child(cfg, "anthmcdr")))
+ if ((settings = switch_xml_child(cfg, "pddcdr")))
{
int count_config_params = 0; // Need to make sure all params are set before we load
for (param = switch_xml_child(settings, "param"); param; param = param->next)
@@ -126,26 +126,26 @@
}
else if (!strcmp(var, "chanvars_fixed"))
{
- switch_console_printf(SWITCH_CHANNEL_LOG,"AnthmCDR has no need for a fixed or supplemental list of channel variables due to the nature of the format. Please use the setting parameter of \"chanvars\" instead and try again.\n");
+ switch_console_printf(SWITCH_CHANNEL_LOG,"PddCDR has no need for a fixed or supplemental list of channel variables due to the nature of the format. Please use the setting parameter of \"chanvars\" instead and try again.\n");
}
else if (!strcmp(var, "chanvars_supp"))
{
- switch_console_printf(SWITCH_CHANNEL_LOG,"AnthmCDR has no need for a fixed or supplemental list of channel variables due to the nature of the format. Please use the setting parameter of \"chanvars\" instead and try again.\n");
+ switch_console_printf(SWITCH_CHANNEL_LOG,"PddCDR has no need for a fixed or supplemental list of channel variables due to the nature of the format. Please use the setting parameter of \"chanvars\" instead and try again.\n");
}
}
if(count_config_params > 0)
activated = 1;
else
- switch_console_printf(SWITCH_CHANNEL_LOG,"AnthmCDR::connect(): You did not specify the minimum parameters for using this module. You must specify at least a path to have the records logged to.\n");
+ switch_console_printf(SWITCH_CHANNEL_LOG,"PddCDR::connect(): You did not specify the minimum parameters for using this module. You must specify at least a path to have the records logged to.\n");
}
}
-bool AnthmCDR::process_record()
+bool PddCDR::process_record()
{
bool retval = 0;
if(!outputfile)
- switch_console_printf(SWITCH_CHANNEL_LOG, "AnthmCDR::process_record(): Unable to open file %s to commit the call record to. Invalid path name, invalid permissions, or no space available?\n",outputfile_name.c_str());
+ switch_console_printf(SWITCH_CHANNEL_LOG, "PddCDR::process_record(): Unable to open file %s to commit the call record to. Invalid path name, invalid permissions, or no space available?\n",outputfile_name.c_str());
else
{
// Format the call record and proceed from here...
@@ -188,24 +188,24 @@
return retval;
}
-bool AnthmCDR::is_activated()
+bool PddCDR::is_activated()
{
return activated;
}
-void AnthmCDR::tempdump_record()
+void PddCDR::tempdump_record()
{
}
-void AnthmCDR::reread_tempdumped_records()
+void PddCDR::reread_tempdumped_records()
{
}
-void AnthmCDR::disconnect()
+void PddCDR::disconnect()
{
- switch_console_printf(SWITCH_CHANNEL_LOG,"Shutting down AnthmCDR... Done!");
+ switch_console_printf(SWITCH_CHANNEL_LOG,"Shutting down PddCDR... Done!");
}
-AUTO_REGISTER_BASECDR(AnthmCDR);
+AUTO_REGISTER_BASECDR(PddCDR);
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h Mon Jul 24 00:13:01 2006
@@ -4,9 +4,8 @@
* Copyright 2006, Author: Yossi Neiman, president of Cartis Solutions, Inc.
* <freeswitch AT cartissolutions.com>
*
-* Description: This C++ header file describes the AnthmCDR class which handles formatting a CDR out to
-* individual text files in a Perl Data Dumper format. It is named in honor of Anthony Minnesale, as he
-* was the initial requester of this format.
+* Description: This C++ header file describes the PddCDR class which handles formatting a CDR out to
+* individual text files in a Perl Data Dumper format.
*
*
* Version: MPL 1.1
@@ -23,7 +22,7 @@
* The Core API is the FreeSWITCH Modular Media Switching Software Library / Soft-Switch Application by
* Anthony Minnesale II <anthmct(a)yahoo.com>
*
-* anthmcdr.h
+* pddcdr.h
*
*/
@@ -34,15 +33,15 @@
#include <fstream>
#include <list>
-#ifndef ANTHMCDR
-#define ANTHMCDR
+#ifndef PDDCDR
+#define PDDMCDR
-class AnthmCDR : public BaseCDR {
+class PddCDR : public BaseCDR {
public:
- AnthmCDR();
- AnthmCDR(switch_mod_cdr_newchannel_t *newchannel);
- //AnthmCDR(const AnthmCDR& copyFrom);
- virtual ~AnthmCDR();
+ PddCDR();
+ PddCDR(switch_mod_cdr_newchannel_t *newchannel);
+ //PddCDR(const PddCDR& copyFrom);
+ virtual ~PddCDR();
virtual bool process_record();
virtual void connect(switch_xml_t& cfg, switch_xml_t& xml, switch_xml_t& settings, switch_xml_t& param); // connect and disconnect need to be static because we're persisting connections until shutdown
virtual void disconnect();
1
0
24 Jul '06
Author: mishehu
Date: Sun Jul 23 23:49:20 2006
New Revision: 2066
Removed:
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/syslogcdr.cpp
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/syslogcdr.h
Modified:
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/Makefile
Log:
Removed old testing syslogcdr source files, removed from Makefile.
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/Makefile
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/Makefile (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/Makefile Sun Jul 23 23:49:20 2006
@@ -1,7 +1,7 @@
LDFLAGS += -I/usr/include/mysql -L/usr/lib64/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lssl -lcrypto
CFLAGS += -I/usr/include/mysql -L/usr/lib64/mysql
CPPCC = g++
-OBJS=cdrcontainer.o basecdr.o baseregistry.o mysqlcdr.o syslogcdr.o
+OBJS=cdrcontainer.o basecdr.o baseregistry.o mysqlcdr.o
all: depends $(OBJS) $(MODNAME).$(DYNAMIC_LIB_EXTEN)
1
0
24 Jul '06
Author: mishehu
Date: Sun Jul 23 21:08:50 2006
New Revision: 2065
Modified:
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h
Log:
Cleaned up file generation a bit for AnthmCDR.
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.cpp Sun Jul 23 21:08:50 2006
@@ -54,15 +54,16 @@
switch_time_exp_lt(&tempcallend, callenddate);
// Format the times
- size_t retsizecsd, retsizecad, retsizeced, retsizeceff; //csd == callstartdate, cad == callanswerdate, ced == callenddate, ceff == callenddate_forfile
+ size_t retsizecsd, retsizecad, retsizeced; //csd == callstartdate, cad == callanswerdate, ced == callenddate, ceff == callenddate_forfile
char format[] = "%F %T";
switch_strftime(formattedcallstartdate,&retsizecsd,sizeof(formattedcallstartdate),format,&tempcallstart);
switch_strftime(formattedcallanswerdate,&retsizecad,sizeof(formattedcallanswerdate),format,&tempcallanswer);
switch_strftime(formattedcallenddate,&retsizeced,sizeof(formattedcallenddate),format,&tempcallend);
- char format_forfile[] = "%s";
- char callenddate_forfile[25];
- switch_strftime(callenddate_forfile,&retsizeceff,sizeof(callenddate_forfile),format_forfile,&tempcallend);
+ std::ostringstream ostring;
+ ostring << (callenddate/1000000);
+ std::string callenddate_forfile = ostring.str();
+
outputfile_name = outputfile_path;
outputfile_name.append(SWITCH_PATH_SEPARATOR);
outputfile_name.append(callenddate_forfile); // Make sorting a bit easier, kinda like Maildir does
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/anthmcdr.h Sun Jul 23 21:08:50 2006
@@ -30,6 +30,7 @@
#include "baseregistry.h"
#include <switch.h>
#include <iostream>
+#include <sstream>
#include <fstream>
#include <list>
1
0
23 Jul '06
Author: stkn
Date: Sun Jul 23 19:59:57 2006
New Revision: 2064
Modified:
freeswitch/branches/stkn/src/mod/endpoints/mod_pjsip/mod_pjsip.c
Log:
Only use IP addresses in SIP messages.
Modified: freeswitch/branches/stkn/src/mod/endpoints/mod_pjsip/mod_pjsip.c
==============================================================================
--- freeswitch/branches/stkn/src/mod/endpoints/mod_pjsip/mod_pjsip.c (original)
+++ freeswitch/branches/stkn/src/mod/endpoints/mod_pjsip/mod_pjsip.c Sun Jul 23 19:59:57 2006
@@ -1273,7 +1273,7 @@
sdp->origin.version = sdp->origin.id = 0;
sdp->origin.net_type = pj_str( "IN" );
sdp->origin.addr_type = pj_str( "IP4" );
- sdp->origin.addr = *pj_gethostname();
+ sdp->origin.addr = pj_str( profile->local_addr );
sdp->name = pj_str( "pjsip" );
sdp->conn = pj_pool_zalloc( pool, sizeof(pjmedia_sdp_conn) );
@@ -1683,16 +1683,22 @@
#endif
/* */
{
- const pj_str_t *hostname;
- pj_sockaddr_in tmp_addr;
char *addr;
char local_uri[64];
- hostname = pj_gethostname();
- pj_sockaddr_in_init( &tmp_addr, hostname, 0 );
- addr = pj_inet_ntoa( tmp_addr.sin_addr );
+ /* if bind addr is 0.0.0.0 use local hostname to get the primary ip */
+ if( !profile->sip_addr.sin_addr.s_addr ) {
+ const pj_str_t *hostname;
+ pj_sockaddr_in tmp_addr;
+
+ hostname = pj_gethostname();
+ pj_sockaddr_in_init( &tmp_addr, hostname, 0 );
+ addr = pj_inet_ntoa( tmp_addr.sin_addr );
+ } else
+ addr = profile->sip_ip;
+
pj_ansi_strcpy( profile->local_addr, addr );
- pj_ansi_sprintf( local_uri, "sip:%s:%d", hostname->ptr, profile->sip_port );
+ pj_ansi_sprintf( local_uri, "sip:%s:%d", addr, profile->sip_port );
pj_strdup2( pjsip_pool, &profile->local_uri, local_uri );
pj_strdup2( pjsip_pool, &profile->local_contact, local_uri );
}
1
0
Author: mishehu
Date: Sun Jul 23 19:05:25 2006
New Revision: 2063
Added:
freeswitch/branches/mishehu/libs/portaudio.build.sh
- copied unchanged from r2062, /freeswitch/trunk/libs/portaudio.build.sh
freeswitch/branches/mishehu/scripts/rss/syncrss.pl
- copied unchanged from r2062, /freeswitch/trunk/scripts/rss/syncrss.pl
freeswitch/branches/mishehu/scripts/socket/
- copied from r2062, /freeswitch/trunk/scripts/socket/
freeswitch/branches/mishehu/scripts/socket/FreeSWITCH/
- copied from r2062, /freeswitch/trunk/scripts/socket/FreeSWITCH/
freeswitch/branches/mishehu/scripts/socket/FreeSWITCH/Client.pm
- copied unchanged from r2062, /freeswitch/trunk/scripts/socket/FreeSWITCH/Client.pm
freeswitch/branches/mishehu/scripts/socket/fs.pl
- copied unchanged from r2062, /freeswitch/trunk/scripts/socket/fs.pl
freeswitch/branches/mishehu/src/mod/applications/mod_dptools/
- copied from r2062, /freeswitch/trunk/src/mod/applications/mod_dptools/
freeswitch/branches/mishehu/src/mod/applications/mod_dptools/mod_dptools.c
- copied unchanged from r2062, /freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c
freeswitch/branches/mishehu/src/mod/applications/mod_dptools/mod_dptools.vcproj
- copied unchanged from r2062, /freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.vcproj
freeswitch/branches/mishehu/src/mod/event_handlers/mod_event_socket/
- copied from r2062, /freeswitch/trunk/src/mod/event_handlers/mod_event_socket/
freeswitch/branches/mishehu/src/mod/event_handlers/mod_event_socket/mod_event_socket.c
- copied unchanged from r2062, /freeswitch/trunk/src/mod/event_handlers/mod_event_socket/mod_event_socket.c
freeswitch/branches/mishehu/src/mod/event_handlers/mod_event_socket/mod_event_socket.vcproj
- copied unchanged from r2062, /freeswitch/trunk/src/mod/event_handlers/mod_event_socket/mod_event_socket.vcproj
Modified:
freeswitch/branches/mishehu/Makefile.am
freeswitch/branches/mishehu/Makefile.in
freeswitch/branches/mishehu/conf/freeswitch.xml
freeswitch/branches/mishehu/configure.in
freeswitch/branches/mishehu/libs/libdingaling/aclocal.m4
freeswitch/branches/mishehu/libs/libdingaling/configure
freeswitch/branches/mishehu/libs/libdingaling/configure.in
freeswitch/branches/mishehu/libs/libspeakup/aclocal.m4
freeswitch/branches/mishehu/libs/libspeakup/configure
freeswitch/branches/mishehu/libs/libspeakup/configure.in
freeswitch/branches/mishehu/libs/libteletone/src/libteletone_generate.c
freeswitch/branches/mishehu/modules.conf.in
freeswitch/branches/mishehu/src/include/switch.h
freeswitch/branches/mishehu/src/include/switch_core.h
freeswitch/branches/mishehu/src/include/switch_event.h
freeswitch/branches/mishehu/src/include/switch_ivr.h
freeswitch/branches/mishehu/src/include/switch_module_interfaces.h
freeswitch/branches/mishehu/src/include/switch_types.h
freeswitch/branches/mishehu/src/mod/applications/mod_commands/mod_commands.c
freeswitch/branches/mishehu/src/mod/applications/mod_conference/mod_conference.c
freeswitch/branches/mishehu/src/mod/applications/mod_ivrtest/mod_ivrtest.c
freeswitch/branches/mishehu/src/mod/applications/mod_playback/mod_playback.c
freeswitch/branches/mishehu/src/mod/applications/mod_rss/mod_rss.c
freeswitch/branches/mishehu/src/mod/asr_tts/mod_cepstral/mod_cepstral.c
freeswitch/branches/mishehu/src/mod/codecs/mod_speex/mod_speex.c
freeswitch/branches/mishehu/src/mod/endpoints/mod_dingaling/mod_dingaling.c
freeswitch/branches/mishehu/src/mod/endpoints/mod_exosip/mod_exosip.c
freeswitch/branches/mishehu/src/mod/endpoints/mod_iax/mod_iax.c
freeswitch/branches/mishehu/src/mod/event_handlers/mod_xmpp_event/mod_xmpp_event.c
freeswitch/branches/mishehu/src/mod/languages/mod_perl/switch_swig.c
freeswitch/branches/mishehu/src/mod/languages/mod_perl/switch_swig_wrap.c
freeswitch/branches/mishehu/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c
freeswitch/branches/mishehu/src/mod/languages/mod_spidermonkey/mod_spidermonkey.vcproj
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/mysqlcdr.cpp
freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/mysqlcdr.h
freeswitch/branches/mishehu/src/switch_channel.c
freeswitch/branches/mishehu/src/switch_core.c
freeswitch/branches/mishehu/src/switch_event.c
freeswitch/branches/mishehu/src/switch_ivr.c
freeswitch/branches/mishehu/src/switch_loadable_module.c
freeswitch/branches/mishehu/src/switch_rtp.c
freeswitch/branches/mishehu/src/switch_xml.c
freeswitch/branches/mishehu/w32/Setup/Setup.vdproj
freeswitch/branches/mishehu/w32/vsnet/Freeswitch.sln
freeswitch/branches/mishehu/w32/vsnet/GetLibs.vbs
Log:
Woohoo, fixed the MysqlCDR fixed channel bug with null values being bound to the prepared statement. It now works properly.
Modified: freeswitch/branches/mishehu/Makefile.am
==============================================================================
--- freeswitch/branches/mishehu/Makefile.am (original)
+++ freeswitch/branches/mishehu/Makefile.am Sun Jul 23 19:05:25 2006
@@ -163,6 +163,7 @@
@rm -f build/freeswitch.env
@./build/addenv.sh build/freeswitch.env PREFIX $(PREFIX)
@./build/addenv.sh build/freeswitch.env MAKE $(MAKE)
+ mkdir -p $(PREFIX)
./build/buildlib.sh . install sqlite-3.3.5.tar.gz --prefix=$(PREFIX) --disable-tcl --enable-threadsafe
./build/buildlib.sh . install apr-1.2.6.tar.gz --prefix=$(PREFIX)
./build/buildlib.sh . install apr-util-1.2.6.tar.gz --with-apr=../apr-1.2.6 --prefix=$(PREFIX)
Modified: freeswitch/branches/mishehu/Makefile.in
==============================================================================
--- freeswitch/branches/mishehu/Makefile.in (original)
+++ freeswitch/branches/mishehu/Makefile.in Sun Jul 23 19:05:25 2006
@@ -1093,6 +1093,7 @@
@rm -f build/freeswitch.env
@./build/addenv.sh build/freeswitch.env PREFIX $(PREFIX)
@./build/addenv.sh build/freeswitch.env MAKE $(MAKE)
+ mkdir -p $(PREFIX)
./build/buildlib.sh . install sqlite-3.3.5.tar.gz --prefix=$(PREFIX) --disable-tcl --enable-threadsafe
./build/buildlib.sh . install apr-1.2.6.tar.gz --prefix=$(PREFIX)
./build/buildlib.sh . install apr-util-1.2.6.tar.gz --with-apr=../apr-1.2.6 --prefix=$(PREFIX)
Modified: freeswitch/branches/mishehu/conf/freeswitch.xml
==============================================================================
--- freeswitch/branches/mishehu/conf/freeswitch.xml (original)
+++ freeswitch/branches/mishehu/conf/freeswitch.xml Sun Jul 23 19:05:25 2006
@@ -21,14 +21,15 @@
<!-- <load module="mod_event_test"/> -->
<!-- <load module="mod_zeroconf"/> -->
<!-- <load module="mod_xmpp_event"/> -->
-
+ <!-- <load module="mod_event_socket"/> -->
+
<!-- Directory Interfaces -->
<!-- <load module="mod_ldap"/> -->
<!-- Endpoints -->
<load module="mod_exosip"/>
<!--<load module="mod_iax"/>-->
- <!-- <load module="mod_portaudio"/> -->
+ <load module="mod_portaudio"/>
<!-- <load module="mod_woomera"/> -->
<!-- <load module="mod_wanpipe"/> -->
<!-- <load module="mod_dingaling"/> -->
@@ -36,6 +37,7 @@
<!-- Applications -->
<load module="mod_bridgecall"/>
<load module="mod_echo"/>
+ <load module="mod_dptools"/>
<!-- <load module="mod_ivrtest"/> -->
<load module="mod_playback"/>
<load module="mod_commands"/>
@@ -71,14 +73,22 @@
</modules>
</configuration>
-
+
+ <configuration name="event_socket.conf" description="Socket Client">
+ <settings>
+ <param name="listen-ip" value="127.0.0.1"/>
+ <param name="listen-port" value="8021"/>
+ <param name="password" value="ClueCon"/>
+ </settings>
+ </configuration>
+
<configuration name="iax.conf" description="IAX Configuration">
<settings>
<param name="debug" value="0"/>
<!-- <param name="ip" value="1.2.3.4"> -->
<param name="port" value="4569"/>
<param name="dialplan" value="XML"/>
- <param name="codec-prefs" value="PCMU@20,PCMA,speex,L16"/>
+ <param name="codec-prefs" value="PCMU@20i,PCMA,speex,L16"/>
<param name="codec-master" value="us"/>
<param name="codec-rates" value="8"/>
</settings>
@@ -118,7 +128,11 @@
<param name="dtmf-duration" value="100"/>
<!-- the @20 is optional number of ms you want to use. Use it only
if you know the codec supports it -->
- <param name="codec-prefs" value="PCMU@20,PCMA@20"/>
+ <param name="codec-prefs" value="PCMU@20i,PCMA@20i"/>
+ <!-- Example to call for speex in wideband 16k mode
+ you can have up to 2 '@; after the codec name followed by either
+ 'i' (interval eg 20i for 20ms) or 'k' (kilohertz eg 16000k for 16khz)-->
+ <!--<param name="codec-prefs" value="SPEEX@16000k"/>-->
<!-- Payload number to bind DTMF to-->
<param name="rfc2833-pt" value="101"/>
<!-- disable to trade async for more calls -->
Modified: freeswitch/branches/mishehu/configure.in
==============================================================================
--- freeswitch/branches/mishehu/configure.in (original)
+++ freeswitch/branches/mishehu/configure.in Sun Jul 23 19:05:25 2006
@@ -1,7 +1,7 @@
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.59)
+
AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
AC_CONFIG_AUX_DIR(build/config)
AM_INIT_AUTOMAKE(libfreeswitch,0.1)
Modified: freeswitch/branches/mishehu/libs/libdingaling/aclocal.m4
==============================================================================
--- freeswitch/branches/mishehu/libs/libdingaling/aclocal.m4 (original)
+++ freeswitch/branches/mishehu/libs/libdingaling/aclocal.m4 Sun Jul 23 19:05:25 2006
@@ -143,7 +143,7 @@
default_ofile=libtool
can_build_shared=yes
-# All known linkers require a `.a' archive for static linking (except M$VC,
+# All known linkers require a `.a' archive for static linking (except MSVC,
# which needs '.lib').
libext=a
ltmain="$ac_aux_dir/ltmain.sh"
@@ -359,8 +359,8 @@
# find a string as large as possible, as long as the shell can cope with it
for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
# expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if (echo_test_string="`eval $cmd`") 2>/dev/null &&
- echo_test_string="`eval $cmd`" &&
+ if (echo_test_string=`eval $cmd`) 2>/dev/null &&
+ echo_test_string=`eval $cmd` &&
(test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
then
break
@@ -529,7 +529,7 @@
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
- case "`/usr/bin/file conftest.o`" in
+ case `/usr/bin/file conftest.o` in
*32-bit*)
case $host in
x86_64-*linux*)
@@ -611,7 +611,7 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
@@ -650,7 +650,7 @@
LDFLAGS="$LDFLAGS $3"
printf "$lt_simple_link_test_code" > conftest.$ac_ext
if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The compiler can only warn and ignore the option if not recognized
+ # The linker can only warn and ignore the option if not recognized
# So say no if there are warnings
if test -s conftest.err; then
# Append any errors to the config.log.
@@ -725,7 +725,7 @@
elif test -x /usr/sbin/sysctl; then
lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
else
- lt_cv_sys_max_cmd_len=65536 # usable default for *BSD
+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
fi
# And add a safety zone
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
@@ -737,7 +737,7 @@
# nice to cause kernel panics so lets avoid the loop below.
# First set a reasonable default.
lt_cv_sys_max_cmd_len=16384
- #
+ #
if test -x /sbin/sysconfig; then
case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
*1*) lt_cv_sys_max_cmd_len=-1 ;;
@@ -854,7 +854,7 @@
}]
EOF
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) $1 ;;
@@ -1003,7 +1003,7 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
@@ -1021,7 +1021,7 @@
_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&AS_MESSAGE_LOG_FD
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -1281,7 +1281,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -1334,7 +1335,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -1372,7 +1373,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[[123]]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -1417,7 +1425,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -1813,7 +1821,7 @@
# AC_LIBTOOL_WIN32_DLL
# --------------------
-# declare package support for building win32 dll's
+# declare package support for building win32 DLLs
AC_DEFUN([AC_LIBTOOL_WIN32_DLL],
[AC_BEFORE([$0], [AC_LIBTOOL_SETUP])
])# AC_LIBTOOL_WIN32_DLL
@@ -1987,7 +1995,7 @@
if test -n "$file_magic_test_file"; then
case $deplibs_check_method in
"file_magic "*)
- file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
$EGREP "$file_magic_regex" > /dev/null; then
@@ -2097,7 +2105,7 @@
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
lt_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
+ # but apparently some variants of GNU ld only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
@@ -2129,7 +2137,7 @@
AC_DEFUN([AC_PROG_LD_GNU],
[AC_REQUIRE([AC_PROG_EGREP])dnl
AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
-[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
+[# I'd rather use --version here, but apparently some GNU lds only accept -v.
case `$LD -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
lt_cv_prog_gnu_ld=yes
@@ -2243,7 +2251,7 @@
hpux10.20* | hpux11*)
lt_cv_file_magic_cmd=/usr/bin/file
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
@@ -2417,13 +2425,13 @@
# -----------------------------------
# sets LIBLTDL to the link flags for the libltdl convenience library and
# LTDLINCL to the include flags for the libltdl header and adds
-# --enable-ltdl-convenience to the configure arguments. Note that LIBLTDL
-# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If
-# DIRECTORY is not provided, it is assumed to be `libltdl'. LIBLTDL will
-# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with
-# '${top_srcdir}/' (note the single quotes!). If your package is not
-# flat and you're not using automake, define top_builddir and
-# top_srcdir appropriately in the Makefiles.
+# --enable-ltdl-convenience to the configure arguments. Note that
+# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided,
+# it is assumed to be `libltdl'. LIBLTDL will be prefixed with
+# '${top_builddir}/' and LTDLINCL will be prefixed with '${top_srcdir}/'
+# (note the single quotes!). If your package is not flat and you're not
+# using automake, define top_builddir and top_srcdir appropriately in
+# the Makefiles.
AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
case $enable_ltdl_convenience in
@@ -2442,13 +2450,13 @@
# -----------------------------------
# sets LIBLTDL to the link flags for the libltdl installable library and
# LTDLINCL to the include flags for the libltdl header and adds
-# --enable-ltdl-install to the configure arguments. Note that LIBLTDL
-# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If
-# DIRECTORY is not provided and an installed libltdl is not found, it is
-# assumed to be `libltdl'. LIBLTDL will be prefixed with '${top_builddir}/'
-# and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single
-# quotes!). If your package is not flat and you're not using automake,
-# define top_builddir and top_srcdir appropriately in the Makefiles.
+# --enable-ltdl-install to the configure arguments. Note that
+# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided,
+# and an installed libltdl is not found, it is assumed to be `libltdl'.
+# LIBLTDL will be prefixed with '${top_builddir}/'# and LTDLINCL with
+# '${top_srcdir}/' (note the single quotes!). If your package is not
+# flat and you're not using automake, define top_builddir and top_srcdir
+# appropriately in the Makefiles.
# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
@@ -2627,7 +2635,7 @@
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
-case "$host_os" in
+case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
@@ -2694,7 +2702,7 @@
_LT_AC_TAGVAR(compiler_lib_search_path, $1)=
# Source file extension for C++ test sources.
-ac_ext=cc
+ac_ext=cpp
# Object file extension for compiled C++ test sources.
objext=o
@@ -2910,7 +2918,7 @@
# Exported symbols can be pulled into shared objects from archives
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -2949,7 +2957,7 @@
fi
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[[012]])
_LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
;;
@@ -2987,7 +2995,7 @@
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
fi
_LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -3000,7 +3008,7 @@
output_verbose_link_cmd='echo'
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
_LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -3080,7 +3088,7 @@
;;
hpux10*|hpux11*)
if test $with_gnu_ld = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
@@ -3096,7 +3104,7 @@
;;
esac
fi
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -3122,7 +3130,7 @@
_LT_AC_TAGVAR(ld_shlibs, $1)=no
;;
aCC*)
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
;;
@@ -3143,7 +3151,7 @@
*)
if test "$GXX" = yes; then
if test $with_gnu_ld = no; then
- case "$host_cpu" in
+ case $host_cpu in
ia64*|hppa*64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
;;
@@ -3244,7 +3252,7 @@
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
;;
cxx*)
# Compaq C++
@@ -3476,10 +3484,11 @@
case $cc_basename in
CC*)
# Sun C++ 4.2, 5.x and Centerline C++
+ _LT_AC_TAGVAR(archive_cmds_need_lc,$1)=yes
_LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
+ $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -3499,15 +3508,7 @@
esac
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ output_verbose_link_cmd='echo'
# Archives containing C++ object files must be created using
# "CC -xar", where "CC" is the Sun C++ compiler. This is
@@ -3664,7 +3665,7 @@
# The `*' in the case matches for architectures that use `case' in
# $output_verbose_cmd can trigger glob expansion during the loop
# eval without this substitution.
- output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`"
+ output_verbose_link_cmd=`$echo "X$output_verbose_link_cmd" | $Xsed -e "$no_glob_subst"`
for p in `eval $output_verbose_link_cmd`; do
case $p in
@@ -3740,6 +3741,21 @@
$rm -f confest.$objext
+# PORTME: override above test on systems where it is broken
+ifelse([$1],[CXX],
+[case $host_os in
+solaris*)
+ case $cc_basename in
+ CC*)
+ # Adding this requires a known-good setup of shared libraries for
+ # Sun compiler versions before 5.6, else PIC objects from an old
+ # archive will be linked into the output, leading to subtle bugs.
+ _LT_AC_TAGVAR(postdeps,$1)='-lCstd -lCrun'
+ ;;
+ esac
+esac
+])
+
case " $_LT_AC_TAGVAR(postdeps, $1) " in
*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
esac
@@ -3809,7 +3825,7 @@
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
-case "$host_os" in
+case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
@@ -4708,7 +4724,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
;;
*)
@@ -4777,7 +4793,7 @@
aCC*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -4818,7 +4834,7 @@
# Portland Group C++ compiler.
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
cxx*)
# Compaq C++
@@ -4982,7 +4998,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -5029,7 +5045,7 @@
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -5059,12 +5075,12 @@
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
;;
- pgcc* | pgf77* | pgf90*)
+ pgcc* | pgf77* | pgf90* | pgf95*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
ccc*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
@@ -5147,7 +5163,7 @@
[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
@@ -5243,7 +5259,7 @@
if test "$with_gnu_ld" = yes; then
# If archive_cmds runs LD, not CC, wlarc should be empty
wlarc='${wl}'
-
+
# Set some defaults for GNU ld with shared library support. These
# are reset later if shared libraries are not supported. Putting them
# here allows them to be overridden if necessary.
@@ -5264,7 +5280,7 @@
*\ 2.11.*) ;; # other 2.11 versions
*) supports_anon_versioning=yes ;;
esac
-
+
# See if GNU ld supports shared libraries.
case $host_os in
aix3* | aix4* | aix5*)
@@ -5338,11 +5354,11 @@
tmp_addflag=
case $cc_basename,$host_cpu in
pgcc*) # Portland Group C compiler
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag'
;;
- pgf77* | pgf90* ) # Portland Group f77 and f90 compilers
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag -Mnomain' ;;
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
tmp_addflag=' -i_dynamic' ;;
@@ -5548,7 +5564,7 @@
# Exported symbols can be pulled into shared objects from archives
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -5588,7 +5604,7 @@
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[[012]])
_LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
;;
@@ -5617,7 +5633,7 @@
output_verbose_link_cmd='echo'
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
_LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -5626,7 +5642,7 @@
output_verbose_link_cmd='echo'
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
_LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -5692,7 +5708,7 @@
hpux10* | hpux11*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
@@ -5701,7 +5717,7 @@
;;
esac
else
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
;;
@@ -5711,7 +5727,7 @@
esac
fi
if test "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
Modified: freeswitch/branches/mishehu/libs/libdingaling/configure
==============================================================================
--- freeswitch/branches/mishehu/libs/libdingaling/configure (original)
+++ freeswitch/branches/mishehu/libs/libdingaling/configure Sun Jul 23 19:05:25 2006
@@ -287,8 +287,8 @@
# find a string as large as possible, as long as the shell can cope with it
for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
# expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if (echo_test_string="`eval $cmd`") 2>/dev/null &&
- echo_test_string="`eval $cmd`" &&
+ if (echo_test_string=`eval $cmd`) 2>/dev/null &&
+ echo_test_string=`eval $cmd` &&
(test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
then
break
@@ -3339,7 +3339,7 @@
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
lt_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
+ # but apparently some variants of GNU ld only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
@@ -3373,7 +3373,7 @@
if test "${lt_cv_prog_gnu_ld+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- # I'd rather use --version here, but apparently some GNU ld's only accept -v.
+ # I'd rather use --version here, but apparently some GNU lds only accept -v.
case `$LD -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
lt_cv_prog_gnu_ld=yes
@@ -3543,7 +3543,7 @@
hpux10.20* | hpux11*)
lt_cv_file_magic_cmd=/usr/bin/file
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
@@ -3732,7 +3732,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; then
- case "`/usr/bin/file conftest.o`" in
+ case `/usr/bin/file conftest.o` in
*32-bit*)
case $host in
x86_64-*linux*)
@@ -5465,7 +5465,7 @@
elif test -x /usr/sbin/sysctl; then
lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
else
- lt_cv_sys_max_cmd_len=65536 # usable default for *BSD
+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
fi
# And add a safety zone
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
@@ -5780,7 +5780,7 @@
default_ofile=libtool
can_build_shared=yes
-# All known linkers require a `.a' archive for static linking (except M$VC,
+# All known linkers require a `.a' archive for static linking (except MSVC,
# which needs '.lib').
libext=a
ltmain="$ac_aux_dir/ltmain.sh"
@@ -6101,7 +6101,7 @@
if test -n "$file_magic_test_file"; then
case $deplibs_check_method in
"file_magic "*)
- file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
$EGREP "$file_magic_regex" > /dev/null; then
@@ -6163,7 +6163,7 @@
if test -n "$file_magic_test_file"; then
case $deplibs_check_method in
"file_magic "*)
- file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
$EGREP "$file_magic_regex" > /dev/null; then
@@ -6312,7 +6312,7 @@
LDFLAGS="$LDFLAGS $lt_prog_compiler_static"
printf "$lt_simple_link_test_code" > conftest.$ac_ext
if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The compiler can only warn and ignore the option if not recognized
+ # The linker can only warn and ignore the option if not recognized
# So say no if there are warnings
if test -s conftest.err; then
# Append any errors to the config.log.
@@ -6363,7 +6363,7 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:6369: $lt_compile\"" >&5)
@@ -6453,7 +6453,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -6500,7 +6500,7 @@
lt_prog_compiler_wl='-Wl,'
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -6530,12 +6530,12 @@
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-static'
;;
- pgcc* | pgf77* | pgf90*)
+ pgcc* | pgf77* | pgf90* | pgf95*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
lt_prog_compiler_wl='-Wl,'
lt_prog_compiler_pic='-fpic'
- lt_prog_compiler_static='-static'
+ lt_prog_compiler_static='-Bstatic'
;;
ccc*)
lt_prog_compiler_wl='-Wl,'
@@ -6625,7 +6625,7 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:6631: $lt_compile\"" >&5)
@@ -6659,7 +6659,7 @@
fi
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
lt_prog_compiler_pic=
@@ -6687,7 +6687,7 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:6693: $lt_compile\"" >&5)
@@ -6705,7 +6705,7 @@
lt_cv_prog_compiler_c_o=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&5
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -6905,11 +6905,11 @@
tmp_addflag=
case $cc_basename,$host_cpu in
pgcc*) # Portland Group C compiler
- whole_archive_flag_spec='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag'
;;
- pgf77* | pgf90* ) # Portland Group f77 and f90 compilers
- whole_archive_flag_spec='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag -Mnomain' ;;
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
tmp_addflag=' -i_dynamic' ;;
@@ -7217,7 +7217,7 @@
# Exported symbols can be pulled into shared objects from archives
whole_archive_flag_spec=' '
archive_cmds_need_lc=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -7257,7 +7257,7 @@
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[012])
allow_undefined_flag='${wl}-undefined ${wl}suppress'
;;
@@ -7286,7 +7286,7 @@
output_verbose_link_cmd='echo'
archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -7295,7 +7295,7 @@
output_verbose_link_cmd='echo'
archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -7361,7 +7361,7 @@
hpux10* | hpux11*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
@@ -7370,7 +7370,7 @@
;;
esac
else
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
;;
@@ -7380,7 +7380,7 @@
esac
fi
if test "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_flag_spec_ld='+b $libdir'
@@ -7839,7 +7839,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -7892,7 +7893,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -7930,7 +7931,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -7975,7 +7983,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -8930,7 +8938,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 8933 "configure"
+#line 8941 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -8996,7 +9004,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
@@ -9028,7 +9036,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9031 "configure"
+#line 9039 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9094,7 +9102,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
@@ -9144,7 +9152,7 @@
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
-case "$host_os" in
+case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
@@ -9747,7 +9755,7 @@
compiler_lib_search_path_CXX=
# Source file extension for C++ test sources.
-ac_ext=cc
+ac_ext=cpp
# Object file extension for compiled C++ test sources.
objext=o
@@ -9883,7 +9891,7 @@
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
lt_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
+ # but apparently some variants of GNU ld only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
@@ -9917,7 +9925,7 @@
if test "${lt_cv_prog_gnu_ld+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- # I'd rather use --version here, but apparently some GNU ld's only accept -v.
+ # I'd rather use --version here, but apparently some GNU lds only accept -v.
case `$LD -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
lt_cv_prog_gnu_ld=yes
@@ -10197,7 +10205,7 @@
# Exported symbols can be pulled into shared objects from archives
whole_archive_flag_spec_CXX=' '
archive_cmds_need_lc_CXX=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -10236,7 +10244,7 @@
fi
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[012])
allow_undefined_flag_CXX='${wl}-undefined ${wl}suppress'
;;
@@ -10274,7 +10282,7 @@
archive_cmds_CXX='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
fi
module_cmds_CXX='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -10287,7 +10295,7 @@
output_verbose_link_cmd='echo'
archive_cmds_CXX='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
module_cmds_CXX='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -10367,7 +10375,7 @@
;;
hpux10*|hpux11*)
if test $with_gnu_ld = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir'
hardcode_libdir_flag_spec_ld_CXX='+b $libdir'
@@ -10383,7 +10391,7 @@
;;
esac
fi
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_direct_CXX=no
hardcode_shlibpath_var_CXX=no
@@ -10409,7 +10417,7 @@
ld_shlibs_CXX=no
;;
aCC*)
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_CXX='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
;;
@@ -10430,7 +10438,7 @@
*)
if test "$GXX" = yes; then
if test $with_gnu_ld = no; then
- case "$host_cpu" in
+ case $host_cpu in
ia64*|hppa*64*)
archive_cmds_CXX='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
;;
@@ -10531,7 +10539,7 @@
hardcode_libdir_flag_spec_CXX='${wl}--rpath ${wl}$libdir'
export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- whole_archive_flag_spec_CXX='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ whole_archive_flag_spec_CXX='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
;;
cxx*)
# Compaq C++
@@ -10763,10 +10771,11 @@
case $cc_basename in
CC*)
# Sun C++ 4.2, 5.x and Centerline C++
+ archive_cmds_need_lc_CXX=yes
no_undefined_flag_CXX=' -zdefs'
- archive_cmds_CXX='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
archive_expsym_cmds_CXX='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
+ $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
hardcode_libdir_flag_spec_CXX='-R$libdir'
hardcode_shlibpath_var_CXX=no
@@ -10786,15 +10795,7 @@
esac
link_all_deplibs_CXX=yes
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[LR]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ output_verbose_link_cmd='echo'
# Archives containing C++ object files must be created using
# "CC -xar", where "CC" is the Sun C++ compiler. This is
@@ -10898,7 +10899,7 @@
# The `*' in the case matches for architectures that use `case' in
# $output_verbose_cmd can trigger glob expansion during the loop
# eval without this substitution.
- output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`"
+ output_verbose_link_cmd=`$echo "X$output_verbose_link_cmd" | $Xsed -e "$no_glob_subst"`
for p in `eval $output_verbose_link_cmd`; do
case $p in
@@ -10974,6 +10975,20 @@
$rm -f confest.$objext
+# PORTME: override above test on systems where it is broken
+case $host_os in
+solaris*)
+ case $cc_basename in
+ CC*)
+ # Adding this requires a known-good setup of shared libraries for
+ # Sun compiler versions before 5.6, else PIC objects from an old
+ # archive will be linked into the output, leading to subtle bugs.
+ postdeps_CXX='-lCstd -lCrun'
+ ;;
+ esac
+esac
+
+
case " $postdeps_CXX " in
*" -lc "*) archive_cmds_need_lc_CXX=no ;;
esac
@@ -11029,7 +11044,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
;;
*)
@@ -11098,7 +11113,7 @@
aCC*)
lt_prog_compiler_wl_CXX='-Wl,'
lt_prog_compiler_static_CXX="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -11139,7 +11154,7 @@
# Portland Group C++ compiler.
lt_prog_compiler_wl_CXX='-Wl,'
lt_prog_compiler_pic_CXX='-fpic'
- lt_prog_compiler_static_CXX='-static'
+ lt_prog_compiler_static_CXX='-Bstatic'
;;
cxx*)
# Compaq C++
@@ -11273,14 +11288,14 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11279: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11294: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:11283: \$? = $ac_status" >&5
+ echo "$as_me:11298: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -11307,7 +11322,7 @@
fi
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
lt_prog_compiler_pic_CXX=
@@ -11335,14 +11350,14 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11341: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11356: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:11345: \$? = $ac_status" >&5
+ echo "$as_me:11360: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -11353,7 +11368,7 @@
lt_cv_prog_compiler_c_o_CXX=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&5
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -11616,7 +11631,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -11669,7 +11685,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -11707,7 +11723,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -11752,7 +11775,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -12707,7 +12730,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 12710 "configure"
+#line 12733 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12773,7 +12796,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
@@ -12805,7 +12828,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 12808 "configure"
+#line 12831 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12871,7 +12894,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
@@ -13427,7 +13450,7 @@
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
-case "$host_os" in
+case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
@@ -13515,7 +13538,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -13562,7 +13585,7 @@
lt_prog_compiler_wl_F77='-Wl,'
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -13592,12 +13615,12 @@
lt_prog_compiler_pic_F77='-KPIC'
lt_prog_compiler_static_F77='-static'
;;
- pgcc* | pgf77* | pgf90*)
+ pgcc* | pgf77* | pgf90* | pgf95*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
lt_prog_compiler_wl_F77='-Wl,'
lt_prog_compiler_pic_F77='-fpic'
- lt_prog_compiler_static_F77='-static'
+ lt_prog_compiler_static_F77='-Bstatic'
;;
ccc*)
lt_prog_compiler_wl_F77='-Wl,'
@@ -13687,14 +13710,14 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13693: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13716: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:13697: \$? = $ac_status" >&5
+ echo "$as_me:13720: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -13721,7 +13744,7 @@
fi
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
lt_prog_compiler_pic_F77=
@@ -13749,14 +13772,14 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13755: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13778: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13759: \$? = $ac_status" >&5
+ echo "$as_me:13782: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -13767,7 +13790,7 @@
lt_cv_prog_compiler_c_o_F77=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&5
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -13967,11 +13990,11 @@
tmp_addflag=
case $cc_basename,$host_cpu in
pgcc*) # Portland Group C compiler
- whole_archive_flag_spec_F77='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ whole_archive_flag_spec_F77='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag'
;;
- pgf77* | pgf90* ) # Portland Group f77 and f90 compilers
- whole_archive_flag_spec_F77='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ whole_archive_flag_spec_F77='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag -Mnomain' ;;
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
tmp_addflag=' -i_dynamic' ;;
@@ -14259,7 +14282,7 @@
# Exported symbols can be pulled into shared objects from archives
whole_archive_flag_spec_F77=' '
archive_cmds_need_lc_F77=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
archive_expsym_cmds_F77="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -14299,7 +14322,7 @@
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[012])
allow_undefined_flag_F77='${wl}-undefined ${wl}suppress'
;;
@@ -14328,7 +14351,7 @@
output_verbose_link_cmd='echo'
archive_cmds_F77='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
module_cmds_F77='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -14337,7 +14360,7 @@
output_verbose_link_cmd='echo'
archive_cmds_F77='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
module_cmds_F77='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -14403,7 +14426,7 @@
hpux10* | hpux11*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_F77='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
@@ -14412,7 +14435,7 @@
;;
esac
else
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_F77='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
;;
@@ -14422,7 +14445,7 @@
esac
fi
if test "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_libdir_flag_spec_F77='${wl}+b ${wl}$libdir'
hardcode_libdir_flag_spec_ld_F77='+b $libdir'
@@ -14881,7 +14904,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -14934,7 +14958,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -14972,7 +14996,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -15017,7 +15048,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -15871,14 +15902,14 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15877: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15908: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15881: \$? = $ac_status" >&5
+ echo "$as_me:15912: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -15961,7 +15992,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -16008,7 +16039,7 @@
lt_prog_compiler_wl_GCJ='-Wl,'
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -16038,12 +16069,12 @@
lt_prog_compiler_pic_GCJ='-KPIC'
lt_prog_compiler_static_GCJ='-static'
;;
- pgcc* | pgf77* | pgf90*)
+ pgcc* | pgf77* | pgf90* | pgf95*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
lt_prog_compiler_wl_GCJ='-Wl,'
lt_prog_compiler_pic_GCJ='-fpic'
- lt_prog_compiler_static_GCJ='-static'
+ lt_prog_compiler_static_GCJ='-Bstatic'
;;
ccc*)
lt_prog_compiler_wl_GCJ='-Wl,'
@@ -16133,14 +16164,14 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16139: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16170: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:16143: \$? = $ac_status" >&5
+ echo "$as_me:16174: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -16167,7 +16198,7 @@
fi
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
lt_prog_compiler_pic_GCJ=
@@ -16195,14 +16226,14 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16201: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16232: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:16205: \$? = $ac_status" >&5
+ echo "$as_me:16236: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -16213,7 +16244,7 @@
lt_cv_prog_compiler_c_o_GCJ=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&5
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -16413,11 +16444,11 @@
tmp_addflag=
case $cc_basename,$host_cpu in
pgcc*) # Portland Group C compiler
- whole_archive_flag_spec_GCJ='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ whole_archive_flag_spec_GCJ='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag'
;;
- pgf77* | pgf90* ) # Portland Group f77 and f90 compilers
- whole_archive_flag_spec_GCJ='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ whole_archive_flag_spec_GCJ='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag -Mnomain' ;;
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
tmp_addflag=' -i_dynamic' ;;
@@ -16725,7 +16756,7 @@
# Exported symbols can be pulled into shared objects from archives
whole_archive_flag_spec_GCJ=' '
archive_cmds_need_lc_GCJ=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
archive_expsym_cmds_GCJ="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -16765,7 +16796,7 @@
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[012])
allow_undefined_flag_GCJ='${wl}-undefined ${wl}suppress'
;;
@@ -16794,7 +16825,7 @@
output_verbose_link_cmd='echo'
archive_cmds_GCJ='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
module_cmds_GCJ='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -16803,7 +16834,7 @@
output_verbose_link_cmd='echo'
archive_cmds_GCJ='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
module_cmds_GCJ='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -16869,7 +16900,7 @@
hpux10* | hpux11*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_GCJ='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
@@ -16878,7 +16909,7 @@
;;
esac
else
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_GCJ='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
;;
@@ -16888,7 +16919,7 @@
esac
fi
if test "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_libdir_flag_spec_GCJ='${wl}+b ${wl}$libdir'
hardcode_libdir_flag_spec_ld_GCJ='+b $libdir'
@@ -17347,7 +17378,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -17400,7 +17432,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -17438,7 +17470,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -17483,7 +17522,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -18438,7 +18477,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 18441 "configure"
+#line 18480 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -18504,7 +18543,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
@@ -18536,7 +18575,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 18539 "configure"
+#line 18578 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -18602,7 +18641,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
Modified: freeswitch/branches/mishehu/libs/libdingaling/configure.in
==============================================================================
--- freeswitch/branches/mishehu/libs/libdingaling/configure.in (original)
+++ freeswitch/branches/mishehu/libs/libdingaling/configure.in Sun Jul 23 19:05:25 2006
@@ -1,7 +1,7 @@
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.59)
+
AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
AM_INIT_AUTOMAKE(libdingaling,0.1)
AC_CONFIG_SRCDIR([src])
Modified: freeswitch/branches/mishehu/libs/libspeakup/aclocal.m4
==============================================================================
--- freeswitch/branches/mishehu/libs/libspeakup/aclocal.m4 (original)
+++ freeswitch/branches/mishehu/libs/libspeakup/aclocal.m4 Sun Jul 23 19:05:25 2006
@@ -143,7 +143,7 @@
default_ofile=libtool
can_build_shared=yes
-# All known linkers require a `.a' archive for static linking (except M$VC,
+# All known linkers require a `.a' archive for static linking (except MSVC,
# which needs '.lib').
libext=a
ltmain="$ac_aux_dir/ltmain.sh"
@@ -359,8 +359,8 @@
# find a string as large as possible, as long as the shell can cope with it
for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
# expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if (echo_test_string="`eval $cmd`") 2>/dev/null &&
- echo_test_string="`eval $cmd`" &&
+ if (echo_test_string=`eval $cmd`) 2>/dev/null &&
+ echo_test_string=`eval $cmd` &&
(test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
then
break
@@ -529,7 +529,7 @@
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
- case "`/usr/bin/file conftest.o`" in
+ case `/usr/bin/file conftest.o` in
*32-bit*)
case $host in
x86_64-*linux*)
@@ -611,7 +611,7 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
@@ -650,7 +650,7 @@
LDFLAGS="$LDFLAGS $3"
printf "$lt_simple_link_test_code" > conftest.$ac_ext
if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The compiler can only warn and ignore the option if not recognized
+ # The linker can only warn and ignore the option if not recognized
# So say no if there are warnings
if test -s conftest.err; then
# Append any errors to the config.log.
@@ -725,7 +725,7 @@
elif test -x /usr/sbin/sysctl; then
lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
else
- lt_cv_sys_max_cmd_len=65536 # usable default for *BSD
+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
fi
# And add a safety zone
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
@@ -737,7 +737,7 @@
# nice to cause kernel panics so lets avoid the loop below.
# First set a reasonable default.
lt_cv_sys_max_cmd_len=16384
- #
+ #
if test -x /sbin/sysconfig; then
case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
*1*) lt_cv_sys_max_cmd_len=-1 ;;
@@ -854,7 +854,7 @@
}]
EOF
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) $1 ;;
@@ -1003,7 +1003,7 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
@@ -1021,7 +1021,7 @@
_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&AS_MESSAGE_LOG_FD
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -1281,7 +1281,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -1334,7 +1335,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -1372,7 +1373,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[[123]]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -1417,7 +1425,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -1813,7 +1821,7 @@
# AC_LIBTOOL_WIN32_DLL
# --------------------
-# declare package support for building win32 dll's
+# declare package support for building win32 DLLs
AC_DEFUN([AC_LIBTOOL_WIN32_DLL],
[AC_BEFORE([$0], [AC_LIBTOOL_SETUP])
])# AC_LIBTOOL_WIN32_DLL
@@ -1987,7 +1995,7 @@
if test -n "$file_magic_test_file"; then
case $deplibs_check_method in
"file_magic "*)
- file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
$EGREP "$file_magic_regex" > /dev/null; then
@@ -2097,7 +2105,7 @@
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
lt_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
+ # but apparently some variants of GNU ld only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
@@ -2129,7 +2137,7 @@
AC_DEFUN([AC_PROG_LD_GNU],
[AC_REQUIRE([AC_PROG_EGREP])dnl
AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
-[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
+[# I'd rather use --version here, but apparently some GNU lds only accept -v.
case `$LD -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
lt_cv_prog_gnu_ld=yes
@@ -2243,7 +2251,7 @@
hpux10.20* | hpux11*)
lt_cv_file_magic_cmd=/usr/bin/file
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
@@ -2417,13 +2425,13 @@
# -----------------------------------
# sets LIBLTDL to the link flags for the libltdl convenience library and
# LTDLINCL to the include flags for the libltdl header and adds
-# --enable-ltdl-convenience to the configure arguments. Note that LIBLTDL
-# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If
-# DIRECTORY is not provided, it is assumed to be `libltdl'. LIBLTDL will
-# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with
-# '${top_srcdir}/' (note the single quotes!). If your package is not
-# flat and you're not using automake, define top_builddir and
-# top_srcdir appropriately in the Makefiles.
+# --enable-ltdl-convenience to the configure arguments. Note that
+# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided,
+# it is assumed to be `libltdl'. LIBLTDL will be prefixed with
+# '${top_builddir}/' and LTDLINCL will be prefixed with '${top_srcdir}/'
+# (note the single quotes!). If your package is not flat and you're not
+# using automake, define top_builddir and top_srcdir appropriately in
+# the Makefiles.
AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
case $enable_ltdl_convenience in
@@ -2442,13 +2450,13 @@
# -----------------------------------
# sets LIBLTDL to the link flags for the libltdl installable library and
# LTDLINCL to the include flags for the libltdl header and adds
-# --enable-ltdl-install to the configure arguments. Note that LIBLTDL
-# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If
-# DIRECTORY is not provided and an installed libltdl is not found, it is
-# assumed to be `libltdl'. LIBLTDL will be prefixed with '${top_builddir}/'
-# and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single
-# quotes!). If your package is not flat and you're not using automake,
-# define top_builddir and top_srcdir appropriately in the Makefiles.
+# --enable-ltdl-install to the configure arguments. Note that
+# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided,
+# and an installed libltdl is not found, it is assumed to be `libltdl'.
+# LIBLTDL will be prefixed with '${top_builddir}/'# and LTDLINCL with
+# '${top_srcdir}/' (note the single quotes!). If your package is not
+# flat and you're not using automake, define top_builddir and top_srcdir
+# appropriately in the Makefiles.
# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
@@ -2627,7 +2635,7 @@
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
-case "$host_os" in
+case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
@@ -2694,7 +2702,7 @@
_LT_AC_TAGVAR(compiler_lib_search_path, $1)=
# Source file extension for C++ test sources.
-ac_ext=cc
+ac_ext=cpp
# Object file extension for compiled C++ test sources.
objext=o
@@ -2910,7 +2918,7 @@
# Exported symbols can be pulled into shared objects from archives
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -2949,7 +2957,7 @@
fi
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[[012]])
_LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
;;
@@ -2987,7 +2995,7 @@
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
fi
_LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -3000,7 +3008,7 @@
output_verbose_link_cmd='echo'
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
_LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -3080,7 +3088,7 @@
;;
hpux10*|hpux11*)
if test $with_gnu_ld = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
@@ -3096,7 +3104,7 @@
;;
esac
fi
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -3122,7 +3130,7 @@
_LT_AC_TAGVAR(ld_shlibs, $1)=no
;;
aCC*)
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
;;
@@ -3143,7 +3151,7 @@
*)
if test "$GXX" = yes; then
if test $with_gnu_ld = no; then
- case "$host_cpu" in
+ case $host_cpu in
ia64*|hppa*64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
;;
@@ -3244,7 +3252,7 @@
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
;;
cxx*)
# Compaq C++
@@ -3476,10 +3484,11 @@
case $cc_basename in
CC*)
# Sun C++ 4.2, 5.x and Centerline C++
+ _LT_AC_TAGVAR(archive_cmds_need_lc,$1)=yes
_LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
+ $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -3499,15 +3508,7 @@
esac
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ output_verbose_link_cmd='echo'
# Archives containing C++ object files must be created using
# "CC -xar", where "CC" is the Sun C++ compiler. This is
@@ -3664,7 +3665,7 @@
# The `*' in the case matches for architectures that use `case' in
# $output_verbose_cmd can trigger glob expansion during the loop
# eval without this substitution.
- output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`"
+ output_verbose_link_cmd=`$echo "X$output_verbose_link_cmd" | $Xsed -e "$no_glob_subst"`
for p in `eval $output_verbose_link_cmd`; do
case $p in
@@ -3740,6 +3741,21 @@
$rm -f confest.$objext
+# PORTME: override above test on systems where it is broken
+ifelse([$1],[CXX],
+[case $host_os in
+solaris*)
+ case $cc_basename in
+ CC*)
+ # Adding this requires a known-good setup of shared libraries for
+ # Sun compiler versions before 5.6, else PIC objects from an old
+ # archive will be linked into the output, leading to subtle bugs.
+ _LT_AC_TAGVAR(postdeps,$1)='-lCstd -lCrun'
+ ;;
+ esac
+esac
+])
+
case " $_LT_AC_TAGVAR(postdeps, $1) " in
*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
esac
@@ -3809,7 +3825,7 @@
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
-case "$host_os" in
+case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
@@ -4708,7 +4724,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
;;
*)
@@ -4777,7 +4793,7 @@
aCC*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -4818,7 +4834,7 @@
# Portland Group C++ compiler.
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
cxx*)
# Compaq C++
@@ -4982,7 +4998,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -5029,7 +5045,7 @@
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -5059,12 +5075,12 @@
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
;;
- pgcc* | pgf77* | pgf90*)
+ pgcc* | pgf77* | pgf90* | pgf95*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
ccc*)
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
@@ -5147,7 +5163,7 @@
[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
@@ -5243,7 +5259,7 @@
if test "$with_gnu_ld" = yes; then
# If archive_cmds runs LD, not CC, wlarc should be empty
wlarc='${wl}'
-
+
# Set some defaults for GNU ld with shared library support. These
# are reset later if shared libraries are not supported. Putting them
# here allows them to be overridden if necessary.
@@ -5264,7 +5280,7 @@
*\ 2.11.*) ;; # other 2.11 versions
*) supports_anon_versioning=yes ;;
esac
-
+
# See if GNU ld supports shared libraries.
case $host_os in
aix3* | aix4* | aix5*)
@@ -5338,11 +5354,11 @@
tmp_addflag=
case $cc_basename,$host_cpu in
pgcc*) # Portland Group C compiler
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag'
;;
- pgf77* | pgf90* ) # Portland Group f77 and f90 compilers
- _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag -Mnomain' ;;
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
tmp_addflag=' -i_dynamic' ;;
@@ -5548,7 +5564,7 @@
# Exported symbols can be pulled into shared objects from archives
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -5588,7 +5604,7 @@
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[[012]])
_LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
;;
@@ -5617,7 +5633,7 @@
output_verbose_link_cmd='echo'
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
_LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -5626,7 +5642,7 @@
output_verbose_link_cmd='echo'
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
_LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -5692,7 +5708,7 @@
hpux10* | hpux11*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
@@ -5701,7 +5717,7 @@
;;
esac
else
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
;;
@@ -5711,7 +5727,7 @@
esac
fi
if test "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
Modified: freeswitch/branches/mishehu/libs/libspeakup/configure
==============================================================================
--- freeswitch/branches/mishehu/libs/libspeakup/configure (original)
+++ freeswitch/branches/mishehu/libs/libspeakup/configure Sun Jul 23 19:05:25 2006
@@ -287,8 +287,8 @@
# find a string as large as possible, as long as the shell can cope with it
for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
# expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if (echo_test_string="`eval $cmd`") 2>/dev/null &&
- echo_test_string="`eval $cmd`" &&
+ if (echo_test_string=`eval $cmd`) 2>/dev/null &&
+ echo_test_string=`eval $cmd` &&
(test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
then
break
@@ -3339,7 +3339,7 @@
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
lt_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
+ # but apparently some variants of GNU ld only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
@@ -3373,7 +3373,7 @@
if test "${lt_cv_prog_gnu_ld+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- # I'd rather use --version here, but apparently some GNU ld's only accept -v.
+ # I'd rather use --version here, but apparently some GNU lds only accept -v.
case `$LD -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
lt_cv_prog_gnu_ld=yes
@@ -3543,7 +3543,7 @@
hpux10.20* | hpux11*)
lt_cv_file_magic_cmd=/usr/bin/file
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
@@ -3732,7 +3732,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; then
- case "`/usr/bin/file conftest.o`" in
+ case `/usr/bin/file conftest.o` in
*32-bit*)
case $host in
x86_64-*linux*)
@@ -5465,7 +5465,7 @@
elif test -x /usr/sbin/sysctl; then
lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
else
- lt_cv_sys_max_cmd_len=65536 # usable default for *BSD
+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
fi
# And add a safety zone
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
@@ -5780,7 +5780,7 @@
default_ofile=libtool
can_build_shared=yes
-# All known linkers require a `.a' archive for static linking (except M$VC,
+# All known linkers require a `.a' archive for static linking (except MSVC,
# which needs '.lib').
libext=a
ltmain="$ac_aux_dir/ltmain.sh"
@@ -6101,7 +6101,7 @@
if test -n "$file_magic_test_file"; then
case $deplibs_check_method in
"file_magic "*)
- file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
$EGREP "$file_magic_regex" > /dev/null; then
@@ -6163,7 +6163,7 @@
if test -n "$file_magic_test_file"; then
case $deplibs_check_method in
"file_magic "*)
- file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
$EGREP "$file_magic_regex" > /dev/null; then
@@ -6312,7 +6312,7 @@
LDFLAGS="$LDFLAGS $lt_prog_compiler_static"
printf "$lt_simple_link_test_code" > conftest.$ac_ext
if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The compiler can only warn and ignore the option if not recognized
+ # The linker can only warn and ignore the option if not recognized
# So say no if there are warnings
if test -s conftest.err; then
# Append any errors to the config.log.
@@ -6363,7 +6363,7 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:6369: $lt_compile\"" >&5)
@@ -6453,7 +6453,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -6500,7 +6500,7 @@
lt_prog_compiler_wl='-Wl,'
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -6530,12 +6530,12 @@
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-static'
;;
- pgcc* | pgf77* | pgf90*)
+ pgcc* | pgf77* | pgf90* | pgf95*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
lt_prog_compiler_wl='-Wl,'
lt_prog_compiler_pic='-fpic'
- lt_prog_compiler_static='-static'
+ lt_prog_compiler_static='-Bstatic'
;;
ccc*)
lt_prog_compiler_wl='-Wl,'
@@ -6625,7 +6625,7 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:6631: $lt_compile\"" >&5)
@@ -6659,7 +6659,7 @@
fi
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
lt_prog_compiler_pic=
@@ -6687,7 +6687,7 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:6693: $lt_compile\"" >&5)
@@ -6705,7 +6705,7 @@
lt_cv_prog_compiler_c_o=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&5
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -6905,11 +6905,11 @@
tmp_addflag=
case $cc_basename,$host_cpu in
pgcc*) # Portland Group C compiler
- whole_archive_flag_spec='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag'
;;
- pgf77* | pgf90* ) # Portland Group f77 and f90 compilers
- whole_archive_flag_spec='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag -Mnomain' ;;
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
tmp_addflag=' -i_dynamic' ;;
@@ -7217,7 +7217,7 @@
# Exported symbols can be pulled into shared objects from archives
whole_archive_flag_spec=' '
archive_cmds_need_lc=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -7257,7 +7257,7 @@
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[012])
allow_undefined_flag='${wl}-undefined ${wl}suppress'
;;
@@ -7286,7 +7286,7 @@
output_verbose_link_cmd='echo'
archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -7295,7 +7295,7 @@
output_verbose_link_cmd='echo'
archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -7361,7 +7361,7 @@
hpux10* | hpux11*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
@@ -7370,7 +7370,7 @@
;;
esac
else
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
;;
@@ -7380,7 +7380,7 @@
esac
fi
if test "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_flag_spec_ld='+b $libdir'
@@ -7839,7 +7839,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -7892,7 +7893,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -7930,7 +7931,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -7975,7 +7983,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -8930,7 +8938,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 8933 "configure"
+#line 8941 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -8996,7 +9004,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
@@ -9028,7 +9036,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9031 "configure"
+#line 9039 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9094,7 +9102,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
@@ -9144,7 +9152,7 @@
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
-case "$host_os" in
+case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
@@ -9747,7 +9755,7 @@
compiler_lib_search_path_CXX=
# Source file extension for C++ test sources.
-ac_ext=cc
+ac_ext=cpp
# Object file extension for compiled C++ test sources.
objext=o
@@ -9883,7 +9891,7 @@
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
lt_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
+ # but apparently some variants of GNU ld only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
@@ -9917,7 +9925,7 @@
if test "${lt_cv_prog_gnu_ld+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- # I'd rather use --version here, but apparently some GNU ld's only accept -v.
+ # I'd rather use --version here, but apparently some GNU lds only accept -v.
case `$LD -v 2>&1 </dev/null` in
*GNU* | *'with BFD'*)
lt_cv_prog_gnu_ld=yes
@@ -10197,7 +10205,7 @@
# Exported symbols can be pulled into shared objects from archives
whole_archive_flag_spec_CXX=' '
archive_cmds_need_lc_CXX=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -10236,7 +10244,7 @@
fi
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[012])
allow_undefined_flag_CXX='${wl}-undefined ${wl}suppress'
;;
@@ -10274,7 +10282,7 @@
archive_cmds_CXX='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
fi
module_cmds_CXX='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -10287,7 +10295,7 @@
output_verbose_link_cmd='echo'
archive_cmds_CXX='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
module_cmds_CXX='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -10367,7 +10375,7 @@
;;
hpux10*|hpux11*)
if test $with_gnu_ld = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir'
hardcode_libdir_flag_spec_ld_CXX='+b $libdir'
@@ -10383,7 +10391,7 @@
;;
esac
fi
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_direct_CXX=no
hardcode_shlibpath_var_CXX=no
@@ -10409,7 +10417,7 @@
ld_shlibs_CXX=no
;;
aCC*)
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_CXX='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
;;
@@ -10430,7 +10438,7 @@
*)
if test "$GXX" = yes; then
if test $with_gnu_ld = no; then
- case "$host_cpu" in
+ case $host_cpu in
ia64*|hppa*64*)
archive_cmds_CXX='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
;;
@@ -10531,7 +10539,7 @@
hardcode_libdir_flag_spec_CXX='${wl}--rpath ${wl}$libdir'
export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- whole_archive_flag_spec_CXX='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ whole_archive_flag_spec_CXX='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
;;
cxx*)
# Compaq C++
@@ -10763,10 +10771,11 @@
case $cc_basename in
CC*)
# Sun C++ 4.2, 5.x and Centerline C++
+ archive_cmds_need_lc_CXX=yes
no_undefined_flag_CXX=' -zdefs'
- archive_cmds_CXX='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
archive_expsym_cmds_CXX='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
+ $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
hardcode_libdir_flag_spec_CXX='-R$libdir'
hardcode_shlibpath_var_CXX=no
@@ -10786,15 +10795,7 @@
esac
link_all_deplibs_CXX=yes
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[LR]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ output_verbose_link_cmd='echo'
# Archives containing C++ object files must be created using
# "CC -xar", where "CC" is the Sun C++ compiler. This is
@@ -10898,7 +10899,7 @@
# The `*' in the case matches for architectures that use `case' in
# $output_verbose_cmd can trigger glob expansion during the loop
# eval without this substitution.
- output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`"
+ output_verbose_link_cmd=`$echo "X$output_verbose_link_cmd" | $Xsed -e "$no_glob_subst"`
for p in `eval $output_verbose_link_cmd`; do
case $p in
@@ -10974,6 +10975,20 @@
$rm -f confest.$objext
+# PORTME: override above test on systems where it is broken
+case $host_os in
+solaris*)
+ case $cc_basename in
+ CC*)
+ # Adding this requires a known-good setup of shared libraries for
+ # Sun compiler versions before 5.6, else PIC objects from an old
+ # archive will be linked into the output, leading to subtle bugs.
+ postdeps_CXX='-lCstd -lCrun'
+ ;;
+ esac
+esac
+
+
case " $postdeps_CXX " in
*" -lc "*) archive_cmds_need_lc_CXX=no ;;
esac
@@ -11029,7 +11044,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
;;
*)
@@ -11098,7 +11113,7 @@
aCC*)
lt_prog_compiler_wl_CXX='-Wl,'
lt_prog_compiler_static_CXX="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -11139,7 +11154,7 @@
# Portland Group C++ compiler.
lt_prog_compiler_wl_CXX='-Wl,'
lt_prog_compiler_pic_CXX='-fpic'
- lt_prog_compiler_static_CXX='-static'
+ lt_prog_compiler_static_CXX='-Bstatic'
;;
cxx*)
# Compaq C++
@@ -11273,14 +11288,14 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11279: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11294: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:11283: \$? = $ac_status" >&5
+ echo "$as_me:11298: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -11307,7 +11322,7 @@
fi
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
lt_prog_compiler_pic_CXX=
@@ -11335,14 +11350,14 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11341: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11356: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:11345: \$? = $ac_status" >&5
+ echo "$as_me:11360: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -11353,7 +11368,7 @@
lt_cv_prog_compiler_c_o_CXX=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&5
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -11616,7 +11631,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -11669,7 +11685,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -11707,7 +11723,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -11752,7 +11775,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -12707,7 +12730,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 12710 "configure"
+#line 12733 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12773,7 +12796,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
@@ -12805,7 +12828,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 12808 "configure"
+#line 12831 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12871,7 +12894,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
@@ -13427,7 +13450,7 @@
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
-case "$host_os" in
+case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
@@ -13515,7 +13538,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -13562,7 +13585,7 @@
lt_prog_compiler_wl_F77='-Wl,'
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -13592,12 +13615,12 @@
lt_prog_compiler_pic_F77='-KPIC'
lt_prog_compiler_static_F77='-static'
;;
- pgcc* | pgf77* | pgf90*)
+ pgcc* | pgf77* | pgf90* | pgf95*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
lt_prog_compiler_wl_F77='-Wl,'
lt_prog_compiler_pic_F77='-fpic'
- lt_prog_compiler_static_F77='-static'
+ lt_prog_compiler_static_F77='-Bstatic'
;;
ccc*)
lt_prog_compiler_wl_F77='-Wl,'
@@ -13687,14 +13710,14 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13693: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13716: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:13697: \$? = $ac_status" >&5
+ echo "$as_me:13720: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -13721,7 +13744,7 @@
fi
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
lt_prog_compiler_pic_F77=
@@ -13749,14 +13772,14 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13755: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13778: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13759: \$? = $ac_status" >&5
+ echo "$as_me:13782: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -13767,7 +13790,7 @@
lt_cv_prog_compiler_c_o_F77=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&5
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -13967,11 +13990,11 @@
tmp_addflag=
case $cc_basename,$host_cpu in
pgcc*) # Portland Group C compiler
- whole_archive_flag_spec_F77='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ whole_archive_flag_spec_F77='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag'
;;
- pgf77* | pgf90* ) # Portland Group f77 and f90 compilers
- whole_archive_flag_spec_F77='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ whole_archive_flag_spec_F77='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag -Mnomain' ;;
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
tmp_addflag=' -i_dynamic' ;;
@@ -14259,7 +14282,7 @@
# Exported symbols can be pulled into shared objects from archives
whole_archive_flag_spec_F77=' '
archive_cmds_need_lc_F77=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
archive_expsym_cmds_F77="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -14299,7 +14322,7 @@
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[012])
allow_undefined_flag_F77='${wl}-undefined ${wl}suppress'
;;
@@ -14328,7 +14351,7 @@
output_verbose_link_cmd='echo'
archive_cmds_F77='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
module_cmds_F77='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -14337,7 +14360,7 @@
output_verbose_link_cmd='echo'
archive_cmds_F77='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
module_cmds_F77='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -14403,7 +14426,7 @@
hpux10* | hpux11*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_F77='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
@@ -14412,7 +14435,7 @@
;;
esac
else
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_F77='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
;;
@@ -14422,7 +14445,7 @@
esac
fi
if test "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_libdir_flag_spec_F77='${wl}+b ${wl}$libdir'
hardcode_libdir_flag_spec_ld_F77='+b $libdir'
@@ -14881,7 +14904,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -14934,7 +14958,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -14972,7 +14996,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -15017,7 +15048,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -15871,14 +15902,14 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15877: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15908: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15881: \$? = $ac_status" >&5
+ echo "$as_me:15912: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -15961,7 +15992,7 @@
hpux*)
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -16008,7 +16039,7 @@
lt_prog_compiler_wl_GCJ='-Wl,'
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
@@ -16038,12 +16069,12 @@
lt_prog_compiler_pic_GCJ='-KPIC'
lt_prog_compiler_static_GCJ='-static'
;;
- pgcc* | pgf77* | pgf90*)
+ pgcc* | pgf77* | pgf90* | pgf95*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
lt_prog_compiler_wl_GCJ='-Wl,'
lt_prog_compiler_pic_GCJ='-fpic'
- lt_prog_compiler_static_GCJ='-static'
+ lt_prog_compiler_static_GCJ='-Bstatic'
;;
ccc*)
lt_prog_compiler_wl_GCJ='-Wl,'
@@ -16133,14 +16164,14 @@
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16139: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16170: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:16143: \$? = $ac_status" >&5
+ echo "$as_me:16174: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -16167,7 +16198,7 @@
fi
fi
-case "$host_os" in
+case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
lt_prog_compiler_pic_GCJ=
@@ -16195,14 +16226,14 @@
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16201: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16232: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:16205: \$? = $ac_status" >&5
+ echo "$as_me:16236: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -16213,7 +16244,7 @@
lt_cv_prog_compiler_c_o_GCJ=yes
fi
fi
- chmod u+w .
+ chmod u+w . 2>&5
$rm conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
@@ -16413,11 +16444,11 @@
tmp_addflag=
case $cc_basename,$host_cpu in
pgcc*) # Portland Group C compiler
- whole_archive_flag_spec_GCJ='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ whole_archive_flag_spec_GCJ='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag'
;;
- pgf77* | pgf90* ) # Portland Group f77 and f90 compilers
- whole_archive_flag_spec_GCJ='${wl}--whole-archive,`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ whole_archive_flag_spec_GCJ='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag -Mnomain' ;;
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
tmp_addflag=' -i_dynamic' ;;
@@ -16725,7 +16756,7 @@
# Exported symbols can be pulled into shared objects from archives
whole_archive_flag_spec_GCJ=' '
archive_cmds_need_lc_GCJ=yes
- # This is similar to how AIX traditionally builds it's shared libraries.
+ # This is similar to how AIX traditionally builds its shared libraries.
archive_expsym_cmds_GCJ="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
@@ -16765,7 +16796,7 @@
;;
darwin* | rhapsody*)
- case "$host_os" in
+ case $host_os in
rhapsody* | darwin1.[012])
allow_undefined_flag_GCJ='${wl}-undefined ${wl}suppress'
;;
@@ -16794,7 +16825,7 @@
output_verbose_link_cmd='echo'
archive_cmds_GCJ='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
module_cmds_GCJ='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
else
@@ -16803,7 +16834,7 @@
output_verbose_link_cmd='echo'
archive_cmds_GCJ='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
module_cmds_GCJ='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
- # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
module_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
@@ -16869,7 +16900,7 @@
hpux10* | hpux11*)
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_GCJ='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
@@ -16878,7 +16909,7 @@
;;
esac
else
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*|ia64*)
archive_cmds_GCJ='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
;;
@@ -16888,7 +16919,7 @@
esac
fi
if test "$with_gnu_ld" = no; then
- case "$host_cpu" in
+ case $host_cpu in
hppa*64*)
hardcode_libdir_flag_spec_GCJ='${wl}+b ${wl}$libdir'
hardcode_libdir_flag_spec_ld_GCJ='+b $libdir'
@@ -17347,7 +17378,8 @@
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$rm \$dlpath'
@@ -17400,7 +17432,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
@@ -17438,7 +17470,14 @@
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
@@ -17483,7 +17522,7 @@
version_type=sunos
need_lib_prefix=no
need_version=no
- case "$host_cpu" in
+ case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
@@ -18438,7 +18477,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 18441 "configure"
+#line 18480 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -18504,7 +18543,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
@@ -18536,7 +18575,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 18539 "configure"
+#line 18578 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -18602,7 +18641,7 @@
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
+ (./conftest; exit; ) >&5 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
Modified: freeswitch/branches/mishehu/libs/libspeakup/configure.in
==============================================================================
--- freeswitch/branches/mishehu/libs/libspeakup/configure.in (original)
+++ freeswitch/branches/mishehu/libs/libspeakup/configure.in Sun Jul 23 19:05:25 2006
@@ -1,7 +1,6 @@
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.59)
AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
AM_INIT_AUTOMAKE(libspeakup,0.1)
AC_CONFIG_SRCDIR([src])
Modified: freeswitch/branches/mishehu/libs/libteletone/src/libteletone_generate.c
==============================================================================
--- freeswitch/branches/mishehu/libs/libteletone/src/libteletone_generate.c (original)
+++ freeswitch/branches/mishehu/libs/libteletone/src/libteletone_generate.c Sun Jul 23 19:05:25 2006
@@ -30,6 +30,9 @@
*
*/
#include <libteletone.h>
+#define SMAX 32767
+#define SMIN -32768
+#define normalize_to_16bit(n) if (n > SMAX) n = SMAX; else if (n < SMIN) n = SMIN;
@@ -163,6 +166,7 @@
for (i = 0; i < freqlen; i++) {
sample += ((teletone_process_t) 2 * (ts->volume > 0 ? ts->volume : 1) * cos(tones[i] * ts->samples * period));
}
+ normalize_to_16bit(sample);
ts->buffer[ts->samples] = (teletone_audio_t)sample;
for (c = 1; c < ts->channels; c++) {
Modified: freeswitch/branches/mishehu/modules.conf.in
==============================================================================
--- freeswitch/branches/mishehu/modules.conf.in (original)
+++ freeswitch/branches/mishehu/modules.conf.in Sun Jul 23 19:05:25 2006
@@ -1,5 +1,6 @@
loggers/mod_console
loggers/mod_syslog
+applications/mod_dptools
applications/mod_commands
applications/mod_conference
applications/mod_bridgecall
@@ -28,6 +29,7 @@
#event_handlers/mod_event_test
event_handlers/mod_xmpp_event
#event_handlers/mod_zeroconf
+#event_handlers/mod_event_socket
formats/mod_sndfile
#languages/mod_perl
#languages/mod_spidermonkey
Modified: freeswitch/branches/mishehu/src/include/switch.h
==============================================================================
--- freeswitch/branches/mishehu/src/include/switch.h (original)
+++ freeswitch/branches/mishehu/src/include/switch.h Sun Jul 23 19:05:25 2006
@@ -100,19 +100,19 @@
*
* Additionally, the experimental external modules make use of several external modules:
*
- * mod_Exosip:
+ * mod_exosip:
* - eXoSIP (http://savannah.nongnu.org/projects/exosip/)
*
- * mod_iaxchan:
+ * mod_iax:
* - libiax2 (forked from http://iaxclient.sourceforge.net/)
*
- * mod_speexcodec
+ * mod_speex
* - libspeex (http://www.speex.org/)
*
* mod_portaudio
* - portaudio (http://www.portaudio.com/)
*
- * mod_woomerachan
+ * mod_woomera
* - openh323/woomera (http://www.voxgratia.org/)
*
* mod_xmpp_event
Modified: freeswitch/branches/mishehu/src/include/switch_core.h
==============================================================================
--- freeswitch/branches/mishehu/src/include/switch_core.h (original)
+++ freeswitch/branches/mishehu/src/include/switch_core.h Sun Jul 23 19:05:25 2006
@@ -118,10 +118,10 @@
/*!
\brief Set/Get Session Limit
- \param new new value (if > 0)
+ \param new_limit new value (if > 0)
\return the current session limit
*/
-SWITCH_DECLARE(uint32_t) switch_core_session_limit(uint32_t new);
+SWITCH_DECLARE(uint32_t) switch_core_session_limit(uint32_t new_limit);
/*!
\brief Destroy the core
@@ -335,9 +335,17 @@
\param event the event to send
\return the status returned by the message handler
*/
-SWITCH_DECLARE(switch_status_t) switch_core_session_event_send(char *uuid_str, switch_event_t *event);
+SWITCH_DECLARE(switch_status_t) switch_core_session_event_send(char *uuid_str, switch_event_t **event);
/*!
+ \brief Send an event to a session translating it to it's native message format
+ \param session the session to receive the event
+ \param event the event to receive
+ \return the status returned by the handler
+*/
+SWITCH_DECLARE(switch_status_t) switch_core_session_receive_event(switch_core_session_t *session, switch_event_t **event);
+
+/*!
\brief Retrieve private user data from a session
\param session the session to retrieve from
\return a pointer to the private data
@@ -433,7 +441,16 @@
\param event the event to queue
\return the status returned by the message handler
*/
-SWITCH_DECLARE(switch_status_t) switch_core_session_queue_event(switch_core_session_t *session, switch_event_t *event);
+SWITCH_DECLARE(switch_status_t) switch_core_session_queue_event(switch_core_session_t *session, switch_event_t **event);
+
+/*!
+ \brief DE-Queue an event on a given session
+ \param session the session to de-queue the message on
+ \param event the de-queued event
+ \return the SWITCH_STATUS_SUCCESS if the event was de-queued
+*/
+SWITCH_DECLARE(switch_status_t) switch_core_session_dequeue_event(switch_core_session_t *session, switch_event_t **event);
+
/*!
\brief Read a frame from a session
Modified: freeswitch/branches/mishehu/src/include/switch_event.h
==============================================================================
--- freeswitch/branches/mishehu/src/include/switch_event.h (original)
+++ freeswitch/branches/mishehu/src/include/switch_event.h Sun Jul 23 19:05:25 2006
@@ -209,6 +209,14 @@
SWITCH_DECLARE(char *) switch_event_name(switch_event_types_t event);
/*!
+ \brief return the event id that matches a given event name
+ \param name the name of the event
+ \param type the event id to return
+ \return SWITCH_STATUS_SUCCESS if there was a match
+*/
+SWITCH_DECLARE(switch_status_t) switch_name_event(char *name, switch_event_types_t *type);
+
+/*!
\brief Reserve a subclass name for private use with a custom event
\param owner the owner of the event name
\param subclass_name the name to reserve
Modified: freeswitch/branches/mishehu/src/include/switch_ivr.h
==============================================================================
--- freeswitch/branches/mishehu/src/include/switch_ivr.h (original)
+++ freeswitch/branches/mishehu/src/include/switch_ivr.h Sun Jul 23 19:05:25 2006
@@ -50,7 +50,16 @@
* @{
*/
+
/*!
+ \brief Wait for time to pass for a specified number of milliseconds
+ \param session the session to wait for.
+ \param ms the number of milliseconds
+ \return SWITCH_STATUS_SUCCESS if the channel is still up
+*/
+SWITCH_DECLARE(switch_status_t) switch_ivr_sleep(switch_core_session_t *session, uint32_t ms);
+
+/*!
\brief Wait for DTMF digits calling a pluggable callback function when digits are collected.
\param session the session to read.
\param dtmf_callback code to execute if any dtmf is dialed during the recording
@@ -59,7 +68,7 @@
\return SWITCH_STATUS_SUCCESS to keep the collection moving.
*/
SWITCH_DECLARE(switch_status_t) switch_ivr_collect_digits_callback(switch_core_session_t *session,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t dtmf_callback,
void *buf,
unsigned int buflen);
@@ -98,7 +107,7 @@
switch_file_handle_t *fh,
char *file,
char *timer_name,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t dtmf_callback,
void *buf,
unsigned int buflen);
@@ -118,7 +127,7 @@
SWITCH_DECLARE(switch_status_t) switch_ivr_record_file(switch_core_session_t *session,
switch_file_handle_t *fh,
char *file,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t dtmf_callback,
void *buf,
unsigned int buflen);
@@ -127,7 +136,7 @@
switch_speech_handle_t *sh,
switch_codec_t *codec,
switch_timer_t *timer,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t dtmf_callback,
char *text,
void *buf,
unsigned int buflen);
@@ -150,7 +159,7 @@
char *voice_name,
char *timer_name,
uint32_t rate,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t dtmf_callback,
char *text,
void *buf,
unsigned int buflen);
@@ -169,7 +178,7 @@
SWITCH_DECLARE(switch_status_t) switch_ivr_multi_threaded_bridge(switch_core_session_t *session,
switch_core_session_t *peer_session,
unsigned int timelimit,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t dtmf_callback,
void *session_data,
void *peer_session_data);
Modified: freeswitch/branches/mishehu/src/include/switch_module_interfaces.h
==============================================================================
--- freeswitch/branches/mishehu/src/include/switch_module_interfaces.h (original)
+++ freeswitch/branches/mishehu/src/include/switch_module_interfaces.h Sun Jul 23 19:05:25 2006
@@ -93,10 +93,10 @@
};
/*! \brief Node in which to store custom receive message callback hooks */
-struct switch_io_event_hook_queue_event {
+struct switch_io_event_hook_receive_event {
/*! the answer channel callback hook*/
- switch_queue_event_hook_t queue_event;
- struct switch_io_event_hook_queue_event *next;
+ switch_receive_event_hook_t receive_event;
+ struct switch_io_event_hook_receive_event *next;
};
/*! \brief Node in which to store custom read frame channel callback hooks */
@@ -150,7 +150,7 @@
/*! a list of receive message hooks */
switch_io_event_hook_receive_message_t *receive_message;
/*! a list of queue message hooks */
- switch_io_event_hook_queue_event_t *queue_event;
+ switch_io_event_hook_receive_event_t *receive_event;
/*! a list of read frame hooks */
switch_io_event_hook_read_frame_t *read_frame;
/*! a list of write frame hooks */
@@ -186,7 +186,7 @@
/*! receive a message from another session*/
switch_status_t (*receive_message)(switch_core_session_t *, switch_core_session_message_t *);
/*! queue a message for another session*/
- switch_status_t (*queue_event)(switch_core_session_t *, switch_event_t *);
+ switch_status_t (*receive_event)(switch_core_session_t *, switch_event_t *);
};
/*! \brief Abstraction of an module endpoint interface
Modified: freeswitch/branches/mishehu/src/include/switch_types.h
==============================================================================
--- freeswitch/branches/mishehu/src/include/switch_types.h (original)
+++ freeswitch/branches/mishehu/src/include/switch_types.h Sun Jul 23 19:05:25 2006
@@ -92,7 +92,7 @@
#define SWITCH_MAX_STATE_HANDLERS 30
#define SWITCH_TRUE 1
#define SWITCH_FALSE 0
-#define SWITCH_CORE_QUEUE_LEN 20000
+#define SWITCH_CORE_QUEUE_LEN 100000
typedef enum {
SWITCH_XML_SECTION_RESULT = 0,
@@ -573,6 +573,10 @@
SWITCH_EVENT_ALL
} switch_event_types_t;
+typedef enum {
+ SWITCH_INPUT_TYPE_DTMF,
+ SWITCH_INPUT_TYPE_EVENT
+} switch_input_type_t;
typedef enum {
SWITCH_CAUSE_UNALLOCATED = 1,
@@ -651,7 +655,7 @@
typedef struct switch_io_event_hook_outgoing_channel switch_io_event_hook_outgoing_channel_t;
typedef struct switch_io_event_hook_answer_channel switch_io_event_hook_answer_channel_t;
typedef struct switch_io_event_hook_receive_message switch_io_event_hook_receive_message_t;
-typedef struct switch_io_event_hook_queue_event switch_io_event_hook_queue_event_t;
+typedef struct switch_io_event_hook_receive_event switch_io_event_hook_receive_event_t;
typedef struct switch_io_event_hook_read_frame switch_io_event_hook_read_frame_t;
typedef struct switch_io_event_hook_write_frame switch_io_event_hook_write_frame_t;
typedef struct switch_io_event_hook_kill_channel switch_io_event_hook_kill_channel_t;
@@ -682,7 +686,7 @@
typedef switch_status_t (*switch_outgoing_channel_hook_t)(switch_core_session_t *, switch_caller_profile_t *, switch_core_session_t *);
typedef switch_status_t (*switch_answer_channel_hook_t)(switch_core_session_t *);
typedef switch_status_t (*switch_receive_message_hook_t)(switch_core_session_t *, switch_core_session_message_t *);
-typedef switch_status_t (*switch_queue_event_hook_t)(switch_core_session_t *, switch_event_t *);
+typedef switch_status_t (*switch_receive_event_hook_t)(switch_core_session_t *, switch_event_t *);
typedef switch_status_t (*switch_read_frame_hook_t)(switch_core_session_t *, switch_frame_t **, int, switch_io_flag_t, int);
typedef switch_status_t (*switch_write_frame_hook_t)(switch_core_session_t *, switch_frame_t *, int, switch_io_flag_t, int);
typedef switch_status_t (*switch_kill_channel_hook_t)(switch_core_session_t *, int);
@@ -692,7 +696,11 @@
typedef struct switch_stream_handle switch_stream_handle_t;
typedef switch_status_t (*switch_stream_handle_write_function_t)(switch_stream_handle_t *handle, char *fmt, ...);
typedef switch_status_t (*switch_api_function_t)(char *in, switch_stream_handle_t *stream);
-typedef switch_status_t (*switch_dtmf_callback_function_t)(switch_core_session_t *session, char *dtmf, void *buf, unsigned int buflen);
+typedef switch_status_t (*switch_input_callback_function_t)(switch_core_session_t *session,
+ void *input,
+ switch_input_type_t input_type,
+ void *buf,
+ unsigned int buflen);
typedef int (*switch_core_db_callback_func_t)(void *pArg, int argc, char **argv, char **columnNames);
typedef switch_status_t (*switch_module_load_t) (switch_loadable_module_interface_t **, char *);
typedef switch_status_t (*switch_module_reload_t) (void);
Modified: freeswitch/branches/mishehu/src/mod/applications/mod_commands/mod_commands.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/applications/mod_commands/mod_commands.c (original)
+++ freeswitch/branches/mishehu/src/mod/applications/mod_commands/mod_commands.c Sun Jul 23 19:05:25 2006
@@ -184,20 +184,63 @@
return SWITCH_STATUS_SUCCESS;
}
+struct holder {
+ switch_stream_handle_t *stream;
+ char *http;
+ uint32_t count;
+};
+
static int show_callback(void *pArg, int argc, char **argv, char **columnNames){
- switch_stream_handle_t *stream = (switch_stream_handle_t *) pArg;
+ struct holder *holder = (struct holder *) pArg;
+ int x;
- stream->write_function(stream, "%s|%s\n", argv[0], argv[1] ? argv[1] : "NULL");
+
+ if (holder->count == 0) {
+ if (holder->http) {
+ holder->stream->write_function(holder->stream, "\n<tr>");
+ }
+
+ for(x = 0; x < argc; x++) {
+ if (holder->http) {
+ holder->stream->write_function(holder->stream, "<td>");
+ holder->stream->write_function(holder->stream, "<b>%s</b>%s", columnNames[x], x == (argc - 1) ? "</td></tr>\n" : "</td><td>");
+ } else {
+ holder->stream->write_function(holder->stream, "%s%s", columnNames[x], x == (argc - 1) ? "\n" : ",");
+ }
+ }
+ }
+
+ if (holder->http) {
+ holder->stream->write_function(holder->stream, "<tr bgcolor=%s>", holder->count % 2 == 0 ? "eeeeee" : "ffffff");
+ }
+
+ for(x = 0; x < argc; x++) {
+ if (holder->http) {
+ holder->stream->write_function(holder->stream, "<td>");
+ holder->stream->write_function(holder->stream, "%s%s", argv[x], x == (argc - 1) ? "</td></tr>\n" : "</td><td>");
+ } else {
+ holder->stream->write_function(holder->stream, "%s%s", argv[x], x == (argc - 1) ? "\n" : ",");
+ }
+ }
+
+
+
+
+ holder->count++;
return 0;
}
-
static switch_status_t show_function(char *cmd, switch_stream_handle_t *stream)
{
char sql[1024];
char *errmsg;
switch_core_db_t *db = switch_core_db_handle();
+ struct holder holder = {0};
+ if (stream->event) {
+ holder.http = switch_event_get_header(stream->event, "http-host");
+ }
+
if (!cmd) {
sprintf (sql, "select * from interfaces");
}
@@ -207,19 +250,39 @@
) {
sprintf (sql, "select * from interfaces where type = '%s'", cmd);
}
+ else if ( !strcmp(cmd,"calls")) {
+ sprintf (sql, "select * from calls");
+ }
+ else if ( !strcmp(cmd,"channels")) {
+ sprintf (sql, "select * from channels");
+ }
else {
stream->write_function(stream, "Invalid interfaces type!\n");
stream->write_function(stream, "Example:\n");
- stream->write_function(stream, "show <blank>|codec|application|api|dialplan|file|timer\n");
+ stream->write_function(stream, "show <blank>|codec|application|api|dialplan|file|timer|calls|channels\n");
return SWITCH_STATUS_SUCCESS;
}
- switch_core_db_exec(db, sql, show_callback, stream, &errmsg);
+ holder.stream = stream;
+ holder.count = 0;
+ if (holder.http) {
+ holder.stream->write_function(holder.stream, "<table cellpadding=1 cellspacing=4 border=1>\n");
+ }
+
+ switch_core_db_exec(db, sql, show_callback, &holder, &errmsg);
+
+ if (holder.http) {
+ holder.stream->write_function(holder.stream, "</table>");
+ }
+
+
if (errmsg) {
stream->write_function(stream, "SQL ERR [%s]\n",errmsg);
switch_core_db_free(errmsg);
errmsg = NULL;
+ } else {
+ stream->write_function(stream, "\n%u total.\n", holder.count);
}
switch_core_db_close(db);
Modified: freeswitch/branches/mishehu/src/mod/applications/mod_conference/mod_conference.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/applications/mod_conference/mod_conference.c (original)
+++ freeswitch/branches/mishehu/src/mod/applications/mod_conference/mod_conference.c Sun Jul 23 19:05:25 2006
@@ -151,6 +151,7 @@
switch_memory_pool_t *pool;
switch_buffer_t *audio_buffer;
switch_buffer_t *mux_buffer;
+ switch_buffer_t *resample_buffer;
uint32_t flags;
switch_mutex_t *flag_mutex;
switch_mutex_t *audio_in_mutex;
@@ -165,6 +166,9 @@
int32_t energy_level;
int32_t volume_in_level;
int32_t volume_out_level;
+ uint32_t native_rate;
+ switch_audio_resampler_t *mux_resampler;
+ switch_audio_resampler_t *read_resampler;
confernce_file_node_t *fnode;
conference_relationship_t *relationships;
struct conference_member *next;
@@ -461,7 +465,7 @@
/* Read one frame of audio from each member channel and save it for redistribution */
for (imember = conference->members; imember; imember = imember->next) {
if (imember->buflen) {
- memset(imember->frame, 255, bytes);
+ memset(imember->frame, 255, imember->buflen);
} else {
imember->frame = switch_core_alloc(imember->pool, bytes);
imember->mux_frame = switch_core_alloc(imember->pool, bytes);
@@ -469,12 +473,35 @@
}
switch_mutex_lock(imember->audio_in_mutex);
- if ((imember->read = (uint32_t)switch_buffer_read(imember->audio_buffer, imember->frame, imember->buflen))) {
- ready++; /* Tally of how many channels had data */
+ /* if there is audio in the resample buffer it takes precedence over the other data */
+ if (imember->mux_resampler && switch_buffer_inuse(imember->resample_buffer) >= bytes) {
+ imember->read = (uint32_t)switch_buffer_read(imember->resample_buffer, imember->frame, bytes);
+ ready++;
+ } else if ((imember->read = (uint32_t)switch_buffer_read(imember->audio_buffer, imember->frame, imember->buflen))) {
+ /* If the caller is not at the right sample rate resample him to suit and buffer accordingly */
+ if (imember->mux_resampler) {
+ int16_t *bptr = (int16_t *) imember->frame;
+ int16_t out[1024];
+ int len = (int) imember->read;
+
+ imember->mux_resampler->from_len = switch_short_to_float(bptr, imember->mux_resampler->from, (int) len / 2);
+ imember->mux_resampler->to_len = switch_resample_process(imember->mux_resampler, imember->mux_resampler->from,
+ imember->mux_resampler->from_len, imember->mux_resampler->to,
+ imember->mux_resampler->to_size, 0);
+ switch_float_to_short(imember->mux_resampler->to, out, len);
+ len = imember->mux_resampler->to_len * 2;
+ switch_buffer_write(imember->resample_buffer, out, len);
+ if (switch_buffer_inuse(imember->resample_buffer) >= bytes) {
+ imember->read = (uint32_t)switch_buffer_read(imember->resample_buffer, imember->frame, bytes);
+ ready++;
+ }
+ } else {
+ ready++; /* Tally of how many channels had data */
+ }
}
switch_mutex_unlock(imember->audio_in_mutex);
}
-
+
/* If a file or speech event is being played */
if (conference->fnode) {
/* Lead in time */
@@ -550,9 +577,11 @@
if (imember->read > imember->len) {
imember->len = imember->read;
}
-
+
bptr = (int16_t *) imember->frame;
muxed = (int16_t *) omember->mux_frame;
+
+
for (x = 0; x < imember->read / 2; x++) {
int32_t z = muxed[x] + bptr[x];
@@ -675,129 +704,134 @@
switch_size_t file_sample_len = samples;
char *digit;
char msg[512];
+ switch_event_t *event;
+ if (switch_core_session_dequeue_event(member->session, &event) == SWITCH_STATUS_SUCCESS) {
+ switch_event_destroy(&event);
+ }
+
if (switch_channel_has_dtmf(channel)) {
switch_channel_dequeue_dtmf(channel, dtmf, sizeof(dtmf));
- }
- for (digit = dtmf; *digit; digit++) {
- switch(*digit) {
- case '0':
- if (switch_test_flag(member, MFLAG_CAN_SPEAK)) {
- switch_clear_flag_locked(member, MFLAG_CAN_SPEAK | MFLAG_CAN_HEAR);
- if (member->conference->muted_sound) {
- conference_member_play_file(member, member->conference->muted_sound, 0);
+ for (digit = dtmf; *digit; digit++) {
+ switch(*digit) {
+ case '0':
+ if (switch_test_flag(member, MFLAG_CAN_SPEAK)) {
+ switch_clear_flag_locked(member, MFLAG_CAN_SPEAK | MFLAG_CAN_HEAR);
+ if (member->conference->muted_sound) {
+ conference_member_play_file(member, member->conference->muted_sound, 0);
+ } else {
+ snprintf(msg, sizeof(msg), "Muted");
+ conference_member_say(member->conference, member, msg, 0);
+ }
} else {
- snprintf(msg, sizeof(msg), "Muted");
- conference_member_say(member->conference, member, msg, 0);
+ switch_set_flag_locked(member, MFLAG_CAN_SPEAK);
+ if (member->conference->unmuted_sound) {
+ conference_member_play_file(member, member->conference->unmuted_sound, 0);
+ } else {
+ snprintf(msg, sizeof(msg), "Un-Muted");
+ conference_member_say(member->conference, member, msg, 0);
+ }
}
- } else {
- switch_set_flag_locked(member, MFLAG_CAN_SPEAK);
- if (member->conference->unmuted_sound) {
- conference_member_play_file(member, member->conference->unmuted_sound, 0);
+ break;
+ case '*':
+ if (switch_test_flag(member, MFLAG_CAN_SPEAK)) {
+ switch_clear_flag_locked(member, MFLAG_CAN_SPEAK|MFLAG_CAN_HEAR);
+ if (member->conference->muted_sound) {
+ conference_member_play_file(member, member->conference->muted_sound, 0);
+ } else {
+ snprintf(msg, sizeof(msg), "Muted");
+ conference_member_say(member->conference, member, msg, 0);
+ }
} else {
- snprintf(msg, sizeof(msg), "Un-Muted");
- conference_member_say(member->conference, member, msg, 0);
+ switch_set_flag_locked(member, MFLAG_CAN_SPEAK|MFLAG_CAN_HEAR);
+ if (member->conference->unmuted_sound) {
+ conference_member_play_file(member, member->conference->unmuted_sound, 0);
+ } else {
+ snprintf(msg, sizeof(msg), "UN-Muted");
+ conference_member_say(member->conference, member, msg, 0);
+ }
}
- }
- break;
- case '*':
- if (switch_test_flag(member, MFLAG_CAN_SPEAK)) {
- switch_clear_flag_locked(member, MFLAG_CAN_SPEAK|MFLAG_CAN_HEAR);
- if (member->conference->muted_sound) {
- conference_member_play_file(member, member->conference->muted_sound, 0);
- } else {
- snprintf(msg, sizeof(msg), "Muted");
- conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '9':
+ switch_mutex_lock(member->flag_mutex);
+ member->energy_level += 100;
+ if (member->energy_level > 1200) {
+ member->energy_level = 1200;
}
- } else {
- switch_set_flag_locked(member, MFLAG_CAN_SPEAK|MFLAG_CAN_HEAR);
- if (member->conference->unmuted_sound) {
- conference_member_play_file(member, member->conference->unmuted_sound, 0);
- } else {
- snprintf(msg, sizeof(msg), "UN-Muted");
- conference_member_say(member->conference, member, msg, 0);
+ switch_mutex_unlock(member->flag_mutex);
+ snprintf(msg, sizeof(msg), "Energy level %d", member->energy_level);
+ conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '8':
+ switch_mutex_lock(member->flag_mutex);
+ member->energy_level = member->conference->energy_level;
+ switch_mutex_unlock(member->flag_mutex);
+ snprintf(msg, sizeof(msg), "Energy level %d", member->energy_level);
+ conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '7':
+ switch_mutex_lock(member->flag_mutex);
+ member->energy_level -= 100;
+ if (member->energy_level < 0) {
+ member->energy_level = 0;
}
+ switch_mutex_unlock(member->flag_mutex);
+ snprintf(msg, sizeof(msg), "Energy level %d", member->energy_level);
+ conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '3':
+ switch_mutex_lock(member->flag_mutex);
+ member->volume_out_level++;
+ normalize_volume(member->volume_out_level);
+ switch_mutex_unlock(member->flag_mutex);
+ snprintf(msg, sizeof(msg), "Volume level %d", member->volume_out_level);
+ conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '2':
+ switch_mutex_lock(member->flag_mutex);
+ member->volume_out_level = 0;
+ switch_mutex_unlock(member->flag_mutex);
+ snprintf(msg, sizeof(msg), "Volume level %d", member->volume_out_level);
+ conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '1':
+ switch_mutex_lock(member->flag_mutex);
+ member->volume_out_level--;
+ normalize_volume(member->volume_out_level);
+ switch_mutex_unlock(member->flag_mutex);
+ snprintf(msg, sizeof(msg), "Volume level %d", member->volume_out_level);
+ conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '6':
+ switch_mutex_lock(member->flag_mutex);
+ member->volume_in_level++;
+ normalize_volume(member->volume_in_level);
+ switch_mutex_unlock(member->flag_mutex);
+ snprintf(msg, sizeof(msg), "Gain level %d", member->volume_in_level);
+ conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '5':
+ switch_mutex_lock(member->flag_mutex);
+ member->volume_in_level = 0;
+ switch_mutex_unlock(member->flag_mutex);
+ snprintf(msg, sizeof(msg), "Gain level %d", member->volume_in_level);
+ conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '4':
+ switch_mutex_lock(member->flag_mutex);
+ member->volume_in_level--;
+ normalize_volume(member->volume_in_level);
+ switch_mutex_unlock(member->flag_mutex);
+ snprintf(msg, sizeof(msg), "Gain level %d", member->volume_in_level);
+ conference_member_say(member->conference, member, msg, 0);
+ break;
+ case '#':
+ switch_clear_flag_locked(member, MFLAG_RUNNING);
+ break;
+ default:
+ break;
}
- break;
- case '9':
- switch_mutex_lock(member->flag_mutex);
- member->energy_level += 100;
- if (member->energy_level > 1200) {
- member->energy_level = 1200;
- }
- switch_mutex_unlock(member->flag_mutex);
- snprintf(msg, sizeof(msg), "Energy level %d", member->energy_level);
- conference_member_say(member->conference, member, msg, 0);
- break;
- case '8':
- switch_mutex_lock(member->flag_mutex);
- member->energy_level = member->conference->energy_level;
- switch_mutex_unlock(member->flag_mutex);
- snprintf(msg, sizeof(msg), "Energy level %d", member->energy_level);
- conference_member_say(member->conference, member, msg, 0);
- break;
- case '7':
- switch_mutex_lock(member->flag_mutex);
- member->energy_level -= 100;
- if (member->energy_level < 0) {
- member->energy_level = 0;
- }
- switch_mutex_unlock(member->flag_mutex);
- snprintf(msg, sizeof(msg), "Energy level %d", member->energy_level);
- conference_member_say(member->conference, member, msg, 0);
- break;
- case '3':
- switch_mutex_lock(member->flag_mutex);
- member->volume_out_level++;
- normalize_volume(member->volume_out_level);
- switch_mutex_unlock(member->flag_mutex);
- snprintf(msg, sizeof(msg), "Volume level %d", member->volume_out_level);
- conference_member_say(member->conference, member, msg, 0);
- break;
- case '2':
- switch_mutex_lock(member->flag_mutex);
- member->volume_out_level = 0;
- switch_mutex_unlock(member->flag_mutex);
- snprintf(msg, sizeof(msg), "Volume level %d", member->volume_out_level);
- conference_member_say(member->conference, member, msg, 0);
- break;
- case '1':
- switch_mutex_lock(member->flag_mutex);
- member->volume_out_level--;
- normalize_volume(member->volume_out_level);
- switch_mutex_unlock(member->flag_mutex);
- snprintf(msg, sizeof(msg), "Volume level %d", member->volume_out_level);
- conference_member_say(member->conference, member, msg, 0);
- break;
- case '6':
- switch_mutex_lock(member->flag_mutex);
- member->volume_in_level++;
- normalize_volume(member->volume_in_level);
- switch_mutex_unlock(member->flag_mutex);
- snprintf(msg, sizeof(msg), "Gain level %d", member->volume_in_level);
- conference_member_say(member->conference, member, msg, 0);
- break;
- case '5':
- switch_mutex_lock(member->flag_mutex);
- member->volume_in_level = 0;
- switch_mutex_unlock(member->flag_mutex);
- snprintf(msg, sizeof(msg), "Gain level %d", member->volume_in_level);
- conference_member_say(member->conference, member, msg, 0);
- break;
- case '4':
- switch_mutex_lock(member->flag_mutex);
- member->volume_in_level--;
- normalize_volume(member->volume_in_level);
- switch_mutex_unlock(member->flag_mutex);
- snprintf(msg, sizeof(msg), "Gain level %d", member->volume_in_level);
- conference_member_say(member->conference, member, msg, 0);
- break;
- case '#':
- switch_clear_flag_locked(member, MFLAG_RUNNING);
- break;
- default:
- break;
}
}
@@ -865,22 +899,29 @@
}
}
} else {
- if (switch_buffer_inuse(member->mux_buffer)) {
+ switch_buffer_t *use_buffer = NULL;
+ uint32_t mux_used = (uint32_t)switch_buffer_inuse(member->mux_buffer);
+ //uint32_t res_used = member->mux_resampler ? switch_buffer_inuse(member->resample_buffer) : 0;
+
+ if (mux_used) {
/* Flush the output buffer and write all the data (presumably muxed) back to the channel */
switch_mutex_lock(member->audio_out_mutex);
write_frame.data = data;
- while ((write_frame.datalen = (uint32_t)switch_buffer_read(member->mux_buffer, write_frame.data, bytes))) {
+ use_buffer = member->mux_buffer;
+
+ while ((write_frame.datalen = (uint32_t)switch_buffer_read(use_buffer, write_frame.data, bytes))) {
if (write_frame.datalen && switch_test_flag(member, MFLAG_CAN_HEAR)) {
write_frame.samples = write_frame.datalen / 2;
-
+
/* Check for output volume adjustments */
if (member->volume_out_level) {
switch_change_sln_volume(write_frame.data, write_frame.samples, member->volume_out_level);
}
-
+
switch_core_session_write_frame(member->session, &write_frame, -1, 0);
}
}
+
switch_mutex_unlock(member->audio_out_mutex);
} else {
switch_core_timer_next(&timer);
@@ -1387,15 +1428,30 @@
}
} else if (!strcasecmp(argv[1], "saymember")) {
char *tbuf = NULL, *text, *name;
- uint32_t id = atoi(argv[3]);
+ uint32_t id;
conference_member_t *member;
+ if (argc > 3) {
+ id = atoi(argv[3]);
+ } else {
+ stream->write_function(stream, "(saymember) Syntax Error!");
+ goto done;
+ }
+
if ((tbuf = strdup(buf))) {
if ((name = strstr(tbuf, "saymember "))) {
name += 10;
- text = strchr(name, ' ');
- id = atoi(name);
+ if (*name) {
+ text = strchr(name, ' ');
+ id = atoi(name);
+ } else {
+ stream->write_function(stream, "(saymember) Syntax Error!");
+ goto done;
+ }
+
+
+
if ((member = conference_member_get(conference, id))) {
if (text && conference_member_say(conference, member, text, 0) == SWITCH_STATUS_SUCCESS) {
stream->write_function(stream, "(saymember) OK\n");
@@ -2226,13 +2282,18 @@
}
}
+
+
/* Save the original read codec. */
read_codec = switch_core_session_get_read_codec(session);
+ member.native_rate = read_codec->implementation->samples_per_second;
/* Setup a Signed Linear codec for reading audio. */
if (switch_core_codec_init(&member.read_codec,
"L16",
+ //conference->rate,
read_codec->implementation->samples_per_second,
+ //conference->interval,
read_codec->implementation->microseconds_per_frame / 1000,
1,
SWITCH_CODEC_FLAG_ENCODE | SWITCH_CODEC_FLAG_DECODE,
@@ -2247,11 +2308,30 @@
goto done;
}
+ if (read_codec->implementation->samples_per_second != conference->rate) {
+ switch_audio_resampler_t **resampler = read_codec->implementation->samples_per_second > conference->rate ?
+ &member.read_resampler : &member.mux_resampler;
+
+ switch_resample_create(resampler,
+ read_codec->implementation->samples_per_second,
+ read_codec->implementation->samples_per_second * 20,
+ conference->rate,
+ conference->rate * 20,
+ switch_core_session_get_pool(session));
+
+ /* Setup an audio buffer for the resampled audio */
+ if (switch_buffer_create(pool, &member.resample_buffer, CONF_BUFFER_SIZE) != SWITCH_STATUS_SUCCESS) {
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "Memory Error Creating Audio Buffer!\n");
+ goto done;
+ }
+ }
/* Setup a Signed Linear codec for writing audio. */
if (switch_core_codec_init(&member.write_codec,
"L16",
- read_codec->implementation->samples_per_second,
- read_codec->implementation->microseconds_per_frame / 1000,
+ conference->rate,
+ //read_codec->implementation->samples_per_second,
+ conference->interval,
+ //read_codec->implementation->microseconds_per_frame / 1000,
1,
SWITCH_CODEC_FLAG_ENCODE | SWITCH_CODEC_FLAG_DECODE,
NULL,
@@ -2444,7 +2524,19 @@
/* skip frames that are not actual media or when we are muted or silent */
if ((talking || energy_level == 0) && switch_test_flag(member, MFLAG_CAN_SPEAK)) {
-
+ if (member->read_resampler) {
+ int16_t *bptr = (int16_t *) read_frame->data;
+ int len = (int) read_frame->datalen;;
+
+ member->read_resampler->from_len = switch_short_to_float(bptr, member->read_resampler->from, (int) len / 2);
+ member->read_resampler->to_len = switch_resample_process(member->read_resampler, member->read_resampler->from,
+ member->read_resampler->from_len, member->read_resampler->to,
+ member->read_resampler->to_size, 0);
+ switch_float_to_short(member->read_resampler->to, read_frame->data, len);
+ len = member->read_resampler->to_len * 2;
+ read_frame->datalen = len;
+ read_frame->samples = len / 2;
+ }
/* Check for input volume adjustments */
if (member->volume_in_level) {
switch_change_sln_volume(read_frame->data, read_frame->datalen / 2, member->volume_in_level);
Modified: freeswitch/branches/mishehu/src/mod/applications/mod_ivrtest/mod_ivrtest.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/applications/mod_ivrtest/mod_ivrtest.c (original)
+++ freeswitch/branches/mishehu/src/mod/applications/mod_ivrtest/mod_ivrtest.c Sun Jul 23 19:05:25 2006
@@ -39,16 +39,23 @@
dtmf handler function you can hook up to be executed when a digit is dialed during playback
if you return anything but SWITCH_STATUS_SUCCESS the playback will stop.
*/
-static switch_status_t on_dtmf(switch_core_session_t *session, char *dtmf, void *buf, unsigned int buflen)
+static switch_status_t on_dtmf(switch_core_session_t *session, void *input, switch_input_type_t itype, void *buf, unsigned int buflen)
{
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Digits %s\n", dtmf);
+ switch (itype) {
+ case SWITCH_INPUT_TYPE_DTMF: {
+ char *dtmf = (char *) input;
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Digits %s\n", dtmf);
- switch_copy_string((char *)buf, dtmf, buflen);
- return SWITCH_STATUS_BREAK;
-
+ switch_copy_string((char *)buf, dtmf, buflen);
+ return SWITCH_STATUS_BREAK;
+ }
+ break;
+ default:
+ break;
+ }
+ return SWITCH_STATUS_SUCCESS;
}
-
static void disast_function(switch_core_session_t *session, char *data)
{
void *x = NULL;
@@ -107,13 +114,22 @@
}
-static switch_status_t show_dtmf(switch_core_session_t *session, char *dtmf, void *buf, unsigned int buflen)
+static switch_status_t show_dtmf(switch_core_session_t *session, void *input, switch_input_type_t itype, void *buf, unsigned int buflen)
{
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Digits %s\n", dtmf);
-
- switch_copy_string((char *)buf, dtmf, buflen);
- return SWITCH_STATUS_SUCCESS;
+ switch (itype) {
+ case SWITCH_INPUT_TYPE_DTMF: {
+ char *dtmf = (char *) input;
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Digits %s\n", dtmf);
+
+ switch_copy_string((char *)buf, dtmf, buflen);
+ }
+ break;
+ default:
+ break;
+ }
+
+ return SWITCH_STATUS_SUCCESS;
}
static void tts_function(switch_core_session_t *session, char *data)
Modified: freeswitch/branches/mishehu/src/mod/applications/mod_playback/mod_playback.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/applications/mod_playback/mod_playback.c (original)
+++ freeswitch/branches/mishehu/src/mod/applications/mod_playback/mod_playback.c Sun Jul 23 19:05:25 2006
@@ -37,12 +37,22 @@
dtmf handler function you can hook up to be executed when a digit is dialed during playback
if you return anything but SWITCH_STATUS_SUCCESS the playback will stop.
*/
-static switch_status_t on_dtmf(switch_core_session_t *session, char *dtmf, void *buf, unsigned int buflen)
+static switch_status_t on_dtmf(switch_core_session_t *session, void *input, switch_input_type_t itype, void *buf, unsigned int buflen)
{
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Digits %s\n", dtmf);
- if (*dtmf == '*') {
- return SWITCH_STATUS_FALSE;
+
+ switch (itype) {
+ case SWITCH_INPUT_TYPE_DTMF: {
+ char *dtmf = (char *) input;
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Digits %s\n", dtmf);
+
+ if (*dtmf == '*') {
+ return SWITCH_STATUS_FALSE;
+ }
+ }
+ break;
+ default:
+ break;
}
return SWITCH_STATUS_SUCCESS;
Modified: freeswitch/branches/mishehu/src/mod/applications/mod_rss/mod_rss.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/applications/mod_rss/mod_rss.c (original)
+++ freeswitch/branches/mishehu/src/mod/applications/mod_rss/mod_rss.c Sun Jul 23 19:05:25 2006
@@ -85,69 +85,75 @@
dtmf handler function you can hook up to be executed when a digit is dialed during playback
if you return anything but SWITCH_STATUS_SUCCESS the playback will stop.
*/
-static switch_status_t on_dtmf(switch_core_session_t *session, char *dtmf, void *buf, unsigned int buflen)
-{
+static switch_status_t on_dtmf(switch_core_session_t *session, void *input, switch_input_type_t itype, void *buf, unsigned int buflen)
- struct dtmf_buffer *dtb;
- dtb = (struct dtmf_buffer *) buf;
+{
+ switch (itype) {
+ case SWITCH_INPUT_TYPE_DTMF: {
+ char *dtmf = (char *) input;
+ struct dtmf_buffer *dtb;
+ dtb = (struct dtmf_buffer *) buf;
- switch(*dtmf) {
- case '#':
- switch_set_flag(dtb, SFLAG_MAIN);
- return SWITCH_STATUS_BREAK;
- case '6':
- dtb->index++;
- return SWITCH_STATUS_BREAK;
- case '4':
- dtb->index--;
- return SWITCH_STATUS_BREAK;
- case '*':
- if (switch_test_flag(dtb->sh, SWITCH_SPEECH_FLAG_PAUSE)) {
- switch_clear_flag(dtb->sh, SWITCH_SPEECH_FLAG_PAUSE);
- } else {
- switch_set_flag(dtb->sh, SWITCH_SPEECH_FLAG_PAUSE);
- }
- break;
- case '5':
- switch_core_speech_text_param_tts(dtb->sh, "voice", "next");
- switch_set_flag(dtb, SFLAG_INFO);
- return SWITCH_STATUS_BREAK;
- break;
- case '9':
- switch_core_speech_text_param_tts(dtb->sh, "voice", dtb->voice);
- switch_set_flag(dtb, SFLAG_INFO);
- return SWITCH_STATUS_BREAK;
- break;
- case '2':
- if (dtb->speed < 260) {
- dtb->speed += 30;
- switch_core_speech_numeric_param_tts(dtb->sh, "speech/rate", dtb->speed);
+ switch(*dtmf) {
+ case '#':
+ switch_set_flag(dtb, SFLAG_MAIN);
+ return SWITCH_STATUS_BREAK;
+ case '6':
+ dtb->index++;
+ return SWITCH_STATUS_BREAK;
+ case '4':
+ dtb->index--;
+ return SWITCH_STATUS_BREAK;
+ case '*':
+ if (switch_test_flag(dtb->sh, SWITCH_SPEECH_FLAG_PAUSE)) {
+ switch_clear_flag(dtb->sh, SWITCH_SPEECH_FLAG_PAUSE);
+ } else {
+ switch_set_flag(dtb->sh, SWITCH_SPEECH_FLAG_PAUSE);
+ }
+ break;
+ case '5':
+ switch_core_speech_text_param_tts(dtb->sh, "voice", "next");
switch_set_flag(dtb, SFLAG_INFO);
return SWITCH_STATUS_BREAK;
- }
- break;
- case '7':
- dtb->speed = TTS_MEAN_SPEED;
- switch_core_speech_numeric_param_tts(dtb->sh, "speech/rate", dtb->speed);
- switch_set_flag(dtb, SFLAG_INFO);
- return SWITCH_STATUS_BREAK;
- case '8':
- if (dtb->speed > 80) {
- dtb->speed -= 30;
+ break;
+ case '9':
+ switch_core_speech_text_param_tts(dtb->sh, "voice", dtb->voice);
+ switch_set_flag(dtb, SFLAG_INFO);
+ return SWITCH_STATUS_BREAK;
+ break;
+ case '2':
+ if (dtb->speed < 260) {
+ dtb->speed += 30;
+ switch_core_speech_numeric_param_tts(dtb->sh, "speech/rate", dtb->speed);
+ switch_set_flag(dtb, SFLAG_INFO);
+ return SWITCH_STATUS_BREAK;
+ }
+ break;
+ case '7':
+ dtb->speed = TTS_MEAN_SPEED;
switch_core_speech_numeric_param_tts(dtb->sh, "speech/rate", dtb->speed);
switch_set_flag(dtb, SFLAG_INFO);
return SWITCH_STATUS_BREAK;
+ case '8':
+ if (dtb->speed > 80) {
+ dtb->speed -= 30;
+ switch_core_speech_numeric_param_tts(dtb->sh, "speech/rate", dtb->speed);
+ switch_set_flag(dtb, SFLAG_INFO);
+ return SWITCH_STATUS_BREAK;
+ }
+ break;
+ case '0':
+ switch_set_flag(dtb, SFLAG_INSTRUCT);
+ return SWITCH_STATUS_BREAK;
}
+ }
break;
- case '0':
- switch_set_flag(dtb, SFLAG_INSTRUCT);
- return SWITCH_STATUS_BREAK;
+ default:
+ break;
}
-
return SWITCH_STATUS_SUCCESS;
}
-
static void rss_function(switch_core_session_t *session, char *data)
{
switch_channel_t *channel;
@@ -297,14 +303,14 @@
switch_core_speech_flush_tts(&sh);
#ifdef MATCH_COUNT
snprintf(buf + len, sizeof(buf) - len,
- "Main Menu. <break time=\"600ms\"/> "
+ ",<break time=\"500ms\"/>Main Menu. <break time=\"600ms\"/> "
"Select one of the following news sources, or press 0 to exit. "
- "<break time=\"600ms\"/>");
+ ",<break time=\"600ms\"/>");
#else
snprintf(buf + len, sizeof(buf) - len,
- "Main Menu. <break time=\"600ms\"/> "
+ ",<break time=\"500ms\"/>Main Menu. <break time=\"600ms\"/> "
"Select one of the following news sources, followed by the pound key or press 0 to exit. "
- "<break time=\"600ms\"/>");
+ ",<break time=\"600ms\"/>");
#endif
len = (int32_t)strlen(buf);
@@ -483,7 +489,7 @@
switch_strftime(date, &retsize, sizeof(date), "%I:%M %p", &tm);
- snprintf(buf, sizeof(buf), "%s. %s. %s. local time: %s, Press 0 for options, 5 to change voice, or pound to return to the main menu. ",
+ snprintf(buf, sizeof(buf), ",<break time=\"500ms\"/>%s. %s. %s. local time: %s, Press 0 for options, 5 to change voice, or pound to return to the main menu. ",
title_txt, description_txt, rights_txt, date);
status = switch_ivr_speak_text_handle(session,
&sh,
Modified: freeswitch/branches/mishehu/src/mod/asr_tts/mod_cepstral/mod_cepstral.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/asr_tts/mod_cepstral/mod_cepstral.c (original)
+++ freeswitch/branches/mishehu/src/mod/asr_tts/mod_cepstral/mod_cepstral.c Sun Jul 23 19:05:25 2006
@@ -27,6 +27,12 @@
*
*
* mod_cepstral.c -- Cepstral Interface
+ *
+ * Contains some material derived from the Cepstral Swift SDK, by
+ * permission. You are free to copy and modify the source under the
+ * terms of FreeSWITCH itself, without additional permission from
+ * Cepstral
+ *
*
*/
#ifdef __ICC
@@ -196,7 +202,7 @@
{
cepstral_t *cepstral;
const char *fp = "file:";
- int len = strlen(fp);
+ int len = (int)strlen(fp);
assert(sh != NULL);
cepstral = sh->private_info;
Modified: freeswitch/branches/mishehu/src/mod/codecs/mod_speex/mod_speex.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/codecs/mod_speex/mod_speex.c (original)
+++ freeswitch/branches/mishehu/src/mod/codecs/mod_speex/mod_speex.c Sun Jul 23 19:05:25 2006
@@ -202,13 +202,10 @@
}
-
-
speex_bits_pack(&context->encoder_bits, 15, 5);
*encoded_data_len = speex_bits_write(&context->encoder_bits, (char *) encoded_data, context->encoder_frame_size);
speex_bits_reset(&context->encoder_bits);
-
return SWITCH_STATUS_SUCCESS;
}
@@ -227,13 +224,15 @@
return SWITCH_STATUS_FALSE;
}
+
buf = decoded_data;
if (*flag & SWITCH_CODEC_FLAG_SILENCE) {
speex_decode_int(context->decoder_state, NULL, buf);
} else {
- speex_bits_read_from(&context->decoder_bits, (char *) encoded_data, (int) *decoded_data_len);
+ speex_bits_read_from(&context->decoder_bits, (char *) encoded_data, (int) encoded_data_len);
speex_decode_int(context->decoder_state, &context->decoder_bits, buf);
}
+ *decoded_data_len = codec->implementation->bytes_per_frame;
return SWITCH_STATUS_SUCCESS;
}
@@ -269,14 +268,14 @@
/* Registration */
static const switch_codec_implementation_t speex_32k_implementation = {
/*.codec_type */ SWITCH_CODEC_TYPE_AUDIO,
- /*.ianacode */ 98,
+ /*.ianacode */ 102,
/*.iananame */ "speex",
/*.samples_per_second */ 32000,
/*.bits_per_second */ 512000,
/*.nanoseconds_per_frame */ 20000,
/*.samples_per_frame */ 640,
/*.bytes_per_frame */ 1280,
- /*.encoded_bytes_per_frame */ 1280,
+ /*.encoded_bytes_per_frame */ 0,
/*.number_of_channels */ 1,
/*.pref_frames_per_packet */ 1,
/*.max_frames_per_packet */ 1,
@@ -288,14 +287,14 @@
static const switch_codec_implementation_t speex_16k_implementation = {
/*.codec_type */ SWITCH_CODEC_TYPE_AUDIO,
- /*.ianacode */ 98,
+ /*.ianacode */ 100,
/*.iananame */ "speex",
/*.samples_per_second */ 16000,
/*.bits_per_second */ 256000,
/*.nanoseconds_per_frame */ 20000,
/*.samples_per_frame */ 320,
/*.bytes_per_frame */ 640,
- /*.encoded_bytes_per_frame */ 640,
+ /*.encoded_bytes_per_frame */ 0,
/*.number_of_channels */ 1,
/*.pref_frames_per_packet */ 1,
/*.max_frames_per_packet */ 1,
@@ -308,14 +307,14 @@
static const switch_codec_implementation_t speex_8k_implementation = {
/*.codec_type */ SWITCH_CODEC_TYPE_AUDIO,
- /*.ianacode */ 98,
+ /*.ianacode */ 97,
/*.iananame */ "speex",
/*.samples_per_second */ 8000,
/*.bits_per_second */ 128000,
/*.nanoseconds_per_frame */ 20000,
/*.samples_per_frame */ 160,
/*.bytes_per_frame */ 320,
- /*.encoded_bytes_per_frame */ 320,
+ /*.encoded_bytes_per_frame */ 0,
/*.number_of_channels */ 1,
/*.pref_frames_per_packet */ 1,
/*.max_frames_per_packet */ 1,
Modified: freeswitch/branches/mishehu/src/mod/endpoints/mod_dingaling/mod_dingaling.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/endpoints/mod_dingaling/mod_dingaling.c (original)
+++ freeswitch/branches/mishehu/src/mod/endpoints/mod_dingaling/mod_dingaling.c Sun Jul 23 19:05:25 2006
@@ -291,15 +291,15 @@
}
if (!(tech_pvt->rtp_session = switch_rtp_new(tech_pvt->profile->ip,
- tech_pvt->local_port,
- tech_pvt->remote_ip,
- tech_pvt->remote_port,
- tech_pvt->codec_num,
- tech_pvt->read_codec.implementation->encoded_bytes_per_frame,
- tech_pvt->read_codec.implementation->microseconds_per_frame,
- flags,
- NULL,
- &err, switch_core_session_get_pool(tech_pvt->session)))) {
+ tech_pvt->local_port,
+ tech_pvt->remote_ip,
+ tech_pvt->remote_port,
+ tech_pvt->codec_num,
+ 0,
+ tech_pvt->read_codec.implementation->microseconds_per_frame,
+ flags,
+ NULL,
+ &err, switch_core_session_get_pool(tech_pvt->session)))) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "RTP ERROR %s\n", err);
switch_channel_hangup(channel, SWITCH_CAUSE_DESTINATION_OUT_OF_ORDER);
return -1;
@@ -784,8 +784,12 @@
}
if (tech_pvt->read_frame.datalen > 0) {
- bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
- frames = (tech_pvt->read_frame.datalen / bytes);
+ if (tech_pvt->read_codec.implementation->encoded_bytes_per_frame) {
+ bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
+ frames = (tech_pvt->read_frame.datalen / bytes);
+ } else {
+ frames = 1;
+ }
samples = frames * tech_pvt->read_codec.implementation->samples_per_frame;
ms = frames * tech_pvt->read_codec.implementation->microseconds_per_frame;
tech_pvt->timestamp_recv += (int32_t) samples;
@@ -841,9 +845,13 @@
switch_set_flag_locked(tech_pvt, TFLAG_WRITING);
+ if (tech_pvt->read_codec.implementation->encoded_bytes_per_frame) {
+ bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
+ frames = ((int) frame->datalen / bytes);
+ } else {
+ frames = 1;
+ }
- bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
- frames = ((int) frame->datalen / bytes);
samples = frames * tech_pvt->read_codec.implementation->samples_per_frame;
//printf("%s send %d bytes %d samples in %d frames ts=%d\n", switch_channel_get_name(channel), frame->datalen, samples, frames, tech_pvt->timestamp_send);
@@ -1509,7 +1517,12 @@
switch_event_add_header(event, SWITCH_STACK_BOTTOM, "from", from);
switch_event_add_header(event, SWITCH_STACK_BOTTOM, "subject", subject);
switch_event_add_body(event, msg);
- switch_event_fire(&event);
+
+ if (switch_core_session_queue_event(tech_pvt->session, &event) != SWITCH_STATUS_SUCCESS) {
+ switch_event_add_header(event, SWITCH_STACK_BOTTOM, "delivery-failure", "true");
+ switch_event_fire(&event);
+ }
+
}
break;
Modified: freeswitch/branches/mishehu/src/mod/endpoints/mod_exosip/mod_exosip.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/endpoints/mod_exosip/mod_exosip.c (original)
+++ freeswitch/branches/mishehu/src/mod/endpoints/mod_exosip/mod_exosip.c Sun Jul 23 19:05:25 2006
@@ -354,8 +354,9 @@
sdp_add_codec(tech_pvt->sdp_config, SWITCH_CODEC_TYPE_AUDIO, tech_pvt->te, "telephone-event", 8000, 0);
sprintf(dbuf, "%u telephone-event/8000", tech_pvt->te);
sdp_message_a_attribute_add(tech_pvt->local_sdp, 0, "rtpmap", osip_strdup(dbuf));
+ sprintf(dbuf, "%u 0-15", tech_pvt->te);
+ sdp_message_a_attribute_add(tech_pvt->local_sdp, 0, "fmtp", osip_strdup(dbuf));
-
if (tech_pvt->num_codecs > 0) {
int i, lastcode = -1;
@@ -561,7 +562,7 @@
tech_pvt->remote_sdp_audio_ip,
tech_pvt->remote_sdp_audio_port,
tech_pvt->read_codec.implementation->ianacode,
- tech_pvt->read_codec.implementation->encoded_bytes_per_frame,
+ 0, //tech_pvt->read_codec.implementation->encoded_bytes_per_frame,
ms,
flags,
key,
@@ -717,8 +718,12 @@
if (tech_pvt->read_frame.datalen > 0) {
tech_pvt->last_read = switch_time_now();
- bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
- frames = (tech_pvt->read_frame.datalen / bytes);
+ if (tech_pvt->read_codec.implementation->encoded_bytes_per_frame) {
+ bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
+ frames = (tech_pvt->read_frame.datalen / bytes);
+ } else {
+ frames = 1;
+ }
samples = frames * tech_pvt->read_codec.implementation->samples_per_frame;
ms = frames * tech_pvt->read_codec.implementation->microseconds_per_frame;
tech_pvt->timestamp_recv += (int32_t) samples;
@@ -775,8 +780,12 @@
switch_set_flag_locked(tech_pvt, TFLAG_WRITING);
if (switch_test_flag(tech_pvt, TFLAG_USING_CODEC)) {
- bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
- frames = ((int) frame->datalen / bytes);
+ if (tech_pvt->read_codec.implementation->encoded_bytes_per_frame) {
+ bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
+ frames = ((int) frame->datalen / bytes);
+ } else {
+ frames = 1;
+ }
samples = frames * tech_pvt->read_codec.implementation->samples_per_frame;
} else {
assert(0);
@@ -1006,7 +1015,7 @@
struct callback_t cbt = {0};
char buf[1024];
char *host = NULL;
-
+
if (db) {
udb = db;
} else {
@@ -1027,6 +1036,7 @@
} else {
snprintf(val, len, "select url from sip_registrations where key='%s'", key);
}
+
switch_core_db_exec(udb, val, find_callback, &cbt, &errmsg);
if (errmsg) {
@@ -1307,22 +1317,19 @@
sdp_message_init(&tech_pvt->local_sdp);
- sprintf(dbuf, "%u", tech_pvt->te);
- sdp_message_m_payload_add(tech_pvt->local_sdp, 0, osip_strdup(dbuf));
- sdp_add_codec(tech_pvt->sdp_config, SWITCH_CODEC_TYPE_AUDIO, tech_pvt->te, "telephone-event", 8000, 0);
- sprintf(dbuf, "%u telephone-event/8000", tech_pvt->te);
- sdp_message_a_attribute_add(tech_pvt->local_sdp, 0, "rtpmap", osip_strdup(dbuf));
-
-
if (tech_pvt->num_codecs > 0) {
int i;
static const switch_codec_implementation_t *imp = NULL;
for (i = 0; i < tech_pvt->num_codecs; i++) {
for (imp = tech_pvt->codecs[i]; imp; imp = imp->next) {
- sdp_add_codec(tech_pvt->sdp_config, tech_pvt->codecs[i]->codec_type, imp->ianacode, imp->iananame,
- imp->samples_per_second, 0);
+ sdp_add_codec(tech_pvt->sdp_config,
+ tech_pvt->codecs[i]->codec_type,
+ imp->ianacode,
+ imp->iananame,
+ imp->samples_per_second,
+ 0);
}
}
@@ -1338,6 +1345,7 @@
sdp_message_to_str(remote_sdp, &remote_sdp_str);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "REMOTE SDP:\n%s", remote_sdp_str);
+
mline = 0;
while (0 == osip_rfc3264_match(tech_pvt->sdp_config, remote_sdp, audio_tab, video_tab, t38_tab, app_tab, mline)) {
if (audio_tab[0] == NULL && video_tab[0] == NULL && t38_tab[0] == NULL && app_tab[0] == NULL) {
@@ -1358,6 +1366,18 @@
done:
free(remote_sdp_str);
+
+
+ sprintf(dbuf, "%u", tech_pvt->te);
+ sdp_message_m_payload_add(tech_pvt->local_sdp, 0, osip_strdup(dbuf));
+ sdp_add_codec(tech_pvt->sdp_config, SWITCH_CODEC_TYPE_AUDIO, tech_pvt->te, "telephone-event", 8000, 0);
+
+ sprintf(dbuf, "%u telephone-event/8000", tech_pvt->te);
+ sdp_message_a_attribute_add(tech_pvt->local_sdp, 0, "rtpmap", osip_strdup(dbuf));
+ sprintf(dbuf, "%u 0-15", tech_pvt->te);
+ sdp_message_a_attribute_add(tech_pvt->local_sdp, 0, "fmtp", osip_strdup(dbuf));
+
+
sdp_message_o_origin_set(tech_pvt->local_sdp, "FreeSWITCH", "0", "0", "IN", "IP4", ip);
sdp_message_s_name_set(tech_pvt->local_sdp, "SIP Call");
@@ -1597,7 +1617,8 @@
char *url;
char *expires = NULL;
osip_message_t *tmp = NULL;
- char sql[1024] = "";
+ char buf[1024];
+ char *sql = NULL;
time_t exptime;
switch_event_t *s_event;
@@ -1625,16 +1646,16 @@
}
- if (!find_reg_url(globals.db, je->request->from->url->username, sql, sizeof(sql))) {
- snprintf(sql, sizeof(sql), "insert into sip_registrations values ('%s','%s','%s',%ld)",
- je->request->from->url->username,
- je->request->from->url->host,
- url, exptime);
+ if (!find_reg_url(globals.db, je->request->from->url->username, buf, sizeof(buf))) {
+ sql = switch_core_db_mprintf("insert into sip_registrations values ('%s','%s','%s',%ld)",
+ je->request->from->url->username,
+ je->request->from->url->host,
+ url, exptime);
} else {
- snprintf(sql, sizeof(sql), "update sip_registrations set url='%s', expires=%ld where key = '%s'",
- url,
- exptime,
- je->request->from->url->username);
+ sql = switch_core_db_mprintf("update sip_registrations set url='%s', expires=%ld where key = '%s'",
+ url,
+ exptime,
+ je->request->from->url->username);
}
@@ -1644,9 +1665,13 @@
switch_event_add_header(s_event, SWITCH_STACK_BOTTOM, "expires", "%ld", exptime);
switch_event_fire(&s_event);
}
- switch_mutex_lock(globals.reg_mutex);
- switch_core_db_persistant_execute(globals.db, sql, 25);
- switch_mutex_unlock(globals.reg_mutex);
+ if (sql) {
+ switch_mutex_lock(globals.reg_mutex);
+ switch_core_db_persistant_execute(globals.db, sql, 25);
+ switch_core_db_free(sql);
+ sql = NULL;
+ switch_mutex_unlock(globals.reg_mutex);
+ }
eXosip_lock();
if (eXosip_message_build_answer(je->tid, 200, &tmp) < 0) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "build_answer failed\n");
Modified: freeswitch/branches/mishehu/src/mod/endpoints/mod_iax/mod_iax.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/endpoints/mod_iax/mod_iax.c (original)
+++ freeswitch/branches/mishehu/src/mod/endpoints/mod_iax/mod_iax.c Sun Jul 23 19:05:25 2006
@@ -129,6 +129,7 @@
{AST_FORMAT_SLINEAR, 10, "slinear"},
{AST_FORMAT_LPC10, 7, "lpc10"},
{AST_FORMAT_G729A, 18, "g729"},
+{AST_FORMAT_SPEEX, 97, "speex"},
{AST_FORMAT_SPEEX, 98, "speex"},
{AST_FORMAT_ILBC, 102, "ilbc"},
{AST_FORMAT_MAX_AUDIO, 999, ""},
@@ -1098,8 +1099,12 @@
break;
}
- bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
- frames = (int) (tech_pvt->read_frame.datalen / bytes);
+ if (tech_pvt->read_codec.implementation->encoded_bytes_per_frame) {
+ bytes = tech_pvt->read_codec.implementation->encoded_bytes_per_frame;
+ frames = (int) (tech_pvt->read_frame.datalen / bytes);
+ } else {
+ frames = 1;
+ }
tech_pvt->read_frame.samples = frames * tech_pvt->read_codec.implementation->samples_per_frame;
Modified: freeswitch/branches/mishehu/src/mod/event_handlers/mod_xmpp_event/mod_xmpp_event.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/event_handlers/mod_xmpp_event/mod_xmpp_event.c (original)
+++ freeswitch/branches/mishehu/src/mod/event_handlers/mod_xmpp_event/mod_xmpp_event.c Sun Jul 23 19:05:25 2006
@@ -239,6 +239,7 @@
stream.data = retbuf;
stream.end = stream.data;
stream.data_size = sizeof(retbuf);
+ stream.write_function = switch_console_stream_write;
switch_api_execute(cmd, arg, &stream);
return 0;
Modified: freeswitch/branches/mishehu/src/mod/languages/mod_perl/switch_swig.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/languages/mod_perl/switch_swig.c (original)
+++ freeswitch/branches/mishehu/src/mod/languages/mod_perl/switch_swig.c Sun Jul 23 19:05:25 2006
@@ -113,7 +113,7 @@
int fs_ivr_play_file(switch_core_session_t *session,
char *file,
char *timer_name,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t dtmf_callback,
void *buf,
unsigned int buflen)
{
Modified: freeswitch/branches/mishehu/src/mod/languages/mod_perl/switch_swig_wrap.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/languages/mod_perl/switch_swig_wrap.c (original)
+++ freeswitch/branches/mishehu/src/mod/languages/mod_perl/switch_swig_wrap.c Sun Jul 23 19:05:25 2006
@@ -992,7 +992,7 @@
/* -------- TYPES TABLE (BEGIN) -------- */
#define SWIGTYPE_p_switch_core_session_t swig_types[0]
-#define SWIGTYPE_p_switch_dtmf_callback_function_t swig_types[1]
+#define SWIGTYPE_p_switch_input_callback_function_t swig_types[1]
static swig_type_info *swig_types[3];
static swig_module_info swig_module = {swig_types, 2, 0, 0, 0, 0};
#define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
@@ -1408,7 +1408,7 @@
switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;
char *arg2 = (char *) 0 ;
char *arg3 = (char *) 0 ;
- switch_dtmf_callback_function_t arg4 ;
+ switch_input_callback_function_t arg4 ;
void *arg5 = (void *) 0 ;
unsigned int arg6 ;
int result;
@@ -1428,9 +1428,9 @@
if (!SvOK((SV*) ST(2))) arg3 = 0;
else arg3 = (char *) SvPV(ST(2), PL_na);
{
- switch_dtmf_callback_function_t * argp;
- if (SWIG_ConvertPtr(ST(3),(void **) &argp, SWIGTYPE_p_switch_dtmf_callback_function_t,0) < 0) {
- SWIG_croak("Type error in argument 4 of fs_ivr_play_file. Expected _p_switch_dtmf_callback_function_t");
+ switch_input_callback_function_t * argp;
+ if (SWIG_ConvertPtr(ST(3),(void **) &argp, SWIGTYPE_p_switch_input_callback_function_t,0) < 0) {
+ SWIG_croak("Type error in argument 4 of fs_ivr_play_file. Expected _p_switch_input_callback_function_t");
}
arg4 = *argp;
}
@@ -1456,19 +1456,19 @@
/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
static swig_type_info _swigt__p_switch_core_session_t = {"_p_switch_core_session_t", "switch_core_session_t *", 0, 0, 0};
-static swig_type_info _swigt__p_switch_dtmf_callback_function_t = {"_p_switch_dtmf_callback_function_t", "switch_dtmf_callback_function_t *", 0, 0, 0};
+static swig_type_info _swigt__p_switch_input_callback_function_t = {"_p_switch_input_callback_function_t", "switch_input_callback_function_t *", 0, 0, 0};
static swig_type_info *swig_type_initial[] = {
&_swigt__p_switch_core_session_t,
- &_swigt__p_switch_dtmf_callback_function_t,
+ &_swigt__p_switch_input_callback_function_t,
};
static swig_cast_info _swigc__p_switch_core_session_t[] = { {&_swigt__p_switch_core_session_t, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_switch_dtmf_callback_function_t[] = { {&_swigt__p_switch_dtmf_callback_function_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_switch_input_callback_function_t[] = { {&_swigt__p_switch_input_callback_function_t, 0, 0, 0},{0, 0, 0, 0}};
static swig_cast_info *swig_cast_initial[] = {
_swigc__p_switch_core_session_t,
- _swigc__p_switch_dtmf_callback_function_t,
+ _swigc__p_switch_input_callback_function_t,
};
Modified: freeswitch/branches/mishehu/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c
==============================================================================
--- freeswitch/branches/mishehu/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c (original)
+++ freeswitch/branches/mishehu/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c Sun Jul 23 19:05:25 2006
@@ -175,218 +175,247 @@
return SWITCH_STATUS_SUCCESS;
}
-static switch_status_t js_stream_dtmf_callback(switch_core_session_t *session, char *dtmf, void *buf, unsigned int buflen)
+static switch_status_t js_stream_dtmf_callback(switch_core_session_t *session, void *input, switch_input_type_t itype, void *buf, unsigned int buflen)
{
- char code[2048];
- struct dtmf_callback_state *cb_state = buf;
- struct js_session *jss = cb_state->session_state;
- switch_file_handle_t *fh = cb_state->extra;
- jsval rval;
- char *ret;
+ switch (itype) {
+ case SWITCH_INPUT_TYPE_DTMF: {
+ char *dtmf = (char *) input;
+ char code[2048];
+ struct dtmf_callback_state *cb_state = buf;
+ struct js_session *jss = cb_state->session_state;
+ switch_file_handle_t *fh = cb_state->extra;
+ jsval rval;
+ char *ret;
- if (!jss) {
- return SWITCH_STATUS_FALSE;
- }
-
- if (cb_state->digit_count || (cb_state->code_buffer[0] > 47 && cb_state->code_buffer[0] < 58)) {
- char *d;
- if (!cb_state->digit_count) {
- cb_state->digit_count = atoi(cb_state->code_buffer);
+ if (!jss) {
+ return SWITCH_STATUS_FALSE;
}
+
+ if (cb_state->digit_count || (cb_state->code_buffer[0] > 47 && cb_state->code_buffer[0] < 58)) {
+ char *d;
+ if (!cb_state->digit_count) {
+ cb_state->digit_count = atoi(cb_state->code_buffer);
+ }
- for(d = dtmf; *d; d++) {
- cb_state->ret_buffer[cb_state->ret_buffer_len++] = *d;
- if ((cb_state->ret_buffer_len > cb_state->digit_count)||
- (cb_state->ret_buffer_len > sizeof(cb_state->ret_buffer))||
- (cb_state->ret_buffer_len >= cb_state->digit_count)
- ) {
- return SWITCH_STATUS_FALSE;
+ for(d = dtmf; *d; d++) {
+ cb_state->ret_buffer[cb_state->ret_buffer_len++] = *d;
+ if ((cb_state->ret_buffer_len > cb_state->digit_count)||
+ (cb_state->ret_buffer_len > sizeof(cb_state->ret_buffer))||
+ (cb_state->ret_buffer_len >= cb_state->digit_count)
+ ) {
+ return SWITCH_STATUS_FALSE;
+ }
}
- }
- return SWITCH_STATUS_SUCCESS;
- } else {
- snprintf(code, sizeof(code), "~%s(\"%s\")", cb_state->code_buffer, dtmf);
- eval_some_js(code, jss->cx, jss->obj, &rval);
- ret = JS_GetStringBytes(JS_ValueToString(jss->cx, rval));
+ return SWITCH_STATUS_SUCCESS;
+ } else {
+ snprintf(code, sizeof(code), "~%s(\"%s\")", cb_state->code_buffer, dtmf);
+ eval_some_js(code, jss->cx, jss->obj, &rval);
+ ret = JS_GetStringBytes(JS_ValueToString(jss->cx, rval));
- if (!strncasecmp(ret, "speed", 4)) {
- char *p;
+ if (!strncasecmp(ret, "speed", 4)) {
+ char *p;
- if ((p = strchr(ret, ':'))) {
- p++;
- if (*p == '+' || *p == '-') {
- int step;
- if (!(step = atoi(p))) {
- step = 1;
+ if ((p = strchr(ret, ':'))) {
+ p++;
+ if (*p == '+' || *p == '-') {
+ int step;
+ if (!(step = atoi(p))) {
+ step = 1;
+ }
+ fh->speed += step;
+ } else {
+ int speed = atoi(p);
+ fh->speed = speed;
}
- fh->speed += step;
+ return SWITCH_STATUS_SUCCESS;
+ }
+
+ return SWITCH_STATUS_FALSE;
+ } else if (!strcasecmp(ret, "pause")) {
+ if (switch_test_flag(fh, SWITCH_FILE_PAUSE)) {
+ switch_clear_flag(fh, SWITCH_FILE_PAUSE);
} else {
- int speed = atoi(p);
- fh->speed = speed;
+ switch_set_flag(fh, SWITCH_FILE_PAUSE);
}
return SWITCH_STATUS_SUCCESS;
- }
-
- return SWITCH_STATUS_FALSE;
- } else if (!strcasecmp(ret, "pause")) {
- if (switch_test_flag(fh, SWITCH_FILE_PAUSE)) {
- switch_clear_flag(fh, SWITCH_FILE_PAUSE);
- } else {
- switch_set_flag(fh, SWITCH_FILE_PAUSE);
- }
- return SWITCH_STATUS_SUCCESS;
- } else if (!strcasecmp(ret, "restart")) {
- unsigned int pos = 0;
- fh->speed = 0;
- switch_core_file_seek(fh, &pos, 0, SEEK_SET);
- return SWITCH_STATUS_SUCCESS;
- } else if (!strncasecmp(ret, "seek", 4)) {
- switch_codec_t *codec;
- unsigned int samps = 0;
- unsigned int pos = 0;
- char *p;
- codec = switch_core_session_get_read_codec(jss->session);
+ } else if (!strcasecmp(ret, "restart")) {
+ unsigned int pos = 0;
+ fh->speed = 0;
+ switch_core_file_seek(fh, &pos, 0, SEEK_SET);
+ return SWITCH_STATUS_SUCCESS;
+ } else if (!strncasecmp(ret, "seek", 4)) {
+ switch_codec_t *codec;
+ unsigned int samps = 0;
+ unsigned int pos = 0;
+ char *p;
+ codec = switch_core_session_get_read_codec(jss->session);
- if ((p = strchr(ret, ':'))) {
- p++;
- if (*p == '+' || *p == '-') {
- int step;
- if (!(step = atoi(p))) {
- step = 1000;
- }
- if (step > 0) {
- samps = step * (codec->implementation->samples_per_second / 1000);
- switch_core_file_seek(fh, &pos, samps, SEEK_CUR);
+ if ((p = strchr(ret, ':'))) {
+ p++;
+ if (*p == '+' || *p == '-') {
+ int step;
+ if (!(step = atoi(p))) {
+ step = 1000;
+ }
+ if (step > 0) {
+ samps = step * (codec->implementation->samples_per_second / 1000);
+ switch_core_file_seek(fh, &pos, samps, SEEK_CUR);
+ } else {
+ samps = step * (codec->implementation->samples_per_second / 1000);
+ switch_core_file_seek(fh, &pos, fh->pos - samps, SEEK_SET);
+ }
} else {
- samps = step * (codec->implementation->samples_per_second / 1000);
- switch_core_file_seek(fh, &pos, fh->pos - samps, SEEK_SET);
+ samps = atoi(p) * (codec->implementation->samples_per_second / 1000);
+ switch_core_file_seek(fh, &pos, samps, SEEK_SET);
}
- } else {
- samps = atoi(p) * (codec->implementation->samples_per_second / 1000);
- switch_core_file_seek(fh, &pos, samps, SEEK_SET);
}
+
+ return SWITCH_STATUS_SUCCESS;
}
- return SWITCH_STATUS_SUCCESS;
- }
-
- if (!strcmp(ret, "true") || !strcmp(ret, "undefined")) {
- return SWITCH_STATUS_SUCCESS;
- }
+ if (!strcmp(ret, "true") || !strcmp(ret, "undefined")) {
+ return SWITCH_STATUS_SUCCESS;
+ }
- if (ret) {
- switch_copy_string(cb_state->ret_buffer, ret, sizeof(cb_state->ret_buffer));
+ if (ret) {
+ switch_copy_string(cb_state->ret_buffer, ret, sizeof(cb_state->ret_buffer));
+ }
}
+
+ return SWITCH_STATUS_FALSE;
}
+ break;
+ default:
+ break;
+ }
+ return SWITCH_STATUS_SUCCESS;
- return SWITCH_STATUS_FALSE;
}
-
-static switch_status_t js_record_dtmf_callback(switch_core_session_t *session, char *dtmf, void *buf, unsigned int buflen)
+static switch_status_t js_record_dtmf_callback(switch_core_session_t *session, void *input, switch_input_type_t itype, void *buf, unsigned int buflen)
{
- char code[2048];
- struct dtmf_callback_state *cb_state = buf;
- struct js_session *jss = cb_state->session_state;
- switch_file_handle_t *fh = cb_state->extra;
- jsval rval;
- char *ret;
+ switch (itype) {
+ case SWITCH_INPUT_TYPE_DTMF: {
+ char *dtmf = (char *) input;
+ char code[2048];
+ struct dtmf_callback_state *cb_state = buf;
+ struct js_session *jss = cb_state->session_state;
+ switch_file_handle_t *fh = cb_state->extra;
+ jsval rval;
+ char *ret;
- if (!jss) {
- return SWITCH_STATUS_FALSE;
- }
-
- if (cb_state->digit_count || (cb_state->code_buffer[0] > 47 && cb_state->code_buffer[0] < 58)) {
- char *d;
- if (!cb_state->digit_count) {
- cb_state->digit_count = atoi(cb_state->code_buffer);
+ if (!jss) {
+ return SWITCH_STATUS_FALSE;
}
-
- for(d = dtmf; *d; d++) {
- cb_state->ret_buffer[cb_state->ret_buffer_len++] = *d;
- if ((cb_state->ret_buffer_len > cb_state->digit_count)||
- (cb_state->ret_buffer_len > sizeof(cb_state->ret_buffer))||
- (cb_state->ret_buffer_len >= cb_state->digit_count)
- ) {
- return SWITCH_STATUS_FALSE;
+
+ if (cb_state->digit_count || (cb_state->code_buffer[0] > 47 && cb_state->code_buffer[0] < 58)) {
+ char *d;
+ if (!cb_state->digit_count) {
+ cb_state->digit_count = atoi(cb_state->code_buffer);
}
- }
- return SWITCH_STATUS_SUCCESS;
- } else {
- snprintf(code, sizeof(code), "~%s(\"%s\")", cb_state->code_buffer, dtmf);
- eval_some_js(code, jss->cx, jss->obj, &rval);
- ret = JS_GetStringBytes(JS_ValueToString(jss->cx, rval));
- if (!strcasecmp(ret, "pause")) {
- if (switch_test_flag(fh, SWITCH_FILE_PAUSE)) {
- switch_clear_flag(fh, SWITCH_FILE_PAUSE);
- } else {
- switch_set_flag(fh, SWITCH_FILE_PAUSE);
+ for(d = dtmf; *d; d++) {
+ cb_state->ret_buffer[cb_state->ret_buffer_len++] = *d;
+ if ((cb_state->ret_buffer_len > cb_state->digit_count)||
+ (cb_state->ret_buffer_len > sizeof(cb_state->ret_buffer))||
+ (cb_state->ret_buffer_len >= cb_state->digit_count)
+ ) {
+ return SWITCH_STATUS_FALSE;
+ }
}
return SWITCH_STATUS_SUCCESS;
- } else if (!strcasecmp(ret, "restart")) {
- unsigned int pos = 0;
- fh->speed = 0;
- switch_core_file_seek(fh, &pos, 0, SEEK_SET);
- return SWITCH_STATUS_SUCCESS;
- }
+ } else {
+ snprintf(code, sizeof(code), "~%s(\"%s\")", cb_state->code_buffer, dtmf);
+ eval_some_js(code, jss->cx, jss->obj, &rval);
+ ret = JS_GetStringBytes(JS_ValueToString(jss->cx, rval));
- if (!strcmp(ret, "true") || !strcmp(ret, "undefined")) {
- return SWITCH_STATUS_SUCCESS;
- }
+ if (!strcasecmp(ret, "pause")) {
+ if (switch_test_flag(fh, SWITCH_FILE_PAUSE)) {
+ switch_clear_flag(fh, SWITCH_FILE_PAUSE);
+ } else {
+ switch_set_flag(fh, SWITCH_FILE_PAUSE);
+ }
+ return SWITCH_STATUS_SUCCESS;
+ } else if (!strcasecmp(ret, "restart")) {
+ unsigned int pos = 0;
+ fh->speed = 0;
+ switch_core_file_seek(fh, &pos, 0, SEEK_SET);
+ return SWITCH_STATUS_SUCCESS;
+ }
+
+ if (!strcmp(ret, "true") || !strcmp(ret, "undefined")) {
+ return SWITCH_STATUS_SUCCESS;
+ }
- if (ret) {
- switch_copy_string(cb_state->ret_buffer, ret, sizeof(cb_state->ret_buffer));
+ if (ret) {
+ switch_copy_string(cb_state->ret_buffer, ret, sizeof(cb_state->ret_buffer));
+ }
}
+ return SWITCH_STATUS_FALSE;
}
+ break;
+ default:
+ break;
+ }
- return SWITCH_STATUS_FALSE;
+ return SWITCH_STATUS_SUCCESS;
}
-static switch_status_t js_speak_dtmf_callback(switch_core_session_t *session, char *dtmf, void *buf, unsigned int buflen)
+static switch_status_t js_speak_dtmf_callback(switch_core_session_t *session, void *input, switch_input_type_t itype, void *buf, unsigned int buflen)
{
- char code[2048];
- struct dtmf_callback_state *cb_state = buf;
- struct js_session *jss = cb_state->session_state;
- jsval rval;
- char *ret;
+ switch (itype) {
+ case SWITCH_INPUT_TYPE_DTMF: {
+ char *dtmf = (char *) input;
+ char code[2048];
+ struct dtmf_callback_state *cb_state = buf;
+ struct js_session *jss = cb_state->session_state;
+ jsval rval;
+ char *ret;
- if (!jss) {
- return SWITCH_STATUS_FALSE;
- }
-
- if (cb_state->digit_count || (cb_state->code_buffer[0] > 47 && cb_state->code_buffer[0] < 58)) {
- char *d;
- if (!cb_state->digit_count) {
- cb_state->digit_count = atoi(cb_state->code_buffer);
+ if (!jss) {
+ return SWITCH_STATUS_FALSE;
}
-
- for(d = dtmf; *d; d++) {
- cb_state->ret_buffer[cb_state->ret_buffer_len++] = *d;
- if ((cb_state->ret_buffer_len > cb_state->digit_count)||
- (cb_state->ret_buffer_len > sizeof(cb_state->ret_buffer))||
- (cb_state->ret_buffer_len >= cb_state->digit_count)
- ) {
- return SWITCH_STATUS_FALSE;
+
+ if (cb_state->digit_count || (cb_state->code_buffer[0] > 47 && cb_state->code_buffer[0] < 58)) {
+ char *d;
+ if (!cb_state->digit_count) {
+ cb_state->digit_count = atoi(cb_state->code_buffer);
}
- }
- return SWITCH_STATUS_SUCCESS;
- } else {
- snprintf(code, sizeof(code), "~%s(\"%s\")", cb_state->code_buffer, dtmf);
- eval_some_js(code, jss->cx, jss->obj, &rval);
- ret = JS_GetStringBytes(JS_ValueToString(jss->cx, rval));
- if (!strcmp(ret, "true") || !strcmp(ret, "undefined")) {
+ for(d = dtmf; *d; d++) {
+ cb_state->ret_buffer[cb_state->ret_buffer_len++] = *d;
+ if ((cb_state->ret_buffer_len > cb_state->digit_count)||
+ (cb_state->ret_buffer_len > sizeof(cb_state->ret_buffer))||
+ (cb_state->ret_buffer_len >= cb_state->digit_count)
+ ) {
+ return SWITCH_STATUS_FALSE;
+ }
+ }
return SWITCH_STATUS_SUCCESS;
- }
+ } else {
+ snprintf(code, sizeof(code), "~%s(\"%s\")", cb_state->code_buffer, dtmf);
+ eval_some_js(code, jss->cx, jss->obj, &rval);
+ ret = JS_GetStringBytes(JS_ValueToString(jss->cx, rval));
+
+ if (!strcmp(ret, "true") || !strcmp(ret, "undefined")) {
+ return SWITCH_STATUS_SUCCESS;
+ }
- if (ret) {
- switch_copy_string(cb_state->ret_buffer, ret, sizeof(cb_state->ret_buffer));
+ if (ret) {
+ switch_copy_string(cb_state->ret_buffer, ret, sizeof(cb_state->ret_buffer));
+ }
}
+
+ return SWITCH_STATUS_FALSE;
}
+ break;
+ default:
+ break;
+ }
- return SWITCH_STATUS_FALSE;
+ return SWITCH_STATUS_SUCCESS;
+
}
static JSBool session_recordfile(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
@@ -397,7 +426,7 @@
char *dtmf_callback = NULL;
void *bp = NULL;
int len = 0;
- switch_dtmf_callback_function_t dtmf_func = NULL;
+ switch_input_callback_function_t dtmf_func = NULL;
struct dtmf_callback_state cb_state = {0};
switch_file_handle_t fh;
@@ -443,7 +472,7 @@
char *dtmf_callback = NULL;
void *bp = NULL;
int len = 0;
- switch_dtmf_callback_function_t dtmf_func = NULL;
+ switch_input_callback_function_t dtmf_func = NULL;
struct dtmf_callback_state cb_state = {0};
switch_file_handle_t fh;
@@ -499,7 +528,7 @@
void *bp = NULL;
int len = 0;
struct dtmf_callback_state cb_state = {0};
- switch_dtmf_callback_function_t dtmf_func = NULL;
+ switch_input_callback_function_t dtmf_func = NULL;
channel = switch_core_session_get_channel(jss->session);
assert(channel != NULL);
@@ -1756,12 +1785,24 @@
/*********************************************************************************/
static JSBool js_log(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
{
- char *msg;
+ char *level_str, *msg;
+ switch_log_level_t level = SWITCH_LOG_DEBUG;
+
+ if (argc > 1) {
+ if ((level_str = JS_GetStringBytes(JS_ValueToString(cx, argv[0])))) {
+ level = switch_log_str2level(level_str);
+ }
- if ((msg = JS_GetStringBytes(JS_ValueToString(cx, argv[0])))) {
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "JS_LOG: %s", msg);
- return JS_TRUE;
- }
+ if ((msg = JS_GetStringBytes(JS_ValueToString(cx, argv[1])))) {
+ switch_log_printf(SWITCH_CHANNEL_LOG, level, "JS_LOG: %s", msg);
+ return JS_TRUE;
+ }
+ } else if (argc > 0) {
+ if ((msg = JS_GetStringBytes(JS_ValueToString(cx, argv[0])))) {
+ switch_log_printf(SWITCH_CHANNEL_LOG, level, "JS_LOG: %s", msg);
+ return JS_TRUE;
+ }
+ }
return JS_FALSE;
}
@@ -1804,6 +1845,8 @@
stream.end = stream.data;
stream.data_size = sizeof(retbuf);
switch_api_execute(cmd, arg, &stream);
+ stream.write_function = switch_console_stream_write;
+
*rval = STRING_TO_JSVAL (JS_NewStringCopyZ(cx, retbuf));
} else {
*rval = STRING_TO_JSVAL (JS_NewStringCopyZ(cx, ""));
Modified: freeswitch/branches/mishehu/src/mod/languages/mod_spidermonkey/mod_spidermonkey.vcproj
==============================================================================
--- freeswitch/branches/mishehu/src/mod/languages/mod_spidermonkey/mod_spidermonkey.vcproj (original)
+++ freeswitch/branches/mishehu/src/mod/languages/mod_spidermonkey/mod_spidermonkey.vcproj Sun Jul 23 19:05:25 2006
@@ -65,7 +65,7 @@
<Tool
Name="VCLinkerTool"
LinkLibraryDependencies="false"
- AdditionalDependencies="js32.lib curllib.lib ws2_32.lib winmm.lib sqlite.lib fdlibm.lib libnspr4.lib libplc4.lib libplds4.lib libteletone.lib FreeSwitchCore.lib libetpan.lib"
+ AdditionalDependencies="js32.lib curllib.lib ws2_32.lib winmm.lib sqlite.lib fdlibm.lib libnspr4.lib libplc4.lib libplds4.lib libteletone.lib FreeSwitchCore.lib"
OutputFile="..\..\..\..\w32\vsnet\$(OutDir)/mod/mod_spidermonkey.dll"
LinkIncremental="2"
AdditionalLibraryDirectories=""..\..\..\..\libs\js\src\$(OutDir)";"..\..\..\..\libs\curl\lib\$(OutDir)";"..\..\..\..\libs\sqlite\$(OutDir)";..\..\..\..\libs\js\nspr\lib;"..\..\..\..\w32\vsnet\$(OutDir)";"..\..\..\..\libs\libetpan\build-windows\libetpan\$(OutDir)""
@@ -147,7 +147,7 @@
<Tool
Name="VCLinkerTool"
LinkLibraryDependencies="false"
- AdditionalDependencies="js32.lib curllib.lib ws2_32.lib winmm.lib sqlite.lib fdlibm.lib libnspr4.lib libplc4.lib libplds4.lib libteletone.lib FreeSwitchCore.lib libetpan.lib"
+ AdditionalDependencies="js32.lib curllib.lib ws2_32.lib winmm.lib sqlite.lib fdlibm.lib libnspr4.lib libplc4.lib libplds4.lib libteletone.lib FreeSwitchCore.lib"
OutputFile="..\..\..\..\w32\vsnet\$(OutDir)/mod/mod_spidermonkey.dll"
LinkIncremental="1"
AdditionalLibraryDirectories=""..\..\..\..\libs\js\src\$(OutDir)";"..\..\..\..\libs\curl\lib\$(OutDir)";"..\..\..\..\libs\sqlite\$(OutDir)";..\..\..\..\libs\js\nspr\lib;"..\..\..\..\w32\vsnet\$(OutDir)";"..\..\..\..\libs\libetpan\build-windows\libetpan\$(OutDir)""
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/mysqlcdr.cpp
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/mysqlcdr.cpp (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/mysqlcdr.cpp Sun Jul 23 19:05:25 2006
@@ -240,29 +240,40 @@
}
template <typename T>
-void MysqlCDR::add_parameter(T& param, enum_field_types type, bool is_null)
+void MysqlCDR::add_parameter(T& param, enum_field_types type, bool *is_null)
{
MYSQL_BIND temp_bind;
memset(&temp_bind,0,sizeof(temp_bind));
temp_bind.buffer_type = type;
- if(is_null)
- temp_bind.is_null = (my_bool*)1;
+ if(is_null != 0)
+ {
+ if(*is_null)
+ temp_bind.is_null = (my_bool*) is_null;
+ else
+ temp_bind.buffer = ¶m;
+ }
+ else
+ temp_bind.buffer = ¶m;
- temp_bind.buffer = ¶m;
-
bindme.push_back(temp_bind);
}
template <>
-void MysqlCDR::add_parameter<MYSQL_TIME>(MYSQL_TIME& param, enum_field_types type, bool is_null)
+void MysqlCDR::add_parameter<MYSQL_TIME>(MYSQL_TIME& param, enum_field_types type, bool* is_null)
{
MYSQL_BIND temp_bind;
memset(&temp_bind,0,sizeof(temp_bind));
temp_bind.buffer_type = type;
- if(is_null)
- temp_bind.is_null = (my_bool*)1;
+ if(is_null != 0)
+ {
+ if(*is_null)
+ temp_bind.is_null = (my_bool*) is_null;
+ else
+ temp_bind.buffer = ¶m;
+
+ }
else
temp_bind.buffer = ¶m;
@@ -295,11 +306,11 @@
set_mysql_time(tm2,my_callanswerdate);
set_mysql_time(tm3,my_callenddate);
- add_parameter(my_callstartdate,MYSQL_TYPE_DATETIME,0);
- add_parameter(my_callanswerdate,MYSQL_TYPE_DATETIME,0);
- add_parameter(my_callenddate,MYSQL_TYPE_DATETIME,0);
+ add_parameter(my_callstartdate,MYSQL_TYPE_DATETIME);
+ add_parameter(my_callanswerdate,MYSQL_TYPE_DATETIME);
+ add_parameter(my_callenddate,MYSQL_TYPE_DATETIME);
- add_parameter(originated,MYSQL_TYPE_TINY,0);
+ add_parameter(originated,MYSQL_TYPE_TINY);
add_string_parameter(clid,clid_length,MYSQL_TYPE_VAR_STRING,0);
add_string_parameter(src,src_length,MYSQL_TYPE_VAR_STRING,0);
add_string_parameter(dst,dst_length,MYSQL_TYPE_VAR_STRING,0);
@@ -331,15 +342,18 @@
{
int* x = new int;
*x = 0;
- bool is_null = 0;
+ bool* is_null = new bool;
+ *is_null = 0;
+
if(iItr->second.size() > 0)
{
std::istringstream istring(iItr->second);
istring >> *x;
}
else
- is_null = 1;
+ *is_null = 1;
temp_chanvars_holder.push_back(x);
+ temp_chanvars_holder.push_back(is_null);
add_parameter(*x,MYSQL_TYPE_LONG,is_null);
break;
}
@@ -347,15 +361,17 @@
{
double* x = new double;
*x = 0;
- bool is_null = 0;
+ bool* is_null = new bool;
+ *is_null = 0;
if(iItr->second.size() > 0)
{
std::istringstream istring(iItr->second);
istring >> *x;
}
else
- is_null = 1;
+ *is_null = 1;
temp_chanvars_holder.push_back(x);
+ temp_chanvars_holder.push_back(is_null);
add_parameter(*x,MYSQL_TYPE_DOUBLE,is_null);
break;
}
@@ -363,17 +379,19 @@
{
short* x = new short;
*x = 0;
- bool is_null = 0;
+ bool* is_null = new bool;
+ *is_null = 0;
std::cout << "CDR_TINY: " << iItr->second << " and its size is " << iItr->second.size() << " bytes." << std::endl << std::endl;
if(iItr->second.size() > 0)
{
- std::cout << "Converting iItr->second to type short." << std::endl;
+ std::cout << "Converting iItr->second to type char." << std::endl;
std::istringstream istring(iItr->second);
istring >> *x;
}
else
- is_null = 1;
+ *is_null = 1;
temp_chanvars_holder.push_back(x);
+ temp_chanvars_holder.push_back(is_null);
add_parameter(*x,MYSQL_TYPE_TINY,is_null);
break;
}
@@ -385,11 +403,14 @@
char* x = new char[(*stringlength+1)];
strncpy(x,iItr->second.c_str(),*stringlength);
-
- add_string_parameter(x,*stringlength,MYSQL_TYPE_VAR_STRING,0);
+
+ bool* is_null = new bool;
+ *is_null = 0;
+ add_string_parameter(x,*stringlength,MYSQL_TYPE_VAR_STRING,is_null);
temp_chanvars_holder.push_back(stringlength);
temp_chanvars_holder.push_back(x);
+ temp_chanvars_holder.push_back(is_null);
break;
}
default:
@@ -516,6 +537,10 @@
default:
switch_console_printf(SWITCH_CHANNEL_LOG,"We should not get to this point in this switch/case statement.\n");
}
+
+ bool* tempbool = (bool*) temp_chanvars_holder.front();
+ temp_chanvars_holder.pop_front();
+ delete tempbool;
}
}
return 1;
@@ -538,21 +563,29 @@
-void MysqlCDR::add_string_parameter(char* param, long unsigned int& param_length, enum_field_types type, bool is_null)
+void MysqlCDR::add_string_parameter(char* param, long unsigned int& param_length, enum_field_types type, bool *is_null)
{
MYSQL_BIND temp_bind;
memset(&temp_bind,0,sizeof(temp_bind));
temp_bind.buffer_type = type;
- if(is_null || param == 0)
- temp_bind.is_null = (my_bool*)1;
+ if(is_null != 0)
+ {
+ if(*is_null || param == 0)
+ temp_bind.is_null = (my_bool*) is_null;
+ else
+ {
+ temp_bind.length = ¶m_length;
+ temp_bind.buffer_length = param_length;
+ temp_bind.buffer = param;
+ }
+ }
else
{
temp_bind.length = ¶m_length;
temp_bind.buffer_length = param_length;
temp_bind.buffer = param;
}
- //std::cout << "String added is: " << temp_bind.buffer << " and is " << temp_bind.length << " characters long." << std::endl;
-
+
bindme.push_back(temp_bind);
}
Modified: freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/mysqlcdr.h
==============================================================================
--- freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/mysqlcdr.h (original)
+++ freeswitch/branches/mishehu/src/mod/loggers/mod_cdr/mysqlcdr.h Sun Jul 23 19:05:25 2006
@@ -85,8 +85,8 @@
long unsigned int lastapp_length;
long unsigned int lastdata_length;
// Now a couple internal methods
- template <typename T> void add_parameter(T& param, enum_field_types type, bool is_null);
- void add_string_parameter(char* param, long unsigned int& param_length, enum_field_types type, bool is_null);
+ template <typename T> void add_parameter(T& param, enum_field_types type, bool *is_null=0);
+ void add_string_parameter(char* param, long unsigned int& param_length, enum_field_types type, bool* is_null=0);
void set_mysql_time(switch_time_exp_t& param, MYSQL_TIME& destination);
};
Modified: freeswitch/branches/mishehu/src/switch_channel.c
==============================================================================
--- freeswitch/branches/mishehu/src/switch_channel.c (original)
+++ freeswitch/branches/mishehu/src/switch_channel.c Sun Jul 23 19:05:25 2006
@@ -339,11 +339,18 @@
SWITCH_DECLARE(switch_status_t) switch_channel_set_variable(switch_channel_t *channel, char *varname, char *value)
{
assert(channel != NULL);
- switch_core_hash_delete(channel->variables, varname);
- switch_core_hash_insert_dup(channel->variables, varname, switch_core_session_strdup(channel->session, value));
+ if (varname) {
+ switch_core_hash_delete(channel->variables, varname);
+ if (value) {
+ switch_core_hash_insert_dup(channel->variables, varname, switch_core_session_strdup(channel->session, value));
+ } else {
+ switch_core_hash_delete(channel->variables, varname);
+ }
+ return SWITCH_STATUS_SUCCESS;
+ }
- return SWITCH_STATUS_SUCCESS;
+ return SWITCH_STATUS_FALSE;
}
SWITCH_DECLARE(int) switch_channel_test_flag(switch_channel_t *channel, switch_channel_flag_t flags)
@@ -559,7 +566,16 @@
if (state < CS_HANGUP) {
switch_event_t *event;
if (switch_event_create(&event, SWITCH_EVENT_CHANNEL_STATE) == SWITCH_STATUS_SUCCESS) {
- switch_channel_event_set_data(channel, event);
+ if (state == CS_RING) {
+ switch_channel_event_set_data(channel, event);
+ } else {
+ char state_num[25];
+ snprintf(state_num, sizeof(state_num), "%d", channel->state);
+ switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Channel-State", (char *) switch_channel_state_name(channel->state));
+ switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Channel-State-Number", (char *) state_num);
+ switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Channel-Name", switch_channel_get_name(channel));
+ switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Unique-ID", switch_core_session_get_uuid(channel->session));
+ }
switch_event_fire(&event);
}
}
@@ -586,6 +602,7 @@
{
switch_caller_profile_t *caller_profile, *originator_caller_profile, *originatee_caller_profile;
switch_hash_index_t *hi;
+ switch_codec_t *codec;
void *val;
const void *var;
char state_num[25];
@@ -599,7 +616,16 @@
switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Channel-State-Number", (char *) state_num);
switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Channel-Name", switch_channel_get_name(channel));
switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Unique-ID", switch_core_session_get_uuid(channel->session));
-
+
+ if ((codec = switch_core_session_get_read_codec(channel->session))) {
+ switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Channel-Read-Codec-Name", codec->implementation->iananame);
+ switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Channel-Read-Codec-Rate", "%u", codec->implementation->samples_per_second);
+ }
+
+ if ((codec = switch_core_session_get_write_codec(channel->session))) {
+ switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Channel-Write-Codec-Name", codec->implementation->iananame);
+ switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Channel-Write-Codec-Rate", "%u", codec->implementation->samples_per_second);
+ }
/* Index Caller's Profile */
if (caller_profile) {
Modified: freeswitch/branches/mishehu/src/switch_core.c
==============================================================================
--- freeswitch/branches/mishehu/src/switch_core.c (original)
+++ freeswitch/branches/mishehu/src/switch_core.c Sun Jul 23 19:05:25 2006
@@ -307,7 +307,7 @@
return status;
}
-SWITCH_DECLARE(switch_status_t) switch_core_session_event_send(char *uuid_str, switch_event_t *event)
+SWITCH_DECLARE(switch_status_t) switch_core_session_event_send(char *uuid_str, switch_event_t **event)
{
switch_core_session_t *session = NULL;
switch_status_t status = SWITCH_STATUS_FALSE;
@@ -965,6 +965,8 @@
switch_io_event_hook_outgoing_channel_t *ptr;
switch_status_t status = SWITCH_STATUS_FALSE;
const switch_endpoint_interface_t *endpoint_interface;
+ switch_channel_t *channel = NULL;
+ switch_caller_profile_t *outgoing_profile = caller_profile;
if ((endpoint_interface = switch_loadable_module_get_endpoint_interface(endpoint_name)) == 0) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Could not locate channel type %s\n", endpoint_name);
@@ -972,9 +974,36 @@
}
if (endpoint_interface->io_routines->outgoing_channel) {
- if ((status =
- endpoint_interface->io_routines->outgoing_channel(session, caller_profile,
- new_session, pool)) == SWITCH_STATUS_SUCCESS) {
+ if (session) {
+ char *ecaller_id_name = NULL, *ecaller_id_number = NULL;
+ channel = switch_core_session_get_channel(session);
+
+ ecaller_id_name = switch_channel_get_variable(channel, "effective_caller_id_name");
+ ecaller_id_number = switch_channel_get_variable(channel, "effective_caller_id_number");
+
+ if (ecaller_id_name || ecaller_id_number) {
+ if (caller_profile) {
+ outgoing_profile = switch_caller_profile_new(switch_core_session_get_pool(session),
+ caller_profile->username,
+ caller_profile->dialplan,
+ ecaller_id_name ? ecaller_id_name : caller_profile->caller_id_name,
+ ecaller_id_number ? ecaller_id_number : caller_profile->caller_id_number,
+ caller_profile->network_addr,
+ caller_profile->ani,
+ caller_profile->ani2,
+ caller_profile->rdnis,
+ caller_profile->source,
+ caller_profile->context,
+ caller_profile->destination_number);
+
+ }
+ }
+ }
+
+ if ((status = endpoint_interface->io_routines->outgoing_channel(session,
+ outgoing_profile,
+ new_session,
+ pool)) == SWITCH_STATUS_SUCCESS) {
if (session) {
for (ptr = session->event_hooks.outgoing_channel; ptr; ptr = ptr->next) {
if ((status = ptr->outgoing_channel(session, caller_profile, *new_session)) != SWITCH_STATUS_SUCCESS) {
@@ -985,13 +1014,16 @@
} else {
return status;
}
+ } else {
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Could not locate outgoing channel interface for %s\n", endpoint_name);
+ return SWITCH_STATUS_FALSE;
}
if (*new_session) {
switch_caller_profile_t *profile = NULL, *peer_profile = NULL, *cloned_profile = NULL;
- switch_channel_t *channel = NULL, *peer_channel = NULL;
+ switch_channel_t *peer_channel = NULL;
- if (session && (channel = switch_core_session_get_channel(session)) != 0) {
+ if (session && channel) {
profile = switch_channel_get_caller_profile(channel);
}
if ((peer_channel = switch_core_session_get_channel(*new_session)) != 0) {
@@ -1057,35 +1089,82 @@
return status;
}
-SWITCH_DECLARE(switch_status_t) switch_core_session_queue_event(switch_core_session_t *session, switch_event_t *event)
+
+SWITCH_DECLARE(switch_status_t) switch_core_session_receive_event(switch_core_session_t *session, switch_event_t **event)
{
- switch_io_event_hook_queue_event_t *ptr;
- switch_status_t status = SWITCH_STATUS_FALSE, istatus = SWITCH_STATUS_FALSE;;
+ switch_io_event_hook_receive_event_t *ptr;
+ switch_status_t status = SWITCH_STATUS_FALSE;
assert(session != NULL);
- if (session->endpoint_interface->io_routines->queue_event) {
- status = session->endpoint_interface->io_routines->queue_event(session, event);
- if (status != SWITCH_STATUS_SUCCESS && status != SWITCH_STATUS_BREAK) {
- for (ptr = session->event_hooks.queue_event; ptr; ptr = ptr->next) {
- if ((istatus = ptr->queue_event(session, event)) != SWITCH_STATUS_SUCCESS) {
- break;
+ /* Acquire a read lock on the session or forget it the channel is dead */
+ if (switch_thread_rwlock_tryrdlock(session->rwlock) == SWITCH_STATUS_SUCCESS) {
+ if (switch_channel_get_state(session->channel) < CS_HANGUP) {
+ if (session->endpoint_interface->io_routines->receive_event) {
+ status = session->endpoint_interface->io_routines->receive_event(session, *event);
+ }
+
+ if (status == SWITCH_STATUS_SUCCESS) {
+ for (ptr = session->event_hooks.receive_event; ptr; ptr = ptr->next) {
+ if ((status = ptr->receive_event(session, *event)) != SWITCH_STATUS_SUCCESS) {
+ break;
+ }
}
}
- }
-
- if (status == SWITCH_STATUS_SUCCESS || status == SWITCH_STATUS_BREAK) {
- if (!session->event_queue) {
- switch_queue_create(&session->event_queue, SWITCH_EVENT_QUEUE_LEN, session->pool);
+
+ if (status == SWITCH_STATUS_BREAK) {
+ status = SWITCH_STATUS_SUCCESS;
}
- switch_queue_push(session->event_queue, event);
+
+ if (status == SWITCH_STATUS_SUCCESS) {
+ switch_event_destroy(event);
+ }
}
+ switch_thread_rwlock_unlock(session->rwlock);
}
+
+ return status;
+}
+SWITCH_DECLARE(switch_status_t) switch_core_session_queue_event(switch_core_session_t *session, switch_event_t **event)
+
+{
+ switch_status_t status = SWITCH_STATUS_FALSE;
+
+ assert(session != NULL);
+
+ if (!session->event_queue) {
+ switch_queue_create(&session->event_queue, SWITCH_EVENT_QUEUE_LEN, session->pool);
+ }
+
+ if (session->event_queue) {
+ if (switch_queue_trypush(session->event_queue, *event) == SWITCH_STATUS_SUCCESS) {
+ *event = NULL;
+ status = SWITCH_STATUS_SUCCESS;
+ }
+ }
+
return status;
}
+SWITCH_DECLARE(switch_status_t) switch_core_session_dequeue_event(switch_core_session_t *session, switch_event_t **event)
+
+{
+ switch_status_t status = SWITCH_STATUS_FALSE;
+ void *pop;
+
+ assert(session != NULL);
+
+ if (session->event_queue) {
+ if ((status = (switch_status_t) switch_queue_trypop(session->event_queue, &pop)) == SWITCH_STATUS_SUCCESS) {
+ *event = (switch_event_t *) pop;
+ }
+ }
+
+ return status;
+}
+
SWITCH_DECLARE(switch_status_t) switch_core_session_read_frame(switch_core_session_t *session, switch_frame_t **frame,
int timeout, int stream_id)
{
@@ -2651,7 +2730,7 @@
uint32_t itterations = 0;
uint8_t trans = 0;
switch_time_t last_commit = switch_time_now();
- uint32_t freq = 1000, target = 500, diff = 0;
+ uint32_t freq = 1000, target = 1000, diff = 0;
if (!runtime.event_db) {
runtime.event_db = switch_core_db_handle();
@@ -2680,7 +2759,7 @@
if (switch_core_db_persistant_execute(runtime.event_db, sql, 25) != SWITCH_STATUS_SUCCESS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "SQL exec error! [%s]\n", sql);
}
- free(sql);
+ switch_core_db_free(sql);
} else {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_NOTICE, "SQL thread ending\n");
break;
@@ -2727,33 +2806,30 @@
static void core_event_handler(switch_event_t *event)
{
- char buf[1024];
char *sql = NULL;
-
-
switch (event->event_id) {
-
case SWITCH_EVENT_CHANNEL_DESTROY:
- snprintf(buf, sizeof(buf), "delete from channels where uuid='%s'", switch_event_get_header(event, "unique-id"));
- sql = buf;
+ sql = switch_core_db_mprintf("delete from channels where uuid='%s'", switch_event_get_header(event, "unique-id"));
break;
case SWITCH_EVENT_CHANNEL_CREATE:
- snprintf(buf, sizeof(buf), "insert into channels (uuid,created,name,state) values('%s','%s','%s','%s')",
- switch_event_get_header(event, "unique-id"),
- switch_event_get_header(event, "event-date-local"),
- switch_event_get_header(event, "channel-name"),
- switch_event_get_header(event, "channel-state")
- );
- sql = buf;
+ sql = switch_core_db_mprintf("insert into channels (uuid,created,name,state) values('%q','%q','%q','%q')",
+ switch_event_get_header(event, "unique-id"),
+ switch_event_get_header(event, "event-date-local"),
+ switch_event_get_header(event, "channel-name"),
+ switch_event_get_header(event, "channel-state")
+ );
break;
case SWITCH_EVENT_CHANNEL_EXECUTE:
- snprintf(buf, sizeof(buf), "update channels set application='%s',application_data='%s' where uuid='%s'",
- switch_event_get_header(event, "application"),
- switch_event_get_header(event, "application-data"),
- switch_event_get_header(event, "unique-id")
- );
- sql = buf;
+ sql = switch_core_db_mprintf("update channels set application='%q',application_data='%q', read_codec='%q',read_rate='%q',write_codec='%q',write_rate='%q' where uuid='%q'",
+ switch_event_get_header(event, "application"),
+ switch_event_get_header(event, "application-data"),
+ switch_event_get_header(event, "channel-read-codec-name"),
+ switch_event_get_header(event, "channel-read-codec-rate"),
+ switch_event_get_header(event, "channel-write-codec-name"),
+ switch_event_get_header(event, "channel-write-codec-rate"),
+ switch_event_get_header(event, "unique-id")
+ );
break;
case SWITCH_EVENT_CHANNEL_STATE:
if (event) {
@@ -2765,60 +2841,54 @@
case CS_DONE:
break;
case CS_RING:
- snprintf(buf, sizeof(buf), "update channels set state='%s',cid_name='%s',cid_num='%s',ip_addr='%s',dest='%s'"
- "where uuid='%s'",
- switch_event_get_header(event, "channel-state"),
- switch_event_get_header(event, "caller-caller-id-name"),
- switch_event_get_header(event, "caller-caller-id-number"),
- switch_event_get_header(event, "caller-network-addr"),
- switch_event_get_header(event, "caller-destination-number"),
- switch_event_get_header(event, "unique-id")
- );
- sql = buf;
+ sql = switch_core_db_mprintf("update channels set state='%s',cid_name='%q',cid_num='%q',ip_addr='%s',dest='%q'"
+ "where uuid='%s'",
+ switch_event_get_header(event, "channel-state"),
+ switch_event_get_header(event, "caller-caller-id-name"),
+ switch_event_get_header(event, "caller-caller-id-number"),
+ switch_event_get_header(event, "caller-network-addr"),
+ switch_event_get_header(event, "caller-destination-number"),
+ switch_event_get_header(event, "unique-id")
+ );
break;
default:
- snprintf(buf, sizeof(buf), "update channels set state='%s' where uuid='%s'",
- switch_event_get_header(event, "channel-state"),
- switch_event_get_header(event, "unique-id")
- );
- sql = buf;
+ sql = switch_core_db_mprintf("update channels set state='%s' where uuid='%s'",
+ switch_event_get_header(event, "channel-state"),
+ switch_event_get_header(event, "unique-id")
+ );
break;
}
}
break;
case SWITCH_EVENT_CHANNEL_BRIDGE:
- snprintf(buf, sizeof(buf), "insert into calls values ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",
- switch_event_get_header(event, "event-calling-function"),
- switch_event_get_header(event, "caller-caller-id-name"),
- switch_event_get_header(event, "caller-caller-id-number"),
- switch_event_get_header(event, "caller-destination-number"),
- switch_event_get_header(event, "caller-channel-name"),
- switch_event_get_header(event, "caller-unique-id"),
- switch_event_get_header(event, "originatee-caller-id-name"),
- switch_event_get_header(event, "originatee-caller-id-number"),
- switch_event_get_header(event, "originatee-destination-number"),
- switch_event_get_header(event, "originatee-channel-name"),
- switch_event_get_header(event, "originatee-unique-id")
- );
- sql = buf;
+ sql = switch_core_db_mprintf("insert into calls values ('%s','%q','%q','%q','%q','%s','%q','%q','%q','%q','%s')",
+ switch_event_get_header(event, "event-calling-function"),
+ switch_event_get_header(event, "caller-caller-id-name"),
+ switch_event_get_header(event, "caller-caller-id-number"),
+ switch_event_get_header(event, "caller-destination-number"),
+ switch_event_get_header(event, "caller-channel-name"),
+ switch_event_get_header(event, "caller-unique-id"),
+ switch_event_get_header(event, "originatee-caller-id-name"),
+ switch_event_get_header(event, "originatee-caller-id-number"),
+ switch_event_get_header(event, "originatee-destination-number"),
+ switch_event_get_header(event, "originatee-channel-name"),
+ switch_event_get_header(event, "originatee-unique-id")
+ );
break;
case SWITCH_EVENT_CHANNEL_UNBRIDGE:
- snprintf(buf, sizeof(buf), "delete from calls where caller_uuid='%s'", switch_event_get_header(event, "caller-unique-id"));
- sql = buf;
+ sql = switch_core_db_mprintf("delete from calls where caller_uuid='%s'", switch_event_get_header(event, "caller-unique-id"));
break;
case SWITCH_EVENT_SHUTDOWN:
- snprintf(buf, sizeof(buf), "delete from channels;delete from interfaces;delete from calls");
- sql = buf;
+ sql = switch_core_db_mprintf("delete from channels;delete from interfaces;delete from calls");
break;
case SWITCH_EVENT_LOG:
return;
case SWITCH_EVENT_MODULE_LOAD:
- snprintf(buf, sizeof(buf), "insert into interfaces (type,name) values('%s','%s')",
- switch_event_get_header(event, "type"),
- switch_event_get_header(event, "name")
- );
- sql = buf;
+ sql = switch_core_db_mprintf("insert into interfaces (type,name) values('%q','%q')",
+ switch_event_get_header(event, "type"),
+ switch_event_get_header(event, "name")
+ );
break;
default:
//buf[0] = '\0';
@@ -2828,7 +2898,8 @@
}
if (sql) {
- switch_queue_push(runtime.sql_queue, strdup(sql));
+ switch_queue_push(runtime.sql_queue, sql);
+ sql = NULL;
}
}
@@ -2859,10 +2930,10 @@
}
-SWITCH_DECLARE(uint32_t) switch_core_session_limit(uint32_t new)
+SWITCH_DECLARE(uint32_t) switch_core_session_limit(uint32_t new_limit)
{
- if (new) {
- runtime.session_limit = new;
+ if (new_limit) {
+ runtime.session_limit = new_limit;
}
return runtime.session_limit;
@@ -2951,7 +3022,11 @@
" ip_addr VARCHAR(255),\n"
" dest VARCHAR(255),\n"
" application VARCHAR(255),\n"
- " application_data VARCHAR(255)\n"
+ " application_data VARCHAR(255),\n"
+ " read_codec VARCHAR(255),\n"
+ " read_rate VARCHAR(255),\n"
+ " write_codec VARCHAR(255),\n"
+ " write_rate VARCHAR(255)\n"
");\n";
char create_calls_sql[] =
"CREATE TABLE calls (\n"
Modified: freeswitch/branches/mishehu/src/switch_event.c
==============================================================================
--- freeswitch/branches/mishehu/src/switch_event.c (original)
+++ freeswitch/branches/mishehu/src/switch_event.c Sun Jul 23 19:05:25 2006
@@ -248,6 +248,23 @@
return EVENT_NAMES[event];
}
+SWITCH_DECLARE(switch_status_t) switch_name_event(char *name, switch_event_types_t *type)
+{
+ switch_event_types_t x;
+ assert(BLOCK != NULL);
+ assert(RUNTIME_POOL != NULL);
+
+ for (x = 0; x <= SWITCH_EVENT_ALL; x++) {
+ if (!strcasecmp(name, EVENT_NAMES[x])) {
+ *type = x;
+ return SWITCH_STATUS_SUCCESS;
+ }
+ }
+
+ return SWITCH_STATUS_FALSE;
+
+}
+
SWITCH_DECLARE(switch_status_t) switch_event_reserve_subclass_detailed(char *owner, char *subclass_name)
{
@@ -454,9 +471,9 @@
SWITCH_DECLARE(switch_status_t) switch_event_dup(switch_event_t **event, switch_event_t *todup)
{
- switch_event_header_t *header, *hp, *hp2;
+ switch_event_header_t *header, *hp, *hp2, *last = NULL;
- if (switch_event_create_subclass(event, todup->event_id, todup->subclass->name) != SWITCH_STATUS_SUCCESS) {
+ if (switch_event_create_subclass(event, todup->event_id, todup->subclass ? todup->subclass->name : NULL) != SWITCH_STATUS_SUCCESS) {
return SWITCH_STATUS_GENERR;
}
@@ -464,7 +481,9 @@
(*event)->event_user_data = todup->event_user_data;
(*event)->bind_user_data = todup->bind_user_data;
- for (hp = todup->headers; hp && hp->next;) {
+ hp2 = (*event)->headers;
+
+ for (hp = todup->headers; hp; hp = hp->next) {
if ((header = ALLOC(sizeof(*header))) == 0) {
return SWITCH_STATUS_MEMERR;
}
@@ -474,13 +493,17 @@
header->name = DUP(hp->name);
header->value = DUP(hp->value);
- for (hp2 = todup->headers; hp2 && hp2->next; hp2 = hp2->next);
-
- if (hp2) {
- hp2->next = header;
+ if (last) {
+ last->next = header;
} else {
(*event)->headers = header;
}
+
+ last = header;
+ }
+
+ if (todup->body) {
+ (*event)->body = DUP(todup->body);
}
return SWITCH_STATUS_SUCCESS;
Modified: freeswitch/branches/mishehu/src/switch_ivr.c
==============================================================================
--- freeswitch/branches/mishehu/src/switch_ivr.c (original)
+++ freeswitch/branches/mishehu/src/switch_ivr.c Sun Jul 23 19:05:25 2006
@@ -34,9 +34,49 @@
static const switch_state_handler_table_t audio_bridge_peer_state_handlers;
+SWITCH_DECLARE(switch_status_t) switch_ivr_sleep(switch_core_session_t *session, uint32_t ms)
+{
+ switch_channel_t *channel;
+ switch_status_t status = SWITCH_STATUS_SUCCESS;
+ switch_time_t start, now, done = switch_time_now() + (ms * 1000);
+ switch_frame_t *read_frame;
+ int32_t left, elapsed;
+ channel = switch_core_session_get_channel(session);
+ assert(channel != NULL);
+
+ start = switch_time_now();
+
+ for(;;) {
+ now = switch_time_now();
+ elapsed = (int32_t)((now - start) / 1000);
+ left = ms - elapsed;
+
+ if (!switch_channel_ready(channel)) {
+ status = SWITCH_STATUS_FALSE;
+ break;
+ }
+
+ if (now > done || left <= 0) {
+ break;
+ }
+
+ if (switch_channel_test_flag(channel, CF_SERVICE)) {
+ switch_yield(1000);
+ } else {
+ status = switch_core_session_read_frame(session, &read_frame, left, 0);
+ if (!SWITCH_READ_ACCEPTABLE(status)) {
+ break;
+ }
+ }
+ }
+
+
+ return status;
+}
+
SWITCH_DECLARE(switch_status_t) switch_ivr_collect_digits_callback(switch_core_session_t *session,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t input_callback,
void *buf,
unsigned int buflen)
{
@@ -46,19 +86,26 @@
channel = switch_core_session_get_channel(session);
assert(channel != NULL);
- if (!dtmf_callback) {
+ if (!input_callback) {
return SWITCH_STATUS_GENERR;
}
while(switch_channel_ready(channel)) {
switch_frame_t *read_frame;
+ switch_event_t *event;
+
char dtmf[128];
if (switch_channel_has_dtmf(channel)) {
switch_channel_dequeue_dtmf(channel, dtmf, sizeof(dtmf));
- status = dtmf_callback(session, dtmf, buf, buflen);
+ status = input_callback(session, dtmf, SWITCH_INPUT_TYPE_DTMF, buf, buflen);
}
+ if (switch_core_session_dequeue_event(session, &event) == SWITCH_STATUS_SUCCESS) {
+ status = input_callback(session, event, SWITCH_INPUT_TYPE_EVENT, buf, buflen);
+ switch_event_destroy(&event);
+ }
+
if (status != SWITCH_STATUS_SUCCESS) {
break;
}
@@ -156,7 +203,7 @@
SWITCH_DECLARE(switch_status_t) switch_ivr_record_file(switch_core_session_t *session,
switch_file_handle_t *fh,
char *file,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t input_callback,
void *buf,
unsigned int buflen)
{
@@ -216,22 +263,31 @@
while(switch_channel_ready(channel)) {
switch_size_t len;
+ switch_event_t *event;
- if (dtmf_callback || buf) {
+ if (input_callback || buf) {
/*
dtmf handler function you can hook up to be executed when a digit is dialed during playback
if you return anything but SWITCH_STATUS_SUCCESS the playback will stop.
*/
if (switch_channel_has_dtmf(channel)) {
switch_channel_dequeue_dtmf(channel, dtmf, sizeof(dtmf));
- if (dtmf_callback) {
- status = dtmf_callback(session, dtmf, buf, buflen);
+ if (input_callback) {
+ status = input_callback(session, dtmf, SWITCH_INPUT_TYPE_DTMF, buf, buflen);
} else {
switch_copy_string((char *)buf, dtmf, buflen);
status = SWITCH_STATUS_BREAK;
}
}
+ if (input_callback) {
+ if (switch_core_session_dequeue_event(session, &event) == SWITCH_STATUS_SUCCESS) {
+ status = input_callback(session, event, SWITCH_INPUT_TYPE_EVENT, buf, buflen);
+ switch_event_destroy(&event);
+ }
+ }
+
+
if (status != SWITCH_STATUS_SUCCESS) {
break;
}
@@ -257,7 +313,7 @@
switch_file_handle_t *fh,
char *file,
char *timer_name,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t input_callback,
void *buf,
unsigned int buflen)
{
@@ -352,21 +408,29 @@
int done = 0;
int do_speed = 1;
int last_speed = -1;
+ switch_event_t *event;
- if (dtmf_callback || buf) {
+ if (input_callback || buf) {
/*
dtmf handler function you can hook up to be executed when a digit is dialed during playback
if you return anything but SWITCH_STATUS_SUCCESS the playback will stop.
*/
if (switch_channel_has_dtmf(channel)) {
switch_channel_dequeue_dtmf(channel, dtmf, sizeof(dtmf));
- if (dtmf_callback) {
- status = dtmf_callback(session, dtmf, buf, buflen);
+ if (input_callback) {
+ status = input_callback(session, dtmf, SWITCH_INPUT_TYPE_DTMF, buf, buflen);
} else {
switch_copy_string((char *)buf, dtmf, buflen);
status = SWITCH_STATUS_BREAK;
}
}
+
+ if (input_callback) {
+ if (switch_core_session_dequeue_event(session, &event) == SWITCH_STATUS_SUCCESS) {
+ status = input_callback(session, event, SWITCH_INPUT_TYPE_EVENT, buf, buflen);
+ switch_event_destroy(&event);
+ }
+ }
if (status != SWITCH_STATUS_SUCCESS) {
done = 1;
@@ -501,7 +565,7 @@
switch_speech_handle_t *sh,
switch_codec_t *codec,
switch_timer_t *timer,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t input_callback,
char *text,
void *buf,
unsigned int buflen)
@@ -559,8 +623,9 @@
ilen = len;
while(switch_channel_ready(channel)) {
+ switch_event_t *event;
- if (dtmf_callback || buf) {
+ if (input_callback || buf) {
/*
dtmf handler function you can hook up to be executed when a digit is dialed during playback
if you return anything but SWITCH_STATUS_SUCCESS the playback will stop.
@@ -570,15 +635,22 @@
status = SWITCH_STATUS_BREAK;
} else {
switch_channel_dequeue_dtmf(channel, dtmf, sizeof(dtmf));
- if (dtmf_callback) {
- status = dtmf_callback(session, dtmf, buf, buflen);
+ if (input_callback) {
+ status = input_callback(session, dtmf, SWITCH_INPUT_TYPE_DTMF, buf, buflen);
} else {
switch_copy_string((char *)buf, dtmf, buflen);
status = SWITCH_STATUS_BREAK;
}
}
}
-
+
+ if (input_callback) {
+ if (switch_core_session_dequeue_event(session, &event) == SWITCH_STATUS_SUCCESS) {
+ status = input_callback(session, event, SWITCH_INPUT_TYPE_EVENT, buf, buflen);
+ switch_event_destroy(&event);
+ }
+ }
+
if (status != SWITCH_STATUS_SUCCESS) {
done = 1;
break;
@@ -679,7 +751,7 @@
char *voice_name,
char *timer_name,
uint32_t rate,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t input_callback,
char *text,
void *buf,
unsigned int buflen)
@@ -761,7 +833,7 @@
}
}
- switch_ivr_speak_text_handle(session, &sh, &codec, timer_name ? &timer : NULL, dtmf_callback, text, buf, buflen);
+ switch_ivr_speak_text_handle(session, &sh, &codec, timer_name ? &timer : NULL, input_callback, text, buf, buflen);
flags = 0;
switch_core_speech_close(&sh, &flags);
switch_core_codec_destroy(&codec);
@@ -790,7 +862,7 @@
switch_core_thread_session_t *his_thread, *data = obj;
int *stream_id_p;
int stream_id = 0, ans_a = 0, ans_b = 0;
- switch_dtmf_callback_function_t dtmf_callback;
+ switch_input_callback_function_t input_callback;
switch_core_session_message_t msg = {0};
void *user_data;
@@ -804,7 +876,7 @@
session_b = data->objs[1];
stream_id_p = data->objs[2];
- dtmf_callback = (switch_dtmf_callback_function_t) data->objs[3];
+ input_callback = (switch_input_callback_function_t) data->objs[3];
user_data = data->objs[4];
his_thread = data->objs[5];
@@ -824,6 +896,7 @@
while (data->running > 0 && his_thread->running > 0) {
switch_channel_state_t b_state = switch_channel_get_state(chan_b);
switch_status_t status;
+ switch_event_t *event;
switch (b_state) {
case CS_HANGUP:
@@ -862,14 +935,26 @@
switch_channel_dequeue_dtmf(chan_a, dtmf, sizeof(dtmf));
switch_core_session_send_dtmf(session_b, dtmf);
- if (dtmf_callback) {
- if (dtmf_callback(session_a, dtmf, user_data, 0) != SWITCH_STATUS_SUCCESS) {
+ if (input_callback) {
+ if (input_callback(session_a, dtmf, SWITCH_INPUT_TYPE_DTMF, user_data, 0) != SWITCH_STATUS_SUCCESS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "%s ended call via DTMF\n", switch_channel_get_name(chan_a));
data->running = -1;
break;
}
}
- }
+ }
+
+ if (switch_core_session_dequeue_event(session_a, &event) == SWITCH_STATUS_SUCCESS) {
+ if (input_callback) {
+ status = input_callback(session_a, event, SWITCH_INPUT_TYPE_EVENT, user_data, 0);
+ }
+
+ if (switch_core_session_receive_event(session_b, &event) != SWITCH_STATUS_SUCCESS) {
+ switch_event_destroy(&event);
+ }
+
+ }
+
}
/* read audio from 1 channel and write it to the other */
@@ -973,7 +1058,7 @@
SWITCH_DECLARE(switch_status_t) switch_ivr_multi_threaded_bridge(switch_core_session_t *session,
switch_core_session_t *peer_session,
unsigned int timelimit,
- switch_dtmf_callback_function_t dtmf_callback,
+ switch_input_callback_function_t input_callback,
void *session_data,
void *peer_session_data)
@@ -1002,7 +1087,7 @@
other_audio_thread->objs[0] = session;
other_audio_thread->objs[1] = peer_session;
other_audio_thread->objs[2] = &stream_id;
- other_audio_thread->objs[3] = (void *) dtmf_callback;
+ other_audio_thread->objs[3] = (void *) input_callback;
other_audio_thread->objs[4] = session_data;
other_audio_thread->objs[5] = this_audio_thread;
other_audio_thread->running = 5;
@@ -1010,7 +1095,7 @@
this_audio_thread->objs[0] = peer_session;
this_audio_thread->objs[1] = session;
this_audio_thread->objs[2] = &stream_id;
- this_audio_thread->objs[3] = (void *) dtmf_callback;
+ this_audio_thread->objs[3] = (void *) input_callback;
this_audio_thread->objs[4] = peer_session_data;
this_audio_thread->objs[5] = other_audio_thread;
this_audio_thread->running = 2;
Modified: freeswitch/branches/mishehu/src/switch_loadable_module.c
==============================================================================
--- freeswitch/branches/mishehu/src/switch_loadable_module.c (original)
+++ freeswitch/branches/mishehu/src/switch_loadable_module.c Sun Jul 23 19:05:25 2006
@@ -662,28 +662,43 @@
const switch_codec_implementation_t *imp;
for (x = 0; x < preflen; x++) {
- char *name, *p, buf[128];
- uint32_t interval = 0, len = 0;
+ char *cur, *last = NULL, *next = NULL, *name, *p, buf[256];
+ uint32_t interval = 0, rate = 0;
- name = prefs[x];
- if ((p = strchr(name, '@'))) {
- p++;
- len = (uint32_t)(p-name);
+ switch_copy_string(buf, prefs[x], sizeof(buf));
+ last = name = next = cur = buf;
- if (len > sizeof(buf)) {
- len = sizeof(buf);
- }
- switch_copy_string(buf, name, len);
- *(buf + len) = '\0';
- interval = atoi(p);
- name = buf;
- }
+ for (;;) {
+ if (!next) {
+ break;
+ }
+ if ((p = strchr(next, '@'))) {
+ *p++ = '\0';
+ }
+ next = p;
+ if (cur != name) {
+ if (strchr(cur, 'i')) {
+ interval = atoi(cur);
+ } else if (strchr(cur, 'k')) {
+ rate = atoi(cur);
+ }
+ }
+ cur = next;
+ }
if ((codec_interface = switch_loadable_module_get_codec_interface(name)) != 0 ) {
for (imp = codec_interface->implementations; imp; imp = imp->next) {
- if (!interval) {
- array[i++] = imp;
- } else if ((uint32_t)(imp->microseconds_per_frame / 1000) == interval) {
+ uint8_t match = 1;
+
+ if (interval && (uint32_t)(imp->microseconds_per_frame / 1000) != interval) {
+ match = 0;
+ }
+
+ if (match && rate && (uint32_t)imp->samples_per_second != rate) {
+ match = 0;
+ }
+
+ if (match) {
array[i++] = imp;
}
}
Modified: freeswitch/branches/mishehu/src/switch_rtp.c
==============================================================================
--- freeswitch/branches/mishehu/src/switch_rtp.c (original)
+++ freeswitch/branches/mishehu/src/switch_rtp.c Sun Jul 23 19:05:25 2006
@@ -796,10 +796,11 @@
switch_sockaddr_ip_get(&tx_host, rtp_session->from_addr);
switch_sockaddr_ip_get(&old_host, rtp_session->remote_addr);
-
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Auto Changing port from %s:%u to %s:%u\n",
- old_host, old, tx_host, rtp_session->from_addr->port);
- switch_rtp_set_remote_address(rtp_session, tx_host, rtp_session->from_addr->port, &err);
+ if (!switch_strlen_zero(tx_host) && rtp_session->from_addr->port > 0) {
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Auto Changing port from %s:%u to %s:%u\n",
+ old_host, old, tx_host, rtp_session->from_addr->port);
+ switch_rtp_set_remote_address(rtp_session, tx_host, rtp_session->from_addr->port, &err);
+ }
}
switch_clear_flag(rtp_session, SWITCH_RTP_FLAG_AUTOADJ);
}
@@ -1083,7 +1084,8 @@
if (switch_test_flag(rtp_session, SWITCH_RTP_FLAG_VAD) &&
rtp_session->recv_msg.header.pt == rtp_session->vad_data.read_codec->implementation->ianacode &&
- datalen == rtp_session->vad_data.read_codec->implementation->encoded_bytes_per_frame) {
+ ((datalen == rtp_session->vad_data.read_codec->implementation->encoded_bytes_per_frame) ||
+ (datalen > SWITCH_RTP_CNG_PAYLOAD && rtp_session->vad_data.read_codec->implementation->encoded_bytes_per_frame == 0))) {
int16_t decoded[SWITCH_RECCOMMENDED_BUFFER_SIZE/sizeof(int16_t)];
uint32_t rate;
uint32_t flags;
Modified: freeswitch/branches/mishehu/src/switch_xml.c
==============================================================================
--- freeswitch/branches/mishehu/src/switch_xml.c (original)
+++ freeswitch/branches/mishehu/src/switch_xml.c Sun Jul 23 19:05:25 2006
@@ -912,7 +912,7 @@
switch_set_flag(MAIN_XML_ROOT, SWITCH_XML_ROOT);
}
} else {
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "Cannot Open XML Root!\n");
+ *err = "Cannot Open XML Root!";
}
if (hasmain) {
Modified: freeswitch/branches/mishehu/w32/Setup/Setup.vdproj
==============================================================================
--- freeswitch/branches/mishehu/w32/Setup/Setup.vdproj (original)
+++ freeswitch/branches/mishehu/w32/Setup/Setup.vdproj Sun Jul 23 19:05:25 2006
@@ -15,6 +15,18 @@
{
"Entry"
{
+ "MsmKey" = "8:_045CD868C425A84E27B5FD7DA5097B9D"
+ "OwnerKey" = "8:_1F21CF104E90499E8F6BBD2136A52884"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_0A2A2813738E4157B2CC6A4EF2A303BB"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
"MsmKey" = "8:_10A983E896C14286A47AAB6A8570EE6D"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -22,35 +34,131 @@
"Entry"
{
"MsmKey" = "8:_1273F63008CF585CA0E063E436B4646F"
- "OwnerKey" = "8:_EC68A140B58841DA9B9172BAFA5BEC63"
+ "OwnerKey" = "8:_2D09AB81AB8D45FF97E9DFA4DAC3465D"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_1273F63008CF585CA0E063E436B4646F"
- "OwnerKey" = "8:_2D09AB81AB8D45FF97E9DFA4DAC3465D"
+ "OwnerKey" = "8:_EC68A140B58841DA9B9172BAFA5BEC63"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_17FA3245B71F43BB9B2D995E3EE91051"
- "OwnerKey" = "8:_833354487E2841DDA7386EB492D2F21C"
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_2F2FEC549F02436EB87961BD1B9E5783"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_21821613411D407DA8261A0175360475"
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_D1269F1E49D442CF8EAC96C23E60325D"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_2814E641538B42EFA83525986A9D5AC1"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_1CFB1AB04E024FC993E0EB4859DF8408"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_EF14CB99F3414BB689D0CB0E6D6B8AB8"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_1F21CF104E90499E8F6BBD2136A52884"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_F0B800E719294692A02518CFD8CBAEFF"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_EE46A936D4054F7286909355BF2AE5D7"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_E72980C058C646E0A7FAF423EB57EA6E"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_B20769E090034897B32E3EA4EC1BA8A0"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_A0D5F714A0F94250A1C39603B699AB82"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_83C1B93AD71B4F8F9E074F9607B60DF1"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_6753CE9F969E43A2A50ADEC0245F58A4"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_4A285D260C3748A4BEFA6E5A9004D128"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "OwnerKey" = "8:_318FCC99E8D143D6B4F9F534E63009B3"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_1BD78CCD666E4BB5BE1168302E9613A2"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_2BA713204D6542A9A0DE1694316EAB1A"
+ "MsmKey" = "8:_1CFB1AB04E024FC993E0EB4859DF8408"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
+ "MsmKey" = "8:_1F21CF104E90499E8F6BBD2136A52884"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_2814E641538B42EFA83525986A9D5AC1"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
"MsmKey" = "8:_2D09AB81AB8D45FF97E9DFA4DAC3465D"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -99,157 +207,169 @@
}
"Entry"
{
- "MsmKey" = "8:_6226FB225DD41E9D0065BE7F6180D40E"
- "OwnerKey" = "8:_EE46A936D4054F7286909355BF2AE5D7"
+ "MsmKey" = "8:_6753CE9F969E43A2A50ADEC0245F58A4"
+ "OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_6226FB225DD41E9D0065BE7F6180D40E"
- "OwnerKey" = "8:_6753CE9F969E43A2A50ADEC0245F58A4"
+ "MsmKey" = "8:_684D96FA2BDD46909367E651099D8C4E"
+ "OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_6753CE9F969E43A2A50ADEC0245F58A4"
+ "MsmKey" = "8:_6E5C001E7A314DCEA0A4BF52BF74BCAD"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_684D96FA2BDD46909367E651099D8C4E"
+ "MsmKey" = "8:_72A8732C0C0C4D0EAAE89DBB82073335"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_6E5C001E7A314DCEA0A4BF52BF74BCAD"
+ "MsmKey" = "8:_7358123D2D064AD1BC517911A8B23D1B"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_72A8732C0C0C4D0EAAE89DBB82073335"
+ "MsmKey" = "8:_83062AA0528B40A59202BC7668F7132A"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_7358123D2D064AD1BC517911A8B23D1B"
+ "MsmKey" = "8:_83C1B93AD71B4F8F9E074F9607B60DF1"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_833354487E2841DDA7386EB492D2F21C"
- "OwnerKey" = "8:_2F2FEC549F02436EB87961BD1B9E5783"
+ "MsmKey" = "8:_87768631363249B2B301143C193612F7"
+ "OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_833354487E2841DDA7386EB492D2F21C"
- "OwnerKey" = "8:_B20769E090034897B32E3EA4EC1BA8A0"
+ "MsmKey" = "8:_8C45B56F84B700A7F349973FF46D5249"
+ "OwnerKey" = "8:_4A285D260C3748A4BEFA6E5A9004D128"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_833354487E2841DDA7386EB492D2F21C"
- "OwnerKey" = "8:_A0D5F714A0F94250A1C39603B699AB82"
+ "MsmKey" = "8:_8C45B56F84B700A7F349973FF46D5249"
+ "OwnerKey" = "8:_C105055EE271471A999CE7022E617EB7"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_833354487E2841DDA7386EB492D2F21C"
- "OwnerKey" = "8:_4A285D260C3748A4BEFA6E5A9004D128"
+ "MsmKey" = "8:_8C45B56F84B700A7F349973FF46D5249"
+ "OwnerKey" = "8:_EC68A140B58841DA9B9172BAFA5BEC63"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_833354487E2841DDA7386EB492D2F21C"
- "OwnerKey" = "8:_6753CE9F969E43A2A50ADEC0245F58A4"
+ "MsmKey" = "8:_95DF1AC815283888345057940530D1C0"
+ "OwnerKey" = "8:_F0B800E719294692A02518CFD8CBAEFF"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_833354487E2841DDA7386EB492D2F21C"
- "OwnerKey" = "8:_EE46A936D4054F7286909355BF2AE5D7"
+ "MsmKey" = "8:_9A293E8A356A4959BB6E541B7DC213CD"
+ "OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_833354487E2841DDA7386EB492D2F21C"
- "OwnerKey" = "8:_E72980C058C646E0A7FAF423EB57EA6E"
+ "MsmKey" = "8:_A0D5F714A0F94250A1C39603B699AB82"
+ "OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_833354487E2841DDA7386EB492D2F21C"
- "OwnerKey" = "8:_83C1B93AD71B4F8F9E074F9607B60DF1"
+ "MsmKey" = "8:_A40E3F2045F44C60A8509FDFE47E6C45"
+ "OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_833354487E2841DDA7386EB492D2F21C"
- "OwnerKey" = "8:_318FCC99E8D143D6B4F9F534E63009B3"
+ "MsmKey" = "8:_A55F680EDBCDA3F18A46EF6CFC14A1D5"
+ "OwnerKey" = "8:_E72980C058C646E0A7FAF423EB57EA6E"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_83C1B93AD71B4F8F9E074F9607B60DF1"
+ "MsmKey" = "8:_AD2EB44FE6D548F2A8DA4F9F2CE817AC"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_87768631363249B2B301143C193612F7"
+ "MsmKey" = "8:_B0A2E9B4C45D4098AFD734D0C4E3EAFB"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_95DF1AC815283888345057940530D1C0"
+ "MsmKey" = "8:_B20769E090034897B32E3EA4EC1BA8A0"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_B4DB166A7F41DC9EF58E277B90CC68AB"
+ "OwnerKey" = "8:_E72980C058C646E0A7FAF423EB57EA6E"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_B4DB166A7F41DC9EF58E277B90CC68AB"
"OwnerKey" = "8:_F0B800E719294692A02518CFD8CBAEFF"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_9A293E8A356A4959BB6E541B7DC213CD"
+ "MsmKey" = "8:_C105055EE271471A999CE7022E617EB7"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_A0D5F714A0F94250A1C39603B699AB82"
+ "MsmKey" = "8:_C81AC700C1BC4A55B98DF12C0CBAFD6F"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_AD2EB44FE6D548F2A8DA4F9F2CE817AC"
+ "MsmKey" = "8:_D0BB09AFB8D94B76918F0EE85BCCAD0A"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_B20769E090034897B32E3EA4EC1BA8A0"
+ "MsmKey" = "8:_D1269F1E49D442CF8EAC96C23E60325D"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_B4DB166A7F41DC9EF58E277B90CC68AB"
- "OwnerKey" = "8:_E72980C058C646E0A7FAF423EB57EA6E"
+ "MsmKey" = "8:_D4F501ED67B41C5D55B4698A2B50E1BF"
+ "OwnerKey" = "8:_6753CE9F969E43A2A50ADEC0245F58A4"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_B4DB166A7F41DC9EF58E277B90CC68AB"
- "OwnerKey" = "8:_F0B800E719294692A02518CFD8CBAEFF"
+ "MsmKey" = "8:_D4F501ED67B41C5D55B4698A2B50E1BF"
+ "OwnerKey" = "8:_EE46A936D4054F7286909355BF2AE5D7"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_C81AC700C1BC4A55B98DF12C0CBAFD6F"
+ "MsmKey" = "8:_D6F0F5845FAD4707975CE012A33CD607"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
@@ -279,6 +399,12 @@
}
"Entry"
{
+ "MsmKey" = "8:_E91E659A30834790A7F1C1669AE92172"
+ "OwnerKey" = "8:_180AE5B7EEED44D098233F52DEDDF9A1"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
"MsmKey" = "8:_EC68A140B58841DA9B9172BAFA5BEC63"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -291,6 +417,12 @@
}
"Entry"
{
+ "MsmKey" = "8:_EF14CB99F3414BB689D0CB0E6D6B8AB8"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
"MsmKey" = "8:_F0B800E719294692A02518CFD8CBAEFF"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -404,6 +536,46 @@
}
"File"
{
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_045CD868C425A84E27B5FD7DA5097B9D"
+ {
+ "SourcePath" = "8:swift.dll"
+ "TargetName" = "8:swift.dll"
+ "Tag" = "8:"
+ "Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_0A2A2813738E4157B2CC6A4EF2A303BB"
+ {
+ "SourcePath" = "8:..\\..\\AUTHORS"
+ "TargetName" = "8:AUTHORS"
+ "Tag" = "8:"
+ "Folder" = "8:_04AC783F1C9F41AEB4E947C46CE9C9FF"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1273F63008CF585CA0E063E436B4646F"
{
"SourcePath" = "8:iphlpapi.dll"
@@ -424,12 +596,12 @@
"IsDependency" = "11:TRUE"
"IsolateTo" = "8:"
}
- "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_21821613411D407DA8261A0175360475"
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1BD78CCD666E4BB5BE1168302E9613A2"
{
- "SourcePath" = "8:..\\..\\conf\\freeswitch.conf"
- "TargetName" = "8:freeswitch.conf"
+ "SourcePath" = "8:..\\..\\libs\\apr-iconv\\Release\\libapriconv-1.dll"
+ "TargetName" = "8:libapriconv-1.dll"
"Tag" = "8:"
- "Folder" = "8:_06036160035041E38F4179E6DB6380C5"
+ "Folder" = "8:_04AC783F1C9F41AEB4E947C46CE9C9FF"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Vital" = "11:TRUE"
@@ -504,12 +676,12 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
- "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_6226FB225DD41E9D0065BE7F6180D40E"
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_83062AA0528B40A59202BC7668F7132A"
{
- "SourcePath" = "8:perl58.dll"
- "TargetName" = "8:perl58.dll"
+ "SourcePath" = "8:..\\..\\conf\\freeswitch.xml"
+ "TargetName" = "8:freeswitch.xml"
"Tag" = "8:"
- "Folder" = "8:_04AC783F1C9F41AEB4E947C46CE9C9FF"
+ "Folder" = "8:_06036160035041E38F4179E6DB6380C5"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Vital" = "11:TRUE"
@@ -521,6 +693,26 @@
"PackageAs" = "3:1"
"Register" = "3:1"
"Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_8C45B56F84B700A7F349973FF46D5249"
+ {
+ "SourcePath" = "8:sqlite.dll"
+ "TargetName" = "8:sqlite.dll"
+ "Tag" = "8:"
+ "Folder" = "8:_04AC783F1C9F41AEB4E947C46CE9C9FF"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:TRUE"
"IsDependency" = "11:TRUE"
"IsolateTo" = "8:"
}
@@ -544,6 +736,46 @@
"IsDependency" = "11:TRUE"
"IsolateTo" = "8:"
}
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_A40E3F2045F44C60A8509FDFE47E6C45"
+ {
+ "SourcePath" = "8:..\\..\\COPYING"
+ "TargetName" = "8:COPYING"
+ "Tag" = "8:"
+ "Folder" = "8:_04AC783F1C9F41AEB4E947C46CE9C9FF"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ }
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_A55F680EDBCDA3F18A46EF6CFC14A1D5"
+ {
+ "SourcePath" = "8:sqlite.dll"
+ "TargetName" = "8:sqlite.dll"
+ "Tag" = "8:"
+ "Folder" = "8:_04AC783F1C9F41AEB4E947C46CE9C9FF"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:TRUE"
+ "IsolateTo" = "8:"
+ }
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B4DB166A7F41DC9EF58E277B90CC68AB"
{
"SourcePath" = "8:libapr-1.dll"
@@ -564,6 +796,26 @@
"IsDependency" = "11:TRUE"
"IsolateTo" = "8:"
}
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_D4F501ED67B41C5D55B4698A2B50E1BF"
+ {
+ "SourcePath" = "8:perl58.dll"
+ "TargetName" = "8:perl58.dll"
+ "Tag" = "8:"
+ "Folder" = "8:_04AC783F1C9F41AEB4E947C46CE9C9FF"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:TRUE"
+ "IsDependency" = "11:TRUE"
+ "IsolateTo" = "8:"
+ }
}
"FileType"
{
@@ -583,7 +835,7 @@
"{9EF0B969-E518-4E46-987F-47570745A589}:_06036160035041E38F4179E6DB6380C5"
{
"Name" = "8:conf"
- "AlwaysCreate" = "11:FALSE"
+ "AlwaysCreate" = "11:TRUE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:_A95348FEFEF74A31B7C08B4201803CBD"
@@ -594,7 +846,7 @@
"{9EF0B969-E518-4E46-987F-47570745A589}:_1C97B9EB8E024EE0AA5282BFBE006743"
{
"Name" = "8:db"
- "AlwaysCreate" = "11:FALSE"
+ "AlwaysCreate" = "11:TRUE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:_9E6DFB10CEE3456A82E42EA3751A0A25"
@@ -605,7 +857,7 @@
"{9EF0B969-E518-4E46-987F-47570745A589}:_27A96C279A6A44E8A2FDF8D51CD86E29"
{
"Name" = "8:perl"
- "AlwaysCreate" = "11:FALSE"
+ "AlwaysCreate" = "11:TRUE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:_0FB0CAEBEEBE4B9D8C6EC760DB498632"
@@ -616,7 +868,7 @@
"{9EF0B969-E518-4E46-987F-47570745A589}:_B6E020422C78490D96F78DB0E1A3F521"
{
"Name" = "8:mod"
- "AlwaysCreate" = "11:FALSE"
+ "AlwaysCreate" = "11:TRUE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:_09F2F8E16214428B84412E224BAA50C1"
@@ -624,6 +876,17 @@
{
}
}
+ "{9EF0B969-E518-4E46-987F-47570745A589}:_ED8FE817D10341CEBA2571A43326876F"
+ {
+ "Name" = "8:log"
+ "AlwaysCreate" = "11:TRUE"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Property" = "8:_673CC6A86CF64CC2BD137EF46A3AD379"
+ "Folders"
+ {
+ }
+ }
}
}
"{1525181F-901A-416C-8A58-119130FE478E}:_47AC7012FEA1483795137E042EAAA132"
@@ -664,14 +927,14 @@
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:Freeswitch"
"ProductCode" = "8:{317A9CC0-40DC-4803-A13E-5937F05F9D2E}"
- "PackageCode" = "8:{35F86401-29E6-4EA4-9362-D05B6C91426B}"
+ "PackageCode" = "8:{F5FFEAA8-6C32-4FFC-9DA5-FC799FDB8B8F}"
"UpgradeCode" = "8:{8080E3A5-7ADD-4173-8913-BDA439D1C8DD}"
"RestartWWWService" = "11:FALSE"
"RemovePreviousVersions" = "11:FALSE"
"DetectNewerInstalledVersion" = "11:TRUE"
"InstallAllUsers" = "11:FALSE"
"ProductVersion" = "8:1.0.0"
- "Manufacturer" = "8:Freeswitch"
+ "Manufacturer" = "8:Freeswitch.org"
"ARPHELPTELEPHONE" = "8:"
"ARPHELPLINK" = "8:"
"Title" = "8:Freeswitch"
@@ -679,7 +942,7 @@
"ARPCONTACT" = "8:"
"Keywords" = "8:"
"ARPCOMMENTS" = "8:"
- "ARPURLINFOABOUT" = "8:"
+ "ARPURLINFOABOUT" = "8:http://www.freeswitch.org"
"ARPPRODUCTICON" = "8:"
"ARPIconIndex" = "3:0"
"SearchPath" = "8:"
@@ -716,6 +979,14 @@
}
"Values"
{
+ "{ADCFDA98-8FDD-45E4-90BC-E3D20B029870}:_C59781825E5B4A9AA93BDAA5A88B7390"
+ {
+ "Name" = "8:[ProductName]"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "ValueTypes" = "3:1"
+ "Value" = "8:"
+ }
}
}
}
@@ -930,6 +1201,53 @@
}
}
}
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_E8A0FD168FA4401FBF582E01DA819A71"
+ {
+ "Sequence" = "3:210"
+ "DisplayName" = "8:License Agreement"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdAdminLicenseDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "EulaText"
+ {
+ "Name" = "8:EulaText"
+ "DisplayName" = "8:#1008"
+ "Description" = "8:#1108"
+ "Type" = "3:6"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:2"
+ "Value" = "8:_A40E3F2045F44C60A8509FDFE47E6C45"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "Sunken"
+ {
+ "Name" = "8:Sunken"
+ "DisplayName" = "8:#1007"
+ "Description" = "8:#1107"
+ "Type" = "3:5"
+ "ContextData" = "8:4;True=4;False=0"
+ "Attributes" = "3:0"
+ "Setting" = "3:0"
+ "Value" = "3:4"
+ "DefaultValue" = "3:4"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
}
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_9237AC900FC7421096FC1C1F479A57D9"
@@ -1031,9 +1349,56 @@
}
}
}
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_3106DA132FA54E148478AB6CBA658548"
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_1229F6668E004795AE90C753D37CA881"
{
"Sequence" = "3:300"
+ "DisplayName" = "8:License Agreement"
+ "UseDynamicProperties" = "11:TRUE"
+ "IsDependency" = "11:FALSE"
+ "SourcePath" = "8:<VsdDialogDir>\\VsdLicenseDlg.wid"
+ "Properties"
+ {
+ "BannerBitmap"
+ {
+ "Name" = "8:BannerBitmap"
+ "DisplayName" = "8:#1001"
+ "Description" = "8:#1101"
+ "Type" = "3:8"
+ "ContextData" = "8:Bitmap"
+ "Attributes" = "3:4"
+ "Setting" = "3:1"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "EulaText"
+ {
+ "Name" = "8:EulaText"
+ "DisplayName" = "8:#1008"
+ "Description" = "8:#1108"
+ "Type" = "3:6"
+ "ContextData" = "8:"
+ "Attributes" = "3:0"
+ "Setting" = "3:2"
+ "Value" = "8:_A40E3F2045F44C60A8509FDFE47E6C45"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ "Sunken"
+ {
+ "Name" = "8:Sunken"
+ "DisplayName" = "8:#1007"
+ "Description" = "8:#1107"
+ "Type" = "3:5"
+ "ContextData" = "8:4;True=4;False=0"
+ "Attributes" = "3:0"
+ "Setting" = "3:0"
+ "Value" = "3:4"
+ "DefaultValue" = "3:4"
+ "UsePlugInResources" = "11:TRUE"
+ }
+ }
+ }
+ "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_E4748A502E1E4F89B72F6B70E40E6954"
+ {
+ "Sequence" = "3:400"
"DisplayName" = "8:Confirm Installation"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
@@ -1193,30 +1558,30 @@
}
"MergeModule"
{
- "{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_17FA3245B71F43BB9B2D995E3EE91051"
+ "{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_180AE5B7EEED44D098233F52DEDDF9A1"
{
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:TRUE"
- "SourcePath" = "8:policy_8_0_microsoft_vc80_debugcrt_x86.msm"
+ "SourcePath" = "8:Microsoft_VC80_DebugCRT_x86.msm"
"Properties"
{
}
"LanguageId" = "3:0"
- "Exclude" = "11:FALSE"
+ "Exclude" = "11:TRUE"
"Folder" = "8:"
"Feature" = "8:"
"IsolateTo" = "8:"
}
- "{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_833354487E2841DDA7386EB492D2F21C"
+ "{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_E91E659A30834790A7F1C1669AE92172"
{
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:TRUE"
- "SourcePath" = "8:Microsoft_VC80_DebugCRT_x86.msm"
+ "SourcePath" = "8:policy_8_0_microsoft_vc80_debugcrt_x86.msm"
"Properties"
{
}
"LanguageId" = "3:0"
- "Exclude" = "11:FALSE"
+ "Exclude" = "11:TRUE"
"Folder" = "8:"
"Feature" = "8:"
"IsolateTo" = "8:"
@@ -1252,9 +1617,9 @@
{
}
}
- "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_2BA713204D6542A9A0DE1694316EAB1A"
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_1CFB1AB04E024FC993E0EB4859DF8408"
{
- "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_dialplan_demo.dll"
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_dingaling.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
@@ -1274,12 +1639,68 @@
"ProjectOutputGroupRegister" = "3:1"
"OutputConfiguration" = "8:"
"OutputGroupCanonicalName" = "8:Built"
- "OutputProjectGuid" = "8:{2988EB83-785F-45D4-8731-8E1E4345177E}"
+ "OutputProjectGuid" = "8:{FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}"
"ShowKeyOutput" = "11:TRUE"
"ExcludeFilters"
{
}
}
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_1F21CF104E90499E8F6BBD2136A52884"
+ {
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_cepstral.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{692F6330-4D87-4C82-81DF-40DB5892636E}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_2814E641538B42EFA83525986A9D5AC1"
+ {
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_ilbc.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{D3EC0AFF-76FC-4210-A825-9A17410660A3}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_2D09AB81AB8D45FF97E9DFA4DAC3465D"
{
"SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_zeroconf.dll"
@@ -1700,6 +2121,34 @@
{
}
}
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_B0A2E9B4C45D4098AFD734D0C4E3EAFB"
+ {
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_conference.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{C24FB505-05D7-4319-8485-7540B44C8603}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_B20769E090034897B32E3EA4EC1BA8A0"
{
"SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_gsm.dll"
@@ -1728,9 +2177,37 @@
{
}
}
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_C105055EE271471A999CE7022E617EB7"
+ {
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_commands.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{30A5B29C-983E-4580-9FD0-D647CCDCC7EB}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_C81AC700C1BC4A55B98DF12C0CBAFD6F"
{
- "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_pcre.dll"
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_dialplan_xml.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
@@ -1756,6 +2233,90 @@
{
}
}
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_D0BB09AFB8D94B76918F0EE85BCCAD0A"
+ {
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_dptools.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{B5881A85-FE70-4F64-8607-2CAAE52669C6}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_D1269F1E49D442CF8EAC96C23E60325D"
+ {
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_xml_rpc.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{CBEC7225-0C21-4DA8-978E-1F158F8AD950}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_D6F0F5845FAD4707975CE012A33CD607"
+ {
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_rss.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_D7EC5795A9C645AC8E129C2EE6D461ED"
{
"SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_event_multicast.dll"
@@ -1898,7 +2459,7 @@
}
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_EE46A936D4054F7286909355BF2AE5D7"
{
- "SourcePath" = "8:..\\vsnet\\Debug\\Perl\\fs_perl.dll"
+ "SourcePath" = "8:..\\vsnet\\Debug\\perl\\fs_perl.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_27A96C279A6A44E8A2FDF8D51CD86E29"
@@ -1919,6 +2480,34 @@
"OutputConfiguration" = "8:"
"OutputGroupCanonicalName" = "8:Built"
"OutputProjectGuid" = "8:{B0C6CFF9-7DCD-4A21-8BA4-C2011E18DED8}"
+ "ShowKeyOutput" = "11:TRUE"
+ "ExcludeFilters"
+ {
+ }
+ }
+ "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_EF14CB99F3414BB689D0CB0E6D6B8AB8"
+ {
+ "SourcePath" = "8:..\\vsnet\\Debug\\mod\\mod_console.dll"
+ "TargetName" = "8:"
+ "Tag" = "8:"
+ "Folder" = "8:_B6E020422C78490D96F78DB0E1A3F521"
+ "Condition" = "8:"
+ "Transitive" = "11:FALSE"
+ "Vital" = "11:TRUE"
+ "ReadOnly" = "11:FALSE"
+ "Hidden" = "11:FALSE"
+ "System" = "11:FALSE"
+ "Permanent" = "11:FALSE"
+ "SharedLegacy" = "11:FALSE"
+ "PackageAs" = "3:1"
+ "Register" = "3:1"
+ "Exclude" = "11:FALSE"
+ "IsDependency" = "11:FALSE"
+ "IsolateTo" = "8:"
+ "ProjectOutputGroupRegister" = "3:1"
+ "OutputConfiguration" = "8:"
+ "OutputGroupCanonicalName" = "8:Built"
+ "OutputProjectGuid" = "8:{1C453396-D912-4213-89FD-9B489162B7B5}"
"ShowKeyOutput" = "11:TRUE"
"ExcludeFilters"
{
Modified: freeswitch/branches/mishehu/w32/vsnet/Freeswitch.sln
==============================================================================
--- freeswitch/branches/mishehu/w32/vsnet/Freeswitch.sln (original)
+++ freeswitch/branches/mishehu/w32/vsnet/Freeswitch.sln Sun Jul 23 19:05:25 2006
@@ -201,8 +201,6 @@
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
EndProjectSection
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{99D6D74B-32A8-4441-A417-551B0E0A4510}"
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rss", "..\..\src\mod\applications\mod_rss\mod_rss.vcproj", "{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}"
ProjectSection(ProjectDependencies) = postProject
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
@@ -213,6 +211,16 @@
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
EndProjectSection
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dptools", "..\..\src\mod\applications\mod_dptools\mod_dptools.vcproj", "{B5881A85-FE70-4F64-8607-2CAAE52669C6}"
+ ProjectSection(ProjectDependencies) = postProject
+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_event_socket", "..\..\src\mod\event_handlers\mod_event_socket\mod_event_socket.vcproj", "{05515420-16DE-4E63-BE73-85BE85BA5142}"
+ ProjectSection(ProjectDependencies) = postProject
+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
+ EndProjectSection
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -363,6 +371,14 @@
{C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.Build.0 = Debug|Win32
{C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.ActiveCfg = Release|Win32
{C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.Build.0 = Release|Win32
+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.ActiveCfg = Debug|Win32
+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.Build.0 = Debug|Win32
+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.ActiveCfg = Release|Win32
+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.Build.0 = Release|Win32
+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.ActiveCfg = Debug|Win32
+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.Build.0 = Debug|Win32
+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.ActiveCfg = Release|Win32
+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -378,6 +394,7 @@
{F10BE67C-A8FF-4CB2-AF29-D46D2590DC59} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
{C7705DC4-2088-493E-AF8D-65BC6D65C125} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
{784113EF-44D9-4949-835D-7065D3C7AD08} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
+ {05515420-16DE-4E63-BE73-85BE85BA5142} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
{AFAC0568-7548-42D5-9F6A-8D3400A1E4F6} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
{78100236-7CEA-4948-96CC-E8ED3160329C} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
{E1794405-29D4-466D-9BE3-DD2344C2A663} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
@@ -386,6 +403,7 @@
{30A5B29C-983E-4580-9FD0-D647CCDCC7EB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
{C24FB505-05D7-4319-8485-7540B44C8603} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
+ {B5881A85-FE70-4F64-8607-2CAAE52669C6} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
{3A5B9131-F20C-4A85-9447-6C1610941CEE} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
{5FD31A25-5D83-4794-8BEE-904DAD84CE71} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
{FE3540C5-3303-46E0-A69E-D92F775687F1} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
Modified: freeswitch/branches/mishehu/w32/vsnet/GetLibs.vbs
==============================================================================
--- freeswitch/branches/mishehu/w32/vsnet/GetLibs.vbs (original)
+++ freeswitch/branches/mishehu/w32/vsnet/GetLibs.vbs Sun Jul 23 19:05:25 2006
@@ -239,7 +239,7 @@
If BuildModSpiderMonkey Then
BuildLibs_SpiderMonkey BuildDebug, BuildRelease
BuildLibs_curl BuildDebug, BuildRelease
- BuildLibs_libetpan BuildDebug, BuildRelease
+' BuildLibs_libetpan BuildDebug, BuildRelease
End If
WScript.Echo "Complete"
@@ -249,7 +249,7 @@
' ******************
Sub BuildLibs_aprutil(BuildDebug, BuildRelease)
If Not FSO.FolderExists(LibDestDir & "apr-util") Then
- WgetUnCompress "ftp://ftp.wayne.edu/apache/apr/apr-util-1.2.6.tar.gz", LibDestDir
+' WgetUnCompress "ftp://ftp.wayne.edu/apache/apr/apr-util-1.2.6.tar.gz", LibDestDir
If Not FSO.FolderExists(LibDestDir & "apr-util-1.2.6") Then
Wscript.echo "Unable to get apr-util from default download location, Trying backup location:"
WgetUnCompress LibsBase & "apr-util-1.2.6.tar.gz", LibDestDir
@@ -286,7 +286,7 @@
Sub BuildLibs_apriconv(BuildDebug, BuildRelease)
If Not FSO.FolderExists(LibDestDir & "apr-iconv") Then
- WgetUnCompress "ftp://ftp.wayne.edu/apache/apr/apr-iconv-1.1.1.tar.gz", LibDestDir
+' WgetUnCompress "ftp://ftp.wayne.edu/apache/apr/apr-iconv-1.1.1.tar.gz", LibDestDir
If Not FSO.FolderExists(LibDestDir & "apr-iconv-1.1.1") Then
Wscript.echo "Unable to get apr-iconv from default download location, Trying backup location:"
WgetUnCompress LibsBase & "apr-iconv-1.1.1.tar.gz", LibDestDir
@@ -316,7 +316,7 @@
Sub BuildLibs_apr(BuildDebug, BuildRelease)
If Not FSO.FolderExists(LibDestDir & "apr") Then
- WgetUnCompress "ftp://ftp.wayne.edu/apache/apr/apr-1.2.6.tar.gz", LibDestDir
+' WgetUnCompress "ftp://ftp.wayne.edu/apache/apr/apr-1.2.6.tar.gz", LibDestDir
If Not FSO.FolderExists(LibDestDir & "apr-1.2.6") Then
Wscript.echo "Unable to get apr from default download location, Trying backup location:"
WgetUnCompress LibsBase & "apr-1.2.6.tar.gz", LibDestDir
@@ -449,11 +449,7 @@
Sub BuildLibs_iksemel(BuildDebug, BuildRelease)
If Not FSO.FolderExists(LibDestDir & "iksemel") Then
- WgetUnCompress "http://jabberstudio.2nw.net/iksemel/iksemel-1.2.tar.gz", LibDestDir
- If Not FSO.FolderExists(LibDestDir & "iksemel-1.2") Then
- Wscript.echo "Unable to get iksemel from default download location, Trying backup location:"
- WgetUnCompress LibsBase & "iksemel-1.2.tar.gz", LibDestDir
- End If
+ WgetUnCompress LibsBase & "iksemel-1.2.tar.gz", LibDestDir
RenameFolder LibDestDir & "iksemel-1.2", "iksemel"
FSO.CopyFile Utilsdir & "iksemel\iksemel.vcproj", LibDestDir & "iksemel\", True
FSO.CopyFile Utilsdir & "iksemel\config.h", LibDestDir & "iksemel\include\", True
1
0