Incorporate libsodium option and linkage, generalize, update packaging.

This commit is contained in:
evoskuil 2014-04-07 19:38:59 -07:00
parent f01b48c484
commit 34f4851c23
55 changed files with 1352 additions and 113 deletions

View File

@ -7,20 +7,8 @@ Visual C++ 2013 => Visual C++ 12
Note that solution file icons reflect the compiler version ([9], [10], [11], [12]), not the product version.
The vs2013/vs2012/vs2010 solution and project files differ only in versioning.
More info here:
http://en.wikipedia.org/wiki/Visual_C%2B%2B
Project configuration redundancies and inconsistencies:
The vs2012 and vs2010 solution and project files differ only in versioning.
The vs2012 and vs2010 configurations are missing build configurations.
It would make sense to rationalize these two older configurations with vs2013 but this may impact external expectations.
vs2010/properties and vs2012/properties are redundant project subdirectories.
vs2013/properties is a unique properties subdirectory.
The three subdirectories could be rationalized, but this would change existing output locations for the older two.
The current configuration in vs2008, vs2010 and vs2012 outputs produce output conflicts.
The vs2013 outputs are cleanly isolated from the other platform version outputs.

View File

@ -7,6 +7,8 @@
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -132,7 +132,7 @@
<Import Project="$(ProjectDir)$(ProjectName).props" />
<Import Project="$(ProjectDir)..\properties\ConsoleReleaseStatic.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
</ImportGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\perf\platform.hpp" />
</ItemGroup>
@ -146,4 +146,4 @@
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
</Project>
</Project>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<_PropertySheetDisplayName>Libsodium Import Settings</_PropertySheetDisplayName>
</PropertyGroup>
<!-- User Interface -->
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)libsodium.import.xml" />
</ItemGroup>
<!-- Dependency linkage -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\..\libsodium\src\libsodium\include;$(ProjectDir)..\..\..\..\..\libsodium\src\libsodium\include\sodium\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'static' Or '$(Linkage-libsodium)' == 'ltcg'">
<ClCompile>
<PreprocessorDefinitions>SODIUM_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'dynamic'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium10\libsodium.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium10\libsodium.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'static'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium10\libsodium.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium10\libsodium.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'ltcg'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium10\libsodium.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium10\libsodium.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<!-- Copy dynamic libraries to target -->
<Target Name="Linkage-libsodium-dynamic" AfterTargets="AfterBuild" Condition="'$(Linkage-libsodium)' == 'dynamic'">
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium10\libsodium.dll"
DestinationFiles="$(TargetDir)libsodium.dll"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium10\libsodium.pdb"
DestinationFiles="$(TargetDir)libsodium.pdb"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Release')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium10\libsodium.dll"
DestinationFiles="$(TargetDir)libsodium.dll"
SkipUnchangedFiles="true" />
</Target>
<!-- Messages -->
<Target Name="libsodium-info" BeforeTargets="AfterBuild" Condition="'$(Linkage-libsodium)' == 'dynamic'">
<Message Text="Copying libsodium.dll -&gt; $(TargetDir)libsodium.dll" Importance="high"/>
<Message Text="Copying libsodium.pdb -&gt; $(TargetDir)libsodium.pdb" Importance="high" Condition="$(Configuration.IndexOf('Debug')) != -1" />
</Target>
</Project>

View File

@ -0,0 +1,16 @@
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework">
<Rule Name="libsodium-linkage-local-uiextension" PageTemplate="tool" DisplayName="Local Dependencies" SwitchPrefix="/" Order="1">
<Rule.Categories>
<Category Name="libsodium" DisplayName="libsodium" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="" />
</Rule.DataSource>
<EnumProperty Name="Linkage-libsodium" DisplayName="Linkage" Description="How libsodium will be linked into the output of this project" Category="libsodium">
<EnumValue Name="" DisplayName="Not linked" />
<EnumValue Name="dynamic" DisplayName="Dynamic (DLL)" />
<EnumValue Name="static" DisplayName="Static (LIB)" />
<EnumValue Name="ltcg" DisplayName="Static using link time compile generation (LTCG)" />
</EnumProperty>
</Rule>
</ProjectSchemaDefinitions>

View File

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<_PropertySheetDisplayName>ZMQ Import Settings</_PropertySheetDisplayName>
</PropertyGroup>
<!-- User Interface -->
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)libzmq.import.xml" />
</ItemGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\..\libzmq\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'static' Or '$(Linkage-libzmq)' == 'ltcg'">
<ClCompile>
<PreprocessorDefinitions>ZMQ_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'dynamic'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq10\libzmq.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq10\libzmq.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'static'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq10\libzmq.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq10\libzmq.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'ltcg'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq10\libzmq.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq10\libzmq.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<!-- Copy -->
<Target Name="Linkage-libzmq-dynamic" AfterTargets="AfterBuild" Condition="'$(Linkage-libzmq)' == 'dynamic'">
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq10\libzmq.dll"
DestinationFiles="$(TargetDir)libzmq.dll"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq10\libzmq.pdb"
DestinationFiles="$(TargetDir)libzmq.pdb"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Release')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq10\libzmq.dll"
DestinationFiles="$(TargetDir)libzmq.dll"
SkipUnchangedFiles="true" />
</Target>
<!-- Messages -->
<Target Name="libzmq-info" BeforeTargets="AfterBuild" Condition="'$(Linkage-libzmq)' == 'dynamic'">
<Message Text="Copying libzmq.dll -&gt; $(TargetDir)libzmq.dll" Importance="high"/>
<Message Text="Copying libzmq.pdb -&gt; $(TargetDir)libzmq.pdb" Importance="high" Condition="$(Configuration.IndexOf('Debug')) != -1" />
</Target>
</Project>

View File

