On 16/11/2011 11.31, William Pitcock wrote: > Hi Carmelo, > > On Wed, 16 Nov 2011 11:14:00 +0100 > Carmelo AMOROSO <[email protected]> wrote: > >> Hi William, >> >> On 16/11/2011 11.05, William Pitcock wrote: >>> The linker script that is generated does not pull in the right file >>> for libubacktrace.so in the event that $(ABI_VERSION) is not >>> $(MAJOR_VERSION). >>> >>> This is the case for Alpine where multiple versions of uClibc are >>> provided in slotted form, with distinct ABI versions. >>> >>> The correct variable to use is $(ABI_VERSION), which is what is >>> used in other instances in the buildsys when referring to the >>> SONAME instance of the files. >>> >>> Signed-off-by: William Pitcock <[email protected]> >>> --- >>> Makefile.in | 2 +- >>> Rules.mak | 2 +- >>> 2 files changed, 2 insertions(+), 2 deletions(-) >>> >>> diff --git a/Makefile.in b/Makefile.in >>> index 0a4347b..0f8b48e 100644 >>> --- a/Makefile.in >>> +++ b/Makefile.in >>> @@ -345,7 +345,7 @@ else >>> endif >>> ifeq ($(UCLIBC_HAS_BACKTRACE),y) >>> # Add the AS_NEEDED entry for libubacktrace.so >>> - if [ -f $(top_builddir)lib/libc.so -a -f >>> $(PREFIX)$(RUNTIME_PREFIX)$(MULTILIB_DIR)/$(SHARED_LIBNAME) ] ; >>> then \ >>> + if [ -f $(top_builddir)lib/libc.so -a -f >>> $(PREFIX)$(DEVEL_PREFIX)$(MULTILIB_DIR)/libc.so ] ; then \ echo >>> "GROUP ( $(UBACKTRACE_ASNEEDED) )" >> >>> $(PREFIX)$(DEVEL_PREFIX)$(MULTILIB_DIR)/libc.so; \ fi endif >> >> why this change ? >
William, > Without this change, the libc.so linker script does not get updated by > the build system (at least on Alpine it does not). The reason why is > because the linker script is installed into $(DEVEL_PREFIX), not > $(RUNTIME_PREFIX). > > On Alpine, $(DEVEL_PREFIX) is /usr/lib, while $(RUNTIME_PREFIX) is /lib > for libc. > I have the same configuration (more properly DEVEL_PREFIX is /usr and RUNTIME_PREFIX is /) and it works fine with me. > In other configurations, it is possible for $(RUNTIME_PREFIX) to be the > same as $(DEVEL_PREFIX), but this is not the case in all > configurations, so we should honour $(DEVEL_PREFIX) where appropriate > instead of assuming they are the same, which is simply not the case. > that's strange, it is working in my case. I'll double check. >> >>> diff --git a/Rules.mak b/Rules.mak >>> index 4e4baf9..a5b6901 100644 >>> --- a/Rules.mak >>> +++ b/Rules.mak >>> @@ -118,7 +118,7 @@ export MAJOR_VERSION MINOR_VERSION SUBLEVEL >>> VERSION ABI_VERSION LC_ALL >>> LIBC := libc >>> SHARED_LIBNAME := $(LIBC).so.$(ABI_VERSION) >>> -UBACKTRACE_DSO := libubacktrace.so.$(MAJOR_VERSION) >>> +UBACKTRACE_DSO := libubacktrace.so.$(ABI_VERSION) >> >> ok for this, instead. > > Would you prefer I split these changes into two different patches? > don't worry. > William > carmelo _______________________________________________ uClibc mailing list [email protected] http://lists.busybox.net/mailman/listinfo/uclibc
