127d2eae8b
Add globbing with dependency checking to blueprint. Calling ModuleContext.GlobWithDeps or SingletonContext.GlobWithDeps will return a list of files that match the globs, while also adding efficient dependencies to rerun the primary builder if a file that matches the glob is added or removed. Also use the globbing support for optional_subdirs=, subdirs= and build= lines in blueprints files. The globbing slightly changes the behavior of subname= lines, it no longer falls back to looking for a file called "Blueprints". Blueprint files that need to include a subdirectory with a different name can use build= instead of subdir= to directly include them. The Blueprints file is updated to reset subname="Blueprints" in case we want to include subdirectories inside blueprint and the primary builder has changed the subname. Also adds a new test directory that contains a simple primary builder tree to test regeneration for globbing, and runs the tests in travis. Change-Id: I83ce525fd11e11579cc58ba5308d01ca8eea7bc6
26 lines
461 B
YAML
26 lines
461 B
YAML
language: go
|
|
|
|
go:
|
|
- 1.5.1
|
|
|
|
cache:
|
|
directories:
|
|
- $HOME/ninjabin
|
|
|
|
install:
|
|
- ./.travis.install-ninja.sh
|
|
- export PATH=$PATH:~/ninjabin
|
|
|
|
before_script:
|
|
- source .travis.fix-fork.sh
|
|
|
|
script:
|
|
- ./.travis.gofmt.sh
|
|
- go test ./...
|
|
- mkdir stage
|
|
- cd stage
|
|
- ../bootstrap.bash
|
|
- ./blueprint.bash
|
|
- diff -us ../build.ninja.in .minibootstrap/build.ninja.in
|
|
- ../tests/test.sh
|
|
- ../tests/test_tree_tests.sh
|