]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
first part of iaxchan windows build
authorMichael Jerris <mike@jerris.com>
Tue, 6 Dec 2005 21:25:10 +0000 (21:25 +0000)
committerMichael Jerris <mike@jerris.com>
Tue, 6 Dec 2005 21:25:10 +0000 (21:25 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@89 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/mod/mod_iaxchan/mod_iaxchan.c
w32/vsnet/Freeswitch.sln
w32/vsnet/GetLibs.vbs
w32/vsnet/mod_IaxChan.vcproj [new file with mode: 0644]

index 82eda133aea99d627e87019ad3c12baf978109a7..3b84f8ae6a9bdf224ec795fd01909210470770a2 100644 (file)
  *
  */
 #include <switch.h>
+
+#ifdef WIN32
+#include <iax2.h>
+#include <iax-client.h>
+#include <iax2-parser.h>
+#include <sys/timeb.h>
+#else
 #include <iax/iax2.h>
 #include <iax/iax-client.h>
 #include <iax/iax2-parser.h>
+#endif
 
 static const char modname[] = "mod_iaxchan";
 
@@ -79,7 +87,17 @@ struct private_object {
        switch_thread_cond_t *cond;
 };
 
-
+#ifdef WIN32
+void gettimeofday( struct timeval* tv, void* tz )\r
+{\r
+       struct _timeb curSysTime;\r
+       _ftime(&curSysTime);\r
+       tv->tv_sec = curSysTime.time;\r
+       tv->tv_usec = curSysTime.millitm * 1000;\r
+\r
+       return ;\r
+}\r
+#endif
 static void set_global_dialplan(char *dialplan)
 {
        if (globals.dialplan) {
index 2e3bd8d2cee95057223a3463505b494be9d24da0..7432578188e63095bf268ec1410baa8fc105be99 100644 (file)
@@ -48,6 +48,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_woomerachan", "mod_woom
                {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
        EndProjectSection\r
 EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_IaxChan", "mod_IaxChan.vcproj", "{3A5B9131-F20C-4A85-9447-6C1610941CEE}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
+       EndProjectSection\r
+EndProject\r
 Global\r
        GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
                Debug|Win32 = Debug|Win32\r
@@ -94,6 +99,10 @@ Global
                {FE3540C5-3303-46E0-A69E-D92F775687F1}.Debug|Win32.Build.0 = Debug|Win32\r
                {FE3540C5-3303-46E0-A69E-D92F775687F1}.Release|Win32.ActiveCfg = Release|Win32\r
                {FE3540C5-3303-46E0-A69E-D92F775687F1}.Release|Win32.Build.0 = Release|Win32\r
+               {3A5B9131-F20C-4A85-9447-6C1610941CEE}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {3A5B9131-F20C-4A85-9447-6C1610941CEE}.Debug|Win32.Build.0 = Debug|Win32\r
+               {3A5B9131-F20C-4A85-9447-6C1610941CEE}.Release|Win32.ActiveCfg = Release|Win32\r
+               {3A5B9131-F20C-4A85-9447-6C1610941CEE}.Release|Win32.Build.0 = Release|Win32\r
        EndGlobalSection\r
        GlobalSection(SolutionProperties) = preSolution\r
                HideSolutionNode = FALSE\r
index 65d1d9a5b165e0d4c8160cebdfa4f677a7a15846..64fa3ec1969a18b21ac5571b58bf287353f72969 100644 (file)
@@ -10,6 +10,7 @@ BuildRelease=False
 BuildDebug=False\r
 BuildCore=False\r
 BuildModExosip=false\r
+BuildModIaxChan=false\r
 quote=Chr(34)\r
 ScriptDir=Left(WScript.ScriptFullName,Len(WScript.ScriptFullName)-Len(WScript.ScriptName))\r
 \r
@@ -37,13 +38,17 @@ If objArgs.Count >=1 Then
                        BuildCore=True\r
                Case "Mod_Exosip"   \r
                        BuildModExosip=True\r
+               Case "Mod_IaxChan"   \r
+                       BuildModIaxChan=True\r
                Case Else\r
                        BuildCore=True\r
                        BuildModExosip=True\r
+                       BuildModIaxChan=True\r
        End Select\r
 Else\r
        BuildCore=True\r
        BuildModExosip=True\r
+       BuildModIaxChan=True\r
 End If\r
 \r
 \r
@@ -55,6 +60,10 @@ If BuildModExosip Then
        BuildLibs_ModExosip BuildDebug, BuildRelease\r
 End If\r
 \r
+If BuildModIaxChan Then\r
+       BuildLibs_ModIaxChan BuildDebug, BuildRelease\r
+End If\r
+\r
 WScript.Echo "Complete"\r
 \r
 Sub BuildLibs_Core(BuildDebug, BuildRelease)\r
@@ -217,6 +226,28 @@ Sub BuildLibs_ModExosip(BuildDebug, BuildRelease)
 \r
 End Sub\r
 \r
+Sub BuildLibs_ModIaxChan(BuildDebug, BuildRelease)\r
+       If Not FSO.FolderExists(LibDestDir & "iax") Then \r
+               WgetUnTarGz "http://www.sofaswitch.org/mikej/iax-0.2.3.tar.gz", LibDestDir\r
+               RenameFolder LibDestDir & "iax-0.2.3", "iax"\r
+       End If \r
+       If FSO.FolderExists(LibDestDir & "iax") Then \r
+               If BuildDebug Then\r
+                       If Not FSO.FileExists(LibDestDir & "iax\Debug\libiax2.lib") Then \r
+                               BuildViaVCBuild LibDestDir & "iax\libiax2.vcproj", "Debug"\r
+                       End If\r
+               End If\r
+               If BuildRelease Then\r
+                       If Not FSO.FileExists(LibDestDir & "iax\Release\libiax2.lib") Then \r
+                               BuildViaVCBuild LibDestDir & "iax\libiax2.vcproj", "Release"\r
+                       End If\r
+               End If\r
+       Else\r
+               Wscript.echo "Unable to download libIAX2"\r
+       End If \r
+       \r
+End Sub\r
+\r
 Sub UpgradeViaDevEnv(ProjectFile)\r
        Set oExec = WshShell.Exec(quote & DevEnv & quote & " " & quote & ProjectFile & quote & " /Upgrade ")\r
        Do While oExec.Status <> 1\r
diff --git a/w32/vsnet/mod_IaxChan.vcproj b/w32/vsnet/mod_IaxChan.vcproj
new file mode 100644 (file)
index 0000000..3d108d8
--- /dev/null
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="Windows-1252"?>\r
+<VisualStudioProject\r
+       ProjectType="Visual C++"\r
+       Version="8.00"\r
+       Name="mod_IaxChan"\r
+       ProjectGUID="{3A5B9131-F20C-4A85-9447-6C1610941CEE}"\r
+       RootNamespace="mod_IaxChan"\r
+       Keyword="Win32Proj"\r
+       >\r
+       <Platforms>\r
+               <Platform\r
+                       Name="Win32"\r
+               />\r
+       </Platforms>\r
+       <ToolFiles>\r
+       </ToolFiles>\r
+       <Configurations>\r
+               <Configuration\r
+                       Name="Debug|Win32"\r
+                       OutputDirectory="Debug"\r
+                       IntermediateDirectory="Debug"\r
+                       ConfigurationType="2"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"\r
+                       CharacterSet="2"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                               CommandLine="cscript /nologo $(InputDir)getlibs.vbs Mod_IaxChan Debug"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               Optimization="0"\r
+                               AdditionalIncludeDirectories="&quot;$(InputDir)..\..\include&quot;;&quot;$(InputDir)include&quot;;&quot;$(InputDir)..\..\..\libs\apr\include&quot;;&quot;$(InputDir)..\..\..\libs\iax\src&quot;"\r
+                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;MOD_EXPORTS"\r
+                               MinimalRebuild="true"\r
+                               BasicRuntimeChecks="3"\r
+                               RuntimeLibrary="3"\r
+                               UsePrecompiledHeader="0"\r
+                               WarningLevel="3"\r
+                               Detect64BitPortabilityProblems="true"\r
+                               DebugInformationFormat="4"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalDependencies="libapr-1.lib libiax2.lib Ws2_32.lib Iphlpapi.lib"\r
+                               OutputFile="$(OutDir)/mod/mod_IaxChan.dll"\r
+                               LinkIncremental="2"\r
+                               AdditionalLibraryDirectories="$(InputDir)..\..\libs\apr\Debug;$(InputDir)..\..\libs\iax\Debug"\r
+                               GenerateDebugInformation="true"\r
+                               ProgramDatabaseFile="$(OutDir)/mod_IaxChan.pdb"\r
+                               SubSystem="2"\r
+                               ImportLibrary="$(OutDir)/mod_IaxChan.lib"\r
+                               TargetMachine="1"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebDeploymentTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+               <Configuration\r
+                       Name="Release|Win32"\r
+                       OutputDirectory="Release"\r
+                       IntermediateDirectory="Release"\r
+                       ConfigurationType="2"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"\r
+                       CharacterSet="2"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                               CommandLine="cscript /nologo $(InputDir)getlibs.vbs Mod_IaxChan Release"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               AdditionalIncludeDirectories="&quot;$(InputDir)..\..\include&quot;;&quot;$(InputDir)include&quot;;&quot;$(InputDir)..\..\..\libs\apr\include&quot;;&quot;$(InputDir)..\..\..\libs\iax\src&quot;"\r
+                               PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;MOD_EXPORTS"\r
+                               RuntimeLibrary="0"\r
+                               UsePrecompiledHeader="0"\r
+                               WarningLevel="3"\r
+                               Detect64BitPortabilityProblems="true"\r
+                               DebugInformationFormat="3"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalDependencies="libapr-1.lib libiax2.lib"\r
+                               OutputFile="$(OutDir)/mod/mod_IaxChan.dll"\r
+                               LinkIncremental="1"\r
+                               AdditionalLibraryDirectories="&quot;$(InputDir)..\..\libs\apr\Release&quot;;&quot;$(InputDir)..\..\libs\iax\Release&quot;"\r
+                               GenerateDebugInformation="true"\r
+                               SubSystem="2"\r
+                               OptimizeReferences="2"\r
+                               EnableCOMDATFolding="2"\r
+                               ImportLibrary="$(OutDir)/mod_IaxChan.lib"\r
+                               TargetMachine="1"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebDeploymentTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+       </Configurations>\r
+       <References>\r
+       </References>\r
+       <Files>\r
+               <Filter\r
+                       Name="Source Files"\r
+                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"\r
+                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"\r
+                       >\r
+                       <File\r
+                               RelativePath="..\..\src\mod\mod_iaxchan\mod_iaxchan.c"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <Filter\r
+                       Name="Header Files"\r
+                       Filter="h;hpp;hxx;hm;inl;inc;xsd"\r
+                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"\r
+                       >\r
+               </Filter>\r
+               <Filter\r
+                       Name="Resource Files"\r
+                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"\r
+                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"\r
+                       >\r
+               </Filter>\r
+       </Files>\r
+       <Globals>\r
+       </Globals>\r
+</VisualStudioProject>\r