@ -0,0 +1,16 @@
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework">
<Rule Name="libzmq-linkage-local-uiextension" PageTemplate="tool" DisplayName="Local Dependencies" SwitchPrefix="/" Order="1">
<Rule.Categories>
<Category Name="libzmq" DisplayName="libzmq" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="" />
</Rule.DataSource>
<EnumProperty Name="Linkage-libzmq" DisplayName="Linkage" Description="How libzmq will be linked into the output of this project" Category="libzmq">
<EnumValue Name="" DisplayName="Not linked" />
<EnumValue Name="dynamic" DisplayName="Dynamic (DLL)" />
<EnumValue Name="static" DisplayName="Static (LIB)" />
<EnumValue Name="ltcg" DisplayName="Static using link time compile generation (LTCG)" />
</EnumProperty>
</Rule>
</ProjectSchemaDefinitions>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\src\</Command>
@ -16,6 +18,8 @@
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<EnablePREfast>false</EnablePREfast>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;FD_SETSIZE=1024;ZMQ_USE_SELECT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Option-openpgm)' == 'true'">ZMQ_HAVE_OPENPGM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Option-sodium)' == 'true'">HAVE_LIBSODIUM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalDependencies>Advapi32.lib;Ws2_32.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
@ -37,13 +41,45 @@
</ClCompile>
</ItemDefinitionGroup>
<!-- The sodium nuget library will inject HAVE_LIBSODIUM via a target when loaded. -->
<!--<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-sodium : $(Linkage-sodium)" Importance="high"/>
</Target>-->
<!-- Options -->
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)$(ProjectName).xml" />
</ItemGroup>
<PropertyGroup>
<Option-sodium>true</Option-sodium>
</PropertyGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DLL')) != -1">
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LTCG')) != -1">
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LIB')) != -1">
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\src\platform.hpp" Importance="high"/>
</Target>
<Target Name="OptionInfo" BeforeTargets="PrepareForBuild">
<Message Text="Option-openpgm : $(Option-openpgm)" Importance="high"/>
<Message Text="Option-sodium : $(Option-sodium)" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -168,14 +168,6 @@
<Import Project="$(ProjectDir)..\properties\StaticRelease.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(ProjectName).xml" />
</ItemGroup>
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions Condition="'$(Option-openpgm)' == 'true'">ZMQ_HAVE_OPENPGM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\include\zmq.h" />
<ClInclude Include="..\..\..\..\include\zmq_utils.h" />
@ -187,6 +179,8 @@
<ClInclude Include="..\..\..\..\src\command.hpp" />
<ClInclude Include="..\..\..\..\src\config.hpp" />
<ClInclude Include="..\..\..\..\src\ctx.hpp" />
<ClInclude Include="..\..\..\..\src\curve_client.hpp" />
<ClInclude Include="..\..\..\..\src\curve_server.hpp" />
<ClInclude Include="..\..\..\..\src\decoder.hpp" />
<ClInclude Include="..\..\..\..\src\devpoll.hpp" />
<ClInclude Include="..\..\..\..\src\dist.hpp" />
@ -263,6 +257,8 @@
<ClCompile Include="..\..\..\..\src\address.cpp" />
<ClCompile Include="..\..\..\..\src\clock.cpp" />
<ClCompile Include="..\..\..\..\src\ctx.cpp" />
<ClCompile Include="..\..\..\..\src\curve_client.cpp" />
<ClCompile Include="..\..\..\..\src\curve_server.cpp" />
<ClCompile Include="..\..\..\..\src\dealer.cpp" />
<ClCompile Include="..\..\..\..\src\devpoll.cpp" />
<ClCompile Include="..\..\..\..\src\dist.cpp" />

View File

@ -199,6 +199,12 @@
<ClCompile Include="..\..\..\..\src\precompiled.cpp">
<Filter>src</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\src\curve_client.cpp">
<Filter>src</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\src\curve_server.cpp">
<Filter>src</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\include\zmq_utils.h">
@ -444,6 +450,12 @@
<ClInclude Include="..\..\resource.h">
<Filter>resource</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\curve_client.hpp">
<Filter>src\include</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\curve_server.hpp">
<Filter>src\include</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<Filter Include="include">

View File

@ -1,8 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework">
<Rule Name="openpgm-uiextension" PageTemplate="tool" DisplayName="ZMQ Options" SwitchPrefix="/" Order="1">
<Rule Name="libzmq-uiextension" PageTemplate="tool" DisplayName="ZMQ Options" SwitchPrefix="/" Order="1">
<Rule.Categories>
<Category Name="openpgm" DisplayName="openpgm" />
<Category Name="sodium" DisplayName="sodium" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="" />
@ -11,5 +12,9 @@
<EnumValue Name="" DisplayName="No" />
<EnumValue Name="true" DisplayName="Yes" />
</EnumProperty>
<EnumProperty Name="Option-sodium" DisplayName="Enable Sodium" Description="Enable the Sodium build option" Category="sodium">
<EnumValue Name="" DisplayName="No" />
<EnumValue Name="true" DisplayName="Yes" />
</EnumProperty>
</Rule>
</ProjectSchemaDefinitions>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -132,7 +132,7 @@
<Import Project="$(ProjectDir)$(ProjectName).props" />
<Import Project="$(ProjectDir)..\properties\ConsoleReleaseStatic.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
</ImportGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\perf\platform.hpp" />
</ItemGroup>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -7,6 +7,8 @@
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -132,7 +132,7 @@
<Import Project="$(ProjectDir)$(ProjectName).props" />
<Import Project="$(ProjectDir)..\properties\ConsoleReleaseStatic.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
</ImportGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\perf\platform.hpp" />
</ItemGroup>
@ -146,4 +146,4 @@
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
</Project>
</Project>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<_PropertySheetDisplayName>Libsodium Import Settings</_PropertySheetDisplayName>
</PropertyGroup>
<!-- User Interface -->
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)libsodium.import.xml" />
</ItemGroup>
<!-- Dependency linkage -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\..\libsodium\src\libsodium\include;$(ProjectDir)..\..\..\..\..\libsodium\src\libsodium\include\sodium\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'static' Or '$(Linkage-libsodium)' == 'ltcg'">
<ClCompile>
<PreprocessorDefinitions>SODIUM_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'dynamic'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium11\libsodium.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium11\libsodium.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'static'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium11\libsodium.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium11\libsodium.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'ltcg'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium11\libsodium.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium11\libsodium.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<!-- Copy dynamic libraries to target -->
<Target Name="Linkage-libsodium-dynamic" AfterTargets="AfterBuild" Condition="'$(Linkage-libsodium)' == 'dynamic'">
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium11\libsodium.dll"
DestinationFiles="$(TargetDir)libsodium.dll"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium11\libsodium.pdb"
DestinationFiles="$(TargetDir)libsodium.pdb"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Release')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium11\libsodium.dll"
DestinationFiles="$(TargetDir)libsodium.dll"
SkipUnchangedFiles="true" />
</Target>
<!-- Messages -->
<Target Name="libsodium-info" BeforeTargets="AfterBuild" Condition="'$(Linkage-libsodium)' == 'dynamic'">
<Message Text="Copying libsodium.dll -&gt; $(TargetDir)libsodium.dll" Importance="high"/>
<Message Text="Copying libsodium.pdb -&gt; $(TargetDir)libsodium.pdb" Importance="high" Condition="$(Configuration.IndexOf('Debug')) != -1" />
</Target>
</Project>

