Skip to content

Conversation

@jmagman
Copy link
Member

@jmagman jmagman commented Dec 15, 2020

Identical to #71764 except now it's on top of the engine change flutter/engine#22979

$ dart bin/run.dart -t hot_mode_dev_cycle_macos_target__benchmark
...
Task result:
{
  "success": true,

Description

macOS version of #51453. See details and discussion there.

Push linker and embedding logic into the tool so future changes (like distributing as an XCFramework, renaming FlutterMacOS.framework, etc) do not require changes in the user's project.

At some point FlutterMacOS.framework will ship with x86 and ARM slices. With this change, we will be able to introduce thinning (as iOS does) in the script without requiring a user project migration.

This change would also set us up to stop copying FlutterMacOS.framework to Flutter/ephemeral. On iOS, for example, the framework is copied directly from the artifacts directory to the BUILT_PRODUCTS_DIR so there's never a mismatch between a Release build and a Debug version of Flutter.

Changes

Future Documentation

Related Issues

Fixes #56581
Part of #70413
Will make #60113 easier.

Tests

macos_project_migration_test

@jmagman jmagman added the platform-mac Building on or for macOS specifically label Dec 15, 2020
@jmagman jmagman self-assigned this Dec 15, 2020
@flutter-dashboard flutter-dashboard bot added c: contributor-productivity Team-specific productivity, code health, technical debt. tool Affects the "flutter" command-line tool. See also t: labels. labels Dec 15, 2020
@google-cla google-cla bot added the cla: yes label Dec 15, 2020
@jmagman
Copy link
Member Author

jmagman commented Dec 15, 2020

I'm taking the liberty of assuming @stuartmorgan's LGTM from #71764. This change is identical, I've just rebased on the engine roll containing flutter/engine#22979.
😃

Copy link
Contributor

@stuartmorgan-g stuartmorgan-g left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RSLGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

c: contributor-productivity Team-specific productivity, code health, technical debt. platform-mac Building on or for macOS specifically tool Affects the "flutter" command-line tool. See also t: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

macOS xcode project should move Framework linking to tool

2 participants