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 |