View File

@ -0,0 +1,16 @@
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework">
<Rule Name="libsodium-linkage-local-uiextension" PageTemplate="tool" DisplayName="Local Dependencies" SwitchPrefix="/" Order="1">
<Rule.Categories>
<Category Name="libsodium" DisplayName="libsodium" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="" />
</Rule.DataSource>
<EnumProperty Name="Linkage-libsodium" DisplayName="Linkage" Description="How libsodium will be linked into the output of this project" Category="libsodium">
<EnumValue Name="" DisplayName="Not linked" />
<EnumValue Name="dynamic" DisplayName="Dynamic (DLL)" />
<EnumValue Name="static" DisplayName="Static (LIB)" />
<EnumValue Name="ltcg" DisplayName="Static using link time compile generation (LTCG)" />
</EnumProperty>
</Rule>
</ProjectSchemaDefinitions>

View File

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<_PropertySheetDisplayName>ZMQ Import Settings</_PropertySheetDisplayName>
</PropertyGroup>
<!-- User Interface -->
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)libzmq.import.xml" />
</ItemGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\..\libzmq\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'static' Or '$(Linkage-libzmq)' == 'ltcg'">
<ClCompile>
<PreprocessorDefinitions>ZMQ_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'dynamic'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq11\libzmq.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq11\libzmq.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'static'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq11\libzmq.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq11\libzmq.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'ltcg'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq11\libzmq.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq11\libzmq.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<!-- Copy -->
<Target Name="Linkage-libzmq-dynamic" AfterTargets="AfterBuild" Condition="'$(Linkage-libzmq)' == 'dynamic'">
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq11\libzmq.dll"
DestinationFiles="$(TargetDir)libzmq.dll"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq11\libzmq.pdb"
DestinationFiles="$(TargetDir)libzmq.pdb"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Release')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq11\libzmq.dll"
DestinationFiles="$(TargetDir)libzmq.dll"
SkipUnchangedFiles="true" />
</Target>
<!-- Messages -->
<Target Name="libzmq-info" BeforeTargets="AfterBuild" Condition="'$(Linkage-libzmq)' == 'dynamic'">
<Message Text="Copying libzmq.dll -&gt; $(TargetDir)libzmq.dll" Importance="high"/>
<Message Text="Copying libzmq.pdb -&gt; $(TargetDir)libzmq.pdb" Importance="high" Condition="$(Configuration.IndexOf('Debug')) != -1" />
</Target>
</Project>

View File

@ -0,0 +1,16 @@
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework">
<Rule Name="libzmq-linkage-local-uiextension" PageTemplate="tool" DisplayName="Local Dependencies" SwitchPrefix="/" Order="1">
<Rule.Categories>
<Category Name="libzmq" DisplayName="libzmq" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="" />
</Rule.DataSource>
<EnumProperty Name="Linkage-libzmq" DisplayName="Linkage" Description="How libzmq will be linked into the output of this project" Category="libzmq">
<EnumValue Name="" DisplayName="Not linked" />
<EnumValue Name="dynamic" DisplayName="Dynamic (DLL)" />
<EnumValue Name="static" DisplayName="Static (LIB)" />
<EnumValue Name="ltcg" DisplayName="Static using link time compile generation (LTCG)" />
</EnumProperty>
</Rule>
</ProjectSchemaDefinitions>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\src\</Command>
@ -16,6 +18,8 @@
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<EnablePREfast>false</EnablePREfast>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;FD_SETSIZE=1024;ZMQ_USE_SELECT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Option-openpgm)' == 'true'">ZMQ_HAVE_OPENPGM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Option-sodium)' == 'true'">HAVE_LIBSODIUM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalDependencies>Advapi32.lib;Ws2_32.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
@ -37,13 +41,45 @@
</ClCompile>
</ItemDefinitionGroup>
<!-- The sodium nuget library will inject HAVE_LIBSODIUM via a target when loaded. -->
<!--<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-sodium : $(Linkage-sodium)" Importance="high"/>
</Target>-->
<!-- Options -->
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)$(ProjectName).xml" />
</ItemGroup>
<PropertyGroup>
<Option-sodium>true</Option-sodium>
</PropertyGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DLL')) != -1">
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LTCG')) != -1">
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LIB')) != -1">
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\src\platform.hpp" Importance="high"/>
</Target>
<Target Name="OptionInfo" BeforeTargets="PrepareForBuild">
<Message Text="Option-openpgm : $(Option-openpgm)" Importance="high"/>
<Message Text="Option-sodium : $(Option-sodium)" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -168,14 +168,6 @@
<Import Project="$(ProjectDir)..\properties\StaticRelease.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(ProjectName).xml" />
</ItemGroup>
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions Condition="'$(Option-openpgm)' == 'true'">ZMQ_HAVE_OPENPGM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\include\zmq.h" />
<ClInclude Include="..\..\..\..\include\zmq_utils.h" />
@ -187,6 +179,8 @@
<ClInclude Include="..\..\..\..\src\command.hpp" />
<ClInclude Include="..\..\..\..\src\config.hpp" />
<ClInclude Include="..\..\..\..\src\ctx.hpp" />
<ClInclude Include="..\..\..\..\src\curve_client.hpp" />
<ClInclude Include="..\..\..\..\src\curve_server.hpp" />
<ClInclude Include="..\..\..\..\src\decoder.hpp" />
<ClInclude Include="..\..\..\..\src\devpoll.hpp" />
<ClInclude Include="..\..\..\..\src\dist.hpp" />
@ -263,6 +257,8 @@
<ClCompile Include="..\..\..\..\src\address.cpp" />
<ClCompile Include="..\..\..\..\src\clock.cpp" />
<ClCompile Include="..\..\..\..\src\ctx.cpp" />
<ClCompile Include="..\..\..\..\src\curve_client.cpp" />
<ClCompile Include="..\..\..\..\src\curve_server.cpp" />
<ClCompile Include="..\..\..\..\src\dealer.cpp" />
<ClCompile Include="..\..\..\..\src\devpoll.cpp" />
<ClCompile Include="..\..\..\..\src\dist.cpp" />

View File

