]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
add esl to windows build
authorMichael Jerris <mike@jerris.com>
Mon, 22 Dec 2008 16:50:45 +0000 (16:50 +0000)
committerMichael Jerris <mike@jerris.com>
Mon, 22 Dec 2008 16:50:45 +0000 (16:50 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10909 d0543943-73ff-0310-b7d9-9358b9ac24b2

Freeswitch.2008.sln
libs/esl/esl.2008.vcproj [new file with mode: 0644]
libs/esl/src/esl_event.c

index 02676ff40da43f45f7769f9a0711df0aca36a89d..737ea6b808ea5a7371c1f8b03bad4d9ccab8dbcd 100644 (file)
@@ -998,6 +998,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_siren", "src\mod\codecs
                {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C} = {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}\r
        EndProjectSection\r
 EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "esl", "libs\esl\esl.2008.vcproj", "{CF405366-9558-4AE8-90EF-5E21B51CCB4E}"\r
+EndProject\r
 Global\r
        GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
                Debug|Win32 = Debug|Win32\r
@@ -1754,6 +1756,12 @@ Global
                {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.ActiveCfg = Release|Win32\r
                {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.Build.0 = Release|Win32\r
                {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64.ActiveCfg = Release|Win32\r
+               {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.Build.0 = Debug|Win32\r
+               {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.ActiveCfg = Debug|Win32\r
+               {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.ActiveCfg = Release|Win32\r
+               {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.Build.0 = Release|Win32\r
+               {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64.ActiveCfg = Release|Win32\r
        EndGlobalSection\r
        GlobalSection(SolutionProperties) = preSolution\r
                HideSolutionNode = FALSE\r
@@ -1852,6 +1860,7 @@ Global
                {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
                {419C8F80-D858-4B48-A25C-AF4007608137} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
                {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+               {CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
                {5927104D-C14C-4AC8-925C-4AB681762E75} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
                {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
                {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
diff --git a/libs/esl/esl.2008.vcproj b/libs/esl/esl.2008.vcproj
new file mode 100644 (file)
index 0000000..c58edf5
--- /dev/null
@@ -0,0 +1,222 @@
+<?xml version="1.0" encoding="Windows-1252"?>\r
+<VisualStudioProject\r
+       ProjectType="Visual C++"\r
+       Version="9.00"\r
+       Name="esl"\r
+       ProjectGUID="{CF405366-9558-4AE8-90EF-5E21B51CCB4E}"\r
+       RootNamespace="esl"\r
+       Keyword="Win32Proj"\r
+       TargetFrameworkVersion="131072"\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="$(SolutionDir)Debug"\r
+                       IntermediateDirectory="$(ConfigurationName)"\r
+                       ConfigurationType="2"\r
+                       CharacterSet="1"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\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="src/include"\r
+                               PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"\r
+                               MinimalRebuild="true"\r
+                               BasicRuntimeChecks="3"\r
+                               RuntimeLibrary="3"\r
+                               UsePrecompiledHeader="0"\r
+                               WarningLevel="4"\r
+                               WarnAsError="true"\r
+                               DebugInformationFormat="4"\r
+                               DisableSpecificWarnings="4706;4100"\r
+                               EnablePREfast="true"\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="Ws2_32.lib"\r
+                               ModuleDefinitionFile=""\r
+                               OptimizeReferences="1"\r
+                               EnableCOMDATFolding="1"\r
+                               RandomizedBaseAddress="1"\r
+                               DataExecutionPrevention="0"\r
+                               ImportLibrary="$(IntDir)/$(TargetName).lib"\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="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+               <Configuration\r
+                       Name="Release|Win32"\r
+                       OutputDirectory="$(SolutionDir)Release"\r
+                       IntermediateDirectory="$(ConfigurationName)"\r
+                       ConfigurationType="2"\r
+                       CharacterSet="1"\r
+                       WholeProgramOptimization="1"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\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="src/include"\r
+                               PreprocessorDefinitions="WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"\r
+                               RuntimeLibrary="2"\r
+                               UsePrecompiledHeader="0"\r
+                               WarningLevel="4"\r
+                               WarnAsError="true"\r
+                               DebugInformationFormat="3"\r
+                               DisableSpecificWarnings="4706;4100"\r
+                               EnablePREfast="true"\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="Ws2_32.lib"\r
+                               ModuleDefinitionFile=""\r
+                               RandomizedBaseAddress="1"\r
+                               DataExecutionPrevention="0"\r
+                               ImportLibrary="$(IntDir)/$(TargetName).lib"\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="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+       </Configurations>\r
+       <References>\r
+       </References>\r
+       <Files>\r
+               <Filter\r
+                       Name="Source Files"\r
+                       Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"\r
+                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"\r
+                       >\r
+                       <File\r
+                               RelativePath=".\src\esl.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\src\esl_config.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\src\esl_event.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\src\esl_threadmutex.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
+                       <File\r
+                               RelativePath=".\src\include\esl.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\src\include\esl_config.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\src\include\esl_event.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\src\include\esl_threadmutex.h"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+       </Files>\r
+       <Globals>\r
+       </Globals>\r
+</VisualStudioProject>\r
index d60c87ed0a6ab3929404712965a239fb12c6e502..b6a57b69161c4642cca95a8330660301d954d10a 100644 (file)
@@ -311,6 +311,43 @@ static esl_status_t esl_event_base_add_header(esl_event_t *event, esl_stack_t st
        return ESL_SUCCESS;
 }
 
+static int esl_vasprintf(char **ret, const char *fmt, va_list ap)\r
+{\r
+#ifndef WIN32\r
+       return vasprintf(ret, fmt, ap);\r
+#else\r
+       char *buf;\r
+       int len;\r
+       size_t buflen;\r
+       va_list ap2;\r
+       char *tmp = NULL;\r
+\r
+#ifdef _MSC_VER\r
+#if _MSC_VER >= 1500\r
+       /* hack for incorrect assumption in msvc header files for code analysis */\r
+       __analysis_assume(tmp);\r
+#endif\r
+       ap2 = ap;\r
+#else\r
+       va_copy(ap2, ap);\r
+#endif\r
+\r
+       len = vsnprintf(tmp, 0, fmt, ap2);\r
+\r
+       if (len > 0 && (buf = malloc((buflen = (size_t) (len + 1)))) != NULL) {\r
+               len = vsnprintf(buf, buflen, fmt, ap);\r
+               *ret = buf;\r
+       } else {\r
+               *ret = NULL;\r
+               len = -1;\r
+       }\r
+\r
+       va_end(ap2);\r
+       return len;\r
+#endif\r
+}\r
+
+
 esl_status_t esl_event_add_header(esl_event_t *event, esl_stack_t stack, const char *header_name, const char *fmt, ...)
 {
        int ret = 0;
@@ -318,7 +355,7 @@ esl_status_t esl_event_add_header(esl_event_t *event, esl_stack_t stack, const c
        va_list ap;
 
        va_start(ap, fmt);
-       ret = vasprintf(&data, fmt, ap);
+       ret = esl_vasprintf(&data, fmt, ap);
        va_end(ap);
 
        if (ret == -1) {
@@ -344,7 +381,7 @@ esl_status_t esl_event_add_body(esl_event_t *event, const char *fmt, ...)
        va_list ap;
        if (fmt) {
                va_start(ap, fmt);
-               ret = vasprintf(&data, fmt, ap);
+               ret = esl_vasprintf(&data, fmt, ap);
                va_end(ap);
 
                if (ret == -1) {