No description
Find a file
Christian Zander c4d07d8fb5 Make WriteDepFile escape spaces and special characters
This commit makes deptools.WriteDepFile() escape spaces and the
following set of special characters in the dependencies it
writes to files used as Ninja depfiles: \, #, *, [, |.  Without this
change, dependencies with paths including any of the above may not
function as intended.

Change-Id: I3560a34de930932422200985fb479515a21d9508
2015-04-14 23:34:24 -04:00
bootstrap Update import paths to include github 2015-03-21 01:03:36 -04: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
deptools Make WriteDepFile escape spaces and special characters 2015-04-14 23:34:24 -04:00
parser Update import paths to include github 2015-03-21 01:03:36 -04:00
pathtools Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
proptools Fix bug when copying slice to itself 2015-03-11 16:09:00 -07:00
.travis.yml Add .travis.yml to configure CI 2015-03-21 03:12:46 -04:00
Blueprints Update import paths to include github 2015-03-21 01:03:36 -04:00
bootstrap.bash Clean up the bootstrap script a little. 2014-06-18 12:57:56 -07:00
build.ninja.in Update import paths to include github 2015-03-21 01:03:36 -04:00
context.go Fix cycle printing 2015-03-24 16:42:56 -07:00
context_test.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08: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 Move build actions into modules 2015-03-12 17:36:57 -07:00
mangle.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
module_ctx.go Split "variant" terminology into "variant" and "variation" 2015-03-13 16:02:36 -07:00
ninja_defs.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
ninja_strings.go Relax module naming restrictions 2015-03-12 17:22:18 -07:00
ninja_strings_test.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
ninja_writer.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
ninja_writer_test.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
package_ctx.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
README.md Add .travis.yml to configure CI 2015-03-21 03:12:46 -04:00
scope.go Add license headers and LICENSE file 2015-01-23 14:23:27 -08:00
singleton_ctx.go Move values from moduleGroup to moduleInfo 2015-03-12 17:22:18 -07:00
splice_modules_test.go Update import paths to include github 2015-03-21 01:03:36 -04:00
unpack.go Update import paths to include github 2015-03-21 01:03:36 -04:00
unpack_test.go Update import paths to include github 2015-03-21 01:03:36 -04: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.