@ -199,6 +199,12 @@
<ClCompile Include="..\..\..\..\src\precompiled.cpp">
<Filter>src</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\src\curve_client.cpp">
<Filter>src</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\src\curve_server.cpp">
<Filter>src</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\include\zmq_utils.h">
@ -444,6 +450,12 @@
<ClInclude Include="..\..\resource.h">
<Filter>resource</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\curve_client.hpp">
<Filter>src\include</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\curve_server.hpp">
<Filter>src\include</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<Filter Include="include">

View File

@ -1,8 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework">
<Rule Name="openpgm-uiextension" PageTemplate="tool" DisplayName="ZMQ Options" SwitchPrefix="/" Order="1">
<Rule Name="libzmq-uiextension" PageTemplate="tool" DisplayName="ZMQ Options" SwitchPrefix="/" Order="1">
<Rule.Categories>
<Category Name="openpgm" DisplayName="openpgm" />
<Category Name="sodium" DisplayName="sodium" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="" />
@ -11,5 +12,9 @@
<EnumValue Name="" DisplayName="No" />
<EnumValue Name="true" DisplayName="Yes" />
</EnumProperty>
<EnumProperty Name="Option-sodium" DisplayName="Enable Sodium" Description="Enable the Sodium build option" Category="sodium">
<EnumValue Name="" DisplayName="No" />
<EnumValue Name="true" DisplayName="Yes" />
</EnumProperty>
</Rule>
</ProjectSchemaDefinitions>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -7,6 +7,8 @@
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -146,4 +146,4 @@
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
</Project>
</Project>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -132,7 +132,7 @@
<Import Project="$(ProjectDir)$(ProjectName).props" />
<Import Project="$(ProjectDir)..\properties\ConsoleReleaseStatic.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
</ImportGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\perf\platform.hpp" />
</ItemGroup>

View File

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<_PropertySheetDisplayName>Libsodium Import Settings</_PropertySheetDisplayName>
</PropertyGroup>
<!-- User Interface -->
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)libsodium.import.xml" />
</ItemGroup>
<!-- Dependency linkage -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\..\libsodium\src\libsodium\include;$(ProjectDir)..\..\..\..\..\libsodium\src\libsodium\include\sodium\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'static' Or '$(Linkage-libsodium)' == 'ltcg'">
<ClCompile>
<PreprocessorDefinitions>SODIUM_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'dynamic'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium12\libsodium.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium12\libsodium.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'static'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium12\libsodium.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium12\libsodium.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libsodium)' == 'ltcg'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium12\libsodium.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium12\libsodium.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<!-- Copy dynamic libraries to target -->
<Target Name="Linkage-libsodium-dynamic" AfterTargets="AfterBuild" Condition="'$(Linkage-libsodium)' == 'dynamic'">
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium12\libsodium.dll"
DestinationFiles="$(TargetDir)libsodium.dll"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\libsodium12\libsodium.pdb"
DestinationFiles="$(TargetDir)libsodium.pdb"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Release')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\libsodium12\libsodium.dll"
DestinationFiles="$(TargetDir)libsodium.dll"
SkipUnchangedFiles="true" />
</Target>
<!-- Messages -->
<Target Name="libsodium-info" BeforeTargets="AfterBuild" Condition="'$(Linkage-libsodium)' == 'dynamic'">
<Message Text="Copying libsodium.dll -&gt; $(TargetDir)libsodium.dll" Importance="high"/>
<Message Text="Copying libsodium.pdb -&gt; $(TargetDir)libsodium.pdb" Importance="high" Condition="$(Configuration.IndexOf('Debug')) != -1" />
</Target>
</Project>

View File

@ -0,0 +1,16 @@
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework">
<Rule Name="libsodium-linkage-local-uiextension" PageTemplate="tool" DisplayName="Local Dependencies" SwitchPrefix="/" Order="1">
<Rule.Categories>
<Category Name="libsodium" DisplayName="libsodium" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="" />
</Rule.DataSource>
<EnumProperty Name="Linkage-libsodium" DisplayName="Linkage" Description="How libsodium will be linked into the output of this project" Category="libsodium">
<EnumValue Name="" DisplayName="Not linked" />
<EnumValue Name="dynamic" DisplayName="Dynamic (DLL)" />
<EnumValue Name="static" DisplayName="Static (LIB)" />
<EnumValue Name="ltcg" DisplayName="Static using link time compile generation (LTCG)" />
</EnumProperty>
</Rule>
</ProjectSchemaDefinitions>

View File

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<_PropertySheetDisplayName>ZMQ Import Settings</_PropertySheetDisplayName>
</PropertyGroup>
<!-- User Interface -->
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)libzmq.import.xml" />
</ItemGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\..\libzmq\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'static' Or '$(Linkage-libzmq)' == 'ltcg'">
<ClCompile>
<PreprocessorDefinitions>ZMQ_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'dynamic'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq12\libzmq.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq12\libzmq.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'static'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq12\libzmq.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq12\libzmq.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Linkage-libzmq)' == 'ltcg'">
<Link Condition="$(Configuration.IndexOf('Debug')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq12\libzmq.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Link Condition="$(Configuration.IndexOf('Release')) != -1">
<AdditionalDependencies>$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq12\libzmq.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<!-- Copy -->
<Target Name="Linkage-libzmq-dynamic" AfterTargets="AfterBuild" Condition="'$(Linkage-libzmq)' == 'dynamic'">
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq12\libzmq.dll"
DestinationFiles="$(TargetDir)libzmq.dll"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Debug\libzmq12\libzmq.pdb"
DestinationFiles="$(TargetDir)libzmq.pdb"
SkipUnchangedFiles="true" />
<Copy Condition="$(Configuration.IndexOf('Release')) != -1"
SourceFiles="$(ProjectDir)..\..\..\..\..\libzmq\bin\$(PlatformName)\Release\libzmq12\libzmq.dll"
DestinationFiles="$(TargetDir)libzmq.dll"
SkipUnchangedFiles="true" />
</Target>
<!-- Messages -->
<Target Name="libzmq-info" BeforeTargets="AfterBuild" Condition="'$(Linkage-libzmq)' == 'dynamic'">
<Message Text="Copying libzmq.dll -&gt; $(TargetDir)libzmq.dll" Importance="high"/>
<Message Text="Copying libzmq.pdb -&gt; $(TargetDir)libzmq.pdb" Importance="high" Condition="$(Configuration.IndexOf('Debug')) != -1" />
</Target>
</Project>

View File

