summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDiego Sueiro <diego.sueiro@arm.com>2021-01-15 15:59:51 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-01-16 22:39:17 +0000
commited1c156cf46c2cdd8038d6bcf7ed58ebe275e3a1 (patch)
tree29c17bcb1e2046d805571c811f79768a97e41b02
parent76107fd7372559aa4cd22a89d5517a4dfce9314d (diff)
downloadopenembedded-core-contrib-ed1c156cf46c2cdd8038d6bcf7ed58ebe275e3a1.tar.gz
staging: Introduce /sysroot-only to SYSROOT_DIRS
The '/sysroot-only' in SYSROOT_DIRS is to be used by recipes which generate artifacts that are not included in the target filesystem. Also, remove the ${D}/sysroot-only dir before copying D do PKGD to generate the packages since it is not supposed to be included in any package. This will allow recipes to share non-target filesystem artifacts without needing to use the DEPLOY_DIR and keep it tidy. Signed-off-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/package.bbclass6
-rw-r--r--meta/classes/staging.bbclass1
2 files changed, 7 insertions, 0 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index 247bdc7bbf..a77d532b66 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -807,10 +807,16 @@ python package_do_split_locales() {
python perform_packagecopy () {
import subprocess
+ import shutil
dest = d.getVar('D')
dvar = d.getVar('PKGD')
+ # Remove ${D}/sysroot-only if present
+ sysroot_only = os.path.join(dest, 'sysroot-only')
+ if cpath.exists(sysroot_only) and cpath.isdir(sysroot_only):
+ shutil.rmtree(sysroot_only)
+
# Start by package population by taking a copy of the installed
# files to operate on
# Preserve sparse files and hard links
diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index f0a619b35b..12e0eab4f0 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -5,6 +5,7 @@ SYSROOT_DIRS = " \
${base_libdir} \
${nonarch_base_libdir} \
${datadir} \
+ /sysroot-only \
"
# These directories are also staged in the sysroot when they contain files that