Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[release/6.1] Update dependencies from dotnet/arcade #5681

Open
wants to merge 23 commits into
base: release/6.1
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
2c6375d
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 11, 2024
b7c4ce4
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 12, 2024
acb537e
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 13, 2024
a2bcd01
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 14, 2024
369f951
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 20, 2024
d030c26
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 21, 2024
275fb36
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 24, 2024
5a3832d
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 26, 2024
63777c8
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 27, 2024
fe54118
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 28, 2024
5a1174c
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Nov 29, 2024
eddc0a9
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 5, 2024
f3a113a
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 6, 2024
99cdbe7
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 7, 2024
9207a66
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 10, 2024
0bacbc0
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 11, 2024
4ee0a13
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 12, 2024
215eeaa
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 13, 2024
d9be2dc
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 14, 2024
40a8175
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 17, 2024
e50ae69
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 18, 2024
c1fd6d2
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 22, 2024
e7ea58a
Update dependencies from https://github.com/dotnet/arcade build 20241…
dotnet-maestro[bot] Dec 27, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@
<ProductDependencies>
</ProductDependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.24558.2">
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.24626.1">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>74ee04447a9882906e02bb135787ce2eca67ee67</Sha>
<Sha>ae8d2a08f1021624ae37cdd5b65f6c05e58a051b</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.GenFacades" Version="10.0.0-beta.24558.2">
<Dependency Name="Microsoft.DotNet.GenFacades" Version="10.0.0-beta.24626.1">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>74ee04447a9882906e02bb135787ce2eca67ee67</Sha>
<Sha>ae8d2a08f1021624ae37cdd5b65f6c05e58a051b</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.XUnitExtensions" Version="10.0.0-beta.24558.2">
<Dependency Name="Microsoft.DotNet.XUnitExtensions" Version="10.0.0-beta.24626.1">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>74ee04447a9882906e02bb135787ce2eca67ee67</Sha>
<Sha>ae8d2a08f1021624ae37cdd5b65f6c05e58a051b</Sha>
</Dependency>
</ToolsetDependencies>
</Dependencies>
4 changes: 2 additions & 2 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
</PropertyGroup>
<!-- Arcade dependencies -->
<PropertyGroup>
<MicrosoftDotNetGenFacadesPackageVersion>10.0.0-beta.24558.2</MicrosoftDotNetGenFacadesPackageVersion>
<MicrosoftDotNetXUnitExtensionsPackageVersion>10.0.0-beta.24558.2</MicrosoftDotNetXUnitExtensionsPackageVersion>
<MicrosoftDotNetGenFacadesPackageVersion>10.0.0-beta.24626.1</MicrosoftDotNetGenFacadesPackageVersion>
<MicrosoftDotNetXUnitExtensionsPackageVersion>10.0.0-beta.24626.1</MicrosoftDotNetXUnitExtensionsPackageVersion>
</PropertyGroup>
<!-- CoreFx dependencies -->
<PropertyGroup>
Expand Down
5 changes: 3 additions & 2 deletions eng/common/core-templates/job/source-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,10 @@ parameters:
# The name of the job. This is included in the job ID.
# targetRID: ''
# The name of the target RID to use, instead of the one auto-detected by Arcade.
# nonPortable: false
# portableBuild: false
# Enables non-portable mode. This means a more specific RID (e.g. fedora.32-x64 rather than
# linux-x64), and compiling against distro-provided packages rather than portable ones.
# linux-x64), and compiling against distro-provided packages rather than portable ones. The
# default is portable mode.
# skipPublishValidation: false
# Disables publishing validation. By default, a check is performed to ensure no packages are
# published by source-build.
Expand Down
44 changes: 37 additions & 7 deletions eng/common/core-templates/steps/install-microbuild.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,49 @@
parameters:
# Enable cleanup tasks for MicroBuild
# Enable install tasks for MicroBuild
enableMicrobuild: false
# Enable cleanup tasks for MicroBuild on Mac and Linux
# Enable install tasks for MicroBuild on Mac and Linux
# Will be ignored if 'enableMicrobuild' is false or 'Agent.Os' is 'Windows_NT'
enableMicrobuildForMacAndLinux: false
# Location of the MicroBuild output folder
microBuildOutputFolder: '$(Agent.TempDirectory)'
continueOnError: false

