diff mbox

uclibc-ng: bump to 1.0.18

Message ID 20160930025738.GM1947@waldemar-brodkorb.de
State Not Applicable
Headers show

Commit Message

Waldemar Brodkorb Sept. 30, 2016, 2:57 a.m. UTC
Hi Lance,
Lance Fredrickson wrote,

> On 9/29/2016 12:22 PM, Waldemar Brodkorb wrote:
> >It is fixed upstream and a patch was sent to br mailinglist.
> 
> Thanks, that seems to take care of it.
> I'm running into one more hiccup, and I'm not sure whether this is more
> buildroot or uclibc-ng.
> 
> I've been using buildroot primarily for its ability to create toolchains, I
> haven't been compiling any included packages.  For my purposes I need
> backtrace support, so I add "UCLIBC_HAS_BACKTRACE=y" into uClibc-ng.config.
> Now when doing the final GCC compilation where it appears to be creating
> libgcc, I get the following error.
> 
> /opt/tomatoware/arm-soft-mmc/usr/arm-buildroot-linux-uclibcgnueabi/bin/ld:
> cannot find /lib/libubacktrace.so.1
> 
> My guess as to what's happening is is that ld is told to link with
> backtrace, but that functionality has been has been put into libc. At the
> location of the toolchain libraries, I created some symlinks from backtrace
> (libubacktrace.so...) to libc and this made it happy and it finished
> compiling the toolchain.  So I think either in the compilation process, it
> needs to not pass backtrace to the linker, or it needs a symlink to libc
> like I've placed.

I think another uClibc-ng regression, can you please try attached
buildroot patch?

best regards
 Waldemar

Comments

Lance Fredrickson Sept. 30, 2016, 5:05 a.m. UTC | #1
On 9/29/2016 8:57 PM, Waldemar Brodkorb wrote:
> I think another uClibc-ng regression, can you please try attached
> buildroot patch?

Thanks for you attention to this!
The patch for Rules.mak takes out 1 too many 'endif' statements. Adding 
in the missing one allowed the toolchain to compile without issue.

Lance
diff mbox

Patch

From 68cf36635d2f9639b835b67073c750a8ba67ed87 Mon Sep 17 00:00:00 2001
From: Waldemar Brodkorb <wbx@uclibc-ng.org>
Date: Fri, 30 Sep 2016 04:51:39 +0200
Subject: [PATCH 6/6] uclibc: remove linker scripts for libubacktrace/libuargp

They are not required anymore and break some builds.

Reported-by: Lance Fredrickson <lancethepants@gmail.com>
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
---
 ...uargp-remove-unneeded-and-false-linker-sc.patch | 90 ++++++++++++++++++++++
 1 file changed, 90 insertions(+)
 create mode 100644 package/uclibc/0002-ubacktrace-uargp-remove-unneeded-and-false-linker-sc.patch

