diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-01-19 16:53:53 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-01-20 11:53:49 +0000 |
commit | efd120e71418bc1cf3431194f38adf6986d1956e (patch) | |
tree | 757f9a7705c5979abd39ef74c323062599f6eb84 /meta | |
parent | bc7162a46cebfec3896f95081bc2f635efa509f2 (diff) | |
download | poky-efd120e71418bc1cf3431194f38adf6986d1956e.tar.gz |
sstate: Drop the depchain isPostDep() checks
The dependencies of do_package_write_* tasks are either going to be packaging
tools needed to build the packages, or, native tools needed at postinst
time. Now we've formalised this dependency pattern, drop the hardcoded
list and work based on the rule. The package creation tools are usually
the same tools needed at rootfs/postinst time anyway so the difference is
moot.
(From OE-Core rev: 8082c6aabf838a2cc5253d2bb1bd8867f2e1ba6a)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/sstate.bbclass | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index b56e95a768..f1faf4848e 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass | |||
@@ -871,17 +871,14 @@ BB_SETSCENE_DEPVALID = "setscene_depvalid" | |||
871 | def setscene_depvalid(task, taskdependees, notneeded, d): | 871 | def setscene_depvalid(task, taskdependees, notneeded, d): |
872 | # taskdependees is a dict of tasks which depend on task, each being a 3 item list of [PN, TASKNAME, FILENAME] | 872 | # taskdependees is a dict of tasks which depend on task, each being a 3 item list of [PN, TASKNAME, FILENAME] |
873 | # task is included in taskdependees too | 873 | # task is included in taskdependees too |
874 | # Return - False - We need this dependency | ||
875 | # - True - We can skip this dependency | ||
874 | 876 | ||
875 | bb.debug(2, "Considering setscene task: %s" % (str(taskdependees[task]))) | 877 | bb.debug(2, "Considering setscene task: %s" % (str(taskdependees[task]))) |
876 | 878 | ||
877 | def isNativeCross(x): | 879 | def isNativeCross(x): |
878 | return x.endswith("-native") or "-cross-" in x or "-crosssdk" in x | 880 | return x.endswith("-native") or "-cross-" in x or "-crosssdk" in x |
879 | 881 | ||
880 | def isPostInstDep(x): | ||
881 | if x in ["qemu-native", "gdk-pixbuf-native", "qemuwrapper-cross", "depmodwrapper-cross", "systemd-systemctl-native", "gtk-icon-utils-native", "ca-certificates-native"]: | ||
882 | return True | ||
883 | return False | ||
884 | |||
885 | # We only need to trigger populate_lic through direct dependencies | 882 | # We only need to trigger populate_lic through direct dependencies |
886 | if taskdependees[task][1] == "do_populate_lic": | 883 | if taskdependees[task][1] == "do_populate_lic": |
887 | return True | 884 | return True |
@@ -903,10 +900,11 @@ def setscene_depvalid(task, taskdependees, notneeded, d): | |||
903 | # do_package_write_* and do_package doesn't need do_package | 900 | # do_package_write_* and do_package doesn't need do_package |
904 | if taskdependees[task][1] == "do_package" and taskdependees[dep][1] in ['do_package', 'do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm', 'do_packagedata', 'do_package_qa']: | 901 | if taskdependees[task][1] == "do_package" and taskdependees[dep][1] in ['do_package', 'do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm', 'do_packagedata', 'do_package_qa']: |
905 | continue | 902 | continue |
906 | # do_package_write_* and do_package doesn't need do_populate_sysroot, unless is a postinstall dependency | 903 | # do_package_write_* need do_populate_sysroot as they're mainly postinstall dependencies |
907 | if taskdependees[task][1] == "do_populate_sysroot" and taskdependees[dep][1] in ['do_package', 'do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm', 'do_packagedata', 'do_package_qa']: | 904 | if taskdependees[task][1] == "do_populate_sysroot" and taskdependees[dep][1] in ['do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm']: |
908 | if isPostInstDep(taskdependees[task][0]) and taskdependees[dep][1] in ['do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm']: | 905 | return False |
909 | return False | 906 | # do_package/packagedata/package_qa don't need do_populate_sysroot |
907 | if taskdependees[task][1] == "do_populate_sysroot" and taskdependees[dep][1] in ['do_package', 'do_packagedata', 'do_package_qa']: | ||
910 | continue | 908 | continue |
911 | # Native/Cross packages don't exist and are noexec anyway | 909 | # Native/Cross packages don't exist and are noexec anyway |
912 | if isNativeCross(taskdependees[dep][0]) and taskdependees[dep][1] in ['do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm', 'do_packagedata', 'do_package', 'do_package_qa']: | 910 | if isNativeCross(taskdependees[dep][0]) and taskdependees[dep][1] in ['do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm', 'do_packagedata', 'do_package', 'do_package_qa']: |