diff options
Diffstat (limited to 'bitbake/lib/bb/parse/parse_py/ConfHandler.py')
-rw-r--r-- | bitbake/lib/bb/parse/parse_py/ConfHandler.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/bitbake/lib/bb/parse/parse_py/ConfHandler.py b/bitbake/lib/bb/parse/parse_py/ConfHandler.py index 7b30c8acb3..f4fb2aa45c 100644 --- a/bitbake/lib/bb/parse/parse_py/ConfHandler.py +++ b/bitbake/lib/bb/parse/parse_py/ConfHandler.py | |||
@@ -82,9 +82,15 @@ def include(oldfn, fn, lineno, data, error_out): | |||
82 | if not os.path.isabs(fn): | 82 | if not os.path.isabs(fn): |
83 | dname = os.path.dirname(oldfn) | 83 | dname = os.path.dirname(oldfn) |
84 | bbpath = "%s:%s" % (dname, data.getVar("BBPATH", True)) | 84 | bbpath = "%s:%s" % (dname, data.getVar("BBPATH", True)) |
85 | abs_fn = bb.utils.which(bbpath, fn) | 85 | abs_fn, attempts = bb.utils.which(bbpath, fn, history=True) |
86 | if abs_fn and bb.parse.check_dependency(data, abs_fn): | ||
87 | bb.warn("Duplicate inclusion for %s in %s" % (abs_fn, data.getVar('FILE', True))) | ||
88 | for af in attempts: | ||
89 | bb.parse.mark_dependency(data, af) | ||
86 | if abs_fn: | 90 | if abs_fn: |
87 | fn = abs_fn | 91 | fn = abs_fn |
92 | elif bb.parse.check_dependency(data, fn): | ||
93 | bb.warn("Duplicate inclusion for %s in %s" % (fn, data.getVar('FILE', True))) | ||
88 | 94 | ||
89 | from bb.parse import handle | 95 | from bb.parse import handle |
90 | try: | 96 | try: |
@@ -93,6 +99,7 @@ def include(oldfn, fn, lineno, data, error_out): | |||
93 | if error_out: | 99 | if error_out: |
94 | raise ParseError("Could not %(error_out)s file %(fn)s" % vars(), oldfn, lineno) | 100 | raise ParseError("Could not %(error_out)s file %(fn)s" % vars(), oldfn, lineno) |
95 | logger.debug(2, "CONF file '%s' not found", fn) | 101 | logger.debug(2, "CONF file '%s' not found", fn) |
102 | bb.parse.mark_dependency(data, fn) | ||
96 | 103 | ||
97 | # We have an issue where a UI might want to enforce particular settings such as | 104 | # We have an issue where a UI might want to enforce particular settings such as |
98 | # an empty DISTRO variable. If configuration files do something like assigning | 105 | # an empty DISTRO variable. If configuration files do something like assigning |