Commit 1a11192acf for freeswitch.com

commit 1a11192acfbcd05f7e8611ee4810eea15efcde61
Author: Andrey Volk <andywolk@gmail.com>
Date:   Wed Sep 16 22:32:02 2026 +0300

    [Build-System] Windows: Get ilbc v0.0.1_1 pre-compiled package from freeswitch/windows-deps releases instead of building it in tree (#3174)

diff --git a/.gitignore b/.gitignore
index f6770717d5..032feaa108 100644
--- a/.gitignore
+++ b/.gitignore
@@ -279,6 +279,7 @@ libs/opencv-*.zip
 libs/broadvoice-*.zip
 libs/lua-*.zip
 libs/g722_1-*.zip
+libs/ilbc-*.zip
 libs/SharpZipLib.*/
 libs/SharpZipLib.*.nupkg
 libs/nasm-*/
diff --git a/Freeswitch.2017.sln b/Freeswitch.2017.sln
index 14e239bfaf..2771e97af6 100644
--- a/Freeswitch.2017.sln
+++ b/Freeswitch.2017.sln
@@ -319,8 +319,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeex", "libs\win32\spee
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeexdsp", "libs\win32\speex\libspeexdsp.2017.vcxproj", "{03207781-0D1C-4DB3-A71D-45C608F28DBD}"
 EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libilbc", "libs\win32\ilbc\libilbc.2017.vcxproj", "{9A5DDF08-C88C-4A35-B7F6-D605228446BD}"
-EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_opal", "src\mod\endpoints\mod_opal\mod_opal.2017.vcxproj", "{05C9FB27-480E-4D53-B3B7-6338E2526666}"
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skinny", "src\mod\endpoints\mod_skinny\mod_skinny.2017.vcxproj", "{CC1DD008-9406-448D-A0AD-33C3186CFADB}"
@@ -1334,17 +1332,6 @@ Global
 		{03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|Win32.Build.0 = Release|Win32
 		{03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.ActiveCfg = Release|x64
 		{03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.Build.0 = Release|x64
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|Win32.ActiveCfg = Release|x64
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.ActiveCfg = Release|x64
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.Build.0 = Release|x64
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.ActiveCfg = Debug|Win32
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.Build.0 = Debug|Win32
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.ActiveCfg = Debug|x64
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.Build.0 = Debug|x64
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.ActiveCfg = Release|Win32
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.Build.0 = Release|Win32
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.ActiveCfg = Release|x64
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.Build.0 = Release|x64
 		{05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.ActiveCfg = Release|Win32
 		{05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.Build.0 = Release|Win32
 		{05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x64.ActiveCfg = Release|Win32
@@ -2372,7 +2359,6 @@ Global
 		{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
 		{E972C52F-9E85-4D65-B19C-031E511E9DB4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
 		{03207781-0D1C-4DB3-A71D-45C608F28DBD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-		{9A5DDF08-C88C-4A35-B7F6-D605228446BD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
 		{05C9FB27-480E-4D53-B3B7-6338E2526666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
 		{CC1DD008-9406-448D-A0AD-33C3186CFADB} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
 		{48414740-C693-4968-9846-EE058020C64F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
diff --git a/libs/win32/ilbc/libilbc.2017.vcxproj b/libs/win32/ilbc/libilbc.2017.vcxproj
deleted file mode 100644
index 23d5c3fa7e..0000000000
--- a/libs/win32/ilbc/libilbc.2017.vcxproj
+++ /dev/null
@@ -1,173 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup Label="ProjectConfigurations">
-    <ProjectConfiguration Include="Debug|Win32">
-      <Configuration>Debug</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug|x64">
-      <Configuration>Debug</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|Win32">
-      <Configuration>Release</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|x64">
-      <Configuration>Release</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
-  </ItemGroup>
-  <PropertyGroup Label="Globals">
-    <ProjectName>libilbc</ProjectName>
-    <ProjectGuid>{9A5DDF08-C88C-4A35-B7F6-D605228446BD}</ProjectGuid>
-    <RootNamespace>libilbc</RootNamespace>
-    <Keyword>Win32Proj</Keyword>
-  </PropertyGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
-    <ConfigurationType>StaticLibrary</ConfigurationType>
-    <CharacterSet>Unicode</CharacterSet>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
-    <ConfigurationType>StaticLibrary</ConfigurationType>
-    <CharacterSet>Unicode</CharacterSet>
-    <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
-    <ConfigurationType>StaticLibrary</ConfigurationType>
-    <CharacterSet>Unicode</CharacterSet>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
-    <ConfigurationType>StaticLibrary</ConfigurationType>
-    <CharacterSet>Unicode</CharacterSet>
-    <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
-  </PropertyGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
-  <Import Project="$(SolutionDir)w32\ilbc.props" />
-  <Import Project="$(SolutionDir)w32\download_iLBC.props" Condition=" '$(downloadiLBCPropsImported)' == '' " />
-  <ImportGroup Label="ExtensionSettings">
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="$(SolutionDir)w32\extlib.props" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="$(SolutionDir)w32\extlib.props" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="$(SolutionDir)w32\extlib.props" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="$(SolutionDir)w32\extlib.props" />
-  </ImportGroup>
-  <PropertyGroup Label="UserMacros" />
-  <PropertyGroup>
-    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
-  </PropertyGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-    <ClCompile>
-      <Optimization>Disabled</Optimization>
-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBilbc_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <MinimalRebuild>true</MinimalRebuild>
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
-      <WarningLevel>Level4</WarningLevel>
-      <DisableSpecificWarnings>4127;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-    </ClCompile>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-    <ClCompile>
-      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBilbc_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
-      <WarningLevel>Level4</WarningLevel>
-      <DisableSpecificWarnings>4127;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-    </ClCompile>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
-    <Midl>
-      <TargetEnvironment>X64</TargetEnvironment>
-    </Midl>
-    <ClCompile>
-      <Optimization>Disabled</Optimization>
-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBilbc_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <MinimalRebuild>true</MinimalRebuild>
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
-      <WarningLevel>Level4</WarningLevel>
-      <DisableSpecificWarnings>4127;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-    </ClCompile>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
-    <Midl>
-      <TargetEnvironment>X64</TargetEnvironment>
-    </Midl>
-    <ClCompile>
-      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBilbc_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
-      <WarningLevel>Level4</WarningLevel>
-      <DisableSpecificWarnings>4127;%(DisableSpecificWarnings)</DisableSpecificWarnings>
-    </ClCompile>
-  </ItemDefinitionGroup>
-  <ItemGroup>
-    <ClCompile Include="$(iLBCLibDir)\src\anaFilter.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\constants.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\createCB.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\doCPLC.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\enhancer.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\filter.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\FrameClassify.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\gainquant.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\getCBvec.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\helpfun.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\hpInput.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\hpOutput.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\iCBConstruct.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\iCBSearch.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\iLBC_decode.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\iLBC_encode.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\LPCdecode.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\LPCencode.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\lsf.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\packing.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\StateConstructW.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\StateSearchW.c" />
-    <ClCompile Include="$(iLBCLibDir)\src\syntFilter.c" />
-  </ItemGroup>
-  <ItemGroup>
-    <ClInclude Include="$(iLBCLibDir)\src\anaFilter.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\constants.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\createCB.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\doCPLC.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\enhancer.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\filter.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\FrameClassify.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\gainquant.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\getCBvec.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\helpfun.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\hpInput.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\hpOutput.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\iCBConstruct.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\iCBSearch.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\ilbc\ilbc.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\iLBC_define.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\LPCdecode.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\LPCencode.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\lsf.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\packing.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\StateConstructW.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\StateSearchW.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\syntFilter.h" />
-    <ClInclude Include="$(iLBCLibDir)\src\ilbc\version.h" />
-  </ItemGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-  <ImportGroup Label="ExtensionTargets">
-  </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/src/mod/codecs/mod_ilbc/mod_ilbc.2017.vcxproj b/src/mod/codecs/mod_ilbc/mod_ilbc.2017.vcxproj
index e754881e9d..38d24f1b37 100644
--- a/src/mod/codecs/mod_ilbc/mod_ilbc.2017.vcxproj
+++ b/src/mod/codecs/mod_ilbc/mod_ilbc.2017.vcxproj
@@ -125,10 +125,6 @@
     <ClCompile Include="mod_ilbc.c" />
   </ItemGroup>
   <ItemGroup>
-    <ProjectReference Include="..\..\..\..\libs\win32\ilbc\libilbc.2017.vcxproj">
-      <Project>{9a5ddf08-c88c-4a35-b7f6-d605228446bd}</Project>
-      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
-    </ProjectReference>
     <ProjectReference Include="..\..\..\..\w32\Library\FreeSwitchCore.2017.vcxproj">
       <Project>{202d7a4e-760d-4d0e-afa1-d7459ced30ff}</Project>
       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
diff --git a/w32/download_iLBC.props b/w32/download_iLBC.props
deleted file mode 100644
index 20bf9f014a..0000000000
--- a/w32/download_iLBC.props
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ImportGroup Label="PropertySheets">
-    <Import Project="downloadpackage.task" Condition=" '$(downloadpackagetask_Imported)' == '' " />
-  </ImportGroup>
-  <PropertyGroup>
-    <downloadiLBCPropsImported>true</downloadiLBCPropsImported>
-  </PropertyGroup>
-
-  <!--
-       Download Target.
-       Name must be unique.
-       By design, targets are executed only once per project.
-
-       Usage:
-
-       package: URI
-
-       expectfileordirectory: Skips the download and extraction if exists
-
-       outputfolder: Folder to store a downloaded file.
-                     By default "$(BaseDir)libs", if empty
-
-       outputfilename: If not empty, overrides filename from URI.
-                       .exe files don't get extracted
-
-       extractto: Folder to extract an archive to
-   -->
-
-  <Target Name="iLBCDownloadTarget" BeforeTargets="CustomBuild;PreBuildEvent;" DependsOnTargets="7za">
-      <DownloadPackageTask
-           package="http://files.freeswitch.org/downloads/libs/ilbc-$(iLBC_Version).tar.gz"
-           expectfileordirectory="$(BaseDir)libs\ilbc-$(iLBC_Version)\configure.ac"
-           outputfolder=""
-           outputfilename=""
-           extractto="$(BaseDir)libs\"
-      />
-  </Target>
-
-</Project>
diff --git a/w32/ilbc-version.props b/w32/ilbc-version.props
index 76d35e0705..5841849523 100644
--- a/w32/ilbc-version.props
+++ b/w32/ilbc-version.props
@@ -3,6 +3,7 @@
   <ImportGroup Label="PropertySheets" />
   <PropertyGroup Label="UserMacros">
     <iLBC_Version>0.0.1</iLBC_Version>
+    <iLBC_BuildNumber>1</iLBC_BuildNumber>
   </PropertyGroup>
   <PropertyGroup>
     <iLBC_VersionImported>true</iLBC_VersionImported>
@@ -13,5 +14,8 @@
     <BuildMacro Include="iLBC_Version">
       <Value>$(iLBC_Version)</Value>
     </BuildMacro>
+    <BuildMacro Include="iLBC_BuildNumber">
+      <Value>$(iLBC_BuildNumber)</Value>
+    </BuildMacro>
   </ItemGroup>
-</Project>
\ No newline at end of file
+</Project>
diff --git a/w32/ilbc.props b/w32/ilbc.props
index 9e516c1485..36e0068692 100644
--- a/w32/ilbc.props
+++ b/w32/ilbc.props
@@ -2,14 +2,58 @@
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <ImportGroup Label="PropertySheets">
     <Import Project="iLBC-version.props" Condition=" '$(iLBC_VersionImported)' == '' "/>
+    <Import Project="downloadpackage.task" Condition=" '$(downloadpackagetask_Imported)' == '' " />
   </ImportGroup>
   <PropertyGroup Label="UserMacros">
-    <iLBCLibDir>$(SolutionDir)libs\iLBC-$(iLBC_Version)</iLBCLibDir>
+    <iLBCLibDir>$(BaseDir)libs\ilbc-$(iLBC_Version)_$(iLBC_BuildNumber)</iLBCLibDir>
   </PropertyGroup>
+
+  <!--
+       Download Target.
+       Name must be unique.
+       By design, targets are executed only once per project.
+
+       Usage:
+
+       package: URI
+
+       expectfileordirectory: Skips the download and extraction if exists
+
+       outputfolder: Folder to store a downloaded file.
+                     By default "$(BaseDir)libs", if empty
+
+       outputfilename: If not empty, overrides filename from URI.
+                       .exe files don't get extracted
+
+       extractto: Folder to extract an archive to
+   -->
+
+  <Target Name="iLBCBinariesDownloadTarget" BeforeTargets="CustomBuild" DependsOnTargets="7za">
+      <DownloadPackageTask
+           package="https://github.com/freeswitch/windows-deps/releases/download/ilbc-v$(iLBC_Version)_$(iLBC_BuildNumber)/ilbc-$(iLBC_Version)_$(iLBC_BuildNumber)-binaries-$(Platform.ToLower())-$(Configuration.ToLower()).zip"
+           expectfileordirectory="$(iLBCLibDir)\binaries\$(Platform)\$(Configuration)\libilbc.lib"
+           outputfolder=""
+           outputfilename=""
+           extractto="$(BaseDir)libs\"
+      />
+  </Target>
+  <Target Name="iLBCHeadersDownloadTarget" BeforeTargets="CustomBuild" DependsOnTargets="7za">
+      <DownloadPackageTask
+           package="https://github.com/freeswitch/windows-deps/releases/download/ilbc-v$(iLBC_Version)_$(iLBC_BuildNumber)/ilbc-$(iLBC_Version)_$(iLBC_BuildNumber)-headers.zip"
+           expectfileordirectory="$(iLBCLibDir)\include\ilbc\ilbc.h"
+           outputfolder=""
+           outputfilename=""
+           extractto="$(BaseDir)libs\"
+      />
+  </Target>
+
   <ItemDefinitionGroup>
     <ClCompile>
-      <AdditionalIncludeDirectories>$(iLBCLibDir)\src;$(iLBCLibDir)\src\ilbc;$(iLBCLibDir)\src\msvc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <AdditionalLibraryDirectories>$(SolutionDir)\libs\codec\ilbc\$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+      <AdditionalIncludeDirectories>$(iLBCLibDir)\include;$(iLBCLibDir)\include\ilbc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(iLBCLibDir)\binaries\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+      <AdditionalDependencies>libilbc.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
   </ItemDefinitionGroup>
-</Project>
\ No newline at end of file
+</Project>