+++ /dev/null
-@echo off
-setlocal
-
-set _args=-subsetCategory coreclr %*
-if "%~1"=="-?" set _args=-help
-
-"%~dp0build.cmd" %_args%
+++ /dev/null
-#!/usr/bin/env bash
-
-source="${BASH_SOURCE[0]}"
-
-# resolve $SOURCE until the file is no longer a symlink
-while [[ -h $source ]]; do
- scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
- source="$(readlink "$source")"
-
- # if $source was a relative symlink, we need to resolve it relative to the path where the
- # symlink file was located
- [[ $source != /* ]] && source="$scriptroot/$source"
-done
-
-scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
-"$scriptroot/build.sh" --subsetCategory coreclr $@
Note that the debug configuration is the default option. It generates a 'debug' output and that includes asserts, fewer code optimizations, and is easier for debugging. 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`).
-Once you've built the whole runtime and assuming you want to work with just mono, we have provided `$/mono.sh` that only builds mono and is short hand for:
+Once you've built the whole runtime and assuming you want to work with just mono, you want to use the following command:
```bash
./build.sh --subsetCategory mono
When the build completes, product binaries will be dropped in the `artifacts\bin\mono\<OS>.<arch>.<flavor>` folder.
### Useful Build Arguments
-Here are a list of build arguments that may be of use. These apply to both `build.sh` and `mono.sh`:
-
-For both `build.sh` and `mono.sh`
+Here are a list of build arguments that may be of use:
`/p:MonoEnableLlvm=true` - Builds mono w/ LLVM
- name: BaseJobBuildCommand
value: >-
- installer.cmd -restore -build -ci -test
+ build.cmd -subsetcategory installer -restore -build -test -ci
-configuration $(_BuildConfig)
$(LiveOverridePathArgs)
$(CommonMSBuildArgs)
- name: BaseJobBuildCommand
value: >-
- $(Build.SourcesDirectory)/installer.sh --restore --build --ci --test
+ $(Build.SourcesDirectory)/build.sh -subsetcategory installer -restore -build -test -ci
-configuration $(_BuildConfig)
$(LiveOverridePathArgs)
$(CommonMSBuildArgs)
- name: BaseJobBuildCommand
value: >-
- $(Build.SourcesDirectory)/installer.sh --restore --build --ci --test
+ $(Build.SourcesDirectory)/build.sh -subsetcategory installer --restore --build --ci --test
-configuration $(_BuildConfig)
-os ${{ parameters.osGroup }}
-arch ${{ parameters.archType }}
value: export DotNetBootstrapCliTarPath=/dotnet-sdk-freebsd-x64.tar &&
- name: BuildScript
- value: ./installer.sh
+ value: ./build.sh
- name: MSBuildScript
value: /root/runtime/eng/common/msbuild.sh
- name: BuildArguments
value: >-
- --restore --build --ci --test
+ -subsetcategory installer -restore -build -test -ci
/p:CrossBuild=${{ ne(parameters.crossrootfsDir, '') }}
/p:PortableBuild=$(_PortableBuild)
/p:SkipTests=$(SkipTests)
helixRepo: dotnet/runtime
pool: ${{ parameters.pool }}
variables:
- - _buildScriptFileName: libraries
+ - _buildScriptFileName: build
- _BuildConfig: ${{ parameters.buildConfig }}
- _msbuildCommonParameters: ''
- ${{ if ne(parameters.osGroup, 'Windows_NT') }}:
- _buildScript: ./$(_buildScriptFileName)$(scriptExt)
- - _buildArguments: -configuration ${{ parameters.buildConfig }} -ci -arch ${{ parameters.archType }} $(_finalFrameworkArg) $(_testScopeArg) $(_runtimeOSArg) $(_msbuildCommonParameters) $(_runtimeArtifactsPathArg) $(_crossBuildPropertyArg)
+ - _buildArguments: -subsetcategory libraries -configuration ${{ parameters.buildConfig }} -ci -arch ${{ parameters.archType }} $(_finalFrameworkArg) $(_testScopeArg) $(_runtimeOSArg) $(_msbuildCommonParameters) $(_runtimeArtifactsPathArg) $(_crossBuildPropertyArg)
- ${{ parameters.variables }}
dependsOn:
- name: enterpriseTestsSetup
value: $(sourcesRoot)/Common/tests/System/Net/EnterpriseTests/setup
- name: containerRunTestsCommand
- value: /repo/.dotnet/dotnet build /t:test
+ value: /repo/dotnet.sh build /t:test
- name: containerLibrariesRoot
value: /repo/src/libraries
# Build
- ${{ if ne(parameters.osGroup, 'Windows_NT') }}:
- - script: ./mono$(scriptExt) -configuration $(buildConfig) -arch $(archType) $(osOverride) -ci /p:MonoEnableLLVM=${{ parameters.llvm }}
+ - script: ./build$(scriptExt) -subsetcategory mono -c $(buildConfig) -arch $(archType) $(osOverride) -ci /p:MonoEnableLLVM=${{ parameters.llvm }}
displayName: Build product
- ${{ if eq(parameters.osGroup, 'Windows_NT') }}:
- - script: mono$(scriptExt) -configuration $(buildConfig) -arch $(archType) $(osOverride) -ci /p:MonoEnableLLVM=${{ parameters.llvm }}
+ - script: build$(scriptExt) -subsetcategory mono -c $(buildConfig) -arch $(archType) $(osOverride) -ci /p:MonoEnableLLVM=${{ parameters.llvm }}
displayName: Build product
# Publish product output directory for consumption by tests.
# Build packages
- ${{ if and(ne(parameters.llvm, true), ne(parameters.osGroup, 'Windows_NT')) }}:
- - script: ./mono$(scriptExt) -configuration $(buildConfig) -arch $(archType) $(osOverride) -ci $(officialBuildIdArg) /p:MonoEnableLLVM=${{ parameters.llvm }} -pack $(OutputRidArg)
+ - script: ./build$(scriptExt) -subsetcategory mono -c $(buildConfig) -arch $(archType) $(osOverride) -ci $(officialBuildIdArg) /p:MonoEnableLLVM=${{ parameters.llvm }} -pack $(OutputRidArg)
displayName: Build nupkg
- ${{ if and(ne(parameters.llvm, true), eq(parameters.osGroup, 'Windows_NT')) }}:
- - script: mono$(scriptExt) -configuration $(buildConfig) -arch $(archType) $(osOverride) -ci $(officialBuildIdArg) /p:MonoEnableLLVM=${{ parameters.llvm }} -pack $(OutputRidArg)
+ - script: build$(scriptExt) -subsetcategory mono -c $(buildConfig) -arch $(archType) $(osOverride) -ci $(officialBuildIdArg) /p:MonoEnableLLVM=${{ parameters.llvm }} -pack $(OutputRidArg)
displayName: Build nupkg
# Save packages using the prepare-signed-artifacts format.
+++ /dev/null
-@echo off
-setlocal
-
-set _args=-subsetCategory installer %*
-if "%~1"=="-?" set _args=-help
-
-"%~dp0build.cmd" %_args%
+++ /dev/null
-#!/usr/bin/env bash
-
-source="${BASH_SOURCE[0]}"
-
-# resolve $SOURCE until the file is no longer a symlink
-while [[ -h $source ]]; do
- scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
- source="$(readlink "$source")"
-
- # if $source was a relative symlink, we need to resolve it relative to the path where the
- # symlink file was located
- [[ $source != /* ]] && source="$scriptroot/$source"
-done
-
-scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
-"$scriptroot/build.sh" --subsetCategory installer $@
+++ /dev/null
-@echo off
-setlocal
-
-set _args=-subsetCategory libraries %*
-if "%~1"=="-?" set _args=-help
-
-"%~dp0build.cmd" %_args%
+++ /dev/null
-#!/usr/bin/env bash
-
-source="${BASH_SOURCE[0]}"
-
-# resolve $SOURCE until the file is no longer a symlink
-while [[ -h $source ]]; do
- scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
- source="$(readlink "$source")"
-
- # if $source was a relative symlink, we need to resolve it relative to the path where the
- # symlink file was located
- [[ $source != /* ]] && source="$scriptroot/$source"
-done
-
-scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
-"$scriptroot/build.sh" --subsetCategory libraries $@
+++ /dev/null
-@echo off
-"%~dp0build.cmd" -subsetCategory mono %*
+++ /dev/null
-#!/usr/bin/env bash
-
-source="${BASH_SOURCE[0]}"
-
-# resolve $SOURCE until the file is no longer a symlink
-while [[ -h $source ]]; do
- scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
- source="$(readlink "$source")"
-
- # if $source was a relative symlink, we need to resolve it relative to the path where the
- # symlink file was located
- [[ $source != /* ]] && source="$scriptroot/$source"
-done
-
-scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
-"$scriptroot/build.sh" --subsetCategory mono $@