未验证 提交 101d85a5 编写于 作者: H Hidenori Matsubayashi 提交者: GitHub

Add support of cross-building the engine for ARM64 Linux Host (#20254)

Added cross-building Flutter Engine for ARM64 Linux platforms. This PR is part of ARM64 Linux support in the Flutter SDK.
上级 f16657fa
...@@ -15,4 +15,5 @@ Simon Lightfoot <simon@devangels.london> ...@@ -15,4 +15,5 @@ Simon Lightfoot <simon@devangels.london>
Dwayne Slater <ds84182@gmail.com> Dwayne Slater <ds84182@gmail.com>
Tetsuhiro Ueda <najeira@gmail.com> Tetsuhiro Ueda <najeira@gmail.com>
shoryukenn <naifu.guan@gmail.com> shoryukenn <naifu.guan@gmail.com>
SOTEC GmbH & Co. KG <sotec-contributors@sotec.eu> SOTEC GmbH & Co. KG <sotec-contributors@sotec.eu>
\ No newline at end of file Hidenori Matsubayashi <Hidenori.Matsubayashi@sony.com>
\ No newline at end of file
...@@ -45,6 +45,11 @@ group("flutter") { ...@@ -45,6 +45,11 @@ group("flutter") {
"//flutter/sky", "//flutter/sky",
] ]
# Flutter SDK artifacts should only be built when either doing host builds, or
# for cross-compiled desktop targets.
build_engine_artifacts =
current_toolchain == host_toolchain || (is_linux && !is_chromeos)
# If enbaled, compile the SDK / snapshot. # If enbaled, compile the SDK / snapshot.
if (!is_fuchsia) { if (!is_fuchsia) {
public_deps += [ public_deps += [
...@@ -52,7 +57,7 @@ group("flutter") { ...@@ -52,7 +57,7 @@ group("flutter") {
"//flutter/lib/snapshot:kernel_platform_files", "//flutter/lib/snapshot:kernel_platform_files",
] ]
if (current_toolchain == host_toolchain) { if (build_engine_artifacts) {
public_deps += [ public_deps += [
"//flutter/flutter_frontend_server:frontend_server", "//flutter/flutter_frontend_server:frontend_server",
"//third_party/dart:create_sdk", "//third_party/dart:create_sdk",
...@@ -64,8 +69,7 @@ group("flutter") { ...@@ -64,8 +69,7 @@ group("flutter") {
} }
} }
# If on the host, compile tools. if (build_engine_artifacts) {
if (current_toolchain == host_toolchain) {
public_deps += [ public_deps += [
"//flutter/shell/testing", "//flutter/shell/testing",
"//flutter/tools/const_finder", "//flutter/tools/const_finder",
......
...@@ -616,7 +616,7 @@ hooks = [ ...@@ -616,7 +616,7 @@ hooks = [
], ],
}, },
{ {
'name': 'linux_sysroot', 'name': 'linux_sysroot_x64',
'pattern': '.', 'pattern': '.',
'condition': 'download_linux_deps', 'condition': 'download_linux_deps',
'action': [ 'action': [
...@@ -624,6 +624,15 @@ hooks = [ ...@@ -624,6 +624,15 @@ hooks = [
'src/build/linux/sysroot_scripts/install-sysroot.py', 'src/build/linux/sysroot_scripts/install-sysroot.py',
'--arch=x64'], '--arch=x64'],
}, },
{
'name': 'linux_sysroot_arm64',
'pattern': '.',
'condition': 'download_linux_deps',
'action': [
'python',
'src/build/linux/sysroot_scripts/install-sysroot.py',
'--arch=arm64'],
},
{ {
'name': 'dart package config', 'name': 'dart package config',
'pattern': '.', 'pattern': '.',
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册