From: Ola x Nilsson <ola.x.nilsson@axis.com>
To: Andrej Valek <andrej.valek@siemens.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH 1/1] feat(dbg-packages): possibility to add packages to debug rootfs
Date: Wed, 3 Oct 2018 14:33:16 +0200 [thread overview]
Message-ID: <jwqo9cb1a7n.fsf@axis.com> (raw)
In-Reply-To: <20181003090036.508-2-andrej.valek@siemens.com>
On Wed, Oct 03 2018, Andrej Valek wrote:
> Static libraries are not included in rootfs, it means, that sources are
> not going into debug rootfs. This option enables to install additional
> packages even if the standard package is not installed.
>
> Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
> ---
> meta/classes/image.bbclass | 4 +++-
> meta/classes/populate_sdk_base.bbclass | 2 +-
> meta/lib/oe/package_manager.py | 4 ++++
> 3 files changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
> index 34fdbb0850..289978e000 100644
> --- a/meta/classes/image.bbclass
> +++ b/meta/classes/image.bbclass
> @@ -101,6 +101,8 @@ LDCONFIGDEPEND_libc-musl = ""
> # don't want this dependency, which is causing dependency loop
> KERNELDEPMODDEPEND ?= "virtual/kernel:do_packagedata"
>
> +ADDITIONAL_DBG_ROOTFS ?= ""
This variable shoulde follow the image "naming convention". IMAGE_INSTALL_DEBUGFS?
> +
> do_rootfs[depends] += " \
> makedevs-native:do_populate_sysroot virtual/fakeroot-native:do_populate_sysroot ${LDCONFIGDEPEND} \
> virtual/update-alternatives-native:do_populate_sysroot update-rc.d-native:do_populate_sysroot \
> @@ -125,7 +127,7 @@ def rootfs_variables(d):
> 'IMAGE_ROOTFS_MAXSIZE','IMAGE_NAME','IMAGE_LINK_NAME','IMAGE_MANIFEST','DEPLOY_DIR_IMAGE','IMAGE_FSTYPES','IMAGE_INSTALL_COMPLEMENTARY','IMAGE_LINGUAS',
> 'MULTILIBRE_ALLOW_REP','MULTILIB_TEMP_ROOTFS','MULTILIB_VARIANTS','MULTILIBS','ALL_MULTILIB_PACKAGE_ARCHS','MULTILIB_GLOBAL_VARIANTS','BAD_RECOMMENDATIONS','NO_RECOMMENDATIONS',
> 'PACKAGE_ARCHS','PACKAGE_CLASSES','TARGET_VENDOR','TARGET_ARCH','TARGET_OS','OVERRIDES','BBEXTENDVARIANT','FEED_DEPLOYDIR_BASE_URI','INTERCEPT_DIR','USE_DEVFS',
> - 'CONVERSIONTYPES', 'IMAGE_GEN_DEBUGFS', 'ROOTFS_RO_UNNEEDED', 'IMGDEPLOYDIR', 'PACKAGE_EXCLUDE_COMPLEMENTARY', 'REPRODUCIBLE_TIMESTAMP_ROOTFS']
> + 'CONVERSIONTYPES', 'IMAGE_GEN_DEBUGFS', 'ROOTFS_RO_UNNEEDED', 'IMGDEPLOYDIR', 'PACKAGE_EXCLUDE_COMPLEMENTARY', 'REPRODUCIBLE_TIMESTAMP_ROOTFS', 'ADDITIONAL_DBG_ROOTFS']
> variables.extend(rootfs_command_variables(d))
> variables.extend(variable_depends(d))
> return " ".join(variables)
> diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
> index e07ad0cc6b..982c30cfa2 100644
> --- a/meta/classes/populate_sdk_base.bbclass
> +++ b/meta/classes/populate_sdk_base.bbclass
> @@ -293,7 +293,7 @@ def sdk_command_variables(d):
> def sdk_variables(d):
> variables = ['BUILD_IMAGES_FROM_FEEDS','SDK_OS','SDK_OUTPUT','SDKPATHNATIVE','SDKTARGETSYSROOT','SDK_DIR','SDK_VENDOR','SDKIMAGE_INSTALL_COMPLEMENTARY','SDK_PACKAGE_ARCHS','SDK_OUTPUT',
> 'SDKTARGETSYSROOT','MULTILIB_VARIANTS','MULTILIBS','ALL_MULTILIB_PACKAGE_ARCHS','MULTILIB_GLOBAL_VARIANTS','BAD_RECOMMENDATIONS','NO_RECOMMENDATIONS','PACKAGE_ARCHS',
> - 'PACKAGE_CLASSES','TARGET_VENDOR','TARGET_VENDOR','TARGET_ARCH','TARGET_OS','BBEXTENDVARIANT','FEED_DEPLOYDIR_BASE_URI', 'PACKAGE_EXCLUDE_COMPLEMENTARY']
> + 'PACKAGE_CLASSES','TARGET_VENDOR','TARGET_VENDOR','TARGET_ARCH','TARGET_OS','BBEXTENDVARIANT','FEED_DEPLOYDIR_BASE_URI', 'PACKAGE_EXCLUDE_COMPLEMENTARY', 'ADDITIONAL_DBG_ROOTFS']
> variables.extend(sdk_command_variables(d))
> return " ".join(variables)
>
> diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
> index 8f4b42b0da..63d3d0f609 100644
> --- a/meta/lib/oe/package_manager.py
> +++ b/meta/lib/oe/package_manager.py
> @@ -581,6 +581,10 @@ class PackageManager(object, metaclass=ABCMeta):
> bb.note("Installing complementary packages ...")
> bb.note('Running %s' % cmd)
> complementary_pkgs = subprocess.check_output(cmd, stderr=subprocess.STDOUT).decode("utf-8")
> + # install additional debug packages
> + if globs == '*-dbg':
> + for add_dbg_pkgs in self.d.getVar('ADDITIONAL_DBG_ROOTFS').split():
> + complementary_pkgs += "\n%s-dbg" % add_dbg_pkgs
> self.install(complementary_pkgs.split(), attempt_only=True)
> except subprocess.CalledProcessError as e:
> bb.fatal("Could not compute complementary packages list. Command "
This should not be done in PackageManager. If it should be done like
this it should be done from Rootfs._setup_dbg_rootfs in rootfs.py.
--
Ola x Nilsson
next prev parent reply other threads:[~2018-10-03 12:33 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-03 9:00 [PATCH 0/1] feat(dbg-packages): possibility to add packages to debug rootfs Andrej Valek
2018-10-03 9:00 ` [PATCH 1/1] " Andrej Valek
2018-10-03 12:33 ` Ola x Nilsson [this message]
2018-10-16 14:10 ` [PATCH v2] rootfs: " Andrej Valek
2018-10-17 10:08 ` Ola x Nilsson
2018-10-17 13:24 ` [PATCH v3] " Andrej Valek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=jwqo9cb1a7n.fsf@axis.com \
--to=ola.x.nilsson@axis.com \
--cc=andrej.valek@siemens.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox