mirror of https://github.com/BOINC/boinc.git
459 lines
15 KiB
XML
459 lines
15 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<ProjectSchemaDefinitions xmlns="clr-namespace:Microsoft.Build.Framework.XamlTypes;assembly=Microsoft.Build.Framework" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:transformCallback="Microsoft.Cpp.Dev10.ConvertPropertyCallback">
|
|
<Rule
|
|
Name="CUDA_Build_Rule"
|
|
PageTemplate="tool"
|
|
DisplayName="CUDA Build Rule v3.0.14"
|
|
Order="200">
|
|
<Rule.DataSource>
|
|
<DataSource
|
|
Persistence="ProjectFile"
|
|
ItemType="CUDA_Build_Rule" />
|
|
</Rule.DataSource>
|
|
<Rule.Categories>
|
|
<Category
|
|
Name="General">
|
|
<Category.DisplayName>
|
|
<sys:String>General</sys:String>
|
|
</Category.DisplayName>
|
|
</Category>
|
|
<Category
|
|
Name="Command Line"
|
|
Subtype="CommandLine">
|
|
<Category.DisplayName>
|
|
<sys:String>Command Line</sys:String>
|
|
</Category.DisplayName>
|
|
</Category>
|
|
</Rule.Categories>
|
|
<StringListProperty
|
|
Name="Inputs"
|
|
Category="Command Line"
|
|
IsRequired="true"
|
|
Switch=" ">
|
|
<StringListProperty.DataSource>
|
|
<DataSource
|
|
Persistence="ProjectFile"
|
|
ItemType="CUDA_Build_Rule"
|
|
SourceType="Item" />
|
|
</StringListProperty.DataSource>
|
|
</StringListProperty>
|
|
<BoolProperty
|
|
Name="Debug"
|
|
HelpContext="0"
|
|
DisplayName="Generate Debug Information"
|
|
Description="Specifies whether debugging with Nexus support is generated by the CUDA compiler. (-D_DEBUG -D_WIN32)"
|
|
Switch="-D_DEBUG -D_WIN32" />
|
|
<BoolProperty
|
|
Name="Emulation"
|
|
HelpContext="0"
|
|
DisplayName="Emulation Mode"
|
|
Description="Whether or not to generate emulated code."
|
|
Switch="-deviceemu -D_DEVICEEMU" />
|
|
<BoolProperty
|
|
Name="FastMath"
|
|
Subcategory="Default"
|
|
HelpContext="0"
|
|
DisplayName="Use Fast Math"
|
|
Description="Make use of the fast math library."
|
|
Switch="-use_fast_math" />
|
|
<BoolProperty
|
|
Name="PtxAsOptionV"
|
|
HelpContext="0"
|
|
DisplayName="Verbose PTXAS Output"
|
|
Switch="--ptxas-options=-v" />
|
|
<BoolProperty
|
|
Name="CInterleavedPTX"
|
|
HelpContext="0"
|
|
DisplayName="Interleave C in PTXAS Output"
|
|
Switch="--opencc-options -LIST:source=on" />
|
|
<BoolProperty
|
|
Name="Keep"
|
|
Category="Preprocessor"
|
|
HelpContext="0"
|
|
DisplayName="Keep preprocessed files (.ptx, .cubin, cudafe1.c, cudafe1.cpp, cudafe1.gpu, etc.)"
|
|
Description="Specifies that preprocessor files generated by the CUDA compiler are not deleted."
|
|
Switch="--keep" />
|
|
<BoolProperty
|
|
Name="TypeInfo"
|
|
Category="Hybrid CUDA/C++ Options"
|
|
HelpContext="0"
|
|
DisplayName="Enable Run-Time Type Info"
|
|
Description="Adds code for checking C++ object types at run time (runtime type information). (/GR)"
|
|
Switch="/GR" />
|
|
<StringListProperty
|
|
Name="Include"
|
|
HelpContext="0"
|
|
DisplayName="Additional Include Directories"
|
|
Description="Specifies one or more directories to add to the include path; use semi-colon delimited list if more than one. (/I[path])"
|
|
Separator=";"
|
|
Switch="-I"[value]"" />
|
|
<StringProperty
|
|
Name="OutputFile"
|
|
HelpContext="0"
|
|
DisplayName="Compiler Output Filename"
|
|
Switch="[value]" />
|
|
<StringProperty
|
|
Name="OverrideCompileOutName"
|
|
HelpContext="0"
|
|
DisplayName="Alternate Compiler Output File (non-standard installation)"
|
|
Switch="[value]" />
|
|
<StringProperty
|
|
Name="AlternateNvccPath"
|
|
HelpContext="0"
|
|
DisplayName="Alternate path to NVCC.exe (non-standard installation)"
|
|
Switch="[value]\nvcc.exe" />
|
|
<StringProperty
|
|
Name="ExtraNvccOptions"
|
|
HelpContext="0"
|
|
DisplayName="Extra Options"
|
|
Description="Supply any additional command line options to NVCC"
|
|
Switch="[value]" />
|
|
<StringListProperty
|
|
Name="Defines"
|
|
Category="Preprocessor"
|
|
HelpContext="0"
|
|
DisplayName="Preprocessor Definitions"
|
|
Description="Specifies one or more preprocessor defines. (-D[macro])"
|
|
Separator=";"
|
|
Switch="-D[value]" />
|
|
<StringProperty
|
|
Name="AddedDependencies"
|
|
HelpContext="0"
|
|
DisplayName="Source Dependencies"
|
|
Description="Add additional CUDA file dependencies"
|
|
Switch="[value]" />
|
|
<StringProperty
|
|
Name="ExtraCppOptions"
|
|
Category="Hybrid CUDA/C++ Options"
|
|
HelpContext="0"
|
|
DisplayName="Extra C++ Options"
|
|
Description="Supply any additional command line options to the host C++ compiler"
|
|
Switch="[value]" />
|
|
<EnumProperty
|
|
Name="NvccCompilation"
|
|
HelpContext="0"
|
|
DisplayName="NVCC Compilation Type"
|
|
Description="Select desired output of NVCC compilation (-c/-compile, -cuda, -gpu, -cubin, -ptx)">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName="Generate hybrid object file (--compile / -c)"
|
|
Switch="--compile -o "$(IntDir)\$(InputName).cu.obj"" />
|
|
<EnumValue
|
|
Name="1"
|
|
DisplayName="Generate hybrid .c file (-cuda)"
|
|
Switch="-cuda -o "$(IntDir)\$(InputName).cu.c"" />
|
|
<EnumValue
|
|
Name="2"
|
|
DisplayName="Generate .gpu file (-gpu)"
|
|
Switch="-gpu -o "$(IntDir)\$(InputName).gpu"" />
|
|
<EnumValue
|
|
Name="3"
|
|
DisplayName="Generate .cubin file (-cubin)"
|
|
Switch="-cubin -o "data\$(InputName).cubin"" />
|
|
<EnumValue
|
|
Name="4"
|
|
DisplayName="Generate .ptx file (-ptx)"
|
|
Switch="-ptx -o "data\$(InputName).ptx"" />
|
|
<EnumValue
|
|
Name="5"
|
|
DisplayName="Custom CUBIN Filename"
|
|
Switch="-cubin -o "[OutputFile].cubin"" />
|
|
<EnumValue
|
|
Name="6"
|
|
DisplayName="Custom PTX Filename"
|
|
Switch="-ptx -o "[OutputFile].ptx"" />
|
|
</EnumProperty>
|
|
<EnumProperty
|
|
Name="compileout"
|
|
HelpContext="0"
|
|
DisplayName="Compiler Output (obj/cubin/ptx)"
|
|
Description="Sets output as an OBJ, CUBIN, or PTX file">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName=""$(IntDir)/$(InputName).cu.obj""
|
|
Switch=""$(IntDir)/$(InputName).cu.obj"" />
|
|
<EnumValue
|
|
Name="1"
|
|
DisplayName=""data/$(InputName).cubin""
|
|
Switch=""data/$(InputName).cubin"" />
|
|
<EnumValue
|
|
Name="2"
|
|
DisplayName=""data/$(InputName).ptx""
|
|
Switch=""data/$(InputName).ptx"" />
|
|
</EnumProperty>
|
|
<EnumProperty
|
|
Name="Arch1"
|
|
HelpContext="0"
|
|
DisplayName="GPU Architecture (1)"
|
|
Description="Select GPU architecture (1) to use on the command line (-arch sm_52, sm_53, sm_60)">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName="0"
|
|
Switch="" />
|
|
<EnumValue
|
|
Name="52"
|
|
DisplayName="sm_52"
|
|
Switch="-gencode=arch=compute_52,code=\"sm_52,compute_52\"" />
|
|
<EnumValue
|
|
Name="53"
|
|
DisplayName="sm_53"
|
|
Switch="-gencode=arch=compute_53,code=\"sm_53,compute_53\"" />
|
|
<EnumValue
|
|
Name="60"
|
|
DisplayName="sm_60"
|
|
Switch="-gencode=arch=compute_60,code=\"sm_60,compute_60\"" />
|
|
</EnumProperty>
|
|
<EnumProperty
|
|
Name="Arch2"
|
|
HelpContext="0"
|
|
DisplayName="GPU Architecture (2)"
|
|
Description="Select GPU architecture (2) to use on the command line (-arch sm_52, sm_53, sm_60)">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName="0"
|
|
Switch="" />
|
|
<EnumValue
|
|
Name="52"
|
|
DisplayName="sm_52"
|
|
Switch="-gencode=arch=compute_52,code=\"sm_52,compute_52\"" />
|
|
<EnumValue
|
|
Name="53"
|
|
DisplayName="sm_53"
|
|
Switch="-gencode=arch=compute_53,code=\"sm_53,compute_53\"" />
|
|
<EnumValue
|
|
Name="60"
|
|
DisplayName="sm_60"
|
|
Switch="-gencode=arch=compute_60,code=\"sm_60,compute_60\"" />
|
|
</EnumProperty>
|
|
<EnumProperty
|
|
Name="Arch3"
|
|
HelpContext="0"
|
|
DisplayName="GPU Architecture (3)"
|
|
Description="Select GPU architecture (3) to use on the command line (-arch sm_52, sm_53, sm_60)">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName="0"
|
|
Switch="" />
|
|
<EnumValue
|
|
Name="52"
|
|
DisplayName="sm_52"
|
|
Switch="-gencode=arch=compute_52,code=\"sm_52,compute_52\"" />
|
|
<EnumValue
|
|
Name="53"
|
|
DisplayName="sm_53"
|
|
Switch="-gencode=arch=compute_53,code=\"sm_53,compute_53\"" />
|
|
<EnumValue
|
|
Name="60"
|
|
DisplayName="sm_60"
|
|
Switch="-gencode=arch=compute_60,code=\"sm_60,compute_60\"" />
|
|
</EnumProperty>
|
|
<EnumProperty
|
|
Name="CompilerPath"
|
|
HelpContext="0"
|
|
DisplayName="Path to nvcc.exe"
|
|
Description="Specifies the path to the CUDA compiler, nvcc.exe ">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName="Installed Toolkit (uses CUDA_BIN_PATH environment varible)"
|
|
Switch=""$(CUDA_BIN_PATH)\nvcc.exe"" />
|
|
<EnumValue
|
|
Name="1"
|
|
DisplayName="Use Alternate path to CUDA, specified below"
|
|
Switch=""[AlternateNvccPath]"" />
|
|
</EnumProperty>
|
|
<EnumProperty
|
|
Name="Warning"
|
|
Category="Hybrid CUDA/C++ Options"
|
|
HelpContext="0"
|
|
DisplayName="Warning Level"
|
|
Description="Select how strict you want the compiler to be about checking for potentially suspect constructs. (/W0 - /W4)">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName="Off: Turn Off All Warnings (/W0)"
|
|
Switch="/W0" />
|
|
<EnumValue
|
|
Name="1"
|
|
DisplayName="Level 1 (/W1)"
|
|
Switch="/W1" />
|
|
<EnumValue
|
|
Name="2"
|
|
DisplayName="Level 2 (/W2)"
|
|
Switch="/W2" />
|
|
<EnumValue
|
|
Name="3"
|
|
DisplayName="Level 3 (/W3)"
|
|
Switch="/W3" />
|
|
<EnumValue
|
|
Name="4"
|
|
DisplayName="Level 4 (/W4)"
|
|
Switch="/W4" />
|
|
</EnumProperty>
|
|
<EnumProperty
|
|
Name="Optimization"
|
|
HelpContext="0"
|
|
DisplayName="Optimization"
|
|
Description="Select option for code optimization; choose Custom to use specific optimization options. (/Od, /O1, /O2, /Ox)">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName="Disabled (/Od)"
|
|
Switch="/Od" />
|
|
<EnumValue
|
|
Name="1"
|
|
DisplayName="Minimize Size (/O1)"
|
|
Switch="/O1" />
|
|
<EnumValue
|
|
Name="2"
|
|
DisplayName="Maximize Speed (/O2)"
|
|
Switch="/O2" />
|
|
<EnumValue
|
|
Name="3"
|
|
DisplayName="Full Optimization (/Ox)"
|
|
Switch="/Ox" />
|
|
</EnumProperty>
|
|
<EnumProperty
|
|
Name="RuntimeChecks"
|
|
Category="Hybrid CUDA/C++ Options"
|
|
HelpContext="0"
|
|
DisplayName="Basic Runtime Checks"
|
|
Description="Perform basic runtime error checks, incompatible with any optimization type other than debug. (/RTCs, /RTCu, /RTC1)">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName="Default"
|
|
Switch=" " />
|
|
<EnumValue
|
|
Name="1"
|
|
DisplayName="Stack Frames (/RTCs)"
|
|
Switch="/RTCs" />
|
|
<EnumValue
|
|
Name="2"
|
|
DisplayName="Uninitialized Variables (/RTCu)"
|
|
Switch="/RTCu" />
|
|
<EnumValue
|
|
Name="3"
|
|
DisplayName="Both (/RTC1, equiv. to /RTCsu)"
|
|
Switch="/RTC1" />
|
|
</EnumProperty>
|
|
<EnumProperty
|
|
Name="Runtime"
|
|
Category="Hybrid CUDA/C++ Options"
|
|
HelpContext="0"
|
|
DisplayName="Runtime Library"
|
|
Description="Specify runtime library for linking. (/MT, /MTd, /MD, /MDd, /ML, /MLd)">
|
|
<EnumValue
|
|
Name="0"
|
|
DisplayName="Multi-Threaded (/MT)"
|
|
Switch="/MT" />
|
|
<EnumValue
|
|
Name="1"
|
|
DisplayName="Multi-Threaded Debug (/MTd)"
|
|
Switch="/MTd" />
|
|
<EnumValue
|
|
Name="2"
|
|
DisplayName="Multi-Threaded DLL (/MD)"
|
|
Switch="/MD" />
|
|
<EnumValue
|
|
Name="3"
|
|
DisplayName="Multi-Threaded Debug DLL (/MDd)"
|
|
Switch="/MDd" />
|
|
<EnumValue
|
|
Name="4"
|
|
DisplayName="Single-Threaded (/ML)"
|
|
Switch="/ML" />
|
|
<EnumValue
|
|
Name="5"
|
|
DisplayName="Single-Threaded Debug (/MLd)"
|
|
Switch="/MLd" />
|
|
</EnumProperty>
|
|
<IntProperty
|
|
Name="MaxRegCount"
|
|
HelpContext="0"
|
|
DisplayName="maxrregcount"
|
|
Switch="-maxrregcount=[value]" />
|
|
<StringProperty
|
|
Name="CommandLineTemplate"
|
|
DisplayName="Command Line"
|
|
Visible="False"
|
|
IncludeInCommandLine="False" />
|
|
<DynamicEnumProperty
|
|
Name="CUDA_Build_RuleBeforeTargets"
|
|
Category="General"
|
|
EnumProvider="Targets"
|
|
IncludeInCommandLine="False">
|
|
<DynamicEnumProperty.DisplayName>
|
|
<sys:String>Execute Before</sys:String>
|
|
</DynamicEnumProperty.DisplayName>
|
|
<DynamicEnumProperty.Description>
|
|
<sys:String>Specifies the targets for the build customization to run before.</sys:String>
|
|
</DynamicEnumProperty.Description>
|
|
<DynamicEnumProperty.ProviderSettings>
|
|
<NameValuePair
|
|
Name="Exclude"
|
|
Value="^CUDA_Build_RuleBeforeTargets|^Compute" />
|
|
</DynamicEnumProperty.ProviderSettings>
|
|
<DynamicEnumProperty.DataSource>
|
|
<DataSource
|
|
Persistence="ProjectFile"
|
|
HasConfigurationCondition="true" />
|
|
</DynamicEnumProperty.DataSource>
|
|
</DynamicEnumProperty>
|
|
<DynamicEnumProperty
|
|
Name="CUDA_Build_RuleAfterTargets"
|
|
Category="General"
|
|
EnumProvider="Targets"
|
|
IncludeInCommandLine="False">
|
|
<DynamicEnumProperty.DisplayName>
|
|
<sys:String>Execute After</sys:String>
|
|
</DynamicEnumProperty.DisplayName>
|
|
<DynamicEnumProperty.Description>
|
|
<sys:String>Specifies the targets for the build customization to run after.</sys:String>
|
|
</DynamicEnumProperty.Description>
|
|
<DynamicEnumProperty.ProviderSettings>
|
|
<NameValuePair
|
|
Name="Exclude"
|
|
Value="^CUDA_Build_RuleAfterTargets|^Compute" />
|
|
</DynamicEnumProperty.ProviderSettings>
|
|
<DynamicEnumProperty.DataSource>
|
|
<DataSource
|
|
Persistence="ProjectFile"
|
|
ItemType=""
|
|
HasConfigurationCondition="true" />
|
|
</DynamicEnumProperty.DataSource>
|
|
</DynamicEnumProperty>
|
|
<StringListProperty
|
|
Name="Outputs"
|
|
DisplayName="Outputs"
|
|
Visible="False"
|
|
IncludeInCommandLine="False" />
|
|
<StringProperty
|
|
Name="ExecutionDescription"
|
|
DisplayName="Execution Description"
|
|
Visible="False"
|
|
IncludeInCommandLine="False" />
|
|
<StringListProperty
|
|
Name="AdditionalDependencies"
|
|
DisplayName="Additional Dependencies"
|
|
IncludeInCommandLine="False"
|
|
Visible="false" />
|
|
<StringProperty
|
|
Subtype="AdditionalOptions"
|
|
Name="AdditionalOptions"
|
|
Category="Command Line">
|
|
<StringProperty.DisplayName>
|
|
<sys:String>Additional Options</sys:String>
|
|
</StringProperty.DisplayName>
|
|
<StringProperty.Description>
|
|
<sys:String>Additional Options</sys:String>
|
|
</StringProperty.Description>
|
|
</StringProperty>
|
|
</Rule>
|
|
<ItemType
|
|
Name="CUDA_Build_Rule"
|
|
DisplayName="CUDA Build Rule v3.0.14" />
|
|
<FileExtension
|
|
Name="*.cu"
|
|
ContentType="CUDA_Build_Rule" />
|
|
<ContentType
|
|
Name="CUDA_Build_Rule"
|
|
DisplayName="CUDA Build Rule v3.0.14"
|
|
ItemType="CUDA_Build_Rule" />
|
|
</ProjectSchemaDefinitions> |