Patchwork eglibc: Remove bogus PACKAGES_DYNAMIC setting

login
register
mail settings
Submitter Phil Blundell
Date Sept. 27, 2012, 11:44 a.m.
Message ID <1348746272.32611.15.camel@phil-desktop>
Download mbox | patch
Permalink /patch/37343/
State Accepted
Commit 0fbb2e0c1889ee34d7f96266615e891bb44b1d10
Headers show

Comments

Phil Blundell - Sept. 27, 2012, 11:44 a.m.
It transpires that eglibc has been setting PACKAGES_DYNAMIC = "libc6*" for
some time.  However, this is bogus for at least two reasons:

1. Bitbake interprets PACKAGES_DYNAMIC as a regex, not a glob, so this will
match against any package whose name starts "libc" plus zero or more sixes.
This is particularly toxic because the nativesdk variant picks up the same
value and will, consequently, start trying to build itself at the slightest
excuse.

2. eglibc doesn't actually build any packages named "libc6<anything>", other
than the ones that are named in PACKAGES anyway, so the dynamic provider
declaration is in any case useless.

Simply deleting the line is not sufficient since then we get the default
value from bitbake.conf which causes eglibc.bb to fight with eglibc-locale.bb.
So instead we must set it to the empty string for good results.

Signed-off-by: Phil Blundell <pb@pbcl.net>
---
 meta/recipes-core/eglibc/eglibc_2.16.bb |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Saul Wold - Sept. 27, 2012, 3:34 p.m.
On 09/27/2012 04:44 AM, Phil Blundell wrote:
> It transpires that eglibc has been setting PACKAGES_DYNAMIC = "libc6*" for
> some time.  However, this is bogus for at least two reasons:
>
> 1. Bitbake interprets PACKAGES_DYNAMIC as a regex, not a glob, so this will
> match against any package whose name starts "libc" plus zero or more sixes.
> This is particularly toxic because the nativesdk variant picks up the same
> value and will, consequently, start trying to build itself at the slightest
> excuse.
>
> 2. eglibc doesn't actually build any packages named "libc6<anything>", other
> than the ones that are named in PACKAGES anyway, so the dynamic provider
> declaration is in any case useless.
>
> Simply deleting the line is not sufficient since then we get the default
> value from bitbake.conf which causes eglibc.bb to fight with eglibc-locale.bb.
> So instead we must set it to the empty string for good results.
>
> Signed-off-by: Phil Blundell <pb@pbcl.net>
> ---
>   meta/recipes-core/eglibc/eglibc_2.16.bb |    3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/meta/recipes-core/eglibc/eglibc_2.16.bb b/meta/recipes-core/eglibc/eglibc_2.16.bb
> index 3a7ae50..b37922d 100644
> --- a/meta/recipes-core/eglibc/eglibc_2.16.bb
> +++ b/meta/recipes-core/eglibc/eglibc_2.16.bb
> @@ -43,7 +43,8 @@ SRC_URI_append_virtclass-nativesdk = " file://ld-search-order.patch \
>   S = "${WORKDIR}/${EGLIBC_BRANCH}/libc"
>   B = "${WORKDIR}/build-${TARGET_SYS}"
>
> -PACKAGES_DYNAMIC = "libc6*"
> +PACKAGES_DYNAMIC = ""
> +
>   RPROVIDES_${PN}-dev = "libc6-dev virtual-libc-dev"
>   PROVIDES_${PN}-dbg = "glibc-dbg"
>
>
Merged into OE-Core

Thanks
	Sau!

Patch

diff --git a/meta/recipes-core/eglibc/eglibc_2.16.bb b/meta/recipes-core/eglibc/eglibc_2.16.bb
index 3a7ae50..b37922d 100644
--- a/meta/recipes-core/eglibc/eglibc_2.16.bb
+++ b/meta/recipes-core/eglibc/eglibc_2.16.bb
@@ -43,7 +43,8 @@  SRC_URI_append_virtclass-nativesdk = " file://ld-search-order.patch \
 S = "${WORKDIR}/${EGLIBC_BRANCH}/libc"
 B = "${WORKDIR}/build-${TARGET_SYS}"
 
-PACKAGES_DYNAMIC = "libc6*"
+PACKAGES_DYNAMIC = ""
+
 RPROVIDES_${PN}-dev = "libc6-dev virtual-libc-dev"
 PROVIDES_${PN}-dbg = "glibc-dbg"