* [PATCH 03/22 v2] update-alternatives.bbclass: Add missing runtime dependency
@ 2012-12-05 2:33 Mark Hatle
2012-12-06 12:12 ` Richard Purdie
0 siblings, 1 reply; 3+ messages in thread
From: Mark Hatle @ 2012-12-05 2:33 UTC (permalink / raw)
To: openembedded-core
When using update-alternatives, there should be a runtime dependency on
${VIRTUAL-RUNTIME_update-alternatives}. Without this, it's possible to
get into a situation where the package is not installable.
(If VIRTUAL-RUNTIME_update-alternatives is not defined, no requirement
is added.)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
meta/classes/update-alternatives.bbclass | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/meta/classes/update-alternatives.bbclass b/meta/classes/update-alternatives.bbclass
index 4e1ff27..96fd1e8 100644
--- a/meta/classes/update-alternatives.bbclass
+++ b/meta/classes/update-alternatives.bbclass
@@ -304,6 +304,14 @@ python populate_packages_prepend () {
alt_remove_links += '\tupdate-alternatives --remove %s %s\n' % (alt_name, alt_target)
if alt_setup_links:
+ # RDEPENDS setup
+ provider = d.getVar('VIRTUAL-RUNTIME_update-alternatives', True)
+ if provider:
+ bb.note('adding runtime requirement for update-alternatives for %s' % pkg)
+ rdepends = d.getVar('RDEPENDS_%s' % pkg, True) or ""
+ rdepends += ' ' + d.getVar('MLPREFIX') + provider
+ d.setVar("RDEPENDS_%s" % pkg, rdepends)
+
bb.note('adding update-alternatives calls to postinst/postrm for %s' % pkg)
bb.note('%s' % alt_setup_links)
postinst = (d.getVar('pkg_postinst_%s' % pkg, True) or d.getVar('pkg_postinst', True)) or '#!/bin/sh\n'
--
1.7.3.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 03/22 v2] update-alternatives.bbclass: Add missing runtime dependency
2012-12-05 2:33 [PATCH 03/22 v2] update-alternatives.bbclass: Add missing runtime dependency Mark Hatle
@ 2012-12-06 12:12 ` Richard Purdie
2012-12-06 17:10 ` Mark Hatle
0 siblings, 1 reply; 3+ messages in thread
From: Richard Purdie @ 2012-12-06 12:12 UTC (permalink / raw)
To: Mark Hatle; +Cc: openembedded-core
On Tue, 2012-12-04 at 20:33 -0600, Mark Hatle wrote:
> When using update-alternatives, there should be a runtime dependency on
> ${VIRTUAL-RUNTIME_update-alternatives}. Without this, it's possible to
> get into a situation where the package is not installable.
>
> (If VIRTUAL-RUNTIME_update-alternatives is not defined, no requirement
> is added.)
>
> Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
> ---
> meta/classes/update-alternatives.bbclass | 8 ++++++++
> 1 files changed, 8 insertions(+), 0 deletions(-)
>
> diff --git a/meta/classes/update-alternatives.bbclass b/meta/classes/update-alternatives.bbclass
> index 4e1ff27..96fd1e8 100644
> --- a/meta/classes/update-alternatives.bbclass
> +++ b/meta/classes/update-alternatives.bbclass
> @@ -304,6 +304,14 @@ python populate_packages_prepend () {
> alt_remove_links += '\tupdate-alternatives --remove %s %s\n' % (alt_name, alt_target)
>
> if alt_setup_links:
> + # RDEPENDS setup
> + provider = d.getVar('VIRTUAL-RUNTIME_update-alternatives', True)
> + if provider:
> + bb.note('adding runtime requirement for update-alternatives for %s' % pkg)
> + rdepends = d.getVar('RDEPENDS_%s' % pkg, True) or ""
> + rdepends += ' ' + d.getVar('MLPREFIX') + provider
> + d.setVar("RDEPENDS_%s" % pkg, rdepends)
> +
> bb.note('adding update-alternatives calls to postinst/postrm for %s' % pkg)
> bb.note('%s' % alt_setup_links)
> postinst = (d.getVar('pkg_postinst_%s' % pkg, True) or d.getVar('pkg_postinst', True)) or '#!/bin/sh\n'
I'm afraid I don't like this patch. Firstly, do we really need a bb.note
in there? We don't note every little thing we do, not least as it would
kill performance.
Secondly, why not simply do:
d.appendVar('RDEPENDS_%s' % pkg, ' ' + d.getVar('MLPREFIX') + provider)
?
Cheers,
Richard
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 03/22 v2] update-alternatives.bbclass: Add missing runtime dependency
2012-12-06 12:12 ` Richard Purdie
@ 2012-12-06 17:10 ` Mark Hatle
0 siblings, 0 replies; 3+ messages in thread
From: Mark Hatle @ 2012-12-06 17:10 UTC (permalink / raw)
To: Richard Purdie; +Cc: openembedded-core
On 12/6/12 6:12 AM, Richard Purdie wrote:
> On Tue, 2012-12-04 at 20:33 -0600, Mark Hatle wrote:
>> When using update-alternatives, there should be a runtime dependency on
>> ${VIRTUAL-RUNTIME_update-alternatives}. Without this, it's possible to
>> get into a situation where the package is not installable.
>>
>> (If VIRTUAL-RUNTIME_update-alternatives is not defined, no requirement
>> is added.)
>>
>> Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
>> ---
>> meta/classes/update-alternatives.bbclass | 8 ++++++++
>> 1 files changed, 8 insertions(+), 0 deletions(-)
>>
>> diff --git a/meta/classes/update-alternatives.bbclass b/meta/classes/update-alternatives.bbclass
>> index 4e1ff27..96fd1e8 100644
>> --- a/meta/classes/update-alternatives.bbclass
>> +++ b/meta/classes/update-alternatives.bbclass
>> @@ -304,6 +304,14 @@ python populate_packages_prepend () {
>> alt_remove_links += '\tupdate-alternatives --remove %s %s\n' % (alt_name, alt_target)
>>
>> if alt_setup_links:
>> + # RDEPENDS setup
>> + provider = d.getVar('VIRTUAL-RUNTIME_update-alternatives', True)
>> + if provider:
>> + bb.note('adding runtime requirement for update-alternatives for %s' % pkg)
>> + rdepends = d.getVar('RDEPENDS_%s' % pkg, True) or ""
>> + rdepends += ' ' + d.getVar('MLPREFIX') + provider
>> + d.setVar("RDEPENDS_%s" % pkg, rdepends)
>> +
>> bb.note('adding update-alternatives calls to postinst/postrm for %s' % pkg)
>> bb.note('%s' % alt_setup_links)
>> postinst = (d.getVar('pkg_postinst_%s' % pkg, True) or d.getVar('pkg_postinst', True)) or '#!/bin/sh\n'
>
> I'm afraid I don't like this patch. Firstly, do we really need a bb.note
> in there? We don't note every little thing we do, not least as it would
> kill performance.
There are very few instances of this, I'm surprised if performance would be
impacted beyond the noise. The next item has a similar bb.note as well.
> Secondly, why not simply do:
>
> d.appendVar('RDEPENDS_%s' % pkg, ' ' + d.getVar('MLPREFIX') + provider)
There was originally code in there to remove duplicates, when it got refactored
out the rest was never changed. I'll fix that up.
--Mark
> ?
>
> Cheers,
>
> Richard
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-12-06 17:24 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-12-05 2:33 [PATCH 03/22 v2] update-alternatives.bbclass: Add missing runtime dependency Mark Hatle
2012-12-06 12:12 ` Richard Purdie
2012-12-06 17:10 ` Mark Hatle
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox