Merge pull request #277313 from konradmalik/netcoredbg

netcoredbg: 2.2.0-961 -> 3.0.0-1018
This commit is contained in:
Weijia Wang
2024-01-05 15:51:52 +01:00
committed by GitHub
5 changed files with 27 additions and 107 deletions
@@ -1,26 +0,0 @@
diff --git a/platformdefinitions.cmake b/platformdefinitions.cmake
index ed3d9f6..6b0628f 100644
--- a/platformdefinitions.cmake
+++ b/platformdefinitions.cmake
@@ -7,17 +7,21 @@ if (CLR_CMAKE_PLATFORM_ARCH_AMD64)
add_definitions(-DAMD64)
add_definitions(-DBIT64=1) # CoreClr <= 3.x
add_definitions(-DHOST_64BIT=1) # CoreClr > 3.x
+ add_definitions(-DHOST_AMD64)
elseif (CLR_CMAKE_PLATFORM_ARCH_I386)
add_definitions(-D_X86_)
+ add_definitions(-DHOST_X86)
elseif (CLR_CMAKE_PLATFORM_ARCH_ARM)
add_definitions(-D_ARM_)
add_definitions(-DARM)
+ add_definitions(-DHOST_ARM)
elseif (CLR_CMAKE_PLATFORM_ARCH_ARM64)
add_definitions(-D_ARM64_)
add_definitions(-DARM64)
add_definitions(-D_WIN64)
add_definitions(-DBIT64=1) # CoreClr <= 3.x
add_definitions(-DHOST_64BIT=1) # CoreClr > 3.x
+ add_definitions(-DHOST_ARM64)
else ()
clr_unknown_arch()
endif ()
@@ -1,17 +0,0 @@
diff --git a/detectplatform.cmake b/detectplatform.cmake
index 7b93bbf..6fa6e9e 100644
--- a/detectplatform.cmake
+++ b/detectplatform.cmake
@@ -56,7 +56,11 @@ endif(CMAKE_SYSTEM_NAME STREQUAL Linux)
if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
set(CLR_CMAKE_PLATFORM_UNIX 1)
- set(CLR_CMAKE_PLATFORM_UNIX_AMD64 1)
+ if(CMAKE_SYSTEM_PROCESSOR STREQUAL arm64)
+ set(CLR_CMAKE_PLATFORM_UNIX_ARM64 1)
+ else()
+ set(CLR_CMAKE_PLATFORM_UNIX_AMD64 1)
+ endif()
set(CLR_CMAKE_PLATFORM_DARWIN 1)
if(CMAKE_VERSION VERSION_LESS "3.4.0")
set(CMAKE_ASM_COMPILE_OBJECT "${CMAKE_C_COMPILER} <FLAGS> <DEFINES> -o <OBJECT> -c <SOURCE>")
@@ -1,15 +1,17 @@
{ lib, clangStdenv, stdenv, cmake, autoPatchelfHook, fetchFromGitHub, dotnetCorePackages, buildDotnetModule }:
{ lib, clangStdenv, stdenv, cmake, autoPatchelfHook, fetchFromGitHub, dotnetCorePackages, buildDotnetModule, netcoredbg, testers }:
let
pname = "netcoredbg";
version = "2.2.0-961";
hash = "0gbjm8x40hzf787kccfxqb2wdgfks81f6hzr6rrmid42s4bfs5w7";
build = "1018";
release = "3.0.0";
version = "${release}-${build}";
hash = "sha256-9Rd0of1psQTVLaTOCPWsYgvIXN7apZKDQNxuZGj4vXw=";
coreclr-version = "v7.0.4";
coreclr-version = "v7.0.14";
coreclr-src = fetchFromGitHub {
owner = "dotnet";
repo = "runtime";
rev = coreclr-version;
sha256 = "sha256-gPl9sfn3eL3AUli1gdPizDK4lciTJ1ImBcics5BA63M=";
sha256 = "sha256-n7ySUTB4XOXxeeVomySdZIYepdp0PNNGW9pU/2wwVGM=";
};
dotnet-sdk = dotnetCorePackages.sdk_7_0;
@@ -18,17 +20,12 @@ let
owner = "Samsung";
repo = pname;
rev = version;
sha256 = hash;
inherit hash;
};
unmanaged = clangStdenv.mkDerivation {
inherit src pname version;
# patch for arm from: https://github.com/Samsung/netcoredbg/pull/103#issuecomment-1446375535
# needed until https://github.com/dotnet/runtime/issues/78286 is resolved
# patch for darwin from: https://github.com/Samsung/netcoredbg/pull/103#issuecomment-1446457522
# needed until: ?
patches = [ ./arm64.patch ./darwin.patch ];
nativeBuildInputs = [ cmake dotnet-sdk ];
hardeningDisable = [ "strictoverflow" ];
@@ -59,7 +56,7 @@ let
selfContainedBuild = true;
};
in
stdenv.mkDerivation rec {
stdenv.mkDerivation {
inherit pname version;
# managed brings external binaries (libdbgshim.*)
# include source here so that autoPatchelfHook can do it's job
@@ -77,8 +74,11 @@ stdenv.mkDerivation rec {
passthru = {
inherit (managed) fetch-deps;
updateScript = [ ./update.sh pname version meta.homepage ];
tests.version = testers.testVersion {
package = netcoredbg;
command = "netcoredbg --version";
version = "NET Core debugger ${release}";
};
};
meta = with lib; {
+13 -13
View File
@@ -8,19 +8,19 @@
(fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp.Scripting"; version = "2.3.0"; sha256 = "121dhnfjd5jzm410dk79s8xk5jvd09xa0w5q3lbpqc7bs4wxmq4p"; })
(fetchNuGet { pname = "Microsoft.CodeAnalysis.Scripting.Common"; version = "2.3.0"; sha256 = "11f11kvgrdgs86ykz4104jx1iw78v6af48hpdrhmr7y7h5334ziq"; })
(fetchNuGet { pname = "Microsoft.CSharp"; version = "4.4.0"; sha256 = "1niyzqqfyhvh4zpxn8bcyyldynqlw0rfr1apwry4b3yrdnjh1hhh"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim"; version = "7.0.410101"; sha256 = "0az67ay2977gyksh039lamap2a7jcr4c8df4imqrdaqx1ksir993"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-arm"; version = "7.0.410101"; sha256 = "1x5iilp2436w2pjp9c29xwj6vlq4z43qhprz35yxvfzhg0vdsg0l"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-arm64"; version = "7.0.410101"; sha256 = "1zbrcr5iydbbyb48w2wksbckjgddd74z6xczcsb5b0gvyqra85sn"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-musl-arm"; version = "7.0.410101"; sha256 = "179xp33f6aaaf775m673ij1zzrkfk7a07jmm7hcna9nb4ils04yg"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-musl-arm64"; version = "7.0.410101"; sha256 = "0gjyw14ppwsy22c0f0ckxj6gan8gq8sk564bm762jgbvpj9w6br2"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-musl-x64"; version = "7.0.410101"; sha256 = "00yk3b7pygprgm53nlv9l6grrbykrv6dg27jmhw431dnv978wcqd"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-x64"; version = "7.0.410101"; sha256 = "1k3182xh0a6fc8j5vspi0qx75has4gwydcr2hrbrapc2x850xq0z"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.osx-arm64"; version = "7.0.410101"; sha256 = "06mqqj2bpvqqaxh0hfa580m6db213zy349k0x8ah34whzp3bgphk"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.osx-x64"; version = "7.0.410101"; sha256 = "0yxlb8k935i0yc3cxl996bnk86b4qghlqmmjrv4s8mc5qai351ws"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.win-arm"; version = "7.0.410101"; sha256 = "10ad931l9vrz3sc4xjyndak8p3wi5gl92r37yp7smjx8ik09azma"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.win-arm64"; version = "7.0.410101"; sha256 = "1xd85r13qbk6awbrnp2q4a5vvcpwl7rw62s404rxrl4ghy2a43xz"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.win-x64"; version = "7.0.410101"; sha256 = "1zlamjlv1s4d40sf08bbr6c7157lgchcla9x2g911ac0mnh8qqbf"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.win-x86"; version = "7.0.410101"; sha256 = "0sk3akxgb1vw03fkj59m3n90j6v0a5g4px83h2llda8p5q729zbr"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim"; version = "8.0.452401"; sha256 = "1s9mpv6z36dkdskdls6igpgrcn2kxxdmwwpn4cag9pp5nb7fs99d"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-arm"; version = "8.0.452401"; sha256 = "10xg2acijf8b0n306lqqc5g2bj4a91qn5hjz3nbmc5k968l96lmi"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-arm64"; version = "8.0.452401"; sha256 = "18l54q5znkn5qq9afbhrxkjh2q3vlkv6h4jk7zbwaixr627q1lxr"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-musl-arm"; version = "8.0.452401"; sha256 = "0i8zn5k0a3chv689fdqz9sqf35k2k6vlnnvbcd42g5vd69cc05h0"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-musl-arm64"; version = "8.0.452401"; sha256 = "10vw93fn1qw9ygk7k4wnhs2db3jvaa5q9qn30dwvsx0mgf764567"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-musl-x64"; version = "8.0.452401"; sha256 = "0m3rjdsri1n5z3ck99482715bsp9kbv7dm174ac0k4za6c6hzrqf"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.linux-x64"; version = "8.0.452401"; sha256 = "13fqgkzqnciin2lizik68iki2yx53y8qry784y7yb20cnvmv50p7"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.osx-arm64"; version = "8.0.452401"; sha256 = "1vb254iy69jlnbdhh4ncnya2dcva51a7y2jmg174s8k7f3lann59"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.osx-x64"; version = "8.0.452401"; sha256 = "0kbypky3y773js6ndljgnfm7yd67x8i82a6gy9ybnbr5dsx7y32v"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.win-arm"; version = "8.0.452401"; sha256 = "1a7vsgf8bi1zc0i438d5791dbv4wdx64677px7gpfashs1zbn1fi"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.win-arm64"; version = "8.0.452401"; sha256 = "048hp1ic9qsbl1pmj798ind3pab5azlybgj5hwhlqqhghbl7dbg5"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.win-x64"; version = "8.0.452401"; sha256 = "0y8rjyg283zkd1g750jbmpiv1qsg56vcd22z9k8fj5fll1sydb6b"; })
(fetchNuGet { pname = "Microsoft.Diagnostics.DbgShim.win-x86"; version = "8.0.452401"; sha256 = "1zcpiy1nh7wm6w9dn1v3bkjscsziy2q4wyw771af8z6jibw85s8g"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
(fetchNuGet { pname = "NETStandard.Library"; version = "2.0.3"; sha256 = "1fn9fxppfcg4jgypp2pmrpr6awl3qz1xmnri0cygpkwvyx27df1y"; })
@@ -1,37 +0,0 @@
#! /usr/bin/env nix-shell
#! nix-shell -I nixpkgs=./. -i bash -p common-updater-scripts
# shellcheck shell=bash
set -euo pipefail
pname=$1
old_version=$2
url=$3
cd "$(dirname "${BASH_SOURCE[0]}")"
deps_file="$(realpath "./deps.nix")"
new_version="$(list-git-tags --url="$url" | sort --reverse --numeric-sort | head -n 1)"
if [[ "$new_version" == "$old_version" ]]; then
echo "Already up to date!"
exit 0
fi
updateVersion() {
sed -i "s/version = \"$old_version\";/version = \"$new_version\";/g" default.nix
}
updateHash() {
hashKey="hash"
hash=$(nix-prefetch-url --unpack --type sha256 "$url/archive/$new_version.tar.gz")
sed -i "s|$hashKey = \"[a-zA-Z0-9\/+-=]*\";|$hashKey = \"$hash\";|g" default.nix
}
updateVersion
updateHash
cd ../../../../../
$(nix-build -A "$pname".fetch-deps --no-out-link) "$deps_file"