testing/dart: upgrade to 3.6.0

This commit is contained in:
LN Liberda 2024-11-26 18:57:53 +01:00 committed by Kevin Daudt
parent 4d3b61a09b
commit 690dc24789
4 changed files with 119 additions and 9 deletions

View File

@ -2,9 +2,9 @@
# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
pkgname=dart
# upgrade checklist: https://md.sdomi.pl/Q-ECZTJ2Qqyp3ahfJuYSBw
pkgver=3.5.4
pkgver=3.6.0
pkgrel=0
_bootstrap=3.5.0_alpha278_p0
_bootstrap=3.6.0_alpha2_p0
pkgdesc="Dart is a client-optimized language for fast apps on any platform"
url="https://dart.dev/"
arch="aarch64 armv7 x86_64"
@ -29,11 +29,11 @@ subpackages="$pkgname-sdk dartaotruntime"
case "$pkgver" in
*.*.*_pre*)
_canonver="${pkgver/_pre/-}"
_canonver="${_canonver/-r/.}.dev"
_canonver="${_canonver/_p/.}.dev"
;;
*.*.*_beta*)
_canonver="${pkgver/_beta/-}"
_canonver="${_canonver/-r/.}.beta"
_canonver="${_canonver/_p/.}.beta"
;;
*.*.*)
_canonver="$pkgver"
@ -48,8 +48,10 @@ source="
gcc13.patch
no-werror.patch
unbundle.patch
unbundle-icu.patch
where-we-are-heading-prefixes-are-not-needed.patch
zlib-not-found.patch
boringssl-gcc14.patch
"
builddir="$srcdir/dart-sdk-$_canonver"
@ -162,10 +164,9 @@ prepare() {
build() {
# shellcheck disable=2089
local gn_args="
create_kernel_service_snapshot=true
dart_embed_icu_data=false
dart_snapshot_kind=\"app-jit\"
dart_sysroot=\"\"
dart_use_tcmalloc=false
"
msg "Building"
@ -229,12 +230,14 @@ sdk() {
}
sha512sums="
c01619fb0b9608dae28a19766784a10442deef416eefb5ab6442dfc3a2f20745d358d893a114e6c2e310fc7c5808cdac9aea3763cd760e92b6604e505f744951 dart-sdk-3.5.4.tar.zst
5ccd4a87d4494256c1fc7593164e2b1b7195e386f66344aec64ad6f9a344947bc32755dc70ae9f42044fdb81fdde88c8418b5db30ee9bce7bd293812b4c7891f dart-wrapper.sh
80fbe8a1bacafcee331c0a60f0a0cbc738ee3e17b3bbf9868154e4f2515d9701d1ba48d8150dc4392d3661ad249cd282e87d3aa2d52f73d6c34a88d1725382fa dart-sdk-3.6.0.tar.zst
0b0980bc0b699de97e76addf6676e22c8f9544936e36903131b40f34fb915467e80e959c410ddb4519a001814c16d19af9eaaed5fd8fcb795d7bfe9e6d9df661 dart-wrapper.sh
3ae8364a172b029cf0b45cd4fd1ac192a20772c84924bb59a1775339ed6314cf81c398b078823fd9f07abc1b0de4b5704c76ce84c64f8924e645f00cfcda4ff3 build-config.patch
03562a3fa935b6819458acdfcadf24f71accf73e2000d158c1fe41aca068b21fb158350a32911c322672b592beefea1e9c7e4675a98418804e60000049a656c8 gcc13.patch
e7f5c715d9ed01c36e8b60892332b1bc763a3f98ca87905e2102491c469db60ab21dba9b3e116e1a7ec3faef7d65b8fdd60d7148cfb848ef5a2b411a06f425cf no-werror.patch
14b6b024688110631dfce6d51b895e84d4306a00e66c0e5306126f6d27cbd13894bf2c50faffab99e57107901ec3977a4b0038bee9e165f733ef9e4ccc14af1a unbundle.patch
bceba58975e827995344bb417e830201ffc809851869629758fc3d2162cf9d94c4c0a99413b1ec7b8cf52eb61646ceab40de9fc9417b5a6c162a6c7a855850cf unbundle-icu.patch
c73ca1993fab3696563a0ac6a95010da507cc774bdbf2489d71dd7a69959ec166e88e05a199cd5727225b7165aeb44561887f24c8d328953fde1c262fbafd862 where-we-are-heading-prefixes-are-not-needed.patch
460eedf708e8093e0484e3d13fc61d891f4b3c1f8c8595c962410550ef988773aea87173e3fe60626a687dcacbc7e3c531d811bbd96a8856a0c1694d5c53e4b0 zlib-not-found.patch
5a893fccb8dbaa8b33989d6d86b65cefb9af2bd09a3c29d7a0859033833bee84baf2a6faab33d16b727893ec60575a04635a9753b570f946028a6ea3e3dd170c boringssl-gcc14.patch
"

View File

@ -0,0 +1,43 @@
Patch-Source: https://github.com/google/boringssl/commit/c70190368c7040c37c1d655f0690bcde2b109a0d
From c70190368c7040c37c1d655f0690bcde2b109a0d Mon Sep 17 00:00:00 2001
From: David Benjamin <davidben@google.com>
Date: Thu, 16 May 2024 11:00:42 -0400
Subject: [PATCH] Don't define CRYPTO_addc_* and CRYPTO_subc_* in C++
GCC does not support C11 _Generic in C++ mode.
Change-Id: I974a0b04bbe4900419736044d0d8050f2b856d56
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/68507
Auto-Submit: David Benjamin <davidben@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
Reviewed-by: Adam Langley <agl@google.com>
---
crypto/internal.h | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/third_party/boringssl/src/crypto/internal.h b/third_party/boringssl/src/crypto/internal.h
index a77102d766..a45f97bcc9 100644
--- a/third_party/boringssl/src/crypto/internal.h
+++ b/third_party/boringssl/src/crypto/internal.h
@@ -1174,6 +1174,11 @@ static inline uint64_t CRYPTO_rotr_u64(uint64_t value, int shift) {
// Arithmetic functions.
+// The most efficient versions of these functions on GCC and Clang depend on C11
+// |_Generic|. If we ever need to call these from C++, we'll need to add a
+// variant that uses C++ overloads instead.
+#if !defined(__cplusplus)
+
// CRYPTO_addc_* returns |x + y + carry|, and sets |*out_carry| to the carry
// bit. |carry| must be zero or one.
#if OPENSSL_HAS_BUILTIN(__builtin_addc)
@@ -1275,6 +1280,8 @@ static inline uint64_t CRYPTO_subc_u64(uint64_t x, uint64_t y, uint64_t borrow,
#define CRYPTO_subc_w CRYPTO_subc_u32
#endif
+#endif // !__cplusplus
+
// FIPS functions.

View File

@ -6,7 +6,7 @@ set -e
# but not for standalone Dart. Emulating this behavior by only exporting
# if flutter is installed.
FLUTTER_ROOT=/usr/lib/flutter
if [ -d "$FLUTTER_ROOT" ]; then
if [ -f "$FLUTTER_ROOT/version" ]; then
export FLUTTER_ROOT
fi

View File

@ -0,0 +1,64 @@
From 0d936b3e64e1e629bd29fa4dd84240f5c5344092 Mon Sep 17 00:00:00 2001
From: LN Liberda <lauren@selfisekai.rocks>
Date: Tue, 26 Nov 2024 19:28:59 +0100
Subject: [PATCH] build: option to not embed icu data
Bug: none
---
runtime/bin/BUILD.gn | 11 ++++++++---
runtime/runtime_args.gni | 3 +++
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/runtime/bin/BUILD.gn b/runtime/bin/BUILD.gn
index 90dc09a0c02..8f88873dc18 100644
--- a/runtime/bin/BUILD.gn
+++ b/runtime/bin/BUILD.gn
@@ -795,7 +795,6 @@ template("dart_executable") {
}
deps = [
":crashpad",
- ":icudtl_cc",
"//third_party/boringssl",
"//third_party/icu:icui18n",
"//third_party/icu:icuuc",
@@ -804,7 +803,11 @@ template("dart_executable") {
if (is_fuchsia) {
deps += [ "$fuchsia_sdk/pkg/fdio" ]
}
- defines = [ "DART_EMBED_ICU_DATA" ] + extra_defines
+ defines = extra_defines
+ if (dart_embed_icu_data) {
+ defines += [ "DART_EMBED_ICU_DATA" ]
+ deps += [ ":icudtl_cc" ]
+ }
if (exclude_kernel_service) {
defines += [ "EXCLUDE_CFE_AND_KERNEL_PLATFORM" ]
}
@@ -911,10 +911,12 @@
"..:add_empty_macho_section_config",
]
extra_deps = [
- ":icudtl_cc",
"..:libdart_precompiled_runtime",
"../platform:libdart_platform_precompiled_runtime",
]
+ if (dart_embed_icu_data) {
+ extra_deps += [ ":icudtl_cc" ]
+ }
if (dart_runtime_mode != "release") {
extra_deps += [ "../observatory:standalone_observatory_archive" ]
}
diff --git a/runtime/runtime_args.gni b/runtime/runtime_args.gni
index fbcfeb157fb..061e8f74a5c 100644
--- a/runtime/runtime_args.gni
+++ b/runtime/runtime_args.gni
@@ -77,6 +77,9 @@ declare_args() {
# Whether to support dynamic loading and interpretation of Dart bytecode.
dart_dynamic_modules = false
+
+ # Whether to embed ICU data inside the runtime binary.
+ dart_embed_icu_data = true
}
declare_args() {