diff --git a/DEPS b/DEPS index efd9f5693e5..8ef2c610198 100644 --- a/DEPS +++ b/DEPS @@ -72,6 +72,7 @@ vars = { "checkout_javascript_engines": False, "d8_tag": "version:12.1.131", "jsshell_tag": "version:120.0", + "jsc_tag": "version:273394", # https://chrome-infra-packages.appspot.com/p/fuchsia/third_party/clang "clang_version": "git_revision:b3a9e8f7c0afb00147ab6c6a6ad426de149420dd", @@ -251,6 +252,14 @@ deps = { "condition": "checkout_javascript_engines", "dep_type": "cipd", }, + Var("dart_root") + "/third_party/jsc": { + "packages": [{ + "package": "dart/third_party/jsc/linux-amd64", + "version": Var("jsc_tag"), + }], + "condition": "checkout_javascript_engines and host_os == 'linux' and host_cpu == 'x64'", + "dep_type": "cipd", + }, Var("dart_root") + "/third_party/devtools": { "packages": [{ "package": "dart/third_party/flutter/devtools", diff --git a/third_party/jsc/README.google b/third_party/jsc/README.google new file mode 100644 index 00000000000..b9b4e1f8b96 --- /dev/null +++ b/third_party/jsc/README.google @@ -0,0 +1,11 @@ +Name: The WebKit JavaScriptCore shell. +Short Name: jsc +URL: https://webkitgtk.org/jsc-built-products/x86_64/release/ +Version: 273394@main +Date: January 24, 2024 +License: GPL-2.0, https://opensource.org/license/gpl-2-0/ + +Description: +This directory contains the Webkit JavaScriptCore shell binaries. + +The binaries are used for testing dart code compiled to javascript. diff --git a/third_party/jsc/update.sh b/third_party/jsc/update.sh new file mode 100755 index 00000000000..31c2a66f94a --- /dev/null +++ b/third_party/jsc/update.sh @@ -0,0 +1,34 @@ +#!/usr/bin/env bash +# Uploads a new version of the checked in jsc CIPD packages +# jsc is the JavaScriptCore shell from WebKit. +# +# Only the latest builds for the last few days are available +# for download. They are indexed by build number. +# This script only downloads the latest build, and uploads +# it to CIPD with the build number as the version tag. +# It updates DEPS to download that version of jsc from CIPD. +set -ex + +tmpdir=$(mktemp -d) +cleanup() { + rm -rf "$tmpdir" +} +trap cleanup EXIT HUP INT QUIT TERM PIPE +pushd "$tmpdir" + +URL=https://webkitgtk.org/jsc-built-products/x86_64/release +LATEST=$(curl $URL/LAST-IS) +VERSION=${LATEST%@main.zip} +curl $URL/$LATEST --output main.zip +filename="main.zip" +unzip -q $filename -d jsc +cipd create \ + -name dart/third_party/jsc/linux-amd64 \ + -in jsc \ + -install-mode copy \ + -tag version:$VERSION +rm $filename +rm -rf jsc +popd + +gclient setdep --var="jsc_tag=version:$VERSION"