Skip to content

Setting Compiler Options in MSBuild projects

Paul van Brenk edited this page Aug 23, 2015 · 20 revisions

Overview

Compiler options can be specified using MSBuild properties within an MSBuild project.

Example

  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
    <TypeScriptRemoveComments>false</TypeScriptRemoveComments>
    <TypeScriptSourceMap>true</TypeScriptSourceMap>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
    <TypeScriptRemoveComments>true</TypeScriptRemoveComments>
    <TypeScriptSourceMap>false</TypeScriptSourceMap>
  </PropertyGroup>
  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />

Mappings

Compiler Option MSBuild Property Name Allowed Values
--declaration TypeScriptGeneratesDeclarations boolean
--module TypeScriptModuleKind AMD, CommonJs, UMD, or System
--target TypeScriptTarget ES3, ES5, or ES6
--charset TypeScriptCharset
--emitBOM TypeScriptEmitBOM boolean
--emitDecoratorMetadata TypeScriptEmitDecoratorMetadata boolean
--experimentalDecorators TypeScriptExperimentalDecorators boolean
--inlineSourceMap TypeScriptInlineSourceMap boolean
--inlineSources TypeScriptInlineSources boolean
--locale Automatically set to PreferredUILang value
--mapRoot TypeScriptMapRoot File path
--newLine TypeScriptNewLine CRLF or LF
--noEmitOnError TypeScriptNoEmitOnError boolean
--noEmitHelpers TypeScriptNoEmitHelpers boolean
--noImplicitAny TypeScriptNoImplicitAny boolean
--noLib TypeScriptNoLib boolean
--noResolve TypeScriptNoResolve boolean
--out TypeScriptOutFile File path
--outDir TypeScriptOutDir File path
--preserveConstEnums TypeScriptPreserveConstEnums boolean
--removeComments TypeScriptRemoveComments boolean
--rootDir TypeScriptRootDir File path
--separateCompilation TypeScriptSingleFile boolean
--sourceMap TypeScriptSourceMap File path
--sourceRoot TypeScriptSourceRoot File path
--suppressImplicitAnyIndexErrors TypeScriptSuppressImplicitAnyIndexErrors boolean
--project Not supported in VS
--watch Not supported in VS
--diagnostics Not supported in VS
--listFiles Not supported in VS
--noEmit Not supported in VS
VS only option TypeScriptAdditionalFlags Any compiler option
--moduleResolution [1] TypeScriptModuleResolution Classic, or NodeJs
--experimentalAsyncFunctions [1] TypeScriptExperimentalAsyncFunctions boolean

1 These settings are new in TypeScript 1.6

Clone this wiki locally