-
Notifications
You must be signed in to change notification settings - Fork 6k
fixed glfw example for arm64 #38426
fixed glfw example for arm64 #38426
Conversation
examples/glfw/run.sh
Outdated
| #!/bin/bash | ||
| set -e # Exit if any program returns an error. | ||
|
|
||
| if arch | grep "arm64"; then |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you want uname -m. On my Intel machine correctly reports x86_64:
$ uname -m
x86_64
$ arch
i386
On an M1 machine last I checked it output aarch64, arm64_v8a but I'm not on one atm to check.
Line 28 in c6e5564
| CPU_NAME=`uname -m` |
https://github.com/flutter/buildroot/blob/33358ba597f875f6646522fd4ea86c1b31404d77/build/install-chroot.sh#L187
https://github.com/flutter/flutter/blob/fc015f52c6e294af1d27f5aa068cced8c05017c1/packages/flutter_tools/lib/src/base/os.dart#L268-L270
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a scenario where you don't think this works? arch gives you the settable value for the architecture of your terminal , whereas uname will give the actual cpu. It seems like respecting the user's setting is the right way instead of hardcoding it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
uname respects if you are running the session in Rosetta and will use x86_64 even if you are on an arm machine. Also if we ever added an else x86_64 or something it unexpectedly wouldn't work--I definitely never set my terminal arch to i386.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From Triage: Just checking in to see if we are proceeding on this. From perusing the conversation, we seem to not be sure of what to do when the terminal arch is set to use emulation. Is that correct? Does it matter which arch it is as long as the example runs?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it should be uname as it is in other scripts because of Rosetta, but this works so if @gaaclarke has a strong preference then I don't care if he leaves as-is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I preferred arch because:
- Its name is more apropos
- It is the same function used for setting target architecture
- I didn't know if uname respects
archsettings (but i verified it does) - The alternative wasn't convincing that it merited further investment when the status quo worked
It's not a huge deal, jenn has a strong preference so I switched it to uname, @jmagman ptal.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not a huge deal, jenn has a strong preference so I switched it to
uname, @jmagman ptal.
To be fair I said I don't have a strong preference 😉
but this works so if @gaaclarke has a strong preference then I don't care if he leaves as-is.
jmagman
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
… (#118413) Commit: 4e85235f32d435458adc90072f41797d95c73bb6
* f1a1f27 [M3] Add error state support for side property of CheckBox (flutter/flutter#118386) * 27502f6 Roll Plugins from 620a059d62b2 to 39197f17ca59 (6 revisions) (flutter/flutter#118391) * 40bc6b5 Move debug error message from failed pub to logger.printTrace (flutter/flutter#118379) * 5630d53 [tool] Generate a binary version of the asset manifest (flutter/flutter#117233) * c7a3f0f IconButtonTheme should be overridden by the AppBar/AppBarTheme's iconTheme and actionsIconTheme (flutter/flutter#118216) * ee1c59d reduce pub output from flutter create (flutter/flutter#118285) * 947b694 roll packages (flutter/flutter#118277) * 8f365a3 [web] Update build to use generated JS runtime for Dart2Wasm. (flutter/flutter#118359) * ace4fb5 Roll Flutter Engine from 4a8d6866a1c0 to c01465a18f31 (9 revisions) (flutter/flutter#118409) * db8d1a4 Add MSYS2 detection on Windows Terminal (flutter/flutter#117612) * c905a09 Add documentation for drag/fling offset in WidgetController. (flutter/flutter#118288) * 4e85235 688015782 fixed glfw example for arm64 (flutter/engine#38426) (flutter/flutter#118413) * 9e11d4a Use correct API docs link in create --sample help message (flutter/flutter#118371) * 3e00520 Roll Flutter Engine from 688015782762 to 35cfe9158648 (2 revisions) (flutter/flutter#118415) * bd938b0 Fix tap/drag callbacks firing when TapAndDragGestureRecognizer has not won the arena (flutter/flutter#118342) * 19af46f 8aa26baa9 Roll Dart SDK from edd406c07399 to 20cca507d98b (1 revision) (flutter/engine#38823) (flutter/flutter#118420) * f7b444e add generated_plugins.cmake (flutter/flutter#116581) * 40c96f1 Enable xcode cache cleanup for a few days. (flutter/flutter#118419) * 59d737e 99509a7e4 Correct FrameTimingRecorder's raster start time. (flutter/engine#38674) (flutter/flutter#118425) * 9024a70 Roll Flutter Engine from 99509a7e4275 to f3f05368033b (2 revisions) (flutter/flutter#118429) * 0752af8 Add `allowedButtonsFilter` to prevent Draggable from appearing with secondary click. (flutter/flutter#111852) * 1578acb 15d59792e Roll Skia from dfb838747295 to 9e51c2c9e231 (26 revisions) (flutter/engine#38827) (flutter/flutter#118432) * 07c47dc a62d25326 Roll Skia from dfb838747295 to cc983d28f3bf (27 revisions) (flutter/engine#38830) (flutter/flutter#118435) * 17a855e dfa0327f8 Roll Skia from cc983d28f3bf to fd54be29a3cc (3 revisions) (flutter/engine#38833) (flutter/flutter#118436) * b896066 07603c6d4 Roll Dart SDK from 20cca507d98b to 3d629d00a8d7 (2 revisions) (flutter/engine#38834) (flutter/flutter#118439) * ddad6f1 Fix copying/applying font fallback with package (flutter/flutter#118393) * 8889d49 dec608917 Roll Fuchsia Mac SDK from nIPtQ59jG1pxyatOq... to 21nYb648VWbpxc36t... (flutter/engine#38839) (flutter/flutter#118445) * 2201698 970889b87 Roll Skia from fd54be29a3cc to c72c7bf7e45b (3 revisions) (flutter/engine#38840) (flutter/flutter#118448)
* f1a1f27 [M3] Add error state support for side property of CheckBox (flutter/flutter#118386) * 27502f6 Roll Plugins from 620a059 to 39197f1 (6 revisions) (flutter/flutter#118391) * 40bc6b5 Move debug error message from failed pub to logger.printTrace (flutter/flutter#118379) * 5630d53 [tool] Generate a binary version of the asset manifest (flutter/flutter#117233) * c7a3f0f IconButtonTheme should be overridden by the AppBar/AppBarTheme's iconTheme and actionsIconTheme (flutter/flutter#118216) * ee1c59d reduce pub output from flutter create (flutter/flutter#118285) * 947b694 roll packages (flutter/flutter#118277) * 8f365a3 [web] Update build to use generated JS runtime for Dart2Wasm. (flutter/flutter#118359) * ace4fb5 Roll Flutter Engine from 4a8d6866a1c0 to c01465a18f31 (9 revisions) (flutter/flutter#118409) * db8d1a4 Add MSYS2 detection on Windows Terminal (flutter/flutter#117612) * c905a09 Add documentation for drag/fling offset in WidgetController. (flutter/flutter#118288) * 4e85235 688015782 fixed glfw example for arm64 (flutter/engine#38426) (flutter/flutter#118413) * 9e11d4a Use correct API docs link in create --sample help message (flutter/flutter#118371) * 3e00520 Roll Flutter Engine from 688015782762 to 35cfe9158648 (2 revisions) (flutter/flutter#118415) * bd938b0 Fix tap/drag callbacks firing when TapAndDragGestureRecognizer has not won the arena (flutter/flutter#118342) * 19af46f 8aa26baa9 Roll Dart SDK from edd406c07399 to 20cca507d98b (1 revision) (flutter/engine#38823) (flutter/flutter#118420) * f7b444e add generated_plugins.cmake (flutter/flutter#116581) * 40c96f1 Enable xcode cache cleanup for a few days. (flutter/flutter#118419) * 59d737e 99509a7e4 Correct FrameTimingRecorder's raster start time. (flutter/engine#38674) (flutter/flutter#118425) * 9024a70 Roll Flutter Engine from 99509a7e4275 to f3f05368033b (2 revisions) (flutter/flutter#118429) * 0752af8 Add `allowedButtonsFilter` to prevent Draggable from appearing with secondary click. (flutter/flutter#111852) * 1578acb 15d59792e Roll Skia from dfb838747295 to 9e51c2c9e231 (26 revisions) (flutter/engine#38827) (flutter/flutter#118432) * 07c47dc a62d25326 Roll Skia from dfb838747295 to cc983d28f3bf (27 revisions) (flutter/engine#38830) (flutter/flutter#118435) * 17a855e dfa0327f8 Roll Skia from cc983d28f3bf to fd54be29a3cc (3 revisions) (flutter/engine#38833) (flutter/flutter#118436) * b896066 07603c6d4 Roll Dart SDK from 20cca507d98b to 3d629d00a8d7 (2 revisions) (flutter/engine#38834) (flutter/flutter#118439) * ddad6f1 Fix copying/applying font fallback with package (flutter/flutter#118393) * 8889d49 dec608917 Roll Fuchsia Mac SDK from nIPtQ59jG1pxyatOq... to 21nYb648VWbpxc36t... (flutter/engine#38839) (flutter/flutter#118445) * 2201698 970889b87 Roll Skia from fd54be29a3cc to c72c7bf7e45b (3 revisions) (flutter/engine#38840) (flutter/flutter#118448)
fixes flutter/flutter#117406
Pre-launch Checklist
///).If you need help, consider asking for advice on the #hackers-new channel on Discord.