Skip to content

[tool] Add flutter build linux --config-only #93407

@stuartmorgan-g

Description

@stuartmorgan-g

Currently on many platforms there are critical files for the native build system that are generated by building, such that you must flutter build or flutter run before using those systems directly. Some cases that I've run into:

  • Android: gradlew isn't generated until building.
  • Linux: ninja files for each configuration (debug, release) aren't created until building for that configuration.
  • Windows: the generated Visual Studio solution isn't created until building.
  • [ETA:] iOS/macOS: the Podfile isn't created until building.

As an example of things this affects, the flutter/plugin repository tooling must build examples before being able to run unit tests on most platforms, which is not ideal (especially on Linux, where since we're only building release mode, we can only run unit tests in release mode unless we make CI much slower).

In at least the Linux and Windows case, the step for generating the native build files is easily separable from the actual build, so with minor refactoring we could have a new command that would run just that (fast) step, without the expensive build.

Metadata

Metadata

Labels

P3Issues that are less important to the Flutter projecta: desktopRunning on desktopc: proposalA detailed proposal for a change to Flutterplatform-linuxBuilding on or for Linux specificallyteam-linuxOwned by the Linux platform teamtoolAffects the "flutter" command-line tool. See also t: labels.tool-still-validIssues that have been deemed still valid as part of the Flutter Tools issue cleanup initiative.triaged-linuxTriaged by the Linux platform team

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions