Merge pull request #11187 from wtgodbe/NonWindowsR2R
[platform/upstream/coreclr.git] / config.json
1 {
2   "settings": {
3     "CloudDropAccessToken": {
4       "description": "Azure access token",
5       "valueType": "property",
6       "values": [],
7       "defaultValue": ""
8     },
9     "CloudDropAccountName": {
10       "description": "Azure account name.",
11       "valueType": "property",
12       "values": [],
13       "defaultValue": ""
14     },
15     "BuildNumberMajor": {
16       "description": "Product build major number.",
17       "valueType": "property",
18       "values": [],
19       "defaultValue": ""
20     },
21     "BuildNumberMinor": {
22       "description": "Product build minor number.",
23       "valueType": "property",
24       "values": [],
25       "defaultValue": ""
26     },
27     "__Container": {
28       "description": "Container name for Azure upload.",
29       "valueType": "property",
30       "values": [],
31       "defaultValue": ""
32     },
33     "MsBuildFileLogging": {
34       "description": "MsBuild logging options.",
35       "valueType": "passThrough",
36       "values": [],
37       "defaultValue": "/flp:v=normal"
38     },
39     "MsBuildEventLogging": {
40       "description": "MsBuild logging options.",
41       "valueType": "passThrough",
42       "values": [],
43       "defaultValue": "/l:BinClashLogger,Tools/net46/Microsoft.DotNet.Build.Tasks.dll;LogFile=binclash.log"
44     },
45     "FilterToOSGroup": {
46       "description": "Specifies the OSGroup.",
47       "valueType": "property",
48       "values": [ "Windows_NT", "Linux", "Unix", "OSX" ],
49       "defaultValue": "${OSName}"
50     },
51     "RestoreNETCorePlatforms": {
52       "description": "MsBuild target that restores the NETCore packages.",
53       "valueType": "target",
54       "values": [],
55       "defaultValue": ""
56     },
57     "RestoreOptData": {
58       "description": "MsBuild target that restores optimization profile data.",
59       "valueType": "target",
60       "values": [],
61       "defaultValue": ""
62     },
63     "RestoreDuringBuild": {
64       "description": "Enables/disables package restore.",
65       "valueType": "property",
66       "values": [ true, false ],
67       "defaultValue": true
68     },
69     "Project": {
70       "description": "Project where the commands are going to be applied.",
71       "valueType": "passThrough",
72       "values": [],
73       "defaultValue": ""
74     },
75     "__BuildType": {
76       "description": "Specifies the configuration to publish packages",
77       "valueType": "property",
78       "values": [ "release", "debug", "checked" ],
79       "defaultValue": "debug"
80     },
81     "__BuildArch": {
82       "description": "Specifies the architecture to publish packages",
83       "valueType": "property",
84       "values": [ "x64", "x86", "arm", "arm64" ],
85       "defaultValue": "${CPUArch}"
86     },
87     "__BuildOS": {
88       "description": "Specifies the OS to publish packages.",
89       "valueType": "property",
90       "values": [ "Linux", "OSX", "FreeBSD", "OpenBSD", "NetBSD", "SunOS", "Windows_NT" ],
91       "defaultValue": "${OSName}"
92     },
93     "__DistroRid": {
94       "description": "Specifies the distro rid for Unix OS.",
95       "valueType": "property",
96       "values": [],
97       "defaultValue": "${OSRid}"
98     },
99     "__VSVersion": {
100       "description": "Sets the Visual Studio version to use.",
101       "valueType": "property",
102       "values": [],
103       "defaultValue": "vs2015"
104     },
105     "__ProjectDir": {
106       "description": "Directory of the dir.props file.",
107       "valueType": "property",
108       "values": [],
109       "defaultValue": ""
110     },
111     "__SourceDir": {
112       "description": "Source directory.",
113       "valueType": "property",
114       "values": [],
115       "defaultValue": ""
116     },
117     "__PackagesDir": {
118       "description": "Packages directory.",
119       "valueType": "property",
120       "values": [],
121       "defaultValue": ""
122     },
123     "__RootBinDir": {
124       "description": "Root bin directory.",
125       "valueType": "property",
126       "values": [],
127       "defaultValue": ""
128     },
129     "__BinDir": {
130       "description": "Bin directory of specific OS, Arch and Type being built.",
131       "valueType": "property",
132       "values": [],
133       "defaultValue": ""
134     },
135     "__IntermediatesDir": {
136       "description": "Intermediates bin directory.",
137       "valueType": "property",
138       "values": [],
139       "defaultValue": ""
140     },
141     "__PackagesBinDir": {
142       "description": "Packages bin directory.",
143       "valueType": "property",
144       "values": [],
145       "defaultValue": ""
146     },
147     "__TestWorkingDir": {
148       "description": "Test working directory.",
149       "valueType": "property",
150       "values": [],
151       "defaultValue": ""
152     },
153     "GenerateVersionHeader": {
154       "description": "Generates _version.h",
155       "valueType": "passThrough",
156       "values": [],
157       "defaultValue": "/t:GenerateVersionHeader /p:GenerateVersionHeader=true"
158     },
159     "GenerateVersionSourceFile": {
160       "description": "Generate version.cpp",
161       "valueType": "passThrough",
162       "values": [],
163       "defaultValue": "/t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true"
164     },
165     "NativeVersionSourceFile": {
166       "description": "Provides location for version.cpp",
167       "valueType": "property",
168       "values": [],
169       "defaultValue": ""
170     },
171     "NativeVersionHeaderFile": {
172       "description": "Provides location for _version.h",
173       "valueType": "property",
174       "values": [],
175       "defaultValue": ""
176     },
177     "OfficialBuildId": {
178       "description": "Official Build Id.",
179       "valueType": "property",
180       "values": [],
181       "defaultValue": ""
182     },
183     "Configuration": {
184       "description": "Specifies the build type for native build.",
185       "valueType": "property",
186       "values": [ "debug", "release", "checked" ],
187       "defaultValue": "debug"
188     },
189     "EnableProfileGuidedOptimization": {
190       "description": "Enables IBC profile optimizations if profile data are available.",
191       "valueType": "property",
192       "values": [ true, false ],
193       "defaultValue": false
194     },
195     "RestoreDefaultOptimizationDataPackage": {
196       "description": "Instructs BuildTools to restore the default OptimizationData package.",
197       "valueType": "property",
198       "values": [ true, false ],
199       "defaultValue": true
200     },
201     "UsePartialNGENOptimization": {
202       "description": "Adds the `-partialNGEN -minify` arguments when invoking IBCMerge.",
203       "valueType": "property",
204       "values": [ true, false ],
205       "defaultValue": true
206     },
207     "OptimizationDataDir": {
208       "description": "Sets the path where the build should look for IBC profile data.",
209       "valueType": "property",
210       "values": [],
211       "defaultValue": ""
212     },
213     "UseEnv": {
214       "description": "Set when building for arm64.",
215       "valueType": "property",
216       "values": [ true, false ],
217       "defaultValue": true
218     },
219     "Platform": {
220       "description": "Sets the build arch for native build.",
221       "valueType": "property",
222       "values": [ "x86", "x64", "arm", "arm64" ],
223       "defaultValue": "${CPUArch}"
224     },
225     "PortableBuild": {
226       "description": "Indicates if this is a portable build.",
227       "valueType": "property",
228       "values": [ "0", "1"],
229       "defaultValue": "0"
230     },
231     "Rebuild": {
232       "description": "Specifies rebuild target.",
233       "valueType": "target",
234       "values": [],
235       "defaultValue": ""
236     },
237     "MsBuildLog": {
238       "description": "Specifies build logs for build alias.",
239       "valueType": "passThrough",
240       "values": [],
241       "defaultValue": ""
242     },
243     "MsBuildWrn": {
244       "description": "Specifies build logs for build alias.",
245       "valueType": "passThrough",
246       "values": [],
247       "defaultValue": ""
248     },
249     "MsBuildErr": {
250       "description": "Specifies build logs for build alias.",
251       "valueType": "passThrough",
252       "values": [],
253       "defaultValue": ""
254     },
255     "BuildNugetPackage": {
256       "description": "Specifies to build nuget packages.",
257       "valueType": "property",
258       "values": [ true, false ],
259       "defaultValue": true
260     },
261     "SignType": {
262       "description": "Sets the SignType.",
263       "valueType": "property",
264       "values": [ "real" ],
265       "defaultValue": ""
266     },
267     "CLRTestPriorityToBuild": {
268       "description": "Sets priority to build test.",
269       "valueType": "property",
270       "values": [],
271       "defaultValue": ""
272     },
273     "IlasmRoundTrip": {
274       "description": "Sets ilasm round trip property.",
275       "valueType": "property",
276       "values": [ true, false ],
277       "defaultValue": true
278     },
279     "CreateTestOverlay": {
280       "description": "Runs CreateTestOverlay target.",
281       "valueType": "target",
282       "values": [],
283       "defaultValue": ""
284     },
285     "CreateNonWindowsTestOverlay": {
286       "description": "Runs CreateNonWindowsTestOverlay target.",
287       "valueType": "target",
288       "values": [],
289       "defaultValue": ""
290     },
291     "Verbosity": {
292       "description": "Sets build verbosity.",
293       "valueType": "passThrough",
294       "values": [],
295       "defaultValue": "/v:normal"
296     },
297     "Build": {
298       "description": "Runs the build target.",
299       "valueType": "target",
300       "values": [],
301       "defaultValue": ""
302     },
303     "UseSharedCompilation": {
304       "description": "Sets the use shared compilation property.",
305       "valueType": "property",
306       "values": [ true, false ],
307       "defaultValue": true
308     },
309     "UpdateInvalidPackageVersions": {
310       "description": "Runs the target to update package versions.",
311       "valueType": "target",
312       "values": [],
313       "defaultValue": ""
314     },
315     "GenerateRuntimeLayout": {
316       "description": "Generates Core_Root folder",
317       "valueType": "property",
318       "values": [ true, false ],
319       "defaultValue": true
320     },
321     "BuildTestsAgainstPackages": {
322       "description": "Sets the property specifying if we're building tests against packages",
323       "valueType": "property",
324       "values": [ true, false ],
325       "defaultValue": true
326     },
327     "TargetsWindows": {
328       "description": "Sets the property specifying if the tests we're building will target Windows",
329       "valueType": "property",
330       "values": [ true, false ],
331       "defaultValue": true
332     },
333     "PublishTestNativeBins": {
334       "description": "Publishes test native binaries to Azure on non-windows",
335       "valueType": "property",
336       "values": [ true, false ],
337       "defaultValue": true
338     },
339     "BuildWrappers": {
340       "description": "Builds test Xunit wrappers",
341       "valueType": "property",
342       "values": [ true, false ],
343       "defaultValue": true
344     },
345     "Crossgen": {
346       "description": "Determines if we're running Crossgen tests",
347       "valueType": "property",
348       "values": [ true, false ],
349       "defaultValue": true
350     },
351     "RuntimeId": {
352       "description": "Specifies the OS to build Core_Root for",
353       "valueType": "property",
354       "values": [ "debian.8-x64", "fedora.24-x64", "fedora.25-x64", "opensuse.42.1-x64", "osx.10.12-x64", "rhel.7-x64", "ubuntu.14.04-x64", "ubuntu.16.04-x64", "ubuntu.16.10-x64" ],
355       "defaultValue": "${__RuntimeId}"
356     },
357     "UpdateDependencies": {
358       "description": "MsBuild target that updates project.json dependencies.",
359       "valueType": "target",
360       "values": [],
361       "defaultValue": ""
362     },
363     "BatchRestorePackages": {
364       "description": "MsBuild target that restores the packages.",
365       "valueType": "target",
366       "values": [],
367       "defaultValue": ""
368     },
369     "BinPlaceRef": {
370       "description": "Place mscorlib.dll in bin/Product ref folder for building tests against",
371       "valueType": "target",
372       "values": [],
373       "defaultValue": ""
374     },
375     "BinPlaceProduct": {
376       "description": "Place test dependencies in bin/Product folder for building tests against",
377       "valueType": "target",
378       "values": [],
379       "defaultValue": ""
380     },
381     "CopyCrossgenToProduct": {
382       "description": "Place crossgen.exe in bin/Product folder for building tests against",
383       "valueType": "target",
384       "values": [],
385       "defaultValue": ""
386     },
387     "OptionalToolSource": {
388       "description": "URL of the nuget feed used by 'optional-tools'",
389       "valueType": "property",
390       "values": [],
391       "defaultValue": ""
392     },
393     "OptionalToolSourceUser": {
394       "description": "User name for authenticating to the optional tools feed",
395       "valueType": "property",
396       "values": [],
397       "defaultValue": ""
398     },
399     "OptionalToolSourcePassword": {
400       "description": "VSTS token for authenticating to the optional tools feed; requires 'package(READ)' permission",
401       "valueType": "property",
402       "values": [],
403       "defaultValue": ""
404     },
405     "ExtraParameters": {
406       "description": "Extra parameters will be passed to the selected command.",
407       "valueType": "passThrough",
408       "values": [],
409       "defaultValue": ""
410     }
411   },
412   "commands": {
413     "build": {
414       "alias": {
415         "generateHeaderWindows": {
416           "description": "Generates _version.h",
417           "settings": {
418             "GenerateVersionHeader": "default",
419             "NativeVersionHeaderFile": "default"
420           }
421         },
422         "generateHeaderUnix": {
423           "description": "Generates version.cpp",
424           "settings": {
425             "GenerateVersionSourceFile": "default",
426             "NativeVersionSourceFile": "default"
427           }
428         },
429         "verbose": {
430           "description": "Sets the verbosity",
431           "settings": {
432             "Verbosity": "/v:detailed"
433           }
434         },
435         "disableoss": {
436           "description": "Sets the sign type.",
437           "settings": {
438             "SignType": "real"
439           }
440         },
441         "buildType": {
442           "description": "Sets buildtype.",
443           "settings": {
444             "__BuildType": "default"
445           }
446         },
447         "buildArch": {
448           "description": "Sets buildarch.",
449           "settings": {
450             "__BuildArch": "default"
451           }
452         },
453         "buildOS": {
454           "description": "Sets the OS to build.",
455           "settings": {
456             "__BuildOS": "default"
457           }
458         },
459         "testOverlay": {
460           "description": "Runs test overlay target.",
461           "settings": {
462             "CreateTestOverlay": "default"
463           }
464         },
465         "priority": {
466           "description": "Sets CLRTestPriorityToBuild property.",
467           "settings": {
468             "CLRTestPriorityToBuild": "default"
469           }
470         },
471         "skipRestore": {
472           "description": "Skips restoring packages during build.",
473           "settings": {
474             "RestoreDuringBuild": false
475           }
476         },
477         "portable": {
478           "description": "Triggers a portable build.",
479           "settings": {
480             "PortableBuild": "1"
481           }
482         },
483         "BuildTarget": {
484           "description": "Runs the build target.",
485           "settings": {
486             "Build": "default"
487           }
488         }
489       },
490       "defaultValues": {
491         "toolName": "msbuild",
492         "settings": {
493           "MsBuildLog": "default",
494           "MsBuildWrn": "default",
495           "MsBuildErr": "default",
496           "MsBuildEventLogging": "default",
497           "RestoreDefaultOptimizationDataPackage": "false",
498           "UsePartialNGENOptimization": "false"
499         }
500       }
501     },
502     "sync": {
503       "alias": {
504         "p": {
505           "description": "Restores all NuGet packages for repository.",
506           "settings": {
507             "Project": "./build.proj",
508             "RestoreDuringBuild": true,
509             "RestoreNETCorePlatforms": "default"
510           }
511         },
512         "optdata": {
513           "description": "Restores optimization profile data for the repository.",
514           "settings": {
515             "Project": "./build.proj",
516             "RestoreDuringBuild": true,
517             "RestoreOptData": "default"
518           }
519         },
520         "ab": {
521           "description": "Downloads the latests product packages from Azure. The values for '-AzureAccount' and '-AzureToken' are required",
522           "settings": {
523             "Project": "./src/syncAzure.proj"
524           }
525         },
526         "n": {
527           "description": "Downloads test native binaries. The values for '-AzureAccount', '-AzureToken', and '-Container' are required",
528           "settings": {
529             "Project": "./src/syncAzure.proj",
530             "PublishTestNativeBins": "true"
531           }
532         },
533         "azureToken": {
534           "description": "Account token to connect to Azure Blob storage.",
535           "settings": {
536             "CloudDropAccessToken": "default"
537           }
538         },
539         "azureAccount": {
540           "description": "Account name to connect to Azure Blob storage.",
541           "settings": {
542             "CloudDropAccountName": "default"
543           }
544         },
545         "container": {
546           "description": "Container name to download from in Azure Blob storage.",
547           "settings": {
548             "__Container": "default"
549           }
550         },
551         "runtimeId": {
552           "description": "Runtime ID of the binaries in the specified container.",
553           "settings": {
554             "RuntimeId": "default"
555           }
556         },
557         "verbose": {
558           "description": "Passes /flp:v=diag to the msbuild command or the value passed by the user.",
559           "settings": {
560             "MsBuildFileLogging": "/flp:v=diag;LogFile=sync.log"
561           }
562         },
563         "buildMajor": {
564           "description": "To download a specific group of product packages, specify build number. The value for -BuildMinor required.",
565           "settings": {
566             "BuildNumberMajor": "default"
567           }
568         },
569         "buildMinor": {
570           "description": "To download a specific group of product packages, specify build number. The value for -BuildMajor required.",
571           "settings": {
572             "BuildNumberMinor": "default"
573           }
574         }
575       },
576       "defaultValues": {
577         "toolName": "msbuild",
578         "settings": {
579           "MsBuildFileLogging": "/flp:v=detailed;LogFile=sync.log"
580         }
581       }
582     },
583     "publish-packages": {
584       "alias": {
585         "azureToken": {
586           "description": "Account token to connect to Azure Blob storage.",
587           "settings": {
588             "CloudDropAccessToken": "default"
589           }
590         },
591         "azureAccount": {
592           "description": "Account name to connect to Azure Blob storage.",
593           "settings": {
594             "CloudDropAccountName": "default"
595           }
596         },
597         "container": {
598           "description": "Container name to upload into in Azure Blob storage.",
599           "settings": {
600             "__Container": "default"
601           }
602         },
603         "buildArch": {
604           "description": "Specifies architecture to publish, can be x64, x86, arm or arm64",
605           "settings": {
606             "__BuildArch": "default"
607           }
608         },
609         "buildType": {
610           "description": "Specifies configuration to publish, can be Release, Debug or Checked.",
611           "settings": {
612             "__BuildType": "default"
613           }
614         },
615         "buildOS": {
616           "description": "Specifies the OS to publish packages.",
617           "settings": {
618             "__BuildOS": "default"
619           }
620         },
621         "distroRid": {
622           "description": "Specifies distro rid for Unix OS.",
623           "settings": {
624             "__DistroRid": "default"
625           }
626         },
627         "PublishTestNativeBins": {
628           "description": "Publishes test native binaries.",
629           "settings": {
630             "PublishTestNativeBins": "default"
631           }
632         }
633       },
634       "defaultValues": {
635         "toolName": "msbuild",
636         "settings": {
637           "Project": "./src/publish.proj",
638           "MsBuildFileLogging": "/flp:v=detailed;LogFile=publish-packages.log"
639         }
640       }
641     },
642     "build-packages": {
643       "alias": {
644         "buildArch": {
645           "description": "Specifies architecture to publish, can be x64, x86, arm or arm64",
646           "settings": {
647             "__BuildArch": "default"
648           }
649         },
650         "portable": {
651           "description": "Triggers a portable build.",
652           "settings": {
653             "PortableBuild": "1"
654           }
655         },
656         "buildType": {
657           "description": "Specifies configuration to publish, can be Release, Debug or Checked.",
658           "settings": {
659             "__BuildType": "default"
660           }
661         },
662         "distroRid": {
663           "description": "Specifies distro rid for Unix OS.",
664           "settings": {
665             "__DistroRid": "default"
666           }
667         }
668       },
669       "defaultValues": {
670         "toolName": "msbuild",
671         "settings": {
672           "__BuildOS": "default",
673           "MsBuildFileLogging": "/flp:v=detailed;Append;LogFile=build-packages.log",
674           "MsBuildEventLogging": "default",
675           "Project": "src/.nuget/packages.builds"
676         }
677       }
678     }
679   },
680   "tools": {
681     "msbuild": {
682       "osSpecific": {
683         "windows": {
684           "defaultParameters": "/nologo /verbosity:minimal /clp:Summary /maxcpucount /nodeReuse:false",
685           "path": "Tools/msbuild.cmd"
686         },
687         "unix": {
688           "defaultParameters": "/nologo /verbosity:minimal /clp:Summary /maxcpucount",
689           "path": "Tools/msbuild.sh"
690         }
691       },
692       "valueTypes": {
693         "property": "/p:{name}={value}",
694         "target": "/t:{name}",
695         "internal": "/{name}"
696       }
697     },
698     "terminal": {
699       "run": {
700         "windows": "cmd",
701         "unix": "sh"
702       },
703       "valueTypes": {}
704     }
705   }
706 }