summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJürg Billeter <j@bitron.ch>2017-07-07 07:46:42 +0200
committerJürg Billeter <j@bitron.ch>2017-07-14 14:13:51 +0200
commit3f065aa70d9d5bb4088ef43b0552e1190764a54e (patch)
treed304f14a42a8842aa411c8fdf7d473dd671d82f1
parentebfdb5905659f512ae773b4bf52cff29280fc746 (diff)
downloadbuildstream-3f065aa70d9d5bb4088ef43b0552e1190764a54e.tar.gz
context.py: Add strict_build_plan option
-rw-r--r--buildstream/context.py5
-rw-r--r--buildstream/data/userconfig.yaml3
2 files changed, 8 insertions, 0 deletions
diff --git a/buildstream/context.py b/buildstream/context.py
index 398c7ac91..97dfe86cd 100644
--- a/buildstream/context.py
+++ b/buildstream/context.py
@@ -59,6 +59,9 @@ class Context():
self.target_arch = target_arch or host_arch
"""The machine on which the results of the build should execute"""
+ self.strict_build_plan = True
+ """Whether elements must be rebuilt when their dependencies have changed"""
+
self.sourcedir = None
"""The directory where various sources are stored"""
@@ -150,6 +153,8 @@ class Context():
user_config = _yaml.load(config)
_yaml.composite(defaults, user_config, typesafe=True)
+ self.strict_build_plan = _yaml.node_get(defaults, bool, 'strict')
+
for dir in ['sourcedir', 'builddir', 'artifactdir', 'logdir']:
# Allow the ~ tilde expansion and any environment variables in
# path specification in the config files.
diff --git a/buildstream/data/userconfig.yaml b/buildstream/data/userconfig.yaml
index a27ba384f..f3f794bf8 100644
--- a/buildstream/data/userconfig.yaml
+++ b/buildstream/data/userconfig.yaml
@@ -10,6 +10,9 @@
# paths.
#
+# Whether elements must be rebuilt when their dependencies have changed
+strict: True
+
# Location to store sources
sourcedir: ${XDG_CACHE_HOME}/buildstream/sources