steps:
- ${{ if eq(parameters.enableMicrobuild, 'true') }}:
# Remove Python downgrade with https://github.com/dotnet/arcade/issues/15151
- ${{ if and(eq(parameters.enableMicrobuildForMacAndLinux, 'true'), ne(variables['Agent.Os'], 'Windows_NT')) }}:
- ${{ if eq(parameters.enableMicrobuildForMacAndLinux, 'true') }}:
# Install Python 3.12.x on when Python > 3.12.x is installed - https://github.com/dotnet/source-build/issues/4802
- script: |
version=$(python3 --version | awk '{print $2}')
major=$(echo $version | cut -d. -f1)
minor=$(echo $version | cut -d. -f2)

installPython=false
if [ "$major" -gt 3 ] || { [ "$major" -eq 3 ] && [ "$minor" -gt 12 ]; }; then
installPython=true
fi

echo "Python version: $version."
echo "Install Python 3.12.x: $installPython."
echo "##vso[task.setvariable variable=installPython;isOutput=true]$installPython"
name: InstallPython
displayName: 'Determine Python installation'
condition: and(succeeded(), ne(variables['Agent.Os'], 'Windows_NT'))

- task: UsePythonVersion@0
displayName: 'Use Python 3.11.x'
inputs:
versionSpec: '3.11.x'
versionSpec: '3.12.x'
displayName: 'Use Python 3.12.x'
condition: and(succeeded(), eq(variables['InstallPython.installPython'], 'true'), ne(variables['Agent.Os'], 'Windows_NT'))

# Needed to download the MicroBuild plugin nupkgs on Mac and Linux when nuget.exe is unavailable
- task: UseDotNet@2
displayName: Install .NET 8.0 SDK for MicroBuild Plugin
inputs:
packageType: sdk
version: 8.0.x
installationPath: ${{ parameters.microBuildOutputFolder }}/dotnet
workingDirectory: ${{ parameters.microBuildOutputFolder }}
condition: and(succeeded(), ne(variables['Agent.Os'], 'Windows_NT'))

- task: MicroBuildSigningPlugin@4
displayName: Install MicroBuild plugin
Expand All @@ -25,7 +55,7 @@ steps:
azureSubscription: 'MicroBuild Signing Task (DevDiv)'
env:
TeamName: $(_TeamName)
MicroBuildOutputFolderOverride: '$(Agent.TempDirectory)'
MicroBuildOutputFolderOverride: ${{ parameters.microBuildOutputFolder }}
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
continueOnError: ${{ parameters.continueOnError }}
condition: and(
Expand Down
7 changes: 6 additions & 1 deletion eng/common/core-templates/steps/source-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,11 @@ steps:
assetManifestFileName=SourceBuild_${{ parameters.platform.name }}.xml
fi

portableBuildArgs=
if [ '${{ parameters.platform.portableBuild }}' != '' ]; then
portableBuildArgs='/p:PortableBuild=${{ parameters.platform.portableBuild }}'
fi

${{ coalesce(parameters.platform.buildScript, './build.sh') }} --ci \
--configuration $buildConfig \
--restore --build --pack $publishArgs -bl \
Expand All @@ -85,7 +90,7 @@ steps:
$targetRidArgs \
$runtimeOsArgs \
$baseOsArgs \
/p:SourceBuildNonPortable=${{ parameters.platform.nonPortable }} \
$portableBuildArgs \
/p:DotNetBuildSourceOnly=true \
/p:DotNetBuildRepo=true \
/p:AssetManifestFileName=$assetManifestFileName
Expand Down
49 changes: 32 additions & 17 deletions eng/common/cross/build-android-rootfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,11 @@ usage()
{
echo "Creates a toolchain and sysroot used for cross-compiling for Android."
echo
echo "Usage: $0 [BuildArch] [ApiLevel]"
echo "Usage: $0 [BuildArch] [ApiLevel] [--ndk NDKVersion]"
echo
echo "BuildArch is the target architecture of Android. Currently only arm64 is supported."
echo "ApiLevel is the target Android API level. API levels usually match to Android releases. See https://source.android.com/source/build-numbers.html"
echo "NDKVersion is the version of Android NDK. The default is r21. See https://developer.android.com/ndk/downloads/revision_history"
echo
echo "By default, the toolchain and sysroot will be generated in cross/android-rootfs/toolchain/[BuildArch]. You can change this behavior"
echo "by setting the TOOLCHAIN_DIR environment variable"
Expand All @@ -25,10 +26,15 @@ __BuildArch=arm64
__AndroidArch=aarch64
__AndroidToolchain=aarch64-linux-android

for i in "$@"
do
lowerI="$(echo $i | tr "[:upper:]" "[:lower:]")"
case $lowerI in
while :; do
if [[ "$#" -le 0 ]]; then
break
fi

i=$1

lowerI="$(echo $i | tr "[:upper:]" "[:lower:]")"
case $lowerI in
-?|-h|--help)
usage
exit 1
Expand All @@ -43,15 +49,28 @@ for i in "$@"
__AndroidArch=arm
__AndroidToolchain=arm-linux-androideabi
;;
--ndk)
shift
__NDK_Version=$1
;;
*[0-9])
__ApiLevel=$i
;;
*)
__UnprocessedBuildArgs="$__UnprocessedBuildArgs $i"
;;
esac
shift
done

