mirror of
https://git.launchpad.net/~vhaudiquet/+git/flutter-artifacts-proxy
synced 2026-03-04 11:25:54 +00:00
Add flutter 3.41.2
This commit is contained in:
@@ -44,3 +44,15 @@ parts:
|
|||||||
override-prime: |
|
override-prime: |
|
||||||
mkdir -p $CRAFT_PRIME/src/static/flutter_infra_release/flutter/587c18f873b8ab57330422bce09047420d9c7f42/
|
mkdir -p $CRAFT_PRIME/src/static/flutter_infra_release/flutter/587c18f873b8ab57330422bce09047420d9c7f42/
|
||||||
mv $CRAFT_PART_SRC/output/* $CRAFT_PRIME/src/static/flutter_infra_release/flutter/587c18f873b8ab57330422bce09047420d9c7f42/
|
mv $CRAFT_PART_SRC/output/* $CRAFT_PRIME/src/static/flutter_infra_release/flutter/587c18f873b8ab57330422bce09047420d9c7f42/
|
||||||
|
|
||||||
|
flutter-3.41.2:
|
||||||
|
plugin: nil
|
||||||
|
build-packages:
|
||||||
|
- curl
|
||||||
|
override-pull: |
|
||||||
|
curl -L -O https://code.launchpad.net/~vhaudiquet/+git/flutter/+artifact/445409/+files/flutter-artifacts-riscv64.tar.gz
|
||||||
|
override-build: |
|
||||||
|
tar -C $CRAFT_PART_SRC -xzf flutter-artifacts-riscv64.tar.gz
|
||||||
|
override-prime: |
|
||||||
|
mkdir -p $CRAFT_PRIME/src/static/flutter_infra_release/flutter/6c0baaebf70e0148f485f27d5616b3d3382da7bf/
|
||||||
|
mv $CRAFT_PART_SRC/output/* $CRAFT_PRIME/src/static/flutter_infra_release/flutter/6c0baaebf70e0148f485f27d5616b3d3382da7bf/
|
||||||
|
|||||||
@@ -50,5 +50,7 @@
|
|||||||
<h2>Hosted artifacts:</h2>
|
<h2>Hosted artifacts:</h2>
|
||||||
<h3>Flutter 3.38.9 - <a href="flutter_infra_release/flutter/587c18f873b8ab57330422bce09047420d9c7f42/">587c18f873b8ab57330422bce09047420d9c7f42</a></h3>
|
<h3>Flutter 3.38.9 - <a href="flutter_infra_release/flutter/587c18f873b8ab57330422bce09047420d9c7f42/">587c18f873b8ab57330422bce09047420d9c7f42</a></h3>
|
||||||
<p style="margin-left: 20px;"><a href="https://code.launchpad.net/~vhaudiquet/+git/flutter/+build/207763">Launchpad build</a> <a href="tool/3.38.9.patch">Tool patch</a></p>
|
<p style="margin-left: 20px;"><a href="https://code.launchpad.net/~vhaudiquet/+git/flutter/+build/207763">Launchpad build</a> <a href="tool/3.38.9.patch">Tool patch</a></p>
|
||||||
|
<h3>Flutter 3.41.2 - <a href="flutter_infra_release/flutter/6c0baaebf70e0148f485f27d5616b3d3382da7bf/">6c0baaebf70e0148f485f27d5616b3d3382da7bf</a></h3>
|
||||||
|
<p style="margin-left: 20px;"><a href="https://code.launchpad.net/~vhaudiquet/+git/flutter/+build/212249">Launchpad build</a> <a href="tool/3.41.2.patch">Tool patch</a></p>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
660
src/static/tool/3.41.2.patch
Normal file
660
src/static/tool/3.41.2.patch
Normal file
@@ -0,0 +1,660 @@
|
|||||||
|
diff --git a/bin/internal/update_dart_sdk.sh b/bin/internal/update_dart_sdk.sh
|
||||||
|
index 9ab6151021a..878c9e59ea9 100755
|
||||||
|
--- a/bin/internal/update_dart_sdk.sh
|
||||||
|
+++ b/bin/internal/update_dart_sdk.sh
|
||||||
|
@@ -89,6 +89,9 @@ if [ ! -f "$ENGINE_STAMP" ] || [ "$ENGINE_VERSION" != `cat "$ENGINE_STAMP"` ]; t
|
||||||
|
x86_64)
|
||||||
|
ARCH="x64"
|
||||||
|
;;
|
||||||
|
+ riscv64)
|
||||||
|
+ ARCH="riscv64"
|
||||||
|
+ ;;
|
||||||
|
*)
|
||||||
|
ARCH="arm64"
|
||||||
|
;;
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/android/android_device.dart b/packages/flutter_tools/lib/src/android/android_device.dart
|
||||||
|
index d95c9ee2a1a..612388310ff 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/android/android_device.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/android/android_device.dart
|
||||||
|
@@ -228,6 +228,7 @@ class AndroidDevice extends Device {
|
||||||
|
case TargetPlatform.fuchsia_x64:
|
||||||
|
case TargetPlatform.ios:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.tester:
|
||||||
|
case TargetPlatform.web_javascript:
|
||||||
|
@@ -551,6 +552,7 @@ class AndroidDevice extends Device {
|
||||||
|
case TargetPlatform.fuchsia_x64:
|
||||||
|
case TargetPlatform.ios:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.tester:
|
||||||
|
case TargetPlatform.web_javascript:
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/artifacts.dart b/packages/flutter_tools/lib/src/artifacts.dart
|
||||||
|
index 545b594ec45..3cb6fd2f21a 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/artifacts.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/artifacts.dart
|
||||||
|
@@ -30,6 +30,7 @@ enum Artifact {
|
||||||
|
/// The tool which compiles a dart kernel file into native code.
|
||||||
|
genSnapshot,
|
||||||
|
genSnapshotArm64,
|
||||||
|
+ genSnapshotRiscv64,
|
||||||
|
genSnapshotX64,
|
||||||
|
|
||||||
|
/// The flutter tester binary.
|
||||||
|
@@ -155,6 +156,7 @@ TargetPlatform? _mapTargetPlatform(TargetPlatform? targetPlatform) {
|
||||||
|
case TargetPlatform.darwin:
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.windows_x64:
|
||||||
|
case TargetPlatform.windows_arm64:
|
||||||
|
case TargetPlatform.fuchsia_arm64:
|
||||||
|
@@ -177,6 +179,8 @@ String? _artifactToFileName(Artifact artifact, Platform hostPlatform, [BuildMode
|
||||||
|
return 'gen_snapshot';
|
||||||
|
case Artifact.genSnapshotArm64:
|
||||||
|
return 'gen_snapshot_arm64';
|
||||||
|
+ case Artifact.genSnapshotRiscv64:
|
||||||
|
+ return 'gen_snapshot_riscv64';
|
||||||
|
case Artifact.genSnapshotX64:
|
||||||
|
return 'gen_snapshot_x64';
|
||||||
|
case Artifact.flutterTester:
|
||||||
|
@@ -519,6 +523,7 @@ class CachedArtifacts implements Artifacts {
|
||||||
|
case TargetPlatform.darwin:
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.windows_x64:
|
||||||
|
case TargetPlatform.windows_arm64:
|
||||||
|
return _getDesktopArtifactPath(artifact, platform!, mode);
|
||||||
|
@@ -550,6 +555,7 @@ class CachedArtifacts implements Artifacts {
|
||||||
|
switch (artifact) {
|
||||||
|
case Artifact.genSnapshot:
|
||||||
|
case Artifact.genSnapshotArm64:
|
||||||
|
+ case Artifact.genSnapshotRiscv64:
|
||||||
|
case Artifact.genSnapshotX64:
|
||||||
|
return _fileSystem.path.join(engineDir, _artifactToFileName(artifact, _platform));
|
||||||
|
case Artifact.engineDartSdkPath:
|
||||||
|
@@ -590,6 +596,7 @@ class CachedArtifacts implements Artifacts {
|
||||||
|
switch (artifact) {
|
||||||
|
case Artifact.genSnapshot:
|
||||||
|
case Artifact.genSnapshotArm64:
|
||||||
|
+ case Artifact.genSnapshotRiscv64:
|
||||||
|
case Artifact.genSnapshotX64:
|
||||||
|
assert(mode != BuildMode.debug, 'Artifact $artifact only available in non-debug mode.');
|
||||||
|
|
||||||
|
@@ -647,6 +654,7 @@ class CachedArtifacts implements Artifacts {
|
||||||
|
switch (artifact) {
|
||||||
|
case Artifact.genSnapshot:
|
||||||
|
case Artifact.genSnapshotArm64:
|
||||||
|
+ case Artifact.genSnapshotRiscv64:
|
||||||
|
case Artifact.genSnapshotX64:
|
||||||
|
case Artifact.flutterXcframework:
|
||||||
|
final String artifactFileName = _artifactToFileName(artifact, _platform)!;
|
||||||
|
@@ -699,6 +707,7 @@ class CachedArtifacts implements Artifacts {
|
||||||
|
final genSnapshot = mode.isRelease ? 'gen_snapshot_product' : 'gen_snapshot';
|
||||||
|
return _fileSystem.path.join(root, runtime, 'dart_binaries', genSnapshot);
|
||||||
|
case Artifact.genSnapshotArm64:
|
||||||
|
+ case Artifact.genSnapshotRiscv64:
|
||||||
|
case Artifact.genSnapshotX64:
|
||||||
|
throw ArgumentError('$artifact is not available on this platform');
|
||||||
|
case Artifact.flutterPatchedSdkPath:
|
||||||
|
@@ -757,6 +766,7 @@ class CachedArtifacts implements Artifacts {
|
||||||
|
switch (artifact) {
|
||||||
|
case Artifact.genSnapshot:
|
||||||
|
case Artifact.genSnapshotArm64:
|
||||||
|
+ case Artifact.genSnapshotRiscv64:
|
||||||
|
case Artifact.genSnapshotX64:
|
||||||
|
// For script snapshots any gen_snapshot binary will do. Returning gen_snapshot for
|
||||||
|
// android_arm in profile mode because it is available on all supported host platforms.
|
||||||
|
@@ -878,6 +888,7 @@ class CachedArtifacts implements Artifacts {
|
||||||
|
switch (platform) {
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.darwin:
|
||||||
|
case TargetPlatform.windows_x64:
|
||||||
|
case TargetPlatform.windows_arm64:
|
||||||
|
@@ -919,9 +930,11 @@ TargetPlatform _currentHostPlatform(Platform platform, OperatingSystemUtils oper
|
||||||
|
return TargetPlatform.darwin;
|
||||||
|
}
|
||||||
|
if (platform.isLinux) {
|
||||||
|
- return operatingSystemUtils.hostPlatform == HostPlatform.linux_x64
|
||||||
|
- ? TargetPlatform.linux_x64
|
||||||
|
- : TargetPlatform.linux_arm64;
|
||||||
|
+ return switch (operatingSystemUtils.hostPlatform) {
|
||||||
|
+ HostPlatform.linux_x64 => TargetPlatform.linux_x64,
|
||||||
|
+ HostPlatform.linux_riscv64 => TargetPlatform.linux_riscv64,
|
||||||
|
+ _ => TargetPlatform.linux_arm64,
|
||||||
|
+ };
|
||||||
|
}
|
||||||
|
if (platform.isWindows) {
|
||||||
|
return operatingSystemUtils.hostPlatform == HostPlatform.windows_arm64
|
||||||
|
@@ -1197,6 +1210,7 @@ class CachedLocalEngineArtifacts implements Artifacts {
|
||||||
|
switch (artifact) {
|
||||||
|
case Artifact.genSnapshot:
|
||||||
|
case Artifact.genSnapshotArm64:
|
||||||
|
+ case Artifact.genSnapshotRiscv64:
|
||||||
|
case Artifact.genSnapshotX64:
|
||||||
|
return _genSnapshotPath(artifact);
|
||||||
|
case Artifact.flutterTester:
|
||||||
|
@@ -1338,6 +1352,8 @@ class CachedLocalEngineArtifacts implements Artifacts {
|
||||||
|
switch (hostPlatform) {
|
||||||
|
case TargetPlatform.darwin:
|
||||||
|
return 'macos-x64';
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
+ return 'linux-riscv64';
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
return 'linux-arm64';
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
@@ -1373,6 +1389,7 @@ class CachedLocalEngineArtifacts implements Artifacts {
|
||||||
|
'clang_x86',
|
||||||
|
'clang_i386',
|
||||||
|
'clang_arm64',
|
||||||
|
+ 'clang_riscv64',
|
||||||
|
];
|
||||||
|
final String genSnapshotName = _artifactToFileName(artifact, _platform)!;
|
||||||
|
for (final clangDir in clangDirs) {
|
||||||
|
@@ -1445,6 +1462,7 @@ class CachedLocalWebSdkArtifacts implements Artifacts {
|
||||||
|
);
|
||||||
|
case Artifact.genSnapshot:
|
||||||
|
case Artifact.genSnapshotArm64:
|
||||||
|
+ case Artifact.genSnapshotRiscv64:
|
||||||
|
case Artifact.genSnapshotX64:
|
||||||
|
case Artifact.flutterTester:
|
||||||
|
case Artifact.flutterFramework:
|
||||||
|
@@ -1570,6 +1588,8 @@ class CachedLocalWebSdkArtifacts implements Artifacts {
|
||||||
|
return 'macos-x64';
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
return 'linux-arm64';
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
+ return 'linux-riscv64';
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
return 'linux-x64';
|
||||||
|
case TargetPlatform.windows_x64:
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/base/build.dart b/packages/flutter_tools/lib/src/base/build.dart
|
||||||
|
index bb967d7111b..c98c7c62500 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/base/build.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/base/build.dart
|
||||||
|
@@ -354,6 +354,7 @@ class AOTSnapshotter {
|
||||||
|
TargetPlatform.darwin,
|
||||||
|
TargetPlatform.linux_x64,
|
||||||
|
TargetPlatform.linux_arm64,
|
||||||
|
+ TargetPlatform.linux_riscv64,
|
||||||
|
TargetPlatform.windows_x64,
|
||||||
|
TargetPlatform.windows_arm64,
|
||||||
|
].contains(platform);
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/base/os.dart b/packages/flutter_tools/lib/src/base/os.dart
|
||||||
|
index 5b499fef54f..297bf10159c 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/base/os.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/base/os.dart
|
||||||
|
@@ -279,6 +279,8 @@ class _PosixUtils extends OperatingSystemUtils {
|
||||||
|
);
|
||||||
|
} else if (hostPlatformCheck.stdout.trim().endsWith('x86_64')) {
|
||||||
|
_hostPlatform = HostPlatform.linux_x64;
|
||||||
|
+ } else if (hostPlatformCheck.stdout.trim().endsWith('riscv64')) {
|
||||||
|
+ _hostPlatform = HostPlatform.linux_riscv64;
|
||||||
|
} else {
|
||||||
|
// We default to ARM if it's not x86_64 and we did not get an error.
|
||||||
|
_hostPlatform = HostPlatform.linux_arm64;
|
||||||
|
@@ -611,6 +613,7 @@ enum HostPlatform {
|
||||||
|
darwin_arm64,
|
||||||
|
linux_x64,
|
||||||
|
linux_arm64,
|
||||||
|
+ linux_riscv64,
|
||||||
|
windows_x64,
|
||||||
|
windows_arm64;
|
||||||
|
|
||||||
|
@@ -619,6 +622,7 @@ enum HostPlatform {
|
||||||
|
HostPlatform.darwin_arm64 => 'arm64',
|
||||||
|
HostPlatform.linux_x64 => 'x64',
|
||||||
|
HostPlatform.linux_arm64 => 'arm64',
|
||||||
|
+ HostPlatform.linux_riscv64 => 'riscv64',
|
||||||
|
HostPlatform.windows_x64 => 'x64',
|
||||||
|
HostPlatform.windows_arm64 => 'arm64',
|
||||||
|
};
|
||||||
|
@@ -630,6 +634,7 @@ String getNameForHostPlatform(HostPlatform platform) {
|
||||||
|
HostPlatform.darwin_arm64 => 'darwin-arm64',
|
||||||
|
HostPlatform.linux_x64 => 'linux-x64',
|
||||||
|
HostPlatform.linux_arm64 => 'linux-arm64',
|
||||||
|
+ HostPlatform.linux_riscv64 => 'linux-riscv64',
|
||||||
|
HostPlatform.windows_x64 => 'windows-x64',
|
||||||
|
HostPlatform.windows_arm64 => 'windows-arm64',
|
||||||
|
};
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/build_info.dart b/packages/flutter_tools/lib/src/build_info.dart
|
||||||
|
index 6867be4c62a..26bd76d28b1 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/build_info.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/build_info.dart
|
||||||
|
@@ -582,6 +582,7 @@ enum TargetPlatform {
|
||||||
|
darwin,
|
||||||
|
linux_x64,
|
||||||
|
linux_arm64,
|
||||||
|
+ linux_riscv64,
|
||||||
|
windows_x64,
|
||||||
|
windows_arm64,
|
||||||
|
fuchsia_arm64,
|
||||||
|
@@ -610,6 +611,7 @@ enum TargetPlatform {
|
||||||
|
case TargetPlatform.darwin:
|
||||||
|
case TargetPlatform.ios:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.tester:
|
||||||
|
case TargetPlatform.web_javascript:
|
||||||
|
@@ -624,6 +626,7 @@ enum TargetPlatform {
|
||||||
|
switch (this) {
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
return 'linux';
|
||||||
|
case TargetPlatform.darwin:
|
||||||
|
return 'macos';
|
||||||
|
@@ -658,6 +661,8 @@ enum TargetPlatform {
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
case TargetPlatform.windows_arm64:
|
||||||
|
return 'arm64';
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
+ return 'riscv64';
|
||||||
|
case TargetPlatform.android:
|
||||||
|
case TargetPlatform.android_arm:
|
||||||
|
case TargetPlatform.android_arm64:
|
||||||
|
@@ -792,6 +797,7 @@ String getNameForTargetPlatform(TargetPlatform platform, {DarwinArch? darwinArch
|
||||||
|
TargetPlatform.android_x64 => 'android-x64',
|
||||||
|
TargetPlatform.linux_x64 => 'linux-x64',
|
||||||
|
TargetPlatform.linux_arm64 => 'linux-arm64',
|
||||||
|
+ TargetPlatform.linux_riscv64 => 'linux-riscv64',
|
||||||
|
TargetPlatform.windows_x64 => 'windows-x64',
|
||||||
|
TargetPlatform.windows_arm64 => 'windows-arm64',
|
||||||
|
TargetPlatform.fuchsia_arm64 => 'fuchsia-arm64',
|
||||||
|
@@ -817,6 +823,7 @@ TargetPlatform getTargetPlatformForName(String platform) {
|
||||||
|
'darwin' || 'darwin-x64' || 'darwin-arm64' => TargetPlatform.darwin,
|
||||||
|
'linux-x64' => TargetPlatform.linux_x64,
|
||||||
|
'linux-arm64' => TargetPlatform.linux_arm64,
|
||||||
|
+ 'linux-riscv64' => TargetPlatform.linux_riscv64,
|
||||||
|
'windows-x64' => TargetPlatform.windows_x64,
|
||||||
|
'windows-arm64' => TargetPlatform.windows_arm64,
|
||||||
|
'web-javascript' => TargetPlatform.web_javascript,
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/build_system/targets/common.dart b/packages/flutter_tools/lib/src/build_system/targets/common.dart
|
||||||
|
index 63eb1c736e8..f4695404411 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/build_system/targets/common.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/build_system/targets/common.dart
|
||||||
|
@@ -228,6 +228,7 @@ class KernelSnapshot extends Target {
|
||||||
|
case TargetPlatform.fuchsia_x64:
|
||||||
|
case TargetPlatform.ios:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.tester:
|
||||||
|
case TargetPlatform.web_javascript:
|
||||||
|
forceLinkPlatform = false;
|
||||||
|
@@ -243,7 +244,9 @@ class KernelSnapshot extends Target {
|
||||||
|
TargetPlatform.android_x64 => 'android',
|
||||||
|
TargetPlatform.darwin => 'macos',
|
||||||
|
TargetPlatform.ios => 'ios',
|
||||||
|
- TargetPlatform.linux_arm64 || TargetPlatform.linux_x64 => 'linux',
|
||||||
|
+ TargetPlatform.linux_arm64 ||
|
||||||
|
+ TargetPlatform.linux_riscv64 ||
|
||||||
|
+ TargetPlatform.linux_x64 => 'linux',
|
||||||
|
TargetPlatform.windows_arm64 || TargetPlatform.windows_x64 => 'windows',
|
||||||
|
TargetPlatform.tester || TargetPlatform.web_javascript => null,
|
||||||
|
TargetPlatform.unsupported => TargetPlatform.throwUnsupportedTarget(),
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/build_system/tools/shader_compiler.dart b/packages/flutter_tools/lib/src/build_system/tools/shader_compiler.dart
|
||||||
|
index db28675db2d..c2f8820945c 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/build_system/tools/shader_compiler.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/build_system/tools/shader_compiler.dart
|
||||||
|
@@ -112,6 +112,7 @@ class ShaderCompiler {
|
||||||
|
case TargetPlatform.android:
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.windows_x64:
|
||||||
|
case TargetPlatform.windows_arm64:
|
||||||
|
return <String>[
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/commands/assemble.dart b/packages/flutter_tools/lib/src/commands/assemble.dart
|
||||||
|
index 564aa971a1a..70f428c5d5b 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/commands/assemble.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/commands/assemble.dart
|
||||||
|
@@ -46,10 +46,13 @@ var _kDefaultTargets = <Target>[
|
||||||
|
// Linux targets
|
||||||
|
const DebugBundleLinuxAssets(TargetPlatform.linux_x64),
|
||||||
|
const DebugBundleLinuxAssets(TargetPlatform.linux_arm64),
|
||||||
|
+ const DebugBundleLinuxAssets(TargetPlatform.linux_riscv64),
|
||||||
|
const ProfileBundleLinuxAssets(TargetPlatform.linux_x64),
|
||||||
|
const ProfileBundleLinuxAssets(TargetPlatform.linux_arm64),
|
||||||
|
+ const ProfileBundleLinuxAssets(TargetPlatform.linux_riscv64),
|
||||||
|
const ReleaseBundleLinuxAssets(TargetPlatform.linux_x64),
|
||||||
|
const ReleaseBundleLinuxAssets(TargetPlatform.linux_arm64),
|
||||||
|
+ const ReleaseBundleLinuxAssets(TargetPlatform.linux_riscv64),
|
||||||
|
const ReleaseAndroidApplication(),
|
||||||
|
// This is a one-off rule for bundle and aot compat.
|
||||||
|
const CopyFlutterBundle(),
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/commands/build_bundle.dart b/packages/flutter_tools/lib/src/commands/build_bundle.dart
|
||||||
|
index 927edb22877..06d0ef67a76 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/commands/build_bundle.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/commands/build_bundle.dart
|
||||||
|
@@ -46,6 +46,7 @@ class BuildBundleCommand extends BuildSubCommand {
|
||||||
|
'darwin',
|
||||||
|
'linux-x64',
|
||||||
|
'linux-arm64',
|
||||||
|
+ 'linux-riscv64',
|
||||||
|
'windows-x64',
|
||||||
|
'windows-arm64',
|
||||||
|
],
|
||||||
|
@@ -122,6 +123,7 @@ class BuildBundleCommand extends BuildSubCommand {
|
||||||
|
}
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
if (!featureFlags.isLinuxEnabled) {
|
||||||
|
throwToolExit('Linux is not a supported target platform.');
|
||||||
|
}
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/commands/build_linux.dart b/packages/flutter_tools/lib/src/commands/build_linux.dart
|
||||||
|
index 832be184a32..f948f87f0aa 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/commands/build_linux.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/commands/build_linux.dart
|
||||||
|
@@ -23,13 +23,15 @@ class BuildLinuxCommand extends BuildSubCommand {
|
||||||
|
}) : _operatingSystemUtils = operatingSystemUtils,
|
||||||
|
super(verboseHelp: verboseHelp) {
|
||||||
|
addCommonDesktopBuildOptions(verboseHelp: verboseHelp);
|
||||||
|
- final defaultTargetPlatform = (_operatingSystemUtils.hostPlatform == HostPlatform.linux_arm64)
|
||||||
|
- ? 'linux-arm64'
|
||||||
|
- : 'linux-x64';
|
||||||
|
+ final String defaultTargetPlatform = switch (_operatingSystemUtils.hostPlatform) {
|
||||||
|
+ HostPlatform.linux_arm64 => 'linux-arm64',
|
||||||
|
+ HostPlatform.linux_riscv64 => 'linux-riscv64',
|
||||||
|
+ _ => 'linux-x64',
|
||||||
|
+ };
|
||||||
|
argParser.addOption(
|
||||||
|
'target-platform',
|
||||||
|
defaultsTo: defaultTargetPlatform,
|
||||||
|
- allowed: <String>['linux-arm64', 'linux-x64'],
|
||||||
|
+ allowed: <String>['linux-arm64', 'linux-x64', 'linux-riscv64'],
|
||||||
|
help: 'The target platform for which the app is compiled.',
|
||||||
|
);
|
||||||
|
argParser.addOption(
|
||||||
|
@@ -79,9 +81,8 @@ class BuildLinuxCommand extends BuildSubCommand {
|
||||||
|
if (!globals.platform.isLinux) {
|
||||||
|
throwToolExit('"build linux" only supported on Linux hosts.');
|
||||||
|
}
|
||||||
|
- // Cross-building for x64 targets on arm64 hosts is not supported.
|
||||||
|
- if (_operatingSystemUtils.hostPlatform != HostPlatform.linux_x64 &&
|
||||||
|
- targetPlatform != TargetPlatform.linux_arm64) {
|
||||||
|
+ // Cross-building is only supported on x64 hosts
|
||||||
|
+ if (_operatingSystemUtils.hostPlatform != HostPlatform.linux_x64 && needCrossBuild) {
|
||||||
|
throwToolExit('"cross-building" only supported on Linux x64 hosts.');
|
||||||
|
}
|
||||||
|
// TODO(fujino): https://github.com/flutter/flutter/issues/74929
|
||||||
|
@@ -91,6 +92,14 @@ class BuildLinuxCommand extends BuildSubCommand {
|
||||||
|
'Cross-build from Linux x64 host to Linux arm64 target is not currently supported.',
|
||||||
|
);
|
||||||
|
}
|
||||||
|
+ // Building for riscv64 (on a non-riscv64 host) is experimental
|
||||||
|
+ if (_operatingSystemUtils.hostPlatform != HostPlatform.linux_riscv64 &&
|
||||||
|
+ targetPlatform == TargetPlatform.linux_riscv64 &&
|
||||||
|
+ !featureFlags.isRiscv64SupportEnabled) {
|
||||||
|
+ throwToolExit(
|
||||||
|
+ 'Building for Linux riscv64 is currently an experimental feature. To enable, run "flutter config --enable-riscv64"',
|
||||||
|
+ );
|
||||||
|
+ }
|
||||||
|
final Logger logger = globals.logger;
|
||||||
|
await buildLinux(
|
||||||
|
project.linux,
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/features.dart b/packages/flutter_tools/lib/src/features.dart
|
||||||
|
index 724fcc4c9d4..2ee6cd6b7ed 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/features.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/features.dart
|
||||||
|
@@ -76,6 +76,9 @@ abstract class FeatureFlags {
|
||||||
|
/// Whether UIScene migration is enabled.
|
||||||
|
bool get isUISceneMigrationEnabled;
|
||||||
|
|
||||||
|
+ /// Wether riscv64 support is enabled.
|
||||||
|
+ bool get isRiscv64SupportEnabled;
|
||||||
|
+
|
||||||
|
/// Whether a particular feature is enabled for the current channel.
|
||||||
|
///
|
||||||
|
/// Prefer using one of the specific getters above instead of this API.
|
||||||
|
@@ -99,6 +102,7 @@ abstract class FeatureFlags {
|
||||||
|
windowingFeature,
|
||||||
|
lldbDebugging,
|
||||||
|
uiSceneMigration,
|
||||||
|
+ riscv64,
|
||||||
|
];
|
||||||
|
|
||||||
|
/// All current Flutter feature flags that can be configured.
|
||||||
|
@@ -268,6 +272,16 @@ const uiSceneMigration = Feature(
|
||||||
|
stable: FeatureChannelSetting(available: true, enabledByDefault: true),
|
||||||
|
);
|
||||||
|
|
||||||
|
+/// The [Feature] for building code targetting riscv64 architecture
|
||||||
|
+const riscv64 = Feature(
|
||||||
|
+ name: 'support for riscv64 architecture',
|
||||||
|
+ configSetting: 'enable-riscv64',
|
||||||
|
+ environmentOverride: 'FLUTTER_RISCV64',
|
||||||
|
+ master: FeatureChannelSetting(available: true, enabledByDefault: true),
|
||||||
|
+ beta: FeatureChannelSetting(available: true),
|
||||||
|
+ stable: FeatureChannelSetting(available: true),
|
||||||
|
+);
|
||||||
|
+
|
||||||
|
/// A [Feature] is a process for conditionally enabling tool features.
|
||||||
|
///
|
||||||
|
/// All settings are optional, and if not provided will generally default to
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/flutter_application_package.dart b/packages/flutter_tools/lib/src/flutter_application_package.dart
|
||||||
|
index 75eaeea481e..c61de499a28 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/flutter_application_package.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/flutter_application_package.dart
|
||||||
|
@@ -91,6 +91,7 @@ class FlutterApplicationPackageFactory extends ApplicationPackageFactory {
|
||||||
|
return WebApplicationPackage(FlutterProject.current());
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
return applicationBinary == null
|
||||||
|
? LinuxApp.fromLinuxProject(FlutterProject.current().linux)
|
||||||
|
: LinuxApp.fromPrebuiltApp(applicationBinary);
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/flutter_cache.dart b/packages/flutter_tools/lib/src/flutter_cache.dart
|
||||||
|
index 31f5fbc825a..46b8eb48b23 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/flutter_cache.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/flutter_cache.dart
|
||||||
|
@@ -683,6 +683,7 @@ class FlutterRunnerDebugSymbols extends CachedArtifact {
|
||||||
|
}
|
||||||
|
await _downloadDebugSymbols('x64', artifactUpdater);
|
||||||
|
await _downloadDebugSymbols('arm64', artifactUpdater);
|
||||||
|
+ await _downloadDebugSymbols('riscv64', artifactUpdater);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/flutter_features.dart b/packages/flutter_tools/lib/src/flutter_features.dart
|
||||||
|
index c1102780346..ee7fb68b6ab 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/flutter_features.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/flutter_features.dart
|
||||||
|
@@ -66,6 +66,9 @@ mixin FlutterFeatureFlagsIsEnabled implements FeatureFlags {
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool get isUISceneMigrationEnabled => isEnabled(uiSceneMigration);
|
||||||
|
+
|
||||||
|
+ @override
|
||||||
|
+ bool get isRiscv64SupportEnabled => isEnabled(riscv64);
|
||||||
|
}
|
||||||
|
|
||||||
|
interface class FlutterFeatureFlags extends FeatureFlags with FlutterFeatureFlagsIsEnabled {
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/isolated/native_assets/native_assets.dart b/packages/flutter_tools/lib/src/isolated/native_assets/native_assets.dart
|
||||||
|
index 1ed907c050a..86d0010f495 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/isolated/native_assets/native_assets.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/isolated/native_assets/native_assets.dart
|
||||||
|
@@ -666,6 +666,7 @@ OS getNativeOSFromTargetPlatform(TargetPlatform platform) {
|
||||||
|
return OS.macOS;
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
return OS.linux;
|
||||||
|
case TargetPlatform.windows_x64:
|
||||||
|
case TargetPlatform.windows_arm64:
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/isolated/native_assets/targets.dart b/packages/flutter_tools/lib/src/isolated/native_assets/targets.dart
|
||||||
|
index cc0de9f2452..d036e29a352 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/isolated/native_assets/targets.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/isolated/native_assets/targets.dart
|
||||||
|
@@ -69,6 +69,8 @@ sealed class AssetBuildTarget {
|
||||||
|
return _linuxTarget(supportedAssetTypes, Architecture.x64);
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
return _linuxTarget(supportedAssetTypes, Architecture.arm64);
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
+ return _linuxTarget(supportedAssetTypes, Architecture.riscv64);
|
||||||
|
case TargetPlatform.windows_arm64:
|
||||||
|
return _windowsTarget(supportedAssetTypes, Architecture.arm64);
|
||||||
|
case TargetPlatform.darwin:
|
||||||
|
@@ -402,6 +404,7 @@ List<AndroidArch> _androidArchs(TargetPlatform targetPlatform, String? androidAr
|
||||||
|
case TargetPlatform.fuchsia_x64:
|
||||||
|
case TargetPlatform.ios:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.tester:
|
||||||
|
case TargetPlatform.web_javascript:
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/linux/build_linux.dart b/packages/flutter_tools/lib/src/linux/build_linux.dart
|
||||||
|
index 6525bb9e61d..aa86e904948 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/linux/build_linux.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/linux/build_linux.dart
|
||||||
|
@@ -163,6 +163,8 @@ Future<void> _runCmake(
|
||||||
|
final String buildFlag = sentenceCase(buildModeName);
|
||||||
|
final bool needCrossBuildOptionsForArm64 =
|
||||||
|
needCrossBuild && targetPlatform == TargetPlatform.linux_arm64;
|
||||||
|
+ final bool needCrossBuildOptionsForRiscv64 =
|
||||||
|
+ needCrossBuild && targetPlatform == TargetPlatform.linux_riscv64;
|
||||||
|
int result;
|
||||||
|
if (!globals.processManager.canRun('cmake')) {
|
||||||
|
throwToolExit(globals.userMessages.cmakeMissing);
|
||||||
|
@@ -179,6 +181,9 @@ Future<void> _runCmake(
|
||||||
|
if (needCrossBuild) '-DFLUTTER_TARGET_PLATFORM_SYSROOT=$targetSysroot',
|
||||||
|
if (needCrossBuildOptionsForArm64) '-DCMAKE_C_COMPILER_TARGET=aarch64-linux-gnu',
|
||||||
|
if (needCrossBuildOptionsForArm64) '-DCMAKE_CXX_COMPILER_TARGET=aarch64-linux-gnu',
|
||||||
|
+ // Support cross-building for riscv64 targets on x64 hosts.
|
||||||
|
+ if (needCrossBuildOptionsForRiscv64) '-DCMAKE_C_COMPILER_TARGET=riscv64-linux-gnu',
|
||||||
|
+ if (needCrossBuildOptionsForRiscv64) '-DCMAKE_CXX_COMPILER_TARGET=riscv64-linux-gnu',
|
||||||
|
sourceDir.path,
|
||||||
|
],
|
||||||
|
workingDirectory: buildDir.path,
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/linux/linux_device.dart b/packages/flutter_tools/lib/src/linux/linux_device.dart
|
||||||
|
index 3f113c97f00..4bf5ed7908c 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/linux/linux_device.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/linux/linux_device.dart
|
||||||
|
@@ -49,6 +49,8 @@ class LinuxDevice extends DesktopDevice {
|
||||||
|
late final Future<TargetPlatform> targetPlatform = () async {
|
||||||
|
if (_operatingSystemUtils.hostPlatform == HostPlatform.linux_x64) {
|
||||||
|
return TargetPlatform.linux_x64;
|
||||||
|
+ } else if (_operatingSystemUtils.hostPlatform == HostPlatform.linux_riscv64) {
|
||||||
|
+ return TargetPlatform.linux_riscv64;
|
||||||
|
}
|
||||||
|
return TargetPlatform.linux_arm64;
|
||||||
|
}();
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/mdns_discovery.dart b/packages/flutter_tools/lib/src/mdns_discovery.dart
|
||||||
|
index b21795ddb3e..0840c95b637 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/mdns_discovery.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/mdns_discovery.dart
|
||||||
|
@@ -599,6 +599,7 @@ class MDnsVmServiceDiscovery {
|
||||||
|
case TargetPlatform.fuchsia_arm64:
|
||||||
|
case TargetPlatform.fuchsia_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.tester:
|
||||||
|
case TargetPlatform.web_javascript:
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/resident_runner.dart b/packages/flutter_tools/lib/src/resident_runner.dart
|
||||||
|
index 8f22a8cbcc0..acd00578d8e 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/resident_runner.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/resident_runner.dart
|
||||||
|
@@ -1612,6 +1612,7 @@ Future<String?> getMissingPackageHintForPlatform(TargetPlatform platform) async
|
||||||
|
case TargetPlatform.fuchsia_arm64:
|
||||||
|
case TargetPlatform.fuchsia_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.tester:
|
||||||
|
case TargetPlatform.web_javascript:
|
||||||
|
diff --git a/packages/flutter_tools/lib/src/runner/flutter_command.dart b/packages/flutter_tools/lib/src/runner/flutter_command.dart
|
||||||
|
index 452ab9d2a4e..22315800332 100644
|
||||||
|
--- a/packages/flutter_tools/lib/src/runner/flutter_command.dart
|
||||||
|
+++ b/packages/flutter_tools/lib/src/runner/flutter_command.dart
|
||||||
|
@@ -2143,6 +2143,7 @@ DevelopmentArtifact? artifactFromTargetPlatform(TargetPlatform targetPlatform) {
|
||||||
|
return null;
|
||||||
|
case TargetPlatform.linux_x64:
|
||||||
|
case TargetPlatform.linux_arm64:
|
||||||
|
+ case TargetPlatform.linux_riscv64:
|
||||||
|
if (featureFlags.isLinuxEnabled) {
|
||||||
|
return DevelopmentArtifact.linux;
|
||||||
|
}
|
||||||
|
diff --git a/packages/flutter_tools/test/general.shard/build_system/targets/dart_plugin_registrant_test.dart b/packages/flutter_tools/test/general.shard/build_system/targets/dart_plugin_registrant_test.dart
|
||||||
|
index b625816f366..11a7003a35c 100644
|
||||||
|
--- a/packages/flutter_tools/test/general.shard/build_system/targets/dart_plugin_registrant_test.dart
|
||||||
|
+++ b/packages/flutter_tools/test/general.shard/build_system/targets/dart_plugin_registrant_test.dart
|
||||||
|
@@ -90,6 +90,7 @@ void main() {
|
||||||
|
'darwin-x64': false,
|
||||||
|
'linux-x64': false,
|
||||||
|
'linux-arm64': false,
|
||||||
|
+ 'linux-riscv64': false,
|
||||||
|
'windows-x64': false,
|
||||||
|
'web-javascript': true,
|
||||||
|
'ios': false,
|
||||||
|
diff --git a/packages/flutter_tools/test/general.shard/cache_test.dart b/packages/flutter_tools/test/general.shard/cache_test.dart
|
||||||
|
index 4a6152961b8..922b1ff9227 100644
|
||||||
|
--- a/packages/flutter_tools/test/general.shard/cache_test.dart
|
||||||
|
+++ b/packages/flutter_tools/test/general.shard/cache_test.dart
|
||||||
|
@@ -574,6 +574,7 @@ void main() {
|
||||||
|
expect(packageResolver.resolved, <List<String>>[
|
||||||
|
<String>['fuchsia-debug-symbols-x64', '123456'],
|
||||||
|
<String>['fuchsia-debug-symbols-arm64', '123456'],
|
||||||
|
+ <String>['fuchsia-debug-symbols-riscv64', '123456'],
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
|
||||||
|
diff --git a/packages/flutter_tools/test/general.shard/flutter_validator_test.dart b/packages/flutter_tools/test/general.shard/flutter_validator_test.dart
|
||||||
|
index 050bd3d6c6d..f0a864f0424 100644
|
||||||
|
--- a/packages/flutter_tools/test/general.shard/flutter_validator_test.dart
|
||||||
|
+++ b/packages/flutter_tools/test/general.shard/flutter_validator_test.dart
|
||||||
|
@@ -824,6 +824,9 @@ class FakeFlutterFeatures extends FeatureFlags {
|
||||||
|
@override
|
||||||
|
bool get isUISceneMigrationEnabled => _enabled;
|
||||||
|
|
||||||
|
+ @override
|
||||||
|
+ bool get isRiscv64SupportEnabled => _enabled;
|
||||||
|
+
|
||||||
|
@override
|
||||||
|
final List<Feature> allFeatures;
|
||||||
|
|
||||||
|
diff --git a/packages/flutter_tools/test/src/fakes.dart b/packages/flutter_tools/test/src/fakes.dart
|
||||||
|
index 78ae4ba3642..b0ce67771a4 100644
|
||||||
|
--- a/packages/flutter_tools/test/src/fakes.dart
|
||||||
|
+++ b/packages/flutter_tools/test/src/fakes.dart
|
||||||
|
@@ -532,6 +532,7 @@ class TestFeatureFlags implements FeatureFlags {
|
||||||
|
this.isWindowingEnabled = false,
|
||||||
|
this.isLLDBDebuggingEnabled = false,
|
||||||
|
this.isUISceneMigrationEnabled = false,
|
||||||
|
+ this.isRiscv64SupportEnabled = false,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
@@ -582,6 +583,9 @@ class TestFeatureFlags implements FeatureFlags {
|
||||||
|
@override
|
||||||
|
final bool isUISceneMigrationEnabled;
|
||||||
|
|
||||||
|
+ @override
|
||||||
|
+ final bool isRiscv64SupportEnabled;
|
||||||
|
+
|
||||||
|
@override
|
||||||
|
bool isEnabled(Feature feature) {
|
||||||
|
return switch (feature) {
|
||||||
|
@@ -600,6 +604,7 @@ class TestFeatureFlags implements FeatureFlags {
|
||||||
|
windowingFeature => isWindowingEnabled,
|
||||||
|
lldbDebugging => isLLDBDebuggingEnabled,
|
||||||
|
uiSceneMigration => isUISceneMigrationEnabled,
|
||||||
|
+ riscv64 => isRiscv64SupportEnabled,
|
||||||
|
_ => false,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
@@ -622,6 +627,7 @@ class TestFeatureFlags implements FeatureFlags {
|
||||||
|
windowingFeature,
|
||||||
|
lldbDebugging,
|
||||||
|
uiSceneMigration,
|
||||||
|
+ riscv64,
|
||||||
|
];
|
||||||
|
|
||||||
|
@override
|
||||||
Reference in New Issue
Block a user