ClangCompile task
Wraps the Microsoft C++ compiler tool, clang.exe.
Parameters
The following table describes the parameters of the ClangCompile task.
Parameter | Description |
---|---|
AdditionalIncludeDirectories | Optional string[] parameter. Specifies one or more directories to add to the include path; separate with semi-colons if more than one. Use -I[path] . |
AdditionalOptions | Optional string parameter. |
BufferSecurityCheck | Optional string parameter. The Security Check helps detect stack-buffer over-runs, a common attempted attack upon a program's security. Use fstack-protector . |
BuildingInIde | Optional bool parameter. |
CLanguageStandard | Optional string parameter. Determines the C language standard. Use std=[value] with value of c89, c99, c11, gnu99, or gnu11. |
ClangVersion | Optional string parameter. |
CompileAs | Optional string parameter. Select compile language option for .c and .cpp files. Default will detect based on .c or .cpp extention. Use -x c , -x c++ . |
CppLanguageStandard | Optional string parameter. Determines the C++ language standard. Use std=[value] with value of c++98, c++11, c++1y, gnu++98, gnu++11, or gnu++1y. |
DataLevelLinking | Optional bool parameter. Enables linker optimizations to remove unused data by emitting each data item in a separate section. |
DebugInformationFormat | Optional string parameter. Specifies the type of debugging information generated by the compiler. None, produces no debugging information, so compilation may be faster (use g0 ).FullDebug, generate DWARF2 debug information (use g2 -gdwarf-2 ).LineNumber, generate Line Number information only (use gline-tables-only ). |
EnableNeonCodegen | Optional bool parameter. Enables code generation for NEON floating point hardware. This is applicable for arm architecture only. |
ExceptionHandling | Optional string parameter. Specifies the model of exception handling to be used by the compiler. Disabled, disable exception handling (use fno-exceptions ).Enabled, enable exception handling (use fexceptions ).UnwindTables, generates any needed static data, but does not affect the code generated (use funwind-tables ). |
FloatABI | Optional string parameter. Selection option to choose the floating point ABI. soft, causes compiler to generate output containing library calls for floating-point operations (use mfloat-abi=soft ).softfp, allows the generation of code using hardware floating-point instructions, but still uses the soft-float calling conventions (use mfloat-abi=softfp ).hard, allows generation of floating-point instructions and uses FPU-specific calling conventions (use mfloat-abi=hard ). |
ForcedIncludeFiles | Optional string[] parameter. One or more forced include files. Use -include [name] . |
FunctionLevelLinking | Optional bool parameter. Allows the compiler to package individual functions in the form of packaged functions (COMDATs). Required for edit and continue to work. Use ffunction-sections . |
GccToolChain | Optional string parameter. Folder path to Gcc Tool Chain. |
GNUMode | Optional bool parameter. |
MSCompatibility | Optional bool parameter. Enable full Microsoft C++ compatibility. |
MSCompatibilityVersion | Optional string parameter. Dot-separated value representing the Microsoft compiler version number to report in _MSC_VER (0 = don't define it (default)). |
MSExtensions | Optional bool parameter. Accept some non-standard constructs supported by the Microsoft compiler. |
MSCompilerVersion | Optional string parameter. Microsoft compiler version number to report in _MSC_VER (0 = don't define it (default)). |
MSVCErrorReport | Optional bool parameter. Report errors which Visual Studio can use to parse for file and line information. |
ObjectFileName | Optional string parameter. Specifies a name to override the default object file name; can be file or directory name. Use /Fo[name] . |
OmitFramePointers | Optional bool parameter. Suppresses creation of frame pointers on the call stack. |
Optimization | Optional string parameter. Specifies the optimization level for the application. Custom, custom optimization. Disabled, disable optimization (use O0 ).MinSize, optimize for size (use Os ).MaxSpeed, optimize for speed (use O2 ).Full, expensive optimizations (use O3 ). |
PositionIndependentCode | Optional bool parameter. Generate Position Independent Code (PIC) for use in a shared library. |
PrecompiledHeader | Optional string parameter. Enables creation or use of a precompiled header during the build. |
PrecompiledHeaderFile | Optional string parameter. Specifies header file name to use for precompiled header file. This file will be also added to Forced Include Files during build. |
PrecompiledHeaderOutputFileDirectory | Optional string parameter. Specifies the directory for the generated precompiled header. This directory will be also added to Additional Include Directories during build. |
PrecompiledHeaderCompileAs | Optional string parameter. Select compile language option for precompiled header file. Use -x c-header , -x c++-header . |
PreprocessorDefinitions | Optional string[] parameter. Defines a preprocessing symbols for your source file. Use -D . |
RuntimeLibrary | Optional string parameter. Specify runtime library for linking. Use MSVC /MT , /MTd , /MD , /MDd switches.MultiThreaded, causes your application to use the multithread, static version of the run-time library. MultiThreadedDebug, defines _DEBUG and _MT. This option also causes the compiler to place the library name LIBCMTD.lib into the .obj file so that the linker will use LIBCMTD.lib to resolve external symbols. MultiThreadedDLL, causes your application to use the multithread- and DLL-specific version of the run-time library. Defines _MT and _DLL and causes the compiler to place the library name MSVCRT.lib into the .obj file. MultiThreadedDebugDLL, defines _DEBUG, _MT, and _DLL and causes your application to use the debug multithread- and DLL-specific version of the run-time library. It also causes the compiler to place the library name MSVCRTD.lib into the .obj file. |
RuntimeTypeInfo | Optional bool parameter. Adds code for checking C++ object types at run time (runtime type information). Use frtti , fno-rtti . |
ShowIncludes | Optional bool parameter. Generates a list of include files with compiler output. Use -H . |
Sources | Required ITaskItem[] parameter. |
StrictAliasing | Optional bool parameter. Assume the strictest aliasing rules. An object of one type will never be assumed to reside at the same address as an object of a different type. |
Sysroot | Optional string parameter. Folder path to the root directory for headers and libraries. |
TargetArch | Optional string parameter. Target Architecture. |
ThumbMode | Optional string parameter. Generate code that executes for thumb microarchitecture. This is applicable for arm architecture only. Thumb, generate Thumb code (use mthumb ).ARM, generate Arm code (use marm ).Disabled, option not applicable for chosen platform. |
TrackerLogDirectory | Optional string parameter. Tracker Log Directory. |
TreatWarningAsError | Optional bool parameter. Treats all compiler warnings as errors. For a new project, it may be best to use /WX in all compilations; resolving all warnings will ensure the fewest possible hard-to-find code defects. |
UndefinePreprocessorDefinitions | Optional string[] parameter. Specifies one or more preprocessor undefines. Use -U [macro] . |
UndefineAllPreprocessorDefinitions | Optional bool parameter. Undefine all previously defined preprocessor values. Use -undef . |
UseMultiToolTask | Optional bool parameter. Multi-processor Compilation. |
UseShortEnums | Optional bool parameter. Enum type uses only as many bytes required by input set of possible values. |
Verbose | Optional bool parameter. Show commands to run and use verbose output. |
WarningLevel | Optional string parameter. Select how strict you want the compiler to be about code errors. Other flags should be added directly to Additional Options (se /w , /Weverything ).TurnOffAllWarnings, disables all compiler warnings (use w ).EnableAllWarnings, enables all warnings, including those disabled by default (use Wall ). |