Merge pull request #14229 from dotnet/PB_Fix
[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     "__BlobNamePrefix": {
34       "description": "Blob Prefix for Azure download.",
35       "valueType": "property",
36       "values": [],
37       "defaultValue": ""
38     },
39     "MsBuildFileLogging": {
40       "description": "MsBuild logging options.",
41       "valueType": "passThrough",
42       "values": [],
43       "defaultValue": "/flp:v=normal"
44     },
45     "MsBuildEventLogging": {
46       "description": "MsBuild logging options.",
47       "valueType": "passThrough",
48       "values": [],
49       "defaultValue": "/l:BinClashLogger,Tools/net46/Microsoft.DotNet.Build.Tasks.dll;LogFile=binclash.log"
50     },
51     "FilterToOSGroup": {
52       "description": "Specifies the OSGroup.",
53       "valueType": "property",
54       "values": [ "Windows_NT", "Linux", "Unix", "OSX", "Android" ],
55       "defaultValue": "${OSName}"
56     },
57     "RestoreNETCorePlatforms": {
58       "description": "MsBuild target that restores the NETCore packages.",
59       "valueType": "target",
60       "values": [],
61       "defaultValue": ""
62     },
63     "RestoreOptData": {
64       "description": "MsBuild target that restores optimization profile data.",
65       "valueType": "target",
66       "values": [],
67       "defaultValue": ""
68     },
69     "RestoreDuringBuild": {
70       "description": "Enables/disables package restore.",
71       "valueType": "property",
72       "values": [ true, false ],
73       "defaultValue": true
74     },
75     "Project": {
76       "description": "Project where the commands are going to be applied.",
77       "valueType": "passThrough",
78       "values": [],
79       "defaultValue": ""
80     },
81     "__BuildType": {
82       "description": "Specifies the configuration to publish packages",
83       "valueType": "property",
84       "values": [ "release", "debug", "checked" ],
85       "defaultValue": "debug"
86     },
87     "__BuildArch": {
88       "description": "Specifies the architecture to publish packages",
89       "valueType": "property",
90       "values": [ "x64", "x86", "arm", "arm64" ],
91       "defaultValue": "${CPUArch}"
92     },
93     "__BuildOS": {
94       "description": "Specifies the OS to publish packages.",
95       "valueType": "property",
96       "values": [ "Linux", "OSX", "FreeBSD", "OpenBSD", "NetBSD", "SunOS", "Windows_NT", "Android" ],
97       "defaultValue": "${OSName}"
98     },
99     "__DistroRid": {
100       "description": "Specifies the distro rid for Unix OS.",
101       "valueType": "property",
102       "values": [],
103       "defaultValue": "${OSRid}"
104     },
105     "__VSVersion": {
106       "description": "Sets the Visual Studio version to use.",
107       "valueType": "property",
108       "values": [],
109       "defaultValue": "vs2015"
110     },
111     "__ProjectDir": {
112       "description": "Directory of the dir.props file.",
113       "valueType": "property",
114       "values": [],
115       "defaultValue": ""
116     },
117     "__SourceDir": {
118       "description": "Source directory.",
119       "valueType": "property",
120       "values": [],
121       "defaultValue": ""
122     },
123     "__PackagesDir": {
124       "description": "Packages directory.",
125       "valueType": "property",
126       "values": [],
127       "defaultValue": ""
128     },
129     "__RootBinDir": {
130       "description": "Root bin directory.",
131       "valueType": "property",
132       "values": [],
133       "defaultValue": ""
134     },
135     "__BinDir": {
136       "description": "Bin directory of specific OS, Arch and Type being built.",
137       "valueType": "property",
138       "values": [],
139       "defaultValue": ""
140     },
141     "__IntermediatesDir": {
142       "description": "Intermediates bin directory.",
143       "valueType": "property",
144       "values": [],
145       "defaultValue": ""
146     },
147     "__PackagesBinDir": {
148       "description": "Packages bin directory.",
149       "valueType": "property",
150       "values": [],
151       "defaultValue": ""
152     },
153     "__TestWorkingDir": {
154       "description": "Test working directory.",
155       "valueType": "property",
156       "values": [],
157       "defaultValue": ""
158     },
159     "GenerateVersionHeader": {
160       "description": "Generates _version.h",
161       "valueType": "passThrough",
162       "values": [],
163       "defaultValue": "/t:GenerateVersionHeader /p:GenerateVersionHeader=true"
164     },
165     "GenerateVersionSourceFile": {
166       "description": "Generate version.cpp",
167       "valueType": "passThrough",
168       "values": [],
169       "defaultValue": "/t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true"
170     },
171     "NativeVersionSourceFile": {
172       "description": "Provides location for version.cpp",
173       "valueType": "property",
174       "values": [],
175       "defaultValue": ""
176     },
177     "NativeVersionHeaderFile": {
178       "description": "Provides location for _version.h",
179       "valueType": "property",
180       "values": [],
181       "defaultValue": ""
182     },
183     "OverwriteCoreClrPackageVersion": {
184       "description": "Sets the property specifying to overwrite CoreClr Package version using OfficialBuildId",
185       "valueType": "property",
186       "values": [ true, false ],
187       "defaultValue": true
188     },
189     "OfficialBuildId": {
190       "description": "Official Build Id.",
191       "valueType": "property",
192       "values": [],
193       "defaultValue": ""
194     },
195     "Configuration": {
196       "description": "Specifies the build type for native build.",
197       "valueType": "property",
198       "values": [ "debug", "release", "checked" ],
199       "defaultValue": "debug"
200     },
201     "EnableProfileGuidedOptimization": {
202       "description": "Enables IBC profile optimizations if profile data are available.",
203       "valueType": "property",
204       "values": [ true, false ],
205       "defaultValue": false
206     },
207     "RestoreDefaultOptimizationDataPackage": {
208       "description": "Instructs BuildTools to restore the default OptimizationData package.",
209       "valueType": "property",
210       "values": [ true, false ],
211       "defaultValue": true
212     },
213     "UsePartialNGENOptimization": {
214       "description": "Adds the `-partialNGEN -minify` arguments when invoking IBCMerge.",
215       "valueType": "property",
216       "values": [ true, false ],
217       "defaultValue": true
218     },
219     "OptimizationDataDir": {
220       "description": "Sets the path where the build should look for IBC profile data.",
221       "valueType": "property",
222       "values": [],
223       "defaultValue": ""
224     },
225     "UseEnv": {
226       "description": "Set when building for arm64.",
227       "valueType": "property",
228       "values": [ true, false ],
229       "defaultValue": true
230     },
231     "Platform": {
232       "description": "Sets the build arch for native build.",
233       "valueType": "property",
234       "values": [ "x86", "x64", "arm", "arm64" ],
235       "defaultValue": "${CPUArch}"
236     },
237     "PortableBuild": {
238       "description": "Indicates if this is a portable build.",
239       "valueType": "property",
240       "values": [ "false", "true"],
241       "defaultValue": "true"
242     },
243     "Rebuild": {
244       "description": "Specifies rebuild target.",
245       "valueType": "target",
246       "values": [],
247       "defaultValue": ""
248     },
249     "MsBuildLog": {
250       "description": "Specifies build logs for build alias.",
251       "valueType": "passThrough",
252       "values": [],
253       "defaultValue": ""
254     },
255     "MsBuildWrn": {
256       "description": "Specifies build logs for build alias.",
257       "valueType": "passThrough",
258       "values": [],
259       "defaultValue": ""
260     },
261     "MsBuildErr": {
262       "description": "Specifies build logs for build alias.",
263       "valueType": "passThrough",
264       "values": [],
265       "defaultValue": ""
266     },
267     "BuildNugetPackage": {
268       "description": "Specifies to build nuget packages.",
269       "valueType": "property",
270       "values": [ true, false ],
271       "defaultValue": true
272     },
273     "SignType": {
274       "description": "Sets the SignType.",
275       "valueType": "property",
276       "values": [ "real" ],
277       "defaultValue": ""
278     },
279     "CLRTestPriorityToBuild": {
280       "description": "Sets priority to build test.",
281       "valueType": "property",
282       "values": [],
283       "defaultValue": ""
284     },
285     "CreateTestOverlay": {
286       "description": "Runs CreateTestOverlay target.",
287       "valueType": "target",
288       "values": [],
289       "defaultValue": ""
290     },
291     "CreateNonWindowsTestOverlay": {
292       "description": "Runs CreateNonWindowsTestOverlay target.",
293       "valueType": "target",
294       "values": [],
295       "defaultValue": ""
296     },
297     "Verbosity": {
298       "description": "Sets build verbosity.",
299       "valueType": "passThrough",
300       "values": [],
301       "defaultValue": "/v:normal"
302     },
303     "Build": {
304       "description": "Runs the build target.",
305       "valueType": "target",
306       "values": [],
307       "defaultValue": ""
308     },
309     "UseSharedCompilation": {
310       "description": "Sets the use shared compilation property.",
311       "valueType": "property",
312       "values": [ true, false ],
313       "defaultValue": true
314     },
315     "UpdateInvalidPackageVersions": {
316       "description": "Runs the target to update package versions.",
317       "valueType": "target",
318       "values": [],
319       "defaultValue": ""
320     },
321     "GenerateRuntimeLayout": {
322       "description": "Generates Core_Root folder",
323       "valueType": "property",
324       "values": [ true, false ],
325       "defaultValue": true
326     },
327     "BuildTestsAgainstPackages": {
328       "description": "Sets the property specifying if we're building tests against packages",
329       "valueType": "property",
330       "values": [ true, false ],
331       "defaultValue": true
332     },
333     "TargetsWindows": {
334       "description": "Sets the property specifying if the tests we're building will target Windows",
335       "valueType": "property",
336       "values": [ true, false ],
337       "defaultValue": true
338     },
339     "PublishTestNativeBins": {
340       "description": "Publishes test native binaries to Azure on non-windows",
341       "valueType": "property",
342       "values": [ true, false ],
343       "defaultValue": true
344     },
345     "BuildWrappers": {
346       "description": "Builds test Xunit wrappers",
347       "valueType": "property",
348       "values": [ true, false ],
349       "defaultValue": true
350     },
351     "Crossgen": {
352       "description": "Determines if we're running Crossgen tests",
353       "valueType": "property",
354       "values": [ true, false ],
355       "defaultValue": true
356     },
357     "RuntimeId": {
358       "description": "Specifies the OS to build Core_Root for",
359       "valueType": "property",
360       "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", "android.21-arm64" ],
361       "defaultValue": "${__RuntimeId}"
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         "BuildTarget": {
478           "description": "Runs the build target.",
479           "settings": {
480             "Build": "default"
481           }
482         }
483       },
484       "defaultValues": {
485         "toolName": "msbuild",
486         "settings": {
487           "MsBuildLog": "default",
488           "MsBuildWrn": "default",
489           "MsBuildErr": "default",
490           "MsBuildEventLogging": "default",
491           "RestoreDefaultOptimizationDataPackage": "false",
492           "PortableBuild": "true",
493           "UsePartialNGENOptimization": "false"
494         }
495       }
496     },
497     "sync": {
498       "alias": {
499         "p": {
500           "description": "Restores all NuGet packages for repository.",
501           "settings": {
502             "Project": "./build.proj",
503             "RestoreDuringBuild": true,
504             "RestoreNETCorePlatforms": "default"
505           }
506         },
507         "optdata": {
508           "description": "Restores optimization profile data for the repository.",
509           "settings": {
510             "Project": "./build.proj",
511             "RestoreDuringBuild": true,
512             "RestoreOptData": "default"
513           }
514         },
515         "ab": {
516           "description": "Downloads the latests product packages from Azure. The values for '-AzureAccount' and '-AzureToken' are required",
517           "settings": {
518             "Project": "./src/syncAzure.proj"
519           }
520         },
521         "n": {
522           "description": "Downloads test native binaries. The values for '-AzureAccount', '-AzureToken', and '-Container' are required",
523           "settings": {
524             "Project": "./src/syncAzure.proj",
525             "PublishTestNativeBins": "true"
526           }
527         },
528         "azureToken": {
529           "description": "Account token to connect to Azure Blob storage.",
530           "settings": {
531             "CloudDropAccessToken": "default"
532           }
533         },
534         "azureAccount": {
535           "description": "Account name to connect to Azure Blob storage.",
536           "settings": {
537             "CloudDropAccountName": "default"
538           }
539         },
540         "container": {
541           "description": "Container name to download from in Azure Blob storage.",
542           "settings": {
543             "__Container": "default"
544           }
545         },
546         "blobNamePrefix": {
547           "description": "Blob Prefix to download from in Azure container.",
548           "settings": {
549             "__BlobNamePrefix": "default"
550           }
551         },
552         "runtimeId": {
553           "description": "Runtime ID of the binaries in the specified container.",
554           "settings": {
555             "RuntimeId": "default"
556           }
557         },
558         "verbose": {
559           "description": "Passes /flp:v=diag to the msbuild command or the value passed by the user.",
560           "settings": {
561             "MsBuildFileLogging": "/flp:v=diag;LogFile=sync.log"
562           }
563         },
564         "buildMajor": {
565           "description": "To download a specific group of product packages, specify build number. The value for -BuildMinor required.",
566           "settings": {
567             "BuildNumberMajor": "default"
568           }
569         },
570         "buildMinor": {
571           "description": "To download a specific group of product packages, specify build number. The value for -BuildMajor required.",
572           "settings": {
573             "BuildNumberMinor": "default"
574           }
575         }
576       },
577       "defaultValues": {
578         "toolName": "msbuild",
579         "settings": {
580           "MsBuildFileLogging": "/flp:v=detailed;LogFile=sync.log"
581         }
582       }
583     },
584     "publish-packages": {
585       "alias": {
586         "azureToken": {
587           "description": "Account token to connect to Azure Blob storage.",
588           "settings": {
589             "CloudDropAccessToken": "default"
590           }
591         },
592         "azureAccount": {
593           "description": "Account name to connect to Azure Blob storage.",
594           "settings": {
595             "CloudDropAccountName": "default"
596           }
597         },
598         "container": {
599           "description": "Container name to upload into in Azure Blob storage.",
600           "settings": {
601             "__Container": "default"
602           }
603         },
604         "buildArch": {
605           "description": "Specifies architecture to publish, can be x64, x86, arm or arm64",
606           "settings": {
607             "__BuildArch": "default"
608           }
609         },
610         "buildType": {
611           "description": "Specifies configuration to publish, can be Release, Debug or Checked.",
612           "settings": {
613             "__BuildType": "default"
614           }
615         },
616         "buildOS": {
617           "description": "Specifies the OS to publish packages.",
618           "settings": {
619             "__BuildOS": "default"
620           }
621         },
622         "distroRid": {
623           "description": "Specifies distro rid for Unix OS.",
624           "settings": {
625             "__DistroRid": "default"
626           }
627         },
628         "PublishTestNativeBins": {
629           "description": "Publishes test native binaries.",
630           "settings": {
631             "PublishTestNativeBins": "default"
632           }
633         }
634       },
635       "defaultValues": {
636         "toolName": "msbuild",
637         "settings": {
638           "__BuildOS": "default",
639           "Project": "./src/publish.proj",
640           "MsBuildFileLogging": "/flp:v=detailed;LogFile=publish-packages.log"
641         }
642       }
643     },
644     "build-packages": {
645       "alias": {
646         "buildArch": {
647           "description": "Specifies architecture to publish, can be x64, x86, arm or arm64",
648           "settings": {
649             "__BuildArch": "default"
650           }
651         },
652         "buildType": {
653           "description": "Specifies configuration to publish, can be Release, Debug or Checked.",
654           "settings": {
655             "__BuildType": "default"
656           }
657         },
658         "distroRid": {
659           "description": "Specifies distro rid for Unix OS.",
660           "settings": {
661             "__DistroRid": "default"
662           }
663         }
664       },
665       "defaultValues": {
666         "toolName": "msbuild",
667         "settings": {
668           "__BuildOS": "default",
669           "MsBuildFileLogging": "/flp:v=detailed;Append;LogFile=build-packages.log",
670           "MsBuildEventLogging": "default",
671           "PortableBuild": "true",
672           "Project": "src/.nuget/packages.builds"
673         }
674       }
675     }
676   },
677   "tools": {
678     "msbuild": {
679       "osSpecific": {
680         "windows": {
681           "defaultParameters": "/nologo /verbosity:minimal /clp:Summary /maxcpucount /nodeReuse:false",
682           "path": "Tools/msbuild.cmd"
683         },
684         "unix": {
685           "defaultParameters": "/nologo /verbosity:minimal /clp:Summary /maxcpucount",
686           "path": "Tools/msbuild.sh"
687         }
688       },
689       "valueTypes": {
690         "property": "/p:{name}={value}",
691         "target": "/t:{name}",
692         "internal": "/{name}"
693       }
694     },
695     "terminal": {
696       "run": {
697         "windows": "cmd",
698         "unix": "sh"
699       },
700       "valueTypes": {}
701     }
702   }
703 }