No description
Find a file
Colin Cross a2cd69899f Update travis to use go 1.5
Update .travis.yml to specify go 1.5.1, and update build.ninja.in to
include the new in line function names used by go 1.5.
2015-11-09 12:56:38 -08:00
bootstrap Add a test runner 2015-09-18 10:28:36 -07:00
bpfmt Update import paths to include github 2015-03-21 01:03:36 -04:00
bpmodify Update import paths to include github 2015-03-21 01:03:36 -04:00
choosestage Support a separate build directory 2015-08-01 20:07:37 -07:00
deptools Make WriteDepFile escape spaces and special characters 2015-04-14 23:34:24 -04:00
gotestmain Add option to build and run tests during bootstrap 2015-06-25 11:45:54 -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 bugs related to local vs. inherited variables 2015-08-03 16:08:16 -07:00
pathtools Fix glob dependencies when initial non-wild path does not exist 2015-06-18 10:49:36 -07:00
proptools Add proptools.TypeEqual 2015-11-02 15:40:55 -08:00
tests Use three stage builds 2015-07-29 17:14:00 -07: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 Update travis to use go 1.5 2015-11-09 12:56:38 -08:00
Blueprints Add proptools.TypeEqual 2015-11-02 15:40:55 -08:00
bootstrap.bash Support go 1.5 2015-08-03 16:16:24 -07:00
build.ninja.in Update travis to use go 1.5 2015-11-09 12:56:38 -08:00
context.go Merge pull request #69 from colincross/depserrors 2015-11-04 11:04:37 -08: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 Adding a builtinPool type 2015-04-16 13:10:19 -04:00
mangle.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
module_ctx.go Sort reverse dependencies 2015-11-03 16:41:29 -08:00
ninja_defs.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
ninja_strings.go Fix formatting 2015-04-20 16:41:55 -07:00
ninja_strings_test.go Fix formatting 2015-04-20 16:41:55 -07:00
ninja_writer.go Optimize ninja_writer 2015-04-15 11:03:06 -07:00
ninja_writer_test.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
package_ctx.go Fix formatting 2015-04-20 16:41:55 -07:00
README.md Add .travis.yml to configure CI 2015-03-21 03:12:46 -04:00
scope.go Adding a builtinPool type 2015-04-16 13:10:19 -04:00
singleton_ctx.go Add self-documenting support 2015-06-26 10:51:44 -07:00
splice_modules_test.go Update import paths to include github 2015-03-21 01:03:36 -04:00
unpack.go Add property support for pointers to bools and strings 2015-11-02 13:59:12 -08:00
unpack_test.go Add property support for pointers to bools and strings 2015-11-02 13:59:12 -08: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.