[OE-core] [PATCH] alsa-lib: Unbreak native build when using TCLIBC=uclibc

Phil Blundell philb at gnu.org
Mon Nov 21 20:48:20 UTC 2011


On Mon, 2011-11-21 at 12:23 -0800, Khem Raj wrote:
> A recent change introduced EXTRA_OECONF_append_libc-uclibc = "
> --with-versioned=no " this change has a side effect when
> building alsa-lib-native using TCLIBC=uclibc the override
> kicks in uninvited and hence build the native package without symbol
> version information. This mean libasound.so which is needed by other
> packages from build host e.g. libSDL.so does not have required symbols
> and linking with libSDL fails, one such case ends in SDL support
> in qemu-native being silently disabled.
> 
> We make sure that override is only enabled for target recipe

This seems like the wrong solution to the problem.  Shouldn't you be
inhibiting the libc-uclibc OVERRIDE at source for native builds
(assuming the host system isn't using uClibc)?

It also seems as though there ought to be a more generic place to encode
the knowledge that uClibc doesn't do symbol versioning.  Having to hack
it into EXTRA_OECONF for every recipe seems... suboptimal.

p.

> 
> Signed-off-by: Khem Raj <raj.khem at gmail.com>
> ---
>  meta/recipes-multimedia/alsa/alsa-lib_1.0.24.1.bb |   10 ++++++----
>  1 files changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/meta/recipes-multimedia/alsa/alsa-lib_1.0.24.1.bb b/meta/recipes-multimedia/alsa/alsa-lib_1.0.24.1.bb
> index 83e663d..fa96998 100644
> --- a/meta/recipes-multimedia/alsa/alsa-lib_1.0.24.1.bb
> +++ b/meta/recipes-multimedia/alsa/alsa-lib_1.0.24.1.bb
> @@ -14,7 +14,7 @@ BBCLASSEXTEND = "native nativesdk"
>  #FIXME: remove the following
>  ARM_INSTRUCTION_SET = "arm"
>  
> -PR = "r1"
> +PR = "r2"
>  
>  SRC_URI = "ftp://ftp.alsa-project.org/pub/lib/alsa-lib-${PV}.tar.bz2 \
>             file://fix-tstamp-declaration.patch"
> @@ -27,10 +27,12 @@ inherit autotools pkgconfig
>  require alsa-fpu.inc
>  EXTRA_OECONF += "${@get_alsa_fpu_setting(bb, d)} "
>  
> -EXTRA_OECONF = "--with-cards=pdaudiocf --with-oss=yes --disable-python"
> -
> -EXTRA_OECONF_append_libc-uclibc = " --with-versioned=no "
> +EXTRA_OECONF = "--with-cards=pdaudiocf --with-oss=yes --disable-python ${VERSIONEDSYMS}"
>  
> +VERSIONEDSYMS = ""
> +VERSIONEDSYMS_libc-uclibc = "--with-versioned=no"
> +VERSIONEDSYMS_virtclass-native = ""
> +VERSIONEDSYMS_virtclass-nativesdk = ""
>  PKGSUFFIX = ""
>  PKGSUFFIX_virtclass-nativesdk = "-nativesdk"
>  






More information about the Openembedded-core mailing list