You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Redesign subset feature and remove subsetcategory
Implement proposal from dotnet#34403.
Remove subsetcategory and allow all subsets to specified via the -subset
switch.
Copy file name to clipboardExpand all lines: docs/workflow/building/coreclr/README.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -1,25 +1,25 @@
1
1
# Building
2
2
3
-
To build just CoreCLR, use the `-subsetCategory` flag to the `build.sh` (or `build.cmd`) script at the repo root:
3
+
To build just CoreCLR, use the `-subset` flag to the `build.sh` (or `build.cmd`) script at the repo root:
4
4
5
5
For Linux:
6
6
```
7
-
./build.sh -subsetCategory coreclr
7
+
./build.sh -subset clr
8
8
```
9
9
10
10
For Windows:
11
11
```
12
-
build.cmd -subsetCategory coreclr
12
+
build.cmd -subset clr
13
13
```
14
14
15
15
By default, build generates a 'debug' build type, that includes asserts and is easier for some people to debug. If you want to make performance measurements, or just want tests to execute more quickly, you can also build the 'release' version (which does not have these checks) by adding the flag `-configuration release` (or `-c release`), for example:
CoreCLR also supports a 'checked' build type which has asserts enabled like 'debug', but is built with the native compiler optimizer enabled, so it runs much faster. This is the usual mode used for running tests in the CI system. You can build that using, for example:
# The above you may only perform once in a day, or when you pull down significant new changes.
38
38
39
39
# Switch to working on a given library (RegularExpressions in this case)
@@ -83,33 +83,28 @@ For more details on the build settings see [project-guidelines](../../../coding-
83
83
84
84
If you invoke the `build` script without any actions, the default action chain `-restore -build` is executed.
85
85
86
-
By default the `build` script only builds the product libraries and none of the tests. If you want to include tests, you want to add the subset `-subset libtests`. If you want to run the tests you want to use the `-test` action instead of the `-build`, e.g. `build.cmd/sh -subsetcategory libraries -test`. To specify just the libraries, use `-subcategory libraries`.
86
+
By default the `build` script only builds the product libraries and none of the tests. If you want to include tests, you want to add the subset `-subset libtests`. If you want to run the tests you want to use the `-test` action instead of the `-build`, e.g. `build.cmd/sh -subset libs.tests -test`. To specify just the libraries, use `-subset libs`.
87
87
88
88
**Examples**
89
89
- Building in release mode for platform x64 (restore and build are implicit here as no actions are passed in)
By default the libraries will attempt to build using the CoreCLR version of `System.Private.CoreLib.dll`. In order to build against the Mono version you need to use the `/p:RuntimeFlavor=Mono` argument.
By default, building from the root will only build the libraries for the OS you are running on. One can
194
-
build for another OS by specifying `./build.sh -subsetCategory libraries -os [value]`.
189
+
build for another OS by specifying `./build.sh -subset libs -os [value]`.
195
190
196
191
Note that you cannot generally build native components for another OS but you can for managed components so if you need to do that you can do it at the individual project level or build all via passing `/p:BuildNative=false`.
197
192
198
193
### Building in Release or Debug
199
194
200
195
By default, building from the root or within a project will build the libraries in Debug mode.
201
-
One can build in Debug or Release mode from the root by doing `./build.sh -subsetCategory libraries -c Release` or `./build.sh -subsetCategory libraries -c Debug`.
196
+
One can build in Debug or Release mode from the root by doing `./build.sh -subset libs -c Release` or `./build.sh -subset libs -c Debug`.
202
197
203
198
### Building other Architectures
204
199
205
-
One can build 32- or 64-bit binaries or for any architecture by specifying in the root `./build.sh -subsetCategory libraries -arch [value]` or in a project `/p:TargetArchitecture=[value]` after the `dotnet build` command.
200
+
One can build 32- or 64-bit binaries or for any architecture by specifying in the root `./build.sh -subset libs -arch [value]` or in a project `/p:TargetArchitecture=[value]` after the `dotnet build` command.
0 commit comments