[OE-core] [PATCH 3/4] uclibc: backport patch to fix gdb 7.11 compilation

Khem Raj raj.khem at gmail.com
Fri Jun 24 13:52:18 UTC 2016


similar patch was proposed by someone in past.

http://patchwork.openembedded.org/patch/125181/

this one is better since its a proper backport. May be add the
relevant bug ID to commit msg and drop the other one


On Fri, Jun 24, 2016 at 3:54 AM, André Draszik <git at andred.net> wrote:
> From: André Draszik <adraszik at tycoint.com>
>
> Signed-off-by: André Draszik <adraszik at tycoint.com>
> ---
>  meta/recipes-core/uclibc/uclibc-git.inc            |  1 +
>  .../0001-Provide-an-alias-to-_obstack_free.patch   | 44 ++++++++++++++++++++++
>  2 files changed, 45 insertions(+)
>  create mode 100644 meta/recipes-core/uclibc/uclibc-git/0001-Provide-an-alias-to-_obstack_free.patch
>
> diff --git a/meta/recipes-core/uclibc/uclibc-git.inc b/meta/recipes-core/uclibc/uclibc-git.inc
> index a56fa7c..718bee9 100644
> --- a/meta/recipes-core/uclibc/uclibc-git.inc
> +++ b/meta/recipes-core/uclibc/uclibc-git.inc
> @@ -6,6 +6,7 @@ FILESEXTRAPATHS =. "${FILE_DIRNAME}/uclibc-git:"
>
>  SRC_URI = "git://uclibc-ng.org/git/uclibc-ng \
>          file://0001-Disable-lrount_tes-function.patch \
> +        file://0001-Provide-an-alias-to-_obstack_free.patch \
>          file://uClibc.machine \
>          file://uClibc.distro \
>          file://obstack.cfg \
> diff --git a/meta/recipes-core/uclibc/uclibc-git/0001-Provide-an-alias-to-_obstack_free.patch b/meta/recipes-core/uclibc/uclibc-git/0001-Provide-an-alias-to-_obstack_free.patch
> new file mode 100644
> index 0000000..30b443f
> --- /dev/null
> +++ b/meta/recipes-core/uclibc/uclibc-git/0001-Provide-an-alias-to-_obstack_free.patch
> @@ -0,0 +1,44 @@
> +From 06e4fe64bbd01f16ee84da161b8e1a61e73b4cdb Mon Sep 17 00:00:00 2001
> +From: Alexey Neyman <aneyman at lynx.com>
> +Date: Thu, 31 Mar 2016 13:02:47 -0700
> +Subject: [PATCH] Provide an alias to _obstack_free
> +
> +GDB 7.11 does not build if compiled against uclibc-ng (1.0.12 was used,
> +but the problematic code exists in 1.0.13 as well). The reason is that
> +GDB release includes its own obstack implementation, but elides the code
> +if <gnu-versions.h> declares a compatible obstack implementation in
> +libc. uclibc-ng does claim compatible obstack interface (GDB expects
> +version 2, but accepts version 1 if sizeof(int) == sizeof(size_t)),
> +however, uclibc-ng does not provide the _obstack_free symbol that is a
> +part of the interface (glibc does provide this symbol). This later
> +causes a link failure.
> +
> +The attached patch makes uclibc-ng enables an alias _obstack_free ->
> +obstack_free.
> +
> +Signed-off-by: Alexey Neyman <stilor at att.net>
> +---
> +Upstream-Status: Backport
> +
> + libc/misc/gnu/obstack.c | 2 --
> + 1 file changed, 2 deletions(-)
> +
> +diff --git a/libc/misc/gnu/obstack.c b/libc/misc/gnu/obstack.c
> +index 38cfd83..6acc567 100644
> +--- a/libc/misc/gnu/obstack.c
> ++++ b/libc/misc/gnu/obstack.c
> +@@ -385,11 +385,9 @@ obstack_free (struct obstack *h, void *obj)
> +     abort ();
> + }
> +
> +-# if 0
> + /* Older versions of libc used a function _obstack_free intended to be
> +    called by non-GCC compilers.  */
> + strong_alias (obstack_free, _obstack_free)
> +-# endif
> +
> + int
> + _obstack_memory_used (struct obstack *h)
> +--
> +2.8.1
> +
> --
> 2.8.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



More information about the Openembedded-core mailing list