No description
Find a file
Xin Li d52d9b65d7 [automerger skipped] Merge qt-r1-dev-plus-aosp-without-vendor (5817612) into stage-aosp-master am: eb03bacf3f -s ours
am: ba1c448eaa -s ours
am skip reason: change_id I76dd2fa706c67da7973cbc500142f7f5c597a3cb with SHA1 47653a7b0b is in history

Change-Id: I68802948814099b8c9bc1b5b7b0d434ddc92cfda
2019-09-08 15:49:12 -07:00
bootstrap Fix compiling binaries with go 1.13 2019-09-06 14:25:28 -07:00
bpfmt Correctly report errors in bpfmt 2019-05-21 11:03:00 -07:00
bpmodify bpmodify: add argument if it is missing 2018-12-17 18:16:16 -08:00
deptools Make WriteDepFile escape spaces and special characters 2015-04-14 23:34:24 -04:00
gotestmain Support examples as tests 2019-02-15 15:13:37 -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
microfactory Disable parallel compilation when using race detector 2018-04-30 14:44:22 -07:00
parser Emit errors on mixed property syntax 2018-06-26 12:20:08 +08:00
pathtools Simplify pathtools.Match 2019-05-20 14:57:36 -07:00
proptools Fix/improve comments on prepending/appending props 2019-07-08 14:07:45 -07:00
tests Make test_tree_tests.sh slightly easier to read 2017-10-30 15:00:19 -07:00
.gitignore Import globbing from Soong 2016-11-03 13:54:03 -07:00
.travis.fix-fork.sh Fix running travis on forked repos 2015-07-23 21:07:32 -07:00
.travis.gofmt.sh Enforce gofmt in travis 2016-08-11 10:21:37 -07:00
.travis.install-ninja.sh Support implicit outputs 2016-10-31 17:36:49 -07:00
.travis.yml Fix compiling binaries with go 1.13 2019-09-06 14:25:28 -07:00
blueprint.bash Use microfactory to build the bootstrap minibp 2017-07-24 14:02:51 -07:00
blueprint_impl.bash Run globs during earlier bootstrap phases 2018-07-06 10:39:38 -07:00
Blueprints Skip mutated struct properties in bpdoc. 2019-06-05 16:52:47 -07:00
bootstrap.bash Add --empty-ninja-file for test usecases 2018-10-26 09:57:24 -07:00
context.go Add SetDefaultDependencyVariation 2019-08-09 12:49:11 -07:00
context_test.go Make sure all modules have a name. (#226) 2018-10-11 13:01:05 -07: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 Add ShouldFollowSymlinks argument to pathtools.Glob 2018-09-24 15:09:32 -07:00
glob_test.go Fix glob cache conflict when excludes=nil and excludes=[]string{} 2018-02-23 14:03:56 -08:00
go.mod Add go.mod for go1.11 module support 2018-07-21 13:02:56 -07:00
LICENSE Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
live_tracker.go Allow rules to specify order-only dependencies 2017-10-17 13:50:49 -07:00
mangle.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
module_ctx.go Add SetDefaultDependencyVariation 2019-08-09 12:49:11 -07:00
name_interface.go Return an error when renaming a module that doesn't exist 2018-04-16 14:44:41 -07:00
ninja_defs.go Write ninja file directly to the output file 2019-01-23 13:26:42 -08:00
ninja_strings.go Optimize ninjaString.ValueWithEscaper 2019-06-20 11:05:58 -07:00
ninja_strings_test.go Optimize ninjaString.ValueWithEscaper 2019-06-20 11:05:58 -07:00
ninja_writer.go Write ninja file directly to the output file 2019-01-23 13:26:42 -08:00
ninja_writer_test.go Run globs during earlier bootstrap phases 2018-07-06 10:39:38 -07:00
OWNERS Add asmundak and jungjw to OWNERS 2019-02-20 01:29:22 +00:00
package_ctx.go Fix checkCalledFromInit 2019-09-05 18:10:37 +09:00
README.md Update link to Ninja 2016-08-18 00:48:20 -04:00
scope.go Allow wrapping of PackageContext 2015-11-30 17:03:34 -08:00
singleton_ctx.go Move module and singleton godoc from the implementation to the interface 2019-05-20 15:08:39 -07:00
splice_modules_test.go Parallelize BottomUpMutators 2016-08-10 16:31:35 -07:00
unpack.go Allow mutated property structs to contain slices of non-strings 2018-10-03 14:29:12 -07:00
unpack_test.go Allow mutated property structs to contain slices of non-strings 2018-10-03 14:29:12 -07:00
visit_test.go Allow multiple dependencies on the same module 2018-06-20 14:10:18 -07:00

Blueprint Build System

Build Status

Blueprint is a meta-build system that reads in Blueprints files that describe modules that need to be built, and produces a Ninja manifest describing the commands that need to be run and their dependencies. Where most build systems use built-in rules or a domain-specific language to describe the logic for converting module descriptions to build rules, Blueprint delegates this to per-project build logic written in Go. For large, heterogenous projects this allows the inherent complexity of the build logic to be maintained in a high-level language, while still allowing simple changes to individual modules by modifying easy to understand Blueprints files.