https://github.com/Microsoft/CNTK
Raw File
Tip revision: 8e93cf605d704ddfb8a04b78f6a1994fcd07ac86 authored by Eldar Akchurin on 12 April 2017, 09:43:42 UTC
Some fixes
Tip revision: 8e93cf6
CNTKv2LibraryDll.vcxproj
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" InitialTargets="CheckDependencies" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup Label="ProjectConfigurations">
    <ProjectConfiguration Include="Debug|x64">
      <Configuration>Debug</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release_NoOpt|x64">
      <Configuration>Release_NoOpt</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|x64">
      <Configuration>Release</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug_CpuOnly|x64">
      <Configuration>Debug_CpuOnly</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release_CpuOnly|x64">
      <Configuration>Release_CpuOnly</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
  </ItemGroup>
  <PropertyGroup Label="Globals">
    <ProjectGuid>{E5606ECE-48CA-4464-BB12-09D81D02B9EF}</ProjectGuid>
    <Keyword>Win32Proj</Keyword>
    <RootNamespace>CNTKv2LibraryDll</RootNamespace>
    <ProjectName>CNTKv2LibraryDll</ProjectName>
  </PropertyGroup>
  <Import Project="$(SolutionDir)\CNTK.Cpp.props" />
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  <PropertyGroup Label="Configuration">
    <ConfigurationType>DynamicLibrary</ConfigurationType>
    <PlatformToolset>v140</PlatformToolset>
    <CharacterSet>Unicode</CharacterSet>
  </PropertyGroup>
  <PropertyGroup Condition="$(DebugBuild)" Label="Configuration">
    <UseDebugLibraries>true</UseDebugLibraries>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  <ImportGroup Label="ExtensionSettings">
  </ImportGroup>
  <ImportGroup Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <PropertyGroup Label="UserMacros" />
  <PropertyGroup Condition="$(DebugBuild)">
    <LinkIncremental>true</LinkIncremental>
    <TargetName>Cntk.Core-$(CntkComponentVersion)</TargetName>
  </PropertyGroup>
  <PropertyGroup Condition="$(ReleaseBuild)">
    <TargetName>Cntk.Core-$(CntkComponentVersion)</TargetName>
  </PropertyGroup>
  <ItemDefinitionGroup>
    <ClCompile>
      <AdditionalIncludeDirectories>.\API;.\proto;$(BOOST_INCLUDE_PATH);$(SolutionDir)\Source\CNTKv2LibraryDll;$(SolutionDir)Source\SGDLib;$(SolutionDir)Source\Readers\ReaderLib;$(SolutionDir)Source\ComputationNetworkLib;$(SolutionDir)Source\SequenceTrainingLib;$(SolutionDir)Source\Math;$(SolutionDir)Source\Common\Include;$(SolutionDir)Source\CNTK\BrainScript;$(SolutionDir)Source\ActionsLib;$(MSMPI_INC);$(NvmlInclude);$(ProtobufInclude);$(SolutionDir)Source\PerformanceProfilerDll</AdditionalIncludeDirectories>
      <AdditionalIncludeDirectories Condition="'$(CNTK_ENABLE_1BitSGD)'=='true'">$(SolutionDir)Source\1BitSGD;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <PreprocessorDefinitions Condition="'$(CNTK_ENABLE_1BitSGD)'=='true'">CNTK_PARALLEL_TRAINING_SUPPORT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <OpenMPSupport>true</OpenMPSupport>
    </ClCompile>
    <Link>
      <AdditionalLibraryDirectories>$(SolutionDir)Source\ComputationNetworkLib;$(SolutionDir)Source\Math;$(MSMPI_LIB64);$(SolutionDir)$(Platform)\$(Configuration);$(NvmlLibPath);$(ProtobufLibPath)</AdditionalLibraryDirectories>
      <AdditionalDependencies>$(ReaderLibs);Cntk.Common-$(CntkComponentVersion).lib;Cntk.ComputationNetwork-$(CntkComponentVersion).lib;Cntk.SequenceTrainingLib-$(CntkComponentVersion).lib;$(ProtobufLib);%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
    <PreBuildEvent>
      <Command>prebuild.bat "$(Configuration)" "$(CNTK_MKL_SEQUENTIAL)" "$(CNTK_ENABLE_1BitSGD)" "$(CudaPath)" "$(CUDNN_PATH)" "$(CUB_PATH)" "$(CNTK_ENABLE_ASGD)"</Command>
    </PreBuildEvent>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="$(DebugBuild)">
    <ClCompile>
      <PrecompiledHeader>NotUsing</PrecompiledHeader>
      <WarningLevel>Level4</WarningLevel>
      <Optimization>Disabled</Optimization>
      <PreprocessorDefinitions>CNTKV2LIBRARYDLL;WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <SDLCheck>true</SDLCheck>
      <TreatWarningAsError>true</TreatWarningAsError>
      <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
    </ClCompile>
    <Link>
      <SubSystem>Console</SubSystem>
      <GenerateDebugInformation>true</GenerateDebugInformation>
      <DelayLoadDLLs>Cntk.Math-$(CntkComponentVersion).dll; nvml.dll; $(CudaRuntimeDll); msmpi.dll; Cntk.PerformanceProfiler-$(CntkComponentVersion).dll</DelayLoadDLLs>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="$(ReleaseBuild)">
    <ClCompile>
      <WarningLevel>Level4</WarningLevel>
      <PrecompiledHeader>NotUsing</PrecompiledHeader>
      <PreprocessorDefinitions>CNTKV2LIBRARYDLL;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <SDLCheck>true</SDLCheck>
      <AdditionalOptions>/d2Zi+ /bigobj %(AdditionalOptions)</AdditionalOptions>
      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
      <TreatWarningAsError>true</TreatWarningAsError>
      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
    </ClCompile>
    <Link>
      <SubSystem>Console</SubSystem>
      <GenerateDebugInformation>true</GenerateDebugInformation>
      <DelayLoadDLLs>Cntk.Math-$(CntkComponentVersion).dll; nvml.dll; $(CudaRuntimeDll); msmpi.dll; Cntk.PerformanceProfiler-$(CntkComponentVersion).dll</DelayLoadDLLs>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="$(CpuOnlyBuild)">
    <ClCompile>
      <PreprocessorDefinitions>CPUONLY;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
    <Link>
      <DelayLoadDLLs>Cntk.Math-$(CntkComponentVersion).dll; msmpi.dll; Cntk.PerformanceProfiler-$(CntkComponentVersion).dll </DelayLoadDLLs>
      <OptimizeReferences Condition="'$(Configuration)|$(Platform)'=='Debug_CpuOnly|x64'">false</OptimizeReferences>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="$(GpuBuild)">
    <ClCompile>
      <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);$(CudaInclude)</AdditionalIncludeDirectories>
    </ClCompile>
    <Link>
      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(CudaLibPath)</AdditionalLibraryDirectories>
    </Link>
    <PostBuildEvent>
      <Command>if exist "$(NvmlDll)" xcopy /I /D /Y "$(NvmlDll)" "$(TargetDir)"</Command>
      <Message>Copying NVidia GDK extension DLL to target folder</Message>
    </PostBuildEvent>
  </ItemDefinitionGroup>
  <ItemGroup>
    <ClInclude Include="API\CNTKLibrary.h" />
    <ClInclude Include="API\CNTKLibraryExperimental.h" />
    <ClInclude Include="API\CNTKLibraryInternals.h" />
    <ClInclude Include="BackCompat.h" />
    <ClInclude Include="BlockFunction.h" />
    <ClInclude Include="CompositeFunction.h" />
    <ClInclude Include="DataParallelDistributedLearner.h" />
    <ClInclude Include="DistributedCommunicator.h" />
    <ClInclude Include="DistributedLearnerBase.h" />
    <ClInclude Include="Learner.h" />
    <ClInclude Include="MinibatchSource.h" />
    <ClInclude Include="PrimitiveFunction.h" />
    <ClInclude Include="PrimitiveOpType.h" />
    <ClInclude Include="Serialization.h" />
    <ClInclude Include="tensorboard\TensorBoardUtils.h" />
    <ClInclude Include="Utils.h" />
    <ClInclude Include="stdafx.h" />
    <ClInclude Include="targetver.h" />
    <ClInclude Include="Value.h" />
    <ClInclude Include="Variable.h" />
  </ItemGroup>
  <ItemGroup>
    <ClCompile Include="BackCompat.cpp" />
    <ClCompile Include="Common.cpp" />
    <ClCompile Include="CompositeFunction.cpp" />
    <ClCompile Include="ComputeInputStatistics.cpp" />
    <ClCompile Include="DataParallelDistributedLearner.cpp" />
    <ClCompile Include="DistributedCommunicator.cpp" />
    <ClCompile Include="DistributedLearnerBase.cpp" />
    <ClCompile Include="dllmain.cpp">
      <CompileAsManaged>false</CompileAsManaged>
      <PrecompiledHeader>
      </PrecompiledHeader>
    </ClCompile>
    <ClCompile Include="Evaluator.cpp" />
    <ClCompile Include="Function.cpp" />
    <ClCompile Include="Learner.cpp" />
    <ClCompile Include="MinibatchSource.cpp" />
    <ClCompile Include="NDArrayView.cpp" />
    <ClCompile Include="NDMask.cpp" />
    <ClCompile Include="PrimitiveFunction.cpp" />
    <ClCompile Include="proto\CNTK.pb.cc.VS_wrapper.cpp" />
    <ClCompile Include="Serialization.cpp" />
    <ClCompile Include="stdafx.cpp">
      <PrecompiledHeader>Create</PrecompiledHeader>
    </ClCompile>
    <ClCompile Include="ProgressWriter.cpp" />
    <ClCompile Include="tensorboard\tensorboard.pb.cc.VS_wrapper.cpp" />
    <ClCompile Include="tensorboard\TensorBoardFileWriter.cpp" />
    <ClCompile Include="tensorboard\TensorBoardUtils.cpp" />
    <ClCompile Include="Trainer.cpp" />
    <ClCompile Include="TrainingSession.cpp" />
    <ClCompile Include="Utils.cpp" />
    <ClCompile Include="Value.cpp" />
    <ClCompile Include="Variable.cpp" />
  </ItemGroup>
  <ItemGroup>
    <Proto Include="proto\CNTK.proto" />
    <Proto Include="tensorboard\tensorboard.proto" />
  </ItemGroup>
  <Target Name="ProtoGen" Inputs="@(Proto)" Outputs="@(Proto->'%(RelativeDir)%(Filename).pb.cc')">
    <Message Text="Compiling %(Proto.Identity)" />
    <Exec Command="$(PROTOBUF_PATH)\bin\protoc --proto_path=$(ProjectDir)%(Proto.RelativeDir) --cpp_out=$(ProjectDir)%(Proto.RelativeDir) %(Proto.FullPath)" WorkingDirectory="$(ProjectDir)" />
  </Target>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  <Target Name="Build" Condition="$(HasProtobuf)" Outputs="$(TargetPath)" DependsOnTargets="ProtoGen;$(BuildDependsOn)" />
  <ImportGroup Label="ExtensionTargets" />
  <Target Name="CheckDependencies">
    <Warning Condition="!$(HasProtobuf)" Text="CNTKv2LibraryDll requires Protocol Buffers to build. Please see https://github.com/Microsoft/CNTK/wiki/Setup-CNTK-on-Windows#protobuf for installation instructions." />
    <Error Condition="!$(HasBoost)" Text="CNTKv2LibraryDll requires the Boost library to build. Please see https://github.com/Microsoft/CNTK/wiki/Setup-CNTK-on-Windows#boost for installation instructions." />
  </Target>
</Project>
back to top