@ -0,0 +1,16 @@
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework">
<Rule Name="libzmq-linkage-local-uiextension" PageTemplate="tool" DisplayName="Local Dependencies" SwitchPrefix="/" Order="1">
<Rule.Categories>
<Category Name="libzmq" DisplayName="libzmq" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="" />
</Rule.DataSource>
<EnumProperty Name="Linkage-libzmq" DisplayName="Linkage" Description="How libzmq will be linked into the output of this project" Category="libzmq">
<EnumValue Name="" DisplayName="Not linked" />
<EnumValue Name="dynamic" DisplayName="Dynamic (DLL)" />
<EnumValue Name="static" DisplayName="Static (LIB)" />
<EnumValue Name="ltcg" DisplayName="Static using link time compile generation (LTCG)" />
</EnumProperty>
</Rule>
</ProjectSchemaDefinitions>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\src\</Command>
@ -16,6 +18,8 @@
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<EnablePREfast>false</EnablePREfast>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;FD_SETSIZE=1024;ZMQ_USE_SELECT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Option-openpgm)' == 'true'">ZMQ_HAVE_OPENPGM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Option-sodium)' == 'true'">HAVE_LIBSODIUM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalDependencies>Advapi32.lib;Ws2_32.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
@ -37,13 +41,45 @@
</ClCompile>
</ItemDefinitionGroup>
<!-- The sodium nuget library will inject HAVE_LIBSODIUM via a target when loaded. -->
<!--<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-sodium : $(Linkage-sodium)" Importance="high"/>
</Target>-->
<!-- Options -->
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(MSBuildThisFileDirectory)$(ProjectName).xml" />
</ItemGroup>
<PropertyGroup>
<Option-sodium>true</Option-sodium>
</PropertyGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DLL')) != -1">
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LTCG')) != -1">
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LIB')) != -1">
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\src\platform.hpp" Importance="high"/>
</Target>
<Target Name="OptionInfo" BeforeTargets="PrepareForBuild">
<Message Text="Option-openpgm : $(Option-openpgm)" Importance="high"/>
<Message Text="Option-sodium : $(Option-sodium)" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -168,14 +168,6 @@
<Import Project="$(ProjectDir)..\properties\StaticRelease.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
<ItemGroup Label="BuildOptionsExtension">
<PropertyPageSchema Include="$(ProjectName).xml" />
</ItemGroup>
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions Condition="'$(Option-openpgm)' == 'true'">ZMQ_HAVE_OPENPGM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\include\zmq.h" />
<ClInclude Include="..\..\..\..\include\zmq_utils.h" />
@ -187,6 +179,8 @@
<ClInclude Include="..\..\..\..\src\command.hpp" />
<ClInclude Include="..\..\..\..\src\config.hpp" />
<ClInclude Include="..\..\..\..\src\ctx.hpp" />
<ClInclude Include="..\..\..\..\src\curve_client.hpp" />
<ClInclude Include="..\..\..\..\src\curve_server.hpp" />
<ClInclude Include="..\..\..\..\src\decoder.hpp" />
<ClInclude Include="..\..\..\..\src\devpoll.hpp" />
<ClInclude Include="..\..\..\..\src\dist.hpp" />
@ -263,6 +257,8 @@
<ClCompile Include="..\..\..\..\src\address.cpp" />
<ClCompile Include="..\..\..\..\src\clock.cpp" />
<ClCompile Include="..\..\..\..\src\ctx.cpp" />
<ClCompile Include="..\..\..\..\src\curve_client.cpp" />
<ClCompile Include="..\..\..\..\src\curve_server.cpp" />
<ClCompile Include="..\..\..\..\src\dealer.cpp" />
<ClCompile Include="..\..\..\..\src\devpoll.cpp" />
<ClCompile Include="..\..\..\..\src\dist.cpp" />

View File

@ -199,6 +199,12 @@
<ClCompile Include="..\..\..\..\src\precompiled.cpp">
<Filter>src</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\src\curve_client.cpp">
<Filter>src</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\src\curve_server.cpp">
<Filter>src</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\include\zmq_utils.h">
@ -444,6 +450,12 @@
<ClInclude Include="..\..\resource.h">
<Filter>resource</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\curve_client.hpp">
<Filter>src\include</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\curve_server.hpp">
<Filter>src\include</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<Filter Include="include">

View File

@ -1,8 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework">
<Rule Name="openpgm-uiextension" PageTemplate="tool" DisplayName="ZMQ Options" SwitchPrefix="/" Order="1">
<Rule Name="libzmq-uiextension" PageTemplate="tool" DisplayName="ZMQ Options" SwitchPrefix="/" Order="1">
<Rule.Categories>
<Category Name="openpgm" DisplayName="openpgm" />
<Category Name="sodium" DisplayName="sodium" />
</Rule.Categories>
<Rule.DataSource>
<DataSource Persistence="ProjectFile" ItemType="" />
@ -11,5 +12,9 @@
<EnumValue Name="" DisplayName="No" />
<EnumValue Name="true" DisplayName="Yes" />
</EnumProperty>
<EnumProperty Name="Option-sodium" DisplayName="Enable Sodium" Description="Enable the Sodium build option" Category="sodium">
<EnumValue Name="" DisplayName="No" />
<EnumValue Name="true" DisplayName="Yes" />
</EnumProperty>
</Rule>
</ProjectSchemaDefinitions>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -132,7 +132,7 @@
<Import Project="$(ProjectDir)$(ProjectName).props" />
<Import Project="$(ProjectDir)..\properties\ConsoleReleaseStatic.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
</ImportGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\perf\platform.hpp" />
</ItemGroup>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -132,7 +132,7 @@
<Import Project="$(ProjectDir)$(ProjectName).props" />
<Import Project="$(ProjectDir)..\properties\ConsoleReleaseStatic.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
</ImportGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\perf\platform.hpp" />
</ItemGroup>

View File

