diff options
| -rw-r--r-- | meta/classes/sstate.bbclass | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index 402b9e9c5c..53f71d4337 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass | |||
| @@ -920,6 +920,7 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None): | |||
| 920 | # task is included in taskdependees too | 920 | # task is included in taskdependees too |
| 921 | # Return - False - We need this dependency | 921 | # Return - False - We need this dependency |
| 922 | # - True - We can skip this dependency | 922 | # - True - We can skip this dependency |
| 923 | import re | ||
| 923 | 924 | ||
| 924 | def logit(msg, log): | 925 | def logit(msg, log): |
| 925 | if log is not None: | 926 | if log is not None: |
| @@ -980,6 +981,18 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None): | |||
| 980 | # Nothing need depend on libc-initial/gcc-cross-initial | 981 | # Nothing need depend on libc-initial/gcc-cross-initial |
| 981 | if "-initial" in taskdependees[task][0]: | 982 | if "-initial" in taskdependees[task][0]: |
| 982 | continue | 983 | continue |
| 984 | # Allow excluding certain recursive dependencies. If a recipe needs it should add a | ||
| 985 | # specific dependency itself, rather than relying on one of its dependees to pull | ||
| 986 | # them in. | ||
| 987 | # See also http://lists.openembedded.org/pipermail/openembedded-core/2018-January/146324.html | ||
| 988 | not_needed = False | ||
| 989 | for excl in (d.getVar('SSTATE_EXCLUDEDEPS_SYSROOT') or "").split(): | ||
| 990 | if re.match(excl.split('->', 1)[0], taskdependees[dep][0]): | ||
| 991 | if re.match(excl.split('->', 1)[1], taskdependees[task][0]): | ||
| 992 | not_needed = True | ||
| 993 | break | ||
| 994 | if not_needed: | ||
| 995 | continue | ||
| 983 | # For meta-extsdk-toolchain we want all sysroot dependencies | 996 | # For meta-extsdk-toolchain we want all sysroot dependencies |
| 984 | if taskdependees[dep][0] == 'meta-extsdk-toolchain': | 997 | if taskdependees[dep][0] == 'meta-extsdk-toolchain': |
| 985 | return False | 998 | return False |
