diff options
author | André Draszik <adraszik@tycoint.com> | 2016-06-24 15:39:42 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-07-01 16:08:46 +0100 |
commit | 89cbf98fda3eb5d75eb03b3781bd86506ec2b126 (patch) | |
tree | d743346b4942aec2ec4c6c4ceab2340f813d3a87 /meta | |
parent | 7585ebbbe4e95870ab7475737ed5b94255351c72 (diff) | |
download | openembedded-core-contrib-89cbf98fda3eb5d75eb03b3781bd86506ec2b126.tar.gz |
uclibc: backport patch to fix gdb 7.11 compilation
[YOCTO #9781]
Signed-off-by: André Draszik <adraszik@tycoint.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-core/uclibc/uclibc-git.inc | 1 | ||||
-rw-r--r-- | meta/recipes-core/uclibc/uclibc-git/0001-Provide-an-alias-to-_obstack_free.patch | 44 |
2 files changed, 45 insertions, 0 deletions
diff --git a/meta/recipes-core/uclibc/uclibc-git.inc b/meta/recipes-core/uclibc/uclibc-git.inc index a56fa7cb649..718bee9eee1 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 00000000000..30b443f592a --- /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@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@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 + |