No description
Find a file
Lukacs T. Berki eb641de659 Implement transition mutators.
These are more limited than bottom-up or top-down mutators but in
exchange have some pleasant properties:

- "variant not found" errors are impossible
- The logic is pleasantly split into multiple, mostly orthogonal
  parts
- Theoretically, if every mutator is refactored like this, they
  make it possible to partially cache the module graph
- Are quite close to a "configuration transition" in Bazel.

Bug: 231370928
Test: Presubmits.
Change-Id: Idcdb66b5ea75c0d2838f527aaa988df3b12553d8
2022-06-17 17:51:04 +02:00
.github/workflows Fix github builds for deprecated set-env and add-path commands (#333) 2020-11-23 16:52:58 -08:00
bootstrap Support pre-build-action hook in blueprint 2022-05-10 13:46:40 -04:00
bpfmt Make bpfmt use exit codes even when reading from stdin. 2021-02-17 20:24:50 -08:00
bpmodify Add a filelock for in-place case 2022-05-10 01:30:08 +00:00
deptools Make WriteDepFile escape spaces and special characters 2015-04-14 23:34:24 -04:00
gotestmain Support go1.18, drop support for <go1.8 2021-12-14 15:58:35 -08:00
gotestrunner gotestrunner: Make GOROOT absolute before chdir 2017-01-18 14:42:09 -08:00
loadplugins Implement plugins for bootstrap go modules 2015-09-14 15:35:12 -07:00
metrics recommend a EventHandler.Do() 2022-05-27 15:39:16 -04:00
microfactory Make debugging easier: 2021-03-03 09:15:04 +01:00
parser bpmodify: -add-literal to add a value to the list 2022-02-09 11:16:02 +09:00
pathtools Add a limit to blueprint filesystem accesses 2022-02-08 15:16:59 -05:00
proptools Add support for maps in blueprint files. 2022-01-26 12:18:31 -05:00
tests Make test_tree_tests.sh slightly easier to read 2017-10-30 15:00:19 -07:00
.gitignore gitignore intelliJ files 2022-02-02 11:36:11 -05:00
.gofmt.sh Use github actions instead of travis 2020-06-15 10:32:10 -07:00
Android.bp Add event handling to blueprint for metrics 2022-03-25 13:15:17 -04:00
CODEOWNERS Add CODEOWNERS: @google/blueprint 2020-10-07 11:57:54 +08:00
context.go Implement transition mutators. 2022-06-17 17:51:04 +02:00
context_test.go Update CreateModule to require a type name 2022-04-26 09:15:13 -04:00
CONTRIBUTING.md Add CONTRIBUTING.md file 2015-03-16 00:12:49 -07:00
doc.go Fix Ninja build system site link 2019-03-23 16:31:07 +02:00
glob.go Speed up globs with sharding 2021-04-15 11:04:11 -07:00
glob_test.go Rename Blueprints to Android.bp . 2021-09-02 11:48:19 +02:00
go.mod Add proptools.Int and proptools.IntDefault 2019-09-25 14:52:54 -07:00
LICENSE Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
live_tracker.go Add Validations support to Blueprint 2020-07-09 14:28:20 -07:00
mangle.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
module_ctx.go Implement transition mutators. 2022-06-17 17:51:04 +02:00
module_ctx_test.go Rename Blueprints to Android.bp . 2021-09-02 11:48:19 +02:00
name_interface.go Maintain ordering between variants and aliases 2020-09-09 18:29:15 -07:00
ninja_defs.go Write build definitions directly to output writer 2021-01-21 22:02:30 -08:00
ninja_strings.go Write build definitions directly to output writer 2021-01-21 22:02:30 -08:00
ninja_strings_test.go Make ninjaString an interface 2020-01-29 16:23:40 -08:00
ninja_writer.go Write build definitions directly to output writer 2021-01-21 22:02:30 -08:00
ninja_writer_test.go Write build definitions directly to output writer 2021-01-21 22:02:30 -08:00
OWNERS Refactor OWNERS in platform/build/blueprint 2020-10-08 16:23:53 -07:00
package_ctx.go Typos and missing parameter names use in doc comment 2022-01-18 16:46:30 -05:00
PREUPLOAD.cfg Add preupload hooks to build/blueprint 2021-02-23 10:29:46 -08:00
provider.go Add Providers to Blueprint 2020-09-22 18:20:18 -07:00
provider_test.go Rename Blueprints to Android.bp . 2021-09-02 11:48:19 +02:00
README.md Replace README.md with an archival announcement. 2021-03-29 18:13:57 +02:00
scope.go Memoize full names of variables, pools and rules 2021-01-21 22:02:30 -08:00
singleton_ctx.go Allow deferred module build action generation. 2022-05-18 17:59:16 -07:00
splice_modules_test.go Maintain ordering between variants and aliases 2020-09-09 18:29:15 -07:00
visit_test.go Rename Blueprints to Android.bp . 2021-09-02 11:48:19 +02:00

Blueprint Build System

Blueprint is being archived on 2021 May 3.

On 2021 May 3, we will be archiving the Blueprint project. This means it will not be possible to file new issues or open new pull requests for this GitHub project. As the project is being archived, patches -- including security patches -- will not be applied after May 3. The source tree will remain available, but changes to Blueprint in AOSP will not be merged here and Blueprint's source tree in AOSP will eventually stop being usable outside of Android.

Whereas there are no meta-build systems one can use as a drop-in replacement for Blueprint, there are a number of build systems that can be used:

  • Bazel, Google's multi-language build tool to build and test software of any size, quickly and reliably
  • Soong, for building the Android operating system itself
  • CMake, an open-source, cross-platform family of tools designed to build, test and package software
  • Buck, a fast build system that encourages the creation of small, reusable modules over a variety of platforms and languages
  • The venerable GNU Make