diff options
| author | Chen Qi <Qi.Chen@windriver.com> | 2022-01-06 18:16:24 -0800 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-01-08 14:17:35 +0000 |
| commit | 5d653957d599e3e5bf5ed453d7098aed92c2de3c (patch) | |
| tree | 5c515c01ca6c700a75718ff3ad26160e3f3a921d | |
| parent | d55fbf4779483d2cfd71df78d0f733b599fef739 (diff) | |
| download | poky-5d653957d599e3e5bf5ed453d7098aed92c2de3c.tar.gz | |
populate_sdk_base: remove unneeded dirs such as /dev
We met a problem that core-image-tiny-initramfs's SDK cannot be
installed. The error message is like below.
tar: ./sysroots/core2-64-poky-linux/dev/console: Cannot mknod: Operation not permitted
In fact, the '/dev' direcotry is not needed by SDK. So remove it.
This patches uses a variable, SDK_PRUNE_SYSROOT_DIRS, to hold useless dir entries
so that it could be extended. For example, '/usr/bin' could be added if wanted.
(From OE-Core rev: 9154f71c7267e9731156c1dfd57397103e9e6a2b)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/classes/populate_sdk_base.bbclass | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass index fafdd96749..16f929bf59 100644 --- a/meta/classes/populate_sdk_base.bbclass +++ b/meta/classes/populate_sdk_base.bbclass | |||
| @@ -92,6 +92,8 @@ SDK_HOST_MANIFEST = "${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.host.manifest" | |||
| 92 | SDK_EXT_TARGET_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.target.manifest" | 92 | SDK_EXT_TARGET_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.target.manifest" |
| 93 | SDK_EXT_HOST_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.host.manifest" | 93 | SDK_EXT_HOST_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.host.manifest" |
| 94 | 94 | ||
| 95 | SDK_PRUNE_SYSROOT_DIRS ?= "/dev" | ||
| 96 | |||
| 95 | python write_target_sdk_manifest () { | 97 | python write_target_sdk_manifest () { |
| 96 | from oe.sdk import sdk_list_installed_packages | 98 | from oe.sdk import sdk_list_installed_packages |
| 97 | from oe.utils import format_pkg_list | 99 | from oe.utils import format_pkg_list |
| @@ -103,6 +105,12 @@ python write_target_sdk_manifest () { | |||
| 103 | output.write(format_pkg_list(pkgs, 'ver')) | 105 | output.write(format_pkg_list(pkgs, 'ver')) |
| 104 | } | 106 | } |
| 105 | 107 | ||
| 108 | sdk_prune_dirs () { | ||
| 109 | for d in ${SDK_PRUNE_SYSROOT_DIRS}; do | ||
| 110 | rm -rf ${SDK_OUTPUT}${SDKTARGETSYSROOT}$d | ||
| 111 | done | ||
| 112 | } | ||
| 113 | |||
| 106 | python write_sdk_test_data() { | 114 | python write_sdk_test_data() { |
| 107 | from oe.data import export2json | 115 | from oe.data import export2json |
| 108 | testdata = "%s/%s.testdata.json" % (d.getVar('SDKDEPLOYDIR'), d.getVar('TOOLCHAIN_OUTPUTNAME')) | 116 | testdata = "%s/%s.testdata.json" % (d.getVar('SDKDEPLOYDIR'), d.getVar('TOOLCHAIN_OUTPUTNAME')) |
| @@ -122,8 +130,9 @@ python write_host_sdk_manifest () { | |||
| 122 | } | 130 | } |
| 123 | 131 | ||
| 124 | POPULATE_SDK_POST_TARGET_COMMAND:append = " write_sdk_test_data ; " | 132 | POPULATE_SDK_POST_TARGET_COMMAND:append = " write_sdk_test_data ; " |
| 125 | POPULATE_SDK_POST_TARGET_COMMAND:append:task-populate-sdk = " write_target_sdk_manifest ; " | 133 | POPULATE_SDK_POST_TARGET_COMMAND:append:task-populate-sdk = " write_target_sdk_manifest; sdk_prune_dirs; " |
| 126 | POPULATE_SDK_POST_HOST_COMMAND:append:task-populate-sdk = " write_host_sdk_manifest; " | 134 | POPULATE_SDK_POST_HOST_COMMAND:append:task-populate-sdk = " write_host_sdk_manifest; " |
| 135 | |||
| 127 | SDK_PACKAGING_COMMAND = "${@'${SDK_PACKAGING_FUNC};' if '${SDK_PACKAGING_FUNC}' else ''}" | 136 | SDK_PACKAGING_COMMAND = "${@'${SDK_PACKAGING_FUNC};' if '${SDK_PACKAGING_FUNC}' else ''}" |
| 128 | SDK_POSTPROCESS_COMMAND = " create_sdk_files; check_sdk_sysroots; archive_sdk; ${SDK_PACKAGING_COMMAND} " | 137 | SDK_POSTPROCESS_COMMAND = " create_sdk_files; check_sdk_sysroots; archive_sdk; ${SDK_PACKAGING_COMMAND} " |
| 129 | 138 | ||