if [[ "$__NDK_Version" == "r21" ]] || [[ "$__NDK_Version" == "r22" ]]; then
__NDK_File_Arch_Spec=-x86_64
__SysRoot=sysroot
else
__NDK_File_Arch_Spec=
__SysRoot=toolchains/llvm/prebuilt/linux-x86_64/sysroot
fi

# Obtain the location of the bash script to figure out where the root of the repo is.
__ScriptBaseDir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

Expand All @@ -78,15 +97,16 @@ fi

echo "Target API level: $__ApiLevel"
echo "Target architecture: $__BuildArch"
echo "NDK version: $__NDK_Version"
echo "NDK location: $__NDK_Dir"
echo "Target Toolchain location: $__ToolchainDir"

# Download the NDK if required
if [ ! -d $__NDK_Dir ]; then
echo Downloading the NDK into $__NDK_Dir
mkdir -p $__NDK_Dir
wget -q --progress=bar:force:noscroll --show-progress https://dl.google.com/android/repository/android-ndk-$__NDK_Version-linux-x86_64.zip -O $__CrossDir/android-ndk-$__NDK_Version-linux-x86_64.zip
unzip -q $__CrossDir/android-ndk-$__NDK_Version-linux-x86_64.zip -d $__CrossDir
wget -q --progress=bar:force:noscroll --show-progress https://dl.google.com/android/repository/android-ndk-$__NDK_Version-linux$__NDK_File_Arch_Spec.zip -O $__CrossDir/android-ndk-$__NDK_Version-linux.zip
unzip -q $__CrossDir/android-ndk-$__NDK_Version-linux.zip -d $__CrossDir
fi