@ -8,6 +8,8 @@
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>
<!-- Configuration -->
<ItemDefinitionGroup>
<PreBuildEvent>
<Command>copy $(ProjectDir)..\..\platform.hpp $(ProjectDir)..\..\..\..\perf\</Command>
@ -23,8 +25,35 @@
</Link>
</ItemDefinitionGroup>
<!-- Extensions -->
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)libzmq.import.props" />
<Import Project="$(SolutionDir)libsodium.import.props" />
</ImportGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('DEXE')) != -1">
<Linkage-libzmq>dynamic</Linkage-libzmq>
<Linkage-libsodium>dynamic</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('LEXE')) != -1">
<Linkage-libzmq>ltcg</Linkage-libzmq>
<Linkage-libsodium>ltcg</Linkage-libsodium>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.IndexOf('SEXE')) != -1">
<Linkage-libzmq>static</Linkage-libzmq>
<Linkage-libsodium>static</Linkage-libsodium>
</PropertyGroup>
<!-- Messages -->
<Target Name="CustomInfo" BeforeTargets="PrepareForBuild">
<Message Text="Will copy $(ProjectDir)..\..\platform.hpp -&gt; $(ProjectDir)..\..\..\..\perf\platform.hpp" Importance="high"/>
</Target>
<Target Name="LinkageInfo" BeforeTargets="PrepareForBuild">
<Message Text="Linkage-libzmq : $(Linkage-libzmq)" Importance="high"/>
<Message Text="Linkage-libsodium : $(Linkage-libsodium)" Importance="high"/>
</Target>
</Project>

View File

@ -132,7 +132,7 @@
<Import Project="$(ProjectDir)$(ProjectName).props" />
<Import Project="$(ProjectDir)..\properties\ConsoleReleaseStatic.props" />
<Import Project="$(ProjectDir)..\properties\x64.props" />
</ImportGroup>
</ImportGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\perf\platform.hpp" />
</ItemGroup>

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- These values are populated into the package.gsl templates by package.bat. -->
<!-- The target attribute controls path and file name only, id controls package naming. -->
<package id="libzmq_vc120" target="libzmq" namespace="libzmq12" version = "4.1.0.3" pathversion="4_1_0_3" platformtoolset="v120" />
<package id="libzmq_vc120" target="libzmq" namespace="libzmq12" version = "4.1.0.4" pathversion="4_1_0_4" platformtoolset="v120" />

View File

@ -16,7 +16,7 @@
<metadata minClientVersion="2.5">
<id>$(package.id)</id>
<version>$(package.version)</version>
<title>$(package.id) [without OpenPGM or Sodium]</title>
<title>$(package.id)</title>
<authors>libzmq contributors</authors>
<owners>Eric Voskuil</owners>
<licenseUrl>https://raw.github.com/zeromq/libzmq/master/COPYING.LESSER</licenseUrl>
@ -25,10 +25,13 @@
<requireLicenseAcceptance>true</requireLicenseAcceptance>
<developmentDependency>true</developmentDependency>
<description>The 0MQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products. 0MQ sockets provide an abstraction of asynchronous message queues, multiple messaging patterns, message filtering (subscriptions), seamless access to multiple transport protocols and more.</description>
<summary>The 0MQ lightweight messaging kernel, packaged for Visual Studio 2013 (v120) and CTP_Nov2013 compilers, without OpenPGM or Sodium.</summary>
<summary>The 0MQ lightweight messaging kernel, with libsodium integrated, packaged for Visual Studio 2013 (v120) and CTP_Nov2013 compilers.</summary>
<releaseNotes>https://raw.github.com/zeromq/libzmq/master/NEWS</releaseNotes>
<copyright>GNU Lesser GPL v3</copyright>
<tags>native, libzmq, zmq, 0MQ, messaging, sockets, C++</tags>
<dependencies>
<dependency id="libsodium_vc120" version="0.4.5.1" />
</dependencies>
</metadata>
<files>
<!-- include -->

View File

