Trigger Build Part Deux (#160481)

Hello, Monorepo Part Deux - after adding commit to datastore.
This commit is contained in:
John McDole 2024-12-18 12:18:06 -08:00 committed by GitHub
parent 1398dc7eec
commit f0bf495594
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
11 changed files with 188 additions and 63 deletions

View File

@ -802,12 +802,14 @@ targets:
- name: Linux fuchsia_precache
recipe: flutter/flutter_drone
timeout: 60
presubmit: false
properties:
shard: fuchsia_precache
tags: >
["framework", "hostonly", "shard", "linux"]
runIf:
- bin/internal/engine.version
- engine/**
- DEPS
- .ci.yaml
- name: Linux gradle_desugar_classes_test
@ -962,6 +964,7 @@ targets:
- name: Linux build_android_host_app_with_module_source
recipe: devicelab/devicelab_drone
timeout: 60
presubmit: false
properties:
dependencies: >-
[
@ -1156,7 +1159,8 @@ targets:
tags: >
["framework", "hostonly", "shard", "linux"]
runIf:
- bin/internal/engine.version
- engine/**
- DEPS
- .ci.yaml
- name: Linux tool_integration_tests_1_6
@ -2606,7 +2610,8 @@ targets:
# presubmit during engine rolls. This test is the *only* automated e2e
# test for external textures for the engine, it should never break.
runIf:
- bin/internal/engine.version
- engine/**
- DEPS
- .ci.yaml
properties:
tags: >
@ -2621,7 +2626,8 @@ targets:
# presubmit during engine rolls. This test is the *only* automated e2e
# test for external textures for the engine, it should never break.
runIf:
- bin/internal/engine.version
- engine/**
- DEPS
- .ci.yaml
properties:
tags: >
@ -4111,6 +4117,7 @@ targets:
- name: Mac build_android_host_app_with_module_source
recipe: devicelab/devicelab_drone
timeout: 60
presubmit: false
properties:
dependencies: >-
[
@ -5791,6 +5798,7 @@ targets:
- name: Windows build_android_host_app_with_module_source
recipe: devicelab/devicelab_drone
timeout: 60
presubmit: false
properties:
dependencies: >-
[

3
.github/labeler.yml vendored
View File

@ -63,7 +63,8 @@
engine:
- changed-files:
- any-glob-to-any-file:
- bin/internal/engine.version
- DEPS
- engine/**/*
- docs/engine/**/*
'f: cupertino':

View File

@ -1,23 +1,11 @@
## Flutter SDK dependency versions
# Flutter SDK dependency versions
The files in this directory specifies pinned versions of various
dependencies of the flutter SDK.
The `bin/internal/engine.version` file controls which version of the
Flutter engine to use. The file contains the commit hash of a commit
in the <https://github.com/flutter/engine> repository. That hash must
have successfully been compiled on
<https://build.chromium.org/p/client.flutter/> and had its artifacts
(the binaries that run on Android and iOS, the compiler, etc)
successfully uploaded to Google Cloud Storage.
The `/bin/internal/engine.merge_method` file controls how we merge a
pull request created by the engine auto-roller. If it's `squash`,
there's only one commit for a pull request no matter how many engine
commits there are inside that pull request. If it's `rebase`, the
number of commits in the framework is equal to the number of engine
commits in the pull request. The latter method makes it easier to
detect regressions but costs more test resources.
The `bin/internal/engine.version` file controls where to find compiled artifacts
of the engine. These artifacts are compiled in the Merge Queue for every commit
in the flutter repository.
The `bin/internal/flutter_packages.version` file specifies the version
of the `flutter/packages` repository to be used for testing. The

View File

@ -1 +0,0 @@
6a75cb6a6a57ae5a05309a43f0fba6cd50c65752

View File

@ -20,14 +20,45 @@ $cachePath = "$flutterRoot\bin\cache"
$dartSdkPath = "$cachePath\dart-sdk"
$dartSdkLicense = "$cachePath\LICENSE.dart_sdk_archive.md"
$engineStamp = "$cachePath\engine-dart-sdk.stamp"
$engineRealm = (Get-Content "$flutterRoot\bin\internal\engine.realm")
$engineRealm = ""
if (Test-Path "$flutterRoot\bin\internal\engine.version") {
$engineVersion = (Get-Content "$flutterRoot\bin\internal\engine.version")
} else {
# Test for fusion repository
if ((Test-Path "$flutterRoot\DEPS" -PathType Leaf) -and (Test-Path "$flutterRoot\engine\src\.gn" -PathType Leaf)) {
# Calculate the engine hash from tracked git files.
$lsTree = ((git ls-tree -r HEAD engine DEPS) | Out-String).Replace("`r`n", "`n")
$engineVersion = (Get-FileHash -InputStream ([System.IO.MemoryStream] [System.Text.Encoding]::UTF8.GetBytes($lsTree)) -Algorithm SHA1 | ForEach-Object { $_.Hash }).ToLower()
$branch = (git -C "$flutterRoot" rev-parse --abbrev-ref HEAD)
if ($null -eq $Env:LUCI_CONTEXT) {
$engineVersion = (git -C "$flutterRoot" merge-base HEAD upstream/master)
}
else {
$engineVersion = (git -C "$flutterRoot" rev-parse HEAD)
}
if (($branch -ne "stable" -and $branch -ne "beta")) {
# Write the engine version out so downstream tools know what to look for.
$utf8NoBom = New-Object System.Text.UTF8Encoding($false)
[System.IO.File]::WriteAllText("$flutterRoot\bin\internal\engine.version", $engineVersion, $utf8NoBom)
# The realm on CI is passed in.
if ($Env:FLUTTER_REALM) {
[System.IO.File]::WriteAllText("$flutterRoot\bin\internal\engine.realm", $Env:FLUTTER_REALM, $utf8NoBom)
$engineRealm = "$Env:FLUTTER_REALM"
}
else {
if (Test-Path -Path "$flutterRoot\bin\internal\engine.realm") {
$engineRealm = (Get-Content "$flutterRoot\bin\internal\engine.realm")
}
}
}
else {
# Release branch - these files will exist
$engineVersion = (Get-Content "$flutterRoot\bin\internal\engine.version")
$engineRealm = (Get-Content "$flutterRoot\bin\internal\engine.realm")
}
}
else {
# Non-fusion repository - these files will exist
$engineVersion = (Get-Content "$flutterRoot\bin\internal\engine.version")
$engineRealm = (Get-Content "$flutterRoot\bin\internal\engine.realm")
}
$oldDartSdkPrefix = "dart-sdk.old"

View File

@ -19,16 +19,41 @@ FLUTTER_ROOT="$(dirname "$(dirname "$(dirname "${BASH_SOURCE[0]}")")")"
DART_SDK_PATH="$FLUTTER_ROOT/bin/cache/dart-sdk"
DART_SDK_PATH_OLD="$DART_SDK_PATH.old"
ENGINE_STAMP="$FLUTTER_ROOT/bin/cache/engine-dart-sdk.stamp"
ENGINE_REALM=$(cat "$FLUTTER_ROOT/bin/internal/engine.realm" | tr -d '[:space:]')
ENGINE_REALM=""
OS="$(uname -s)"
ENGINE_VERSION=""
if [ -f "$FLUTTER_ROOT/bin/internal/engine.version" ]; then
ENGINE_VERSION=$(cat "$FLUTTER_ROOT/bin/internal/engine.version")
# Test for fusion repository
if [ -f "$FLUTTER_ROOT/DEPS" ] && [ -f "$FLUTTER_ROOT/engine/src/.gn" ]; then
BRANCH=$(git -C "$FLUTTER_ROOT" rev-parse --abbrev-ref HEAD)
# In a fusion repository; the engine.version comes from the git hashes.
if [ -z "${LUCI_CONTEXT}" ]; then
ENGINE_VERSION=$(git -C "$FLUTTER_ROOT" merge-base HEAD upstream/master)
else
ENGINE_VERSION=$(git -C "$FLUTTER_ROOT" rev-parse HEAD)
fi
if [[ "$BRANCH" != "stable" && "$BRANCH" != "beta" ]]; then
# Write the engine version out so downstream tools know what to look for.
echo $ENGINE_VERSION > "$FLUTTER_ROOT/bin/internal/engine.version"
# The realm on CI is passed in.
if [ -n "${FLUTTER_REALM}" ]; then
echo $FLUTTER_REALM > "$FLUTTER_ROOT/bin/internal/engine.realm"
ENGINE_REALM="$FLUTTER_REALM"
else
if [ -f "$FLUTTER_ROOT/bin/internal/engine.realm" ]; then
ENGINE_REALM=$(cat "$FLUTTER_ROOT/bin/internal/engine.realm" | tr -d '[:space:]')
fi
fi
else
# Release branch - these files will exist
ENGINE_VERSION=$(cat "$FLUTTER_ROOT/bin/internal/engine.version")
ENGINE_REALM=$(cat "$FLUTTER_ROOT/bin/internal/engine.realm" | tr -d '[:space:]')
fi
else
# Calculate the engine hash from tracked git files.
# The array takes the first part of the sha1sum string.
ENGINE_VERSION=($(git ls-tree HEAD -r engine DEPS | sha1sum))
# Non-fusion repository - these files will exist
ENGINE_VERSION=$(cat "$FLUTTER_ROOT/bin/internal/engine.version")
ENGINE_REALM=$(cat "$FLUTTER_ROOT/bin/internal/engine.realm" | tr -d '[:space:]')
fi
if [ ! -f "$ENGINE_STAMP" ] || [ "$ENGINE_VERSION" != `cat "$ENGINE_STAMP"` ]; then

8
engine/src/.clang-format Normal file
View File

@ -0,0 +1,8 @@
# Defines the Chromium style for automatic reformatting.
# http://clang.llvm.org/docs/ClangFormatStyleOptions.html
BasedOnStyle: Chromium
# This defaults to 'Auto'. Explicitly set it for a while, so that
# 'vector<vector<int> >' in existing files gets formatted to
# 'vector<vector<int>>'. ('Auto' means that clang-format will only use
# 'int>>' if the file already contains at least one such instance.)
Standard: Cpp11

View File

@ -1,20 +0,0 @@
{
"clangd.path": "${workspaceFolder}/buildtools/mac-arm64/clang/bin/clangd",
"clangd.arguments": [
"--compile-commands-dir=${workspaceFolder}/../out/host_debug_unopt_arm64"
],
"clang-format.executable": "${workspaceRoot}/buildtools/mac-arm64/clang/bin/clang-format",
// "clangd.path": "flutter/buildtools/mac-arm64/clang/bin/clangd",
// "clangd.arguments": [
// "--compile-commands-dir=out/host_debug_unopt_arm64"
// ],
// "clang-format.executable": "flutter/buildtools/mac-arm64/clang/bin/clang-format",
"search.followSymlinks": true,
"search.quickOpen.includeHistory": true,
"search.quickOpen.includeSymbols": false,
"search.useIgnoreFiles": false,
"editor.tabSize": 2,
}

View File

@ -396,14 +396,6 @@ targets:
# For more details see the issue
# at https://github.com/flutter/flutter/issues/152186.
cores: "8"
runIf:
- DEPS
- engine/src/flutter/.ci.yaml
- engine/src/flutter/lib/web_ui/**
- engine/src/flutter/web_sdk/**
- engine/src/flutter/tools/**
- engine/src/flutter/ci/**
- engine/src/flutter/flutter_frontend_server/**
- name: Linux clangd
recipe: engine_v2/builder

View File

@ -0,0 +1,93 @@
# Copyright 2014 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/android/config.gni")
import("//build/config/arm.gni")
import("//build/config/compiler/compiler.gni")
import("//build/config/sanitizers/sanitizers.gni")
import("//build_overrides/build.gni")
import("src/gen/sources.gni")
# Config for us and everybody else depending on BoringSSL.
config("external_config") {
include_dirs = [ "src/include" ]
if (is_component_build) {
defines = [ "BORINGSSL_SHARED_LIBRARY" ]
}
}
# The config used by the :boringssl component itself, and the fuzzer copies.
config("component_config") {
visibility = [ ":*" ]
configs = [ ":internal_config" ]
defines = [ "BORINGSSL_IMPLEMENTATION" ]
cflags_c = [ "-std=c17" ]
}
# This config is used by anything that consumes internal headers. Tests consume
# this rather than :component_config.
config("internal_config") {
visibility = [ ":*" ]
defines = [
"OPENSSL_SMALL",
"OPENSSL_STATIC_ARMCAP",
]
if (is_posix) {
defines += [ "_XOPEN_SOURCE=700" ]
}
}
config("no_asm_config") {
visibility = [ ":*" ]
defines = [ "OPENSSL_NO_ASM" ]
}
# TODO(crbug.com/42290535): Move Chromium's use of libpki to the public API and
# unexport pki_internal_headers.
all_sources = bcm_internal_headers + bcm_sources + crypto_internal_headers +
crypto_sources + ssl_internal_headers + ssl_sources + pki_sources
all_headers = crypto_headers + ssl_headers + pki_headers + pki_internal_headers
if (is_msan) {
# MSan instrumentation is incompatible with assembly optimizations.
# BoringSSL's GAS-compatible assembly knows how to detect MSan, but the NASM
# assembly does not, so we check for MSan explicitly.
source_set("boringssl_asm") {
visibility = [ ":*" ]
public_configs = [ ":no_asm_config" ]
}
} else if (is_win && (current_cpu == "x86" || current_cpu == "x64")) {
# Windows' x86 and x86_64 assembly is built with NASM.
source_set("boringssl_asm") {
visibility = [ ":*" ]
public_configs = [ ":no_asm_config" ]
}
} else {
# All other targets use GAS-compatible assembler. BoringSSL's assembly files
# are all wrapped in processor checks for the corresponding target, so there
# is no need to add target conditions in the build.
source_set("boringssl_asm") {
visibility = [ ":*" ]
sources = rebase_path(bcm_sources_asm + crypto_sources_asm, ".", "src")
include_dirs = [ "src/include" ]
}
}
source_set("boringssl") {
sources = rebase_path(all_sources, ".", "src")
public = rebase_path(all_headers, ".", "src")
if (is_win) {
configs += [ ":no_asm_config" ]
} else {
deps = [ ":boringssl_asm" ]
}
public_configs = [ ":external_config" ]
configs += [ ":component_config" ]
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [ "//build/config/compiler:no_chromium_code" ]
}