From 8047c184f8266fc047c0e5a5524586d414528626 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sun, 19 Sep 2021 16:21:34 +0100 Subject: [PATCH] sstate: Ensure deploy tasks don't pull in toolchains If an image is built from sstate, the cross toolchain was being pulled in. This was due to the sstate dependencies for deploy tasks not being considered in the "depvalid" logic. do_deploy tasks do not need their populate_sysroot dependencies when installed from sstate so skip these. This reduces the sstate pulled in by an image build from sstate significantly. Signed-off-by: Richard Purdie --- meta/classes/sstate.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index 29679e6a5e..498dfc681c 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass @@ -1090,8 +1090,8 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None): # do_package_write_* need do_populate_sysroot as they're mainly postinstall dependencies if taskdependees[task][1] == "do_populate_sysroot" and taskdependees[dep][1] in ['do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm']: return False - # do_package/packagedata/package_qa don't need do_populate_sysroot - if taskdependees[task][1] == "do_populate_sysroot" and taskdependees[dep][1] in ['do_package', 'do_packagedata', 'do_package_qa']: + # do_package/packagedata/package_qa/deploy don't need do_populate_sysroot + if taskdependees[task][1] == "do_populate_sysroot" and taskdependees[dep][1] in ['do_package', 'do_packagedata', 'do_package_qa', 'do_deploy']: continue # Native/Cross packages don't exist and are noexec anyway 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']: -- 2.40.1