1<?xml version="1.0" encoding="utf-8"?>
2<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
4  <PropertyGroup Label="Globals">
5    <_PropertySheetDisplayName>Libsodium Import Settings</_PropertySheetDisplayName>
6  </PropertyGroup>
7
8  <!-- User Interface -->
9
10  <ItemGroup Label="BuildOptionsExtension">
11    <PropertyPageSchema Include="$(MSBuildThisFileDirectory)libsodium.import.xml" />
12  </ItemGroup>
13
14  <!-- Linkage -->
15
16  <ItemDefinitionGroup>
17    <ClCompile>
18      <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\..\..\libsodium\src\libsodium\include;$(ProjectDir)..\..\..\..\..\libsodium\src\libsodium\include\sodium\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
19      <PreprocessorDefinitions Condition="'$(Linkage-libsodium)' == 'static' Or '$(Linkage-libsodium)' == 'ltcg'">SODIUM_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
20    </ClCompile>
21    <Link>
22      <AdditionalDependencies Condition="'$(Linkage-libsodium)' != ''">advapi32.lib;libsodium.lib;%(AdditionalDependencies)</AdditionalDependencies>
23      <AdditionalLibraryDirectories Condition="$(Configuration.IndexOf('Debug')) != -1">$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\$(PlatformToolset)\$(Linkage-libsodium)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
24      <AdditionalLibraryDirectories Condition="$(Configuration.IndexOf('Release')) != -1">$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\$(PlatformToolset)\$(Linkage-libsodium)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
25    </Link>
26  </ItemDefinitionGroup>
27
28  <!-- Copy -->
29
30  <Target Name="Linkage-libsodium-dynamic" AfterTargets="AfterBuild" Condition="'$(Linkage-libsodium)' == 'dynamic'">
31    <Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
32          SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\$(PlatformToolset)\dynamic\libsodium.dll"
33          DestinationFiles="$(TargetDir)libsodium.dll"
34          SkipUnchangedFiles="true" />
35    <Copy Condition="$(Configuration.IndexOf('Debug')) != -1"
36          SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Debug\$(PlatformToolset)\dynamic\libsodium.pdb"
37          DestinationFiles="$(TargetDir)libsodium.pdb"
38          SkipUnchangedFiles="true" />
39    <Copy Condition="$(Configuration.IndexOf('Release')) != -1"
40          SourceFiles="$(ProjectDir)..\..\..\..\..\libsodium\bin\$(PlatformName)\Release\$(PlatformToolset)\dynamic\libsodium.dll"
41          DestinationFiles="$(TargetDir)libsodium.dll"
42          SkipUnchangedFiles="true" />
43  </Target>
44
45  <!-- Messages -->
46
47  <Target Name="libsodium-info" BeforeTargets="AfterBuild" Condition="'$(Linkage-libsodium)' == 'dynamic'">
48    <Message Text="Copying libsodium.dll -&gt; $(TargetDir)libsodium.dll" Importance="high"/>
49    <Message Text="Copying libsodium.pdb -&gt; $(TargetDir)libsodium.pdb" Importance="high" Condition="$(Configuration.IndexOf('Debug')) != -1" />
50  </Target>
51
52</Project>