if [ ! -d $__lldb_Dir ]; then
Expand Down Expand Up @@ -116,16 +136,11 @@ for path in $(wget -qO- https://packages.termux.dev/termux-main-21/dists/stable/
fi
done

cp -R "$__TmpDir/data/data/com.termux/files/usr/"* "$__ToolchainDir/sysroot/usr/"
cp -R "$__TmpDir/data/data/com.termux/files/usr/"* "$__ToolchainDir/$__SysRoot/usr/"

# Generate platform file for build.sh script to assign to __DistroRid
echo "Generating platform file..."
echo "RID=android.${__ApiLevel}-${__BuildArch}" > $__ToolchainDir/sysroot/android_platform

echo "Now to build coreclr, libraries and installers; run:"
echo ROOTFS_DIR=\$\(realpath $__ToolchainDir/sysroot\) ./build.sh --cross --arch $__BuildArch \
--subsetCategory coreclr
echo ROOTFS_DIR=\$\(realpath $__ToolchainDir/sysroot\) ./build.sh --cross --arch $__BuildArch \
--subsetCategory libraries
echo ROOTFS_DIR=\$\(realpath $__ToolchainDir/sysroot\) ./build.sh --cross --arch $__BuildArch \
--subsetCategory installer
echo "RID=android.${__ApiLevel}-${__BuildArch}" > $__ToolchainDir/$__SysRoot/android_platform

echo "Now to build coreclr, libraries and host; run:"
echo ROOTFS_DIR=$(realpath $__ToolchainDir/$__SysRoot) ./build.sh clr+libs+host --cross --arch $__BuildArch
22 changes: 7 additions & 15 deletions eng/common/cross/build-rootfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -52,14 +52,12 @@ __UbuntuPackages+=" symlinks"
__UbuntuPackages+=" libicu-dev"
__UbuntuPackages+=" liblttng-ust-dev"
__UbuntuPackages+=" libunwind8-dev"
__UbuntuPackages+=" libnuma-dev"

__AlpinePackages+=" gettext-dev"
__AlpinePackages+=" icu-dev"
__AlpinePackages+=" libunwind-dev"
__AlpinePackages+=" lttng-ust-dev"
__AlpinePackages+=" compiler-rt"
__AlpinePackages+=" numactl-dev"

# runtime libraries' dependencies
__UbuntuPackages+=" libcurl4-openssl-dev"
Expand All @@ -73,8 +71,8 @@ __AlpinePackages+=" krb5-dev"
__AlpinePackages+=" openssl-dev"
__AlpinePackages+=" zlib-dev"

__FreeBSDBase="13.3-RELEASE"
__FreeBSDPkg="1.17.0"
__FreeBSDBase="13.4-RELEASE"
__FreeBSDPkg="1.21.3"
__FreeBSDABI="13"
__FreeBSDPackages="libunwind"
__FreeBSDPackages+=" icu"
Expand Down Expand Up @@ -371,7 +369,7 @@ while :; do
;;
freebsd14)
__CodeName=freebsd
__FreeBSDBase="14.0-RELEASE"
__FreeBSDBase="14.2-RELEASE"
__FreeBSDABI="14"
__SkipUnmount=1
;;
Expand Down Expand Up @@ -424,13 +422,12 @@ case "$__AlpineVersion" in
elif [[ "$__AlpineArch" == "riscv64" ]]; then
__AlpineLlvmLibsLookup=1
__AlpineVersion=edge # minimum version with APKINDEX.tar.gz (packages archive)
elif [[ -n "$__AlpineMajorVersion" ]]; then
# use whichever alpine version is provided and select the latest toolchain libs
__AlpineLlvmLibsLookup=1
else
__AlpineVersion=3.13 # 3.13 to maximize compatibility
__AlpinePackages+=" llvm10-libs"

if [[ "$__AlpineArch" == "armv7" ]]; then
__AlpinePackages="${__AlpinePackages//numactl-dev/}"
fi
fi
esac

Expand All @@ -444,11 +441,6 @@ if [[ "$__BuildArch" == "armel" ]]; then
__LLDB_Package="lldb-3.5-dev"
fi

if [[ "$__CodeName" == "xenial" && "$__UbuntuArch" == "armhf" ]]; then
# libnuma-dev is not available on armhf for xenial
__UbuntuPackages="${__UbuntuPackages//libnuma-dev/}"
fi

__UbuntuPackages+=" ${__LLDB_Package:-}"

if [[ -z "$__UbuntuRepo" ]]; then
Expand Down Expand Up @@ -574,7 +566,7 @@ elif [[ "$__CodeName" == "freebsd" ]]; then
curl -SL "https://download.freebsd.org/ftp/releases/${__FreeBSDArch}/${__FreeBSDMachineArch}/${__FreeBSDBase}/base.txz" | tar -C "$__RootfsDir" -Jxf - ./lib ./usr/lib ./usr/libdata ./usr/include ./usr/share/keys ./etc ./bin/freebsd-version
fi
echo "ABI = \"FreeBSD:${__FreeBSDABI}:${__FreeBSDMachineArch}\"; FINGERPRINTS = \"${__RootfsDir}/usr/share/keys\"; REPOS_DIR = [\"${__RootfsDir}/etc/pkg\"]; REPO_AUTOUPDATE = NO; RUN_SCRIPTS = NO;" > "${__RootfsDir}"/usr/local/etc/pkg.conf
echo "FreeBSD: { url: \"pkg+http://pkg.FreeBSD.org/\${ABI}/quarterly\", mirror_type: \"srv\", signature_type: \"fingerprints\", fingerprints: \"${__RootfsDir}/usr/share/keys/pkg\", enabled: yes }" > "${__RootfsDir}"/etc/pkg/FreeBSD.conf
echo "FreeBSD: { url: \"pkg+http://pkg.FreeBSD.org/\${ABI}/quarterly\", mirror_type: \"srv\", signature_type: \"fingerprints\", fingerprints: \"/usr/share/keys/pkg\", enabled: yes }" > "${__RootfsDir}"/etc/pkg/FreeBSD.conf
mkdir -p "$__RootfsDir"/tmp
# get and build package manager
if [[ "$__hasWget" == 1 ]]; then
Expand Down
Loading
Loading