No description
Find a file
Colin Cross ba5bf880bf Fix error messages containing variable types
value.Type and value.Pos changed to methods, change the users that were
not caught by error checking to use Type() or Pos().

Change-Id: I295a658c007fa2de68c89fb85ee367fbea5ed1aa
2016-07-15 16:43:42 -07:00
bootstrap Fix documentation property type for pointers 2016-06-02 12:38:24 -07:00
bpfmt Update import paths to include github 2015-03-21 01:03:36 -04:00
bpmodify Remove blueprint/parser.Ident 2016-06-14 15:26:49 -07:00
choosestage Fix package names for executables. 2016-03-23 20:57:43 -07:00
deptools Make WriteDepFile escape spaces and special characters 2015-04-14 23:34:24 -04:00
gotestmain Fix package names for executables. 2016-03-23 20:57:43 -07:00
gotestrunner Add a test runner 2015-09-18 10:28:36 -07:00
loadplugins Implement plugins for bootstrap go modules 2015-09-14 15:35:12 -07:00
parser Fix error messages containing variable types 2016-07-15 16:43:42 -07:00
pathtools Fix glob dependencies when initial non-wild path does not exist 2015-06-18 10:49:36 -07:00
proptools Support ExtendProperties that can append or prepend 2016-05-05 16:23:19 -07:00
tests Add build wrapper to do stage selection before ninja 2015-12-10 16:18:15 -08:00
.gitignore Add test suite for bootstrapping 2015-07-23 22:04:42 -07:00
.travis.fix-fork.sh Fix running travis on forked repos 2015-07-23 21:07:32 -07:00
.travis.install-ninja.sh Switch to custom-built ninja v1.6.0 2015-07-23 21:07:32 -07:00
.travis.yml Add build wrapper to do stage selection before ninja 2015-12-10 16:18:15 -08:00
blueprint.bash Add build wrapper to do stage selection before ninja 2015-12-10 16:18:15 -08:00
Blueprints Refactor blueprint parser nodes to an interface 2016-06-08 14:48:53 -07:00
bootstrap.bash Add build wrapper to do stage selection before ninja 2015-12-10 16:18:15 -08:00
build.ninja.in Refactor blueprint parser nodes to an interface 2016-06-08 14:48:53 -07:00
context.go Rename Pos members 2016-06-14 15:26:49 -07:00
context_test.go Deprecate EarlyMutator and DynamicDependencies 2015-10-29 16:03:37 -07:00
context_test_Blueprints Added test for walkDeps. 2015-10-09 17:57:00 -07:00
CONTRIBUTING.md Add CONTRIBUTING.md file 2015-03-16 00:12:49 -07:00
doc.go Indent code block in doc.go 2015-04-11 09:52:11 -07:00
LICENSE Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
live_tracker.go Add common implicit deps to Rules 2015-11-17 17:08:05 -08:00
mangle.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
module_ctx.go Support dependencies between variants 2016-04-12 14:52:46 -07:00
ninja_defs.go Allow wrapping of PackageContext 2015-11-30 17:03:34 -08:00
ninja_strings.go Allow wrapping of PackageContext 2015-11-30 17:03:34 -08:00
ninja_strings_test.go Fix formatting 2015-04-20 16:41:55 -07:00
ninja_writer.go Support comments in build rules. 2015-11-08 12:21:58 -08:00
ninja_writer_test.go Support comments in build rules. 2015-11-08 12:21:58 -08:00
package_ctx.go Fix govet issues 2016-06-02 12:38:24 -07:00
README.md Add .travis.yml to configure CI 2015-03-21 03:12:46 -04:00
scope.go Allow wrapping of PackageContext 2015-11-30 17:03:34 -08:00
singleton_ctx.go Add SingletonContext.Eval to evaluate ninja strings 2016-03-28 14:14:15 -07:00
splice_modules_test.go Catch panics in build logic 2016-01-07 17:24:26 -08:00
unpack.go Fix error messages containing variable types 2016-07-15 16:43:42 -07:00
unpack_test.go Refactor blueprint parser nodes to an interface 2016-06-08 14:48:53 -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.