diff --git a/package/uclibc/0002-ubacktrace-uargp-remove-unneeded-and-false-linker-sc.patch b/package/uclibc/0002-ubacktrace-uargp-remove-unneeded-and-false-linker-sc.patch
new file mode 100644
index 0000000..1faa268
--- /dev/null
+++ b/package/uclibc/0002-ubacktrace-uargp-remove-unneeded-and-false-linker-sc.patch
@@ -0,0 +1,90 @@ 
+From 225f5b206501247ebb38037132a7af3da1a13e89 Mon Sep 17 00:00:00 2001
+From: Waldemar Brodkorb <wbx@uclibc-ng.org>
+Date: Fri, 30 Sep 2016 04:49:58 +0200
+Subject: [PATCH] ubacktrace/uargp: remove unneeded and false linker scripts
+
+Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
+---
+ Rules.mak               | 29 -----------------------------
+ extra/Configs/Config.in |  9 +++------
+ 2 files changed, 3 insertions(+), 35 deletions(-)
+
+diff --git a/Rules.mak b/Rules.mak
+index 15dfa37..da9b497 100644
+--- a/Rules.mak
++++ b/Rules.mak
+@@ -140,7 +140,6 @@ export MAJOR_VERSION MINOR_VERSION SUBLEVEL VERSION ABI_VERSION LC_ALL
+ 
+ LIBC := libc
+ SHARED_LIBNAME := $(LIBC).so.$(ABI_VERSION)
+-UBACKTRACE_DSO := libubacktrace.so.$(ABI_VERSION)
+ 
+ UCLIBC_LDSO_NAME := ld-uClibc
+ ARCH_NATIVE_BIT := 32
+@@ -549,34 +548,6 @@ link.asneeded = $(if $(CC_FLAG_ASNEEDED),$(if $(CC_FLAG_NO_ASNEEDED),$(CC_FLAG_A
+ ifndef ASNEEDED
+ export ASNEEDED:=$(shell $(CC) -Wl,--help 2>/dev/null | grep -q -- --as-needed && echo "AS_NEEDED ( $(UCLIBC_LDSO) )" || echo "$(UCLIBC_LDSO)")
+ 
+-# Only used in installed libc.so linker script
+-ifeq ($(UCLIBC_HAS_BACKTRACE),y)
+-ifeq ($(HARDWIRED_ABSPATH),y)
+-UBACKTRACE_FULL_NAME := $(subst //,/,$(RUNTIME_PREFIX)$(MULTILIB_DIR)/$(UBACKTRACE_DSO))
+-else
+-UBACKTRACE_FULL_NAME := $(UBACKTRACE_DSO)
+-endif
+-export UBACKTRACE_ASNEEDED:=$(shell $(CC) -Wl,--help 2>/dev/null | grep -q -- --as-needed && \
+-	echo "GROUP ( AS_NEEDED ( $(UBACKTRACE_FULL_NAME) ) )" || \
+-	echo "GROUP ( $(UBACKTRACE_FULL_NAME) )")
+-else
+-export UBACKTRACE_ASNEEDED:=""
+-endif
+-ifeq ($(UCLIBC_HAS_ARGP),y)
+-ifeq ($(HARDWIRED_ABSPATH),y)
+-# Only used in installed libc.so linker script
+-UARGP_FULL_NAME := $(subst //,/,$(RUNTIME_PREFIX)$(MULTILIB_DIR)/libuargp.so.$(MAJOR_VERSION))
+-else
+-UARGP_FULL_NAME := libuargp.so.$(MAJOR_VERSION)
+-endif
+-export UARGP_ASNEEDED:=$(shell $(CC) -Wl,--help 2>/dev/null | grep -q -- --as-needed && \
+-	echo "GROUP ( AS_NEEDED ( $(UARGP_FULL_NAME) ) )" || \
+-	echo "GROUP ( $(UARGP_FULL_NAME) )")
+-else
+-export UARGP_ASNEEDED:=""
+-endif
+-endif
+-
+ # Add a bunch of extra pedantic annoyingly strict checks
+ WARNING_FLAGS = -Wstrict-prototypes -Wstrict-aliasing
+ ifeq ($(EXTRA_WARNINGS),y)
+diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in
+index fc6669b..c5e54e1 100644
+--- a/extra/Configs/Config.in
++++ b/extra/Configs/Config.in
+@@ -1896,8 +1896,6 @@ config UCLIBC_HAS_ARGP
+ 	  `--help' and `--version' options.
+ 	  A library can export an argp option parser, which programs can easily
+ 	  use in conjunction with their own option parser.
+-	  A new shared object "libuargp" is created. The "libc.so" linker script
+-	  contains the AS_NEEDED entry for getting the libuargp linked automatically.
+ 	  Argp support is needed by elfutils libdw.
+ 
+ 	  Most people can safely answer N.
+@@ -2391,12 +2389,11 @@ config UCLIBC_HAS_BACKTRACE
+ 	bool "Add support for application self-debugging"
+ 	depends on HAVE_SHARED
+ 	help
+-	  Answer Y here to compile support for application self-debugging, by adding
+-	  a new shared object "libubacktrace.so" that provides the following new
+-	  functions:
++	  Answer Y here to compile support for application self-debugging that
++	  provides the following new functions:
+ 	  backtrace, backtrace_symbols, backtrace_symbols_fd
+ 
+-	  The backtrace functionality is currently supported on SH platform, and it
++	  The backtrace functionality is currently supported on some platforms, and it
+ 	  based on dwarf2 informations to properly work, so any application that
+ 	  want to use backtrace needs to be built with -fexceptions flag.
+ 
+-- 
+2.1.4
+
-- 
2.1.4