@ -7,8 +7,8 @@
<package xmlns="http://schemas.microsoft.com/packaging/2013/01/nuspec.xsd">
<metadata minClientVersion="2.5">
<id>libzmq_vc120</id>
<version>4.1.0.3</version>
<title>libzmq_vc120 [without OpenPGM or Sodium]</title>
<version>4.1.0.4</version>
<title>libzmq_vc120</title>
<authors>libzmq contributors</authors>
<owners>Eric Voskuil</owners>
<licenseUrl>https://raw.github.com/zeromq/libzmq/master/COPYING.LESSER</licenseUrl>
@ -17,10 +17,13 @@
<requireLicenseAcceptance>true</requireLicenseAcceptance>
<developmentDependency>true</developmentDependency>
<description>The 0MQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products. 0MQ sockets provide an abstraction of asynchronous message queues, multiple messaging patterns, message filtering (subscriptions), seamless access to multiple transport protocols and more.</description>
<summary>The 0MQ lightweight messaging kernel, packaged for Visual Studio 2013 (v120) and CTP_Nov2013 compilers, without OpenPGM or Sodium.</summary>
<summary>The 0MQ lightweight messaging kernel, with libsodium integrated, packaged for Visual Studio 2013 (v120) and CTP_Nov2013 compilers.</summary>
<releaseNotes>https://raw.github.com/zeromq/libzmq/master/NEWS</releaseNotes>
<copyright>GNU Lesser GPL v3</copyright>
<tags>native, libzmq, zmq, 0MQ, messaging, sockets, C++</tags>
<dependencies>
<dependency id="libsodium_vc120" version="0.4.5.1" />
</dependencies>
</metadata>
<files>
<!-- include -->
@ -41,52 +44,52 @@
<!-- libraries -->
<!-- x86 Dynamic libraries (.dll) -->
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.dll" target="build\native\bin\libzmq-x86-v120-mt-4_1_0_3.dll" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.dll" target="build\native\bin\libzmq-x86-v120-mt-gd-4_1_0_3.dll" />
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.dll" target="build\native\bin\libzmq-x86-v120-mt-4_1_0_4.dll" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.dll" target="build\native\bin\libzmq-x86-v120-mt-gd-4_1_0_4.dll" />
<!-- x86 Debugging symbols (.pdb) -->
<!--<file src="..\..\bin\Win32\Release\libzmq12\libzmq.pdb" target="build\native\bin\libzmq-x86-v120-mt-4_1_0_3.pdb" />-->
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.pdb" target="build\native\bin\libzmq-x86-v120-mt-gd-4_1_0_3.pdb" />
<!--<file src="..\..\bin\Win32\Release\libzmq12\libzmq.pdb" target="build\native\bin\libzmq-x86-v120-mt-4_1_0_4.pdb" />-->
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.pdb" target="build\native\bin\libzmq-x86-v120-mt-gd-4_1_0_4.pdb" />
<!-- x86 Static libraries (.lib) -->
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.lib" target="build\native\bin\libzmq-x86-v120-mt-s-4_1_0_3.lib" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.lib" target="build\native\bin\libzmq-x86-v120-mt-sgd-4_1_0_3.lib" />
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.lib" target="build\native\bin\libzmq-x86-v120-mt-s-4_1_0_4.lib" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.lib" target="build\native\bin\libzmq-x86-v120-mt-sgd-4_1_0_4.lib" />
<!-- x86 Static link time code generation libraries (.ltcg.lib) -->
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.ltcg.lib" target="build\native\bin\libzmq-x86-v120-mt-s-4_1_0_3.ltcg.lib" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.ltcg.lib" target="build\native\bin\libzmq-x86-v120-mt-sgd-4_1_0_3.ltcg.lib" />
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.ltcg.lib" target="build\native\bin\libzmq-x86-v120-mt-s-4_1_0_4.ltcg.lib" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.ltcg.lib" target="build\native\bin\libzmq-x86-v120-mt-sgd-4_1_0_4.ltcg.lib" />
<!-- x86 Import libraries (.imp.lib) -->
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.imp.lib" target="build\native\bin\libzmq-x86-v120-mt-4_1_0_3.imp.lib" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.imp.lib" target="build\native\bin\libzmq-x86-v120-mt-gd-4_1_0_3.imp.lib" />
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.imp.lib" target="build\native\bin\libzmq-x86-v120-mt-4_1_0_4.imp.lib" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.imp.lib" target="build\native\bin\libzmq-x86-v120-mt-gd-4_1_0_4.imp.lib" />
<!-- x86 Export libraries (.exp) -->
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.imp.exp" target="build\native\bin\libzmq-x86-v120-mt-4_1_0_3.exp" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.imp.exp" target="build\native\bin\libzmq-x86-v120-mt-gd-4_1_0_3.exp" />
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.imp.exp" target="build\native\bin\libzmq-x86-v120-mt-4_1_0_4.exp" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.imp.exp" target="build\native\bin\libzmq-x86-v120-mt-gd-4_1_0_4.exp" />
<!-- x64 Dynamic libraries (.dll) -->
<file src="..\..\bin\x64\Release\libzmq12\libzmq.dll" target="build\native\bin\libzmq-x64-v120-mt-4_1_0_3.dll" />
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.dll" target="build\native\bin\libzmq-x64-v120-mt-gd-4_1_0_3.dll" />
<file src="..\..\bin\x64\Release\libzmq12\libzmq.dll" target="build\native\bin\libzmq-x64-v120-mt-4_1_0_4.dll" />
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.dll" target="build\native\bin\libzmq-x64-v120-mt-gd-4_1_0_4.dll" />
<!-- x64 Debugging symbols (.pdb) -->
<!--<file src="..\..\bin\x64\Release\libzmq12\libzmq.pdb" target="build\native\bin\libzmq-x64-v120-mt-4_1_0_3.pdb" />-->
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.pdb" target="build\native\bin\libzmq-x64-v120-mt-gd-4_1_0_3.pdb" />
<!--<file src="..\..\bin\x64\Release\libzmq12\libzmq.pdb" target="build\native\bin\libzmq-x64-v120-mt-4_1_0_4.pdb" />-->
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.pdb" target="build\native\bin\libzmq-x64-v120-mt-gd-4_1_0_4.pdb" />
<!-- x64 Static libraries (.lib) -->
<file src="..\..\bin\x64\Release\libzmq12\libzmq.lib" target="build\native\bin\libzmq-x64-v120-mt-s-4_1_0_3.lib" />
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.lib" target="build\native\bin\libzmq-x64-v120-mt-sgd-4_1_0_3.lib" />
<file src="..\..\bin\x64\Release\libzmq12\libzmq.lib" target="build\native\bin\libzmq-x64-v120-mt-s-4_1_0_4.lib" />
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.lib" target="build\native\bin\libzmq-x64-v120-mt-sgd-4_1_0_4.lib" />
<!-- x64 Static link time code generation libraries (.ltcg.lib) -->
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.ltcg.lib" target="build\native\bin\libzmq-x64-v120-mt-s-4_1_0_3.ltcg.lib" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.ltcg.lib" target="build\native\bin\libzmq-x64-v120-mt-sgd-4_1_0_3.ltcg.lib" />
<file src="..\..\bin\Win32\Release\libzmq12\libzmq.ltcg.lib" target="build\native\bin\libzmq-x64-v120-mt-s-4_1_0_4.ltcg.lib" />
<file src="..\..\bin\Win32\Debug\libzmq12\libzmq.ltcg.lib" target="build\native\bin\libzmq-x64-v120-mt-sgd-4_1_0_4.ltcg.lib" />
<!-- x64 Import libraries (.imp.lib) -->
<file src="..\..\bin\x64\Release\libzmq12\libzmq.imp.lib" target="build\native\bin\libzmq-x64-v120-mt-4_1_0_3.imp.lib" />
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.imp.lib" target="build\native\bin\libzmq-x64-v120-mt-gd-4_1_0_3.imp.lib" />
<file src="..\..\bin\x64\Release\libzmq12\libzmq.imp.lib" target="build\native\bin\libzmq-x64-v120-mt-4_1_0_4.imp.lib" />
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.imp.lib" target="build\native\bin\libzmq-x64-v120-mt-gd-4_1_0_4.imp.lib" />
<!-- x64 Export libraries (.exp) -->
<file src="..\..\bin\x64\Release\libzmq12\libzmq.imp.exp" target="build\native\bin\libzmq-x64-v120-mt-4_1_0_3.exp" />
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.imp.exp" target="build\native\bin\libzmq-x64-v120-mt-gd-4_1_0_3.exp" />
<file src="..\..\bin\x64\Release\libzmq12\libzmq.imp.exp" target="build\native\bin\libzmq-x64-v120-mt-4_1_0_4.exp" />
<file src="..\..\bin\x64\Debug\libzmq12\libzmq.imp.exp" target="build\native\bin\libzmq-x64-v120-mt-gd-4_1_0_4.exp" />
</files>
<!--
#################################################################

View File

