// 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.