No description
Find a file
Colin Cross e52c33c61c Correctly report errors in bpfmt
bpfmt was always exiting with return code 0, make it use the
exitCode recorded when reporting errors.

Also use the usage function.

Test: bpfmt -o bpfmt.go
Test: bpfmt
Test: bpfmt -h
Fixes: 113069050
Change-Id: I717d524c5f43cd36f52e33964a37324cc04c5df0
2019-05-21 11:03:00 -07:00
bootstrap bpdoc preformatted text improvments 2019-03-11 11:16:31 -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 Add pathtools.Filesystem.Stat for soong_zip 2018-09-27 15:54:24 -07:00
proptools Panic when copying private properties. 2019-03-07 16:24:56 -08: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 Run go 1.11 and go 1.12 in travis 2019-02-28 14:42:04 -08: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 Add PropertyIndexesWithTag 2019-03-05 19:47:43 -08:00
bootstrap.bash Add --empty-ninja-file for test usecases 2018-10-26 09:57:24 -07:00
context.go Moving the ParseBlueprintsFiles go comment in context.go. 2019-03-08 14:17:43 -08: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 more OtherModule* methods 2019-03-01 13:44:15 -08: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 Make ninja file deterministic even with dup module names 2017-12-04 17:16:21 -08:00
ninja_strings_test.go Escape leading space in ninja strings 2017-05-09 10:14:38 -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
package_ctx.go Support go 1.12 2019-02-28 14:38:42 -08: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 Allow Context to query Singletons 2019-02-26 10:15:40 -08: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.