Add a buildtools directory and move third_party/ninja to the project root in order to match the expectations of depot_tools (#163890)

The depot_tools Ninja wrapper looks for Ninja at specific paths within
the tree. The use of "name": "." in the engine's .gclient file is not
expected by the depot_tools logic for locating the engine's source
directory.

This PR creates an alternative layout that is supported by depot_tools.
If the project root directory contains a "buildtools" subdirectory, then
depot_tools will look for Ninja at "third_party/ninja" within the root.

Fixes https://github.com/flutter/flutter/issues/163487
This commit is contained in:
Jason Simmons
2025-02-26 15:11:31 +00:00
committed by GitHub
parent 80233283c3
commit 3d018b5924
6 changed files with 12 additions and 2 deletions

9
third_party/.gitignore vendored Normal file
View File

@@ -0,0 +1,9 @@
# Ignore everything by default, as these come from gclient/DEPS.
# We'll explicitly include the folders we want to track.
/*
# Include the .gitignore file itself.
!.gitignore
# Allow custom README.flutter files in each folder.
**/README.flutter

17
third_party/ninja/README.flutter vendored Normal file
View File

@@ -0,0 +1,17 @@
Name: ninja
Short Name: ninja
URL: https://github.com/ninja-build/ninja
Revision: See the CIPD version in DEPS
License: Apache License 2.0
License File: https://github.com/ninja-build/ninja/blob/master/COPYING
Security Critical: no
Description:
Ninja is a small build system with a focus on speed, and is used to build
this project.
The CIPD packages are built using the 3pp pipeline.
https://chromium.googlesource.com/infra/infra/+/refs/heads/main/3pp/ninja/
Local Modifications:
None