// Current as of 5/30/2008
// This defines the role of all the template variables specific to the
// 'vc8' project type.
//
// Please try to keep this alphabetically sorted.
//
additionalmanifestdependencies = Specifies the additional XML manifest fragments the linker will put in the manifest file.
additionalusingdirectories = A semi-colon separated list of directories to search for #using files.
addmodulenamestoassembly = Import the specified non-assembly file into the final output.
add_references = If this is set, the project will be generated with project references based on the 'after' keyword setting.
allowisolation = Specifies manifest file lookup behavior for side-by-side assemblies.
assemblerlistinglocation = Specifies the relative path and/or name for the ASM listing file.
assembleroutput = Specifies the contents of the assembly language output file.  0 is "No Listing", 1 is "Assembly-Only Listing", 2 is "Assembly, Machine Code and Source", 3 is "Assembly With Machine Code", and 4 is "Assembly With Source Code".
assemblydebug = Emits the debuggable attribute to the assembly.  0 is "No Debuggable attribute emitted", 1 is "Runtime tracking and disable optimizations", 2 is "No runtime tracking and enable optimizations".
assemblylinkresource = Links a resource file to the output assembly.
assemblyreferences = A space separated list of assembly references.
baseaddress = Specifies the base address for the program.
basicruntimechecks = This corresponds to the C/C++ Code Generation property "Basic Runtime Checks". The numeric value specifies the pull-down value in the IDE.
browseinformation = Specifies the level of browse information in the .bsc file.  0 is "None", 1 is "Include All Browse Information", and 2 is "No Local Symbols".
browseinformationfile = Specifies the optional name for the browser information file.
buffersecuritycheck = This corresponds to the C/C++ Code Generation property "Buffer Security Check". The boolean value specifies the pull-down value in the IDE.
callingconvention = Specifies the default calling convention.  0 is __cdecl, 1 is __fastcall, and 2 is __stdcall.
charset = This setting specifies the "Character Set" in the General properties. The values 0, 1, and 2 specify Not Set, Unicode, and Multi-Byte respectively.
clrimagetype = Specifies the type of a CLR image.  0 is "Default image type", 1 is "Force IJW image", 2 is "Force pure IL image", and 3 is "Force safe IL image".
clrthreadattribute = Specifies the threading attribute for the entry point of your CLR program.  0 is "No threading attribute set", 1 is "MTA threading attribute", and 2 is "STA threading attribute".
common_defines = Specifies macros that are common to all target types.
compileas = Select compile language for .c and .cpp files.  0 is "Default", 1 is "Compile as C Code", and 2 is "Compile as C++ Code".
configurationtype = Specifies the type of output this configuration generates.
cpu_defines = Macros that are specific to a particular CPU platform.
culture = This corresponds to the Resources General property "Culture". The numeric value corresponds to the pull-down values in the IDE.
debug_format = This setting specifies the "Debug Information Format" found in the C/C++ General properties. The numeric value specifies the pull-down value in the IDE.
debug_prj = This is an internally used template variable to determine if the configuration originated as "Debug". In the event that the 'optimize' template variable is overridden, debug_prj allows the correct run-time library to be chosen.
defaultcharisunsigned = If set to true, designates char to be unsigned.
defines = Macros that are specific to a particular configuration.
delayloaddlls = Specifies one or more semi-colon separated DLLs for delayed loading
delaysign = If set to true, indicates whether the output assembly should be delay signed.
detect64bitportabilityproblems = This corresponds to the C/C++ Code Generation property "Detect 64-bit Portability Issues". The boolean value specifies the pull-down value in the IDE.
disablelanguageextensions = If set to true, disables language extensions.
disablespecificwarnings = A space separated list of warning numbers to be disabled.
driver = Specifies the driver for the linker.
embedmanagedresourcefile = Embed the specified .NET resource file.
enablecomdatfolding = Removes redundant COMDAT symbols from the linker output.  0 is "Default", 1 is "Do Not Remove Redundant COMDATs", and 2 is "Remove Redundant COMDATs".
enableenhancedinstructionset = Enable use of instructions found on processors that support enhanced instruction sets.
enablefibersafeoptimizations = Enables memory space optimization when using fibers and thread local storage.
enablefunctionlevellinking = This corresponds to the C/C++ Code Generation property "Enable Function-Level Linking". The boolean value specifies the pull-down value in the IDE.
enableintrinsicfunctions = If set to true, enables intrinsic functions (which contain faster, but possibly larger, code).
enableprefast = If set to true, enables Native Code Analysis.
encoding = Specifies the XML encoding for the generated .vcproj file.
entrypointsymbol = Sets the starting symbol for a .exe file or DLL.
errorreporting = Specifies how internal tool errors should be reported back to Microsoft.  0 is "Default", 1 is "Prompt Immediately", 2 is "Queue For Next Login".
exceptionhandling = Calls destructors for automatic objects during a stack unwind caused by an exception.  0 is "No", 1 is "Yes", and 2 is "Yes With SEH Exceptions".
expandattributedsource = Create listing file with expanded attributes injected into the source file.
favorsizeorspeed = Set to 0 to favor neither size or speed, 1 to favor speed, and 2 to favor size during optimization.
fixedbaseaddress = Specifies if the image must be loaded at a fixed address.  0 is "Default", 1 is "Generate a relocation section", and 2 is "Image must be loaded at a fixed address".
fixedbaseaddress = This corresponds to the Linker Advanced property "Fixed Base Address". The values 1 and 2 correspond to Relocatable (not fixed) and Load at a Fixed Address respectively.
floatingpointexceptions = If set to true, enables floating point exceptions.
floatingpointmodel = Sets the floating point mode.  Use 0 for precise, 1 for strict and 2 for fast.
forceconformanceinforloopscope = If set to false, disables for loop variable conformance.
forcedincludefiles = Specifies one or more forced include files.
forcedusingfiles = Specifies one or more forces #using files.
forcesymbolreferences = Force the linker to include a reference to this symbol.
functionorder = Places COMDATs into the image in a predetermined order.  This variable must be set to a file name containing the order.
generatedebuginformation = Enables generation of debug information if set to true.
generatemanifest = If set to false, disabled generation of a manifest file.
generatemapfile = This corresponds to the Linker Debugging property "Generate Map File". The boolean value specifies the pull-down value in the IDE.
generatepreprocessedfile = Specifies the preprocessing option for this configuration.  0 is "No", 1 is "With Line Numbers", and 2 is "Without Line Numbers".
generatexmldocumentationfiles = If set to true, specifies that the compiler should generate XML documentation comment files (.XDC).
guid = The value for this variable is generated during project generation.
heapcommitsize = Specifies total heap allocation size in bytes of physical memory.
heapreservesize = Specifies total heap allocation size in bytes of virtual memory.
ignore_default_library_names = The value for this is evaluated as a space separated list of default library names to ignore. It corresponds to the Linker Input property "Ignore Specific Library".
ignorealldefaultlibraries = Ignore all default libraries during linking.
ignoreimportlibrary = Specifies that the import library generated by this project should not be imported into dependent projects.
ignorestandardincludepath = If set to true, the compiler will ignore the standard include path.
importlibrary = Specifies the name of the import library.  This allows the override of the default project import library name based on the sharedname project setting.
inlinefunctionexpansion = This corresponds to the C/C++ Optimization property "Inline Function Expansion". A value of 1 indicates /Ob1 (inline only those designated to be inlined). A value of 2 indicates /Ob2 (inline any suitable function).
keepcomments = If set to true, comments are not stripped from the source code.
keycontainer = Specifies the named container of the key for strongly naming the output assembly.
keyfile = Specifies the file that contains the key for strongly naming the output assembly.
language = This template variable is based on the language setting of MPC, except if the 'webapp' project variable is set.  In that case, it is 'website'.
largeaddressaware = Enables handling address larger than 2 Gb.  0 is "Default", 1 is "Do Not Support Addresses Larger Than 2 Gigabytes", and 2 is "Support Addresses Larger Than 2 Gigabytes".
lib_options = Allows passing arbitrary options to the librarian tool.
link_options = Allows passing arbitrary options to the linker.
linkincremental = This setting corresponds to the Linker General property "Enable Incremental Linking". The values 1 and 2 correspond to NO and YES respectively.
linklibrarydependencies = Disables automatically linking in libraries from project dependencies if set to false.
linktimecodegeneration = Enables link time code generation of objects compiled with Whole Program Optimization.
manifestfile = Specifies the name of the manifest file to generate.
mapexports = Includes exported functions in the map file information if set to true.
mapfilename = Specifies a name for the mapfile.
mergesections = Causes the linker to merge 'from' into section 'to'.  The setting must be of the form 'from=to'.
midl_defines = Macros specified here correspond to the MIDL General property "Preprocessor Definitions".
midl_flags = The value for this variable is passed to the MIDL command as "Additional Options".
midl_includes = This correspond to the MIDL General property "Additional Include Directories".
midl_notlb = Suppresses the creation of a type library for the IDL file.
minimalrebuild = This corresponds to the C/C++ Code Generation property "Enable Minimal Rebuild". The boolean value specifies the pull-down value in the IDE.
moduledefinitionfile = This setting corresponds to the Linker Input property "Module Definition File".
objectfile = Specifies a name to override the default object file name.  It can be a file or directory name.
omitdefaultlibname = Do not include default library names in .obj files.
omitframepointers = If set to true, suppresses frame pointers.
openmp = If set to true, enables OpenMP 2.0 language extensions.
optimizeforwindows98 = Align code on 4Kb boundaries.
optimizereferences = Enables elimination of functions and/or data that are never referenced. 0 is "Default", 1 is "Keep Unreferenced Data", and 2 is "Eliminate Unreferenced Data".
output_subdir = This is used in determining the sub-directory under which intermediate files will be placed.
pdbc = If this boolean template variable is set, the C/C++ Output Files property "Program Database File Name" will be set according to the project target.
pdbl = If this boolean template variable is set, the Linker Debugging property "Generate Program Database File" will be set according to the project target.
platform_defines = Macros that are specific to a particular platform.
platform = Specifies the target platform.
precompiledheaderfile = Specifies the path and/or name of the generated precompiled header file.
profile = Produce an output file that can be used with the Enterprise Developer performance profiler.
profileguideddatabase = Specifies the database file to use when using profile guided optimizations.
programdatabasefilename = Specifies a name for a compiler-generate .PDB file.  This setting is only used if the 'pdbc' template variable is not set.
registeroutput = Specifies whether to register the primary output of this build if set to true.
release_link_options = Allows passing arbitrary options to the linker when making a release build
resourceonlydll = A resource-only DLL will be created if set to true.
runtime_library = This corresponds to the C/C++ Code Generation property "Runtime Library". If the template variable is set, the numeric value will be used. Otherwise, it will be determined based on the target and debug/optimize configuration. The numeric value specifies the pull-down value in the IDE.
runtimetypeinfo = If set to false, disables RTTI.
setchecksum = Enables setting the checksum in the header of a .exe if set to true.
showincludes = Generates a list of include files with compiler output if set to true.
showprogress = Enables detailed display of progress.  0 is "Not Set", 1 is "Display All Progress Messages", and 2 is "Displays Some Progress Messages".
smallertypecheck = Enable checking of conversion to smaller types.
stringpooling = This corresponds to the C/C++ Code Generation property "Enable String Pooling". The boolean value specifies the pull-down value in the IDE.
stripprivatesymbols = Do not put private symbols into the generated .PDB file.
structmemberalignment = Specify 1, 2, 4, 8, or 16-byte boundaries for struct member alignment using the numbers 1, 2, 3, 4, or 5 respectively.
subsystem = This corresponds to the Linker System property "SubSystem".  This variable should not be set directly by the user; instead the project should inherit from 'mfc'.
supportunloadofdelayloadeddll = If set to true, allows explicit unloading of the delay loaded DLLs.
suppressstartupbanner = Suppress the display of the startup banner and information messages.
swaprunfromcd = Run the application from the swap location of the CD.
swaprunfromnet = Run the application from the swap location of the network.
targetmachine = Specifies the subsystem for the linker.  See vc8platforms.mpt for some of the settings.
terminalserveraware = Enables terminal server awareness.  0 is "Default", 1 is "Not Terminal Server Aware", and 2 is "Application is Terminal Server Aware".
treatwchar_tasbuiltintype = This corresponds to the C/C++ Language property "Treat wchar_t as Built-in Type". The boolean value specifies the pull-down value in the IDE.
turnoffassemblygeneration = If set to true, specifies that no assembly will be generated even though common language runtime information is present in the object files.
undefineallpreprocessordefinitions = Undefine all previously defined preprocessor values.
undefinepreprocessordefinitions = Specifies one or more preprocessor undefines.
unicode = If this boolean template variable is set, the UNICODE and _UNICODE macros are added to the C/C++ Preprocessor property "Preprocessor Definitions".
unicode_mfc_entry = This corresponds to the Linker Advanced property "Entry Point".  This variable should not be set directly by the user; instead the project should inherit from 'mfc'.
usefullpaths = Use full paths in diagnostic messages if set to true.
uselibrarydependencyinputs = If set to true, specifies that inputs to the librariant tool are used rather than the library file itself when linking in libraries of project dependencies.
useofatl = Specifies how ATL is used by the configuration.  0 corresponds to "Not using ATL", 1 corresponds to "Static Link to ATL", and 2 corresponds to "Dynamic Link to ATL".
useofmfc = Specifies how MFC is used by the configuration.  0 corresponds to "Use Standard Windows Libraries", 1 corresponds to "Use MFC in a Static Library" and 2 corresponds to "Use MFC in a Shared DLL".
useunicoderesponsefiles = Instructs the project system to generate UNICODE response files when spawning the compiler.
vcprojecttype = Specifies the ProjectType setting within the generated .vcproj file.
vcversion = Specifies the version of the generated .vcproj file.  This value is determined by the VC8ProjectCreator.
warnaserror = If set to true, the compiler treats all warnings as errors.
warning_level = This setting corresponds to the C/C++ General property "Warning Level". Valid values are 0 through 4.
wholeprogramoptimization = Specifies that the program will be optimized across .obj boundaries.  0 is "No Whole Program Optimization", 1 is "Use Link Time Code Generation", 2 is "Profile Guided Optimization - Instrument", 3 is "Profile Guided Optimization - Optimize", and 4 is ""Profile Guided Optimization - Update".
xmldocumentationfilename = Specifies the name of the generated XML documentation files.
xml_version = Specifies the XML version for the generated .vcproj file.
