<?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="signalwire-client-c-version.props" Condition=" '$(signalwire-client-cVersionImported)' == ''"/> </ImportGroup> <PropertyGroup> <signalwire-client-cPropsImported>true</signalwire-client-cPropsImported> </PropertyGroup> <PropertyGroup Label="UserMacros"> <signalwire-client-cDir>$(BaseDir)libs\signalwire-client-c-$(signalwire-client-cVersion)</signalwire-client-cDir> </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="signalwire-client-cBinariesDownloadTarget" BeforeTargets="CustomBuild" DependsOnTargets="7za"> <DownloadPackageTask package="http://files.freeswitch.org/windows/packages/signalwire-client-c/$(signalwire-client-cVersion)_$(signalwire-client-cBuildNumber)/signalwire-client-c-$(signalwire-client-cVersion)_$(signalwire-client-cBuildNumber)-binaries-$(Platform.ToLower())-$(Configuration.ToLower()).zip" expectfileordirectory="$(signalwire-client-cDir)\binaries\$(Platform)\$(Configuration)\signalwire_client2.dll" outputfolder="" outputfilename="" extractto="$(BaseDir)libs\" /> </Target> <Target Name="signalwire-client-cHeadersDownloadTarget" BeforeTargets="CustomBuild" DependsOnTargets="7za"> <DownloadPackageTask package="http://files.freeswitch.org/windows/packages/signalwire-client-c/$(signalwire-client-cVersion)_$(signalwire-client-cBuildNumber)/signalwire-client-c-$(signalwire-client-cVersion)_$(signalwire-client-cBuildNumber)-headers.zip" expectfileordirectory="$(signalwire-client-cDir)\include\signalwire-client-c\client.h" outputfolder="" outputfilename="" extractto="$(BaseDir)libs\" /> </Target> <Target Name="signalwire-client-ccopyTarget" BeforeTargets="CustomBuild" DependsOnTargets="signalwire-client-cBinariesDownloadTarget"> <Message Text="Copying signalwire-client-c libraries to the freeswitch output folder." Importance="High" /> <ItemGroup> <signalwire-client-cFiles Include="$(signalwire-client-cDir)\binaries\$(Platform)\$(Configuration)\*.dll"/> </ItemGroup> <Copy Condition="!exists('$(BaseDir)\$(Platform)\$(Configuration)\signalwire_client2.dll')" SourceFiles="@(signalwire-client-cFiles)" DestinationFiles="@(signalwire-client-cFiles->'$(BaseDir)\$(Platform)\$(Configuration)\%(Filename)%(Extension)')" /> </Target> <ItemDefinitionGroup> <ClCompile> <AdditionalIncludeDirectories>$(signalwire-client-cDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions> </ClCompile> <Link> <AdditionalLibraryDirectories>$(signalwire-client-cDir)\binaries\$(Platform)\$(Configuration)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> <AdditionalDependencies>signalwire_client2.lib;%(AdditionalDependencies)</AdditionalDependencies> </Link> </ItemDefinitionGroup> </Project>