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.

(From OE-Core rev: ed1c156cf46c2cdd8038d6bcf7ed58ebe275e3a1)

Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Diego Sueiro
2021-01-15 15:59:51 +00:00
committed by Richard Purdie
parent 61fb0a5dc0
commit b0cbfd01f1
2 changed files with 7 additions and 0 deletions

View File

@@ -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

View File

@@ -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