@ -29,66 +29,66 @@
<!-- static libraries -->
<ItemDefinitionGroup Condition="'$(Platform)' == 'Win32' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'static' And $(Configuration.IndexOf('Release')) != -1">
<Link>
<AdditionalDependencies>libzmq-x86-v120-mt-s-4_1_0_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x86-v120-mt-s-4_1_0_4.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)' == 'Win32' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'static' And $(Configuration.IndexOf('Debug')) != -1">
<Link>
<AdditionalDependencies>libzmq-x86-v120-mt-sgd-4_1_0_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x86-v120-mt-sgd-4_1_0_4.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)' == 'x64' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'static' And $(Configuration.IndexOf('Release')) != -1">
<Link>
<AdditionalDependencies>libzmq-x64-v120-mt-s-4_1_0_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x64-v120-mt-s-4_1_0_4.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)' == 'x64' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'static' And $(Configuration.IndexOf('Debug')) != -1">
<Link>
<AdditionalDependencies>libzmq-x64-v120-mt-sgd-4_1_0_3.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x64-v120-mt-sgd-4_1_0_4.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<!-- static ltcg libraries -->
<ItemDefinitionGroup Condition="'$(Platform)' == 'Win32' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'ltcg' And $(Configuration.IndexOf('Release')) != -1">
<Link>
<AdditionalDependencies>libzmq-x86-v120-mt-s-4_1_0_3.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x86-v120-mt-s-4_1_0_4.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)' == 'Win32' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'ltcg' And $(Configuration.IndexOf('Debug')) != -1">
<Link>
<AdditionalDependencies>libzmq-x86-v120-mt-sgd-4_1_0_3.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x86-v120-mt-sgd-4_1_0_4.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)' == 'x64' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'ltcg' And $(Configuration.IndexOf('Release')) != -1">
<Link>
<AdditionalDependencies>libzmq-x64-v120-mt-s-4_1_0_3.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x64-v120-mt-s-4_1_0_4.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)' == 'x64' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'ltcg' And $(Configuration.IndexOf('Debug')) != -1">
<Link>
<AdditionalDependencies>libzmq-x64-v120-mt-sgd-4_1_0_3.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x64-v120-mt-sgd-4_1_0_4.ltcg.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<!-- dynamic import libraries -->
<ItemDefinitionGroup Condition="'$(Platform)' == 'Win32' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'dynamic' And $(Configuration.IndexOf('Release')) != -1">
<Link>
<AdditionalDependencies>libzmq-x86-v120-mt-4_1_0_3.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x86-v120-mt-4_1_0_4.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)' == 'Win32' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'dynamic' And $(Configuration.IndexOf('Debug')) != -1">
<Link>
<AdditionalDependencies>libzmq-x86-v120-mt-gd-4_1_0_3.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x86-v120-mt-gd-4_1_0_4.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)' == 'x64' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'dynamic' And $(Configuration.IndexOf('Release')) != -1">
<Link>
<AdditionalDependencies>libzmq-x64-v120-mt-4_1_0_3.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x64-v120-mt-4_1_0_4.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)' == 'x64' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'dynamic' And $(Configuration.IndexOf('Debug')) != -1">
<Link>
<AdditionalDependencies>libzmq-x64-v120-mt-gd-4_1_0_3.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>libzmq-x64-v120-mt-gd-4_1_0_4.imp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
@ -97,26 +97,26 @@
<Target Name="libzmq_AfterBuild_Win32_v120_Dynamic_Release"
Condition="'$(Platform)' == 'Win32' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'dynamic' And $(Configuration.IndexOf('Release')) != -1"
AfterTargets="libzmq_AfterBuild">
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x86-v120-mt-4_1_0_3.dll" DestinationFiles="$(TargetDir)libzmq.dll" SkipUnchangedFiles="true" />
<!--<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x86-v120-mt-4_1_0_3.pdb" DestinationFiles="$(TargetDir)libzmq.pdb" SkipUnchangedFiles="true" />-->
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x86-v120-mt-4_1_0_4.dll" DestinationFiles="$(TargetDir)libzmq.dll" SkipUnchangedFiles="true" />
<!--<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x86-v120-mt-4_1_0_4.pdb" DestinationFiles="$(TargetDir)libzmq.pdb" SkipUnchangedFiles="true" />-->
</Target>
<Target Name="libzmq_AfterBuild_Win32_v120_Dynamic_Debug"
Condition="'$(Platform)' == 'Win32' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'dynamic' And $(Configuration.IndexOf('Debug')) != -1"
AfterTargets="libzmq_AfterBuild">
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x86-v120-mt-gd-4_1_0_3.dll" DestinationFiles="$(TargetDir)libzmq.dll" SkipUnchangedFiles="true" />
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x86-v120-mt-gd-4_1_0_3.pdb" DestinationFiles="$(TargetDir)libzmq.pdb" SkipUnchangedFiles="true" />
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x86-v120-mt-gd-4_1_0_4.dll" DestinationFiles="$(TargetDir)libzmq.dll" SkipUnchangedFiles="true" />
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x86-v120-mt-gd-4_1_0_4.pdb" DestinationFiles="$(TargetDir)libzmq.pdb" SkipUnchangedFiles="true" />
</Target>
<Target Name="libzmq_AfterBuild_x64_v120_Dynamic_Release"
Condition="'$(Platform)' == 'x64' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'dynamic' And $(Configuration.IndexOf('Release')) != -1"
AfterTargets="libzmq_AfterBuild">
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x64-v120-mt-4_1_0_3.dll" DestinationFiles="$(TargetDir)libzmq.dll" SkipUnchangedFiles="true" />
<!--<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x64-v120-mt-4_1_0_3.pdb" DestinationFiles="$(TargetDir)libzmq.pdb" SkipUnchangedFiles="true" />-->
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x64-v120-mt-4_1_0_4.dll" DestinationFiles="$(TargetDir)libzmq.dll" SkipUnchangedFiles="true" />
<!--<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x64-v120-mt-4_1_0_4.pdb" DestinationFiles="$(TargetDir)libzmq.pdb" SkipUnchangedFiles="true" />-->
</Target>
<Target Name="libzmq_AfterBuild_x64_v120_Dynamic_Debug"
Condition="'$(Platform)' == 'x64' And ('$(PlatformToolset)' == 'v120' Or '$(PlatformToolset)' == 'CTP_Nov2013') And '$(Linkage-libzmq)' == 'dynamic' And $(Configuration.IndexOf('Debug')) != -1"
AfterTargets="libzmq_AfterBuild">
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x64-v120-mt-gd-4_1_0_3.dll" DestinationFiles="$(TargetDir)libzmq.dll" SkipUnchangedFiles="true" />
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x64-v120-mt-gd-4_1_0_3.pdb" DestinationFiles="$(TargetDir)libzmq.pdb" SkipUnchangedFiles="true" />
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x64-v120-mt-gd-4_1_0_4.dll" DestinationFiles="$(TargetDir)libzmq.dll" SkipUnchangedFiles="true" />
<Copy SourceFiles="$(MSBuildThisFileDirectory)bin\libzmq-x64-v120-mt-gd-4_1_0_4.pdb" DestinationFiles="$(TargetDir)libzmq.pdb" SkipUnchangedFiles="true" />
</Target>
<!--