@@ -48,6 +48,8 @@ objclean-y += CLEAN_ldso/libdl
$(top_builddir)lib/libdl.so: $(libdl_OUT)/libdl_so.a $(libc.depend)
$(call link.so,$(libdl_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libdl_FULL_NAME),0)
$(libdl_OUT)/libdl_so.a: $(libdl-so-y)
$(Q)$(RM) $@
@@ -60,9 +60,13 @@ OUTPUT_FORMAT = $(CC) $(CFLAGS) -Wl,--verbose 2>&1 | $(SED) -n '/OUTPUT_FORMAT/,
ifeq ($(DOMULTI),n)
$(libc.depend): $(libc_OUT)/libc_so.a $(LIBS-libc.so)
$(call link.so,$(libc_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libc_FULL_NAME),0)
else
$(libc.depend): $(libc_OUT)/libc.oS $(libc-nomulti-y:.o=.oS) | $(LIBS-libc.so)
$(call linkm.so,$(libc_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call linkm.so,$(libc_FULL_NAME),0)
endif
$(Q)$(RM) $@
$(Q)cat $(top_srcdir)extra/scripts/format.lds > $@.tmp
@@ -46,9 +46,13 @@ else
$(top_builddir)lib/libcrypt.so: $(libcrypt_OUT)/libcrypt_so.a $(libc.depend)
endif
$(call link.so,$(libcrypt_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libcrypt_FULL_NAME),0)
else
$(top_builddir)lib/libcrypt.so: $(libcrypt_OUT)/libcrypt.oS | $(libc.depend)
$(call linkm.so,$(libcrypt_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call linkm.so,$(libcrypt_FULL_NAME),0)
endif
$(libcrypt_OUT)/libcrypt_so.a: $(libcrypt-so-y)
@@ -48,9 +48,13 @@ else
$(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl_so.a $(libc.depend)
endif
$(call link.so,$(libintl_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libintl_FULL_NAME),0)
else
$(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl.oS | $(libc.depend)
$(call linkm.so,$(libintl_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call linkm.so,$(libintl_FULL_NAME),0)
endif
$(libintl_OUT)/libintl_so.a: $(libintl-so-y)
@@ -305,9 +305,13 @@ else
$(top_builddir)lib/libm.so: $(libm_OUT)/libm_so.a $(libc.depend)
endif
$(call link.so,$(libm_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libm_FULL_NAME),0)
else
$(top_builddir)lib/libm.so: $(libm_OUT)/libm.oS | $(libc.depend)
$(call linkm.so,$(libm_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call linkm.so,$(libm_FULL_NAME),0)
endif
$(libm_OUT)/libm_so.a: $(libm-so-y)
@@ -39,6 +39,8 @@ else
$(top_builddir)lib/libnsl.so: $(libnsl_OUT)/libnsl_so.a $(libc.depend)
endif
$(call link.so,$(libnsl_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libnsl_FULL_NAME),0)
$(libnsl_OUT)/libnsl_so.a: $(libnsl-so-y)
$(Q)$(RM) $@
@@ -69,6 +69,8 @@ lib-so-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.so
$(top_builddir)lib/libpthread.so: $(libpthread_OUT)/libpthread_so.a $(libc.depend)
$(call link.so,$(libpthread_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libpthread_FULL_NAME),0)
ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
$(libpthread_OUT)/libpthread_so.a: STRIP_FLAGS:=$(STRIP_FLAGS:-x=-X --strip-debug)
@@ -76,6 +76,8 @@ lib-so-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.so
$(top_builddir)lib/libpthread.so: $(libpthread_OUT)/libpthread_so.a $(libc.depend) $(libdl.depend) $(top_builddir)lib/libpthread_nonshared.a
$(call link.so,$(libpthread_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libpthread_FULL_NAME),0)
$(Q)cat $(top_srcdir)extra/scripts/format.lds > $@.tmp
$(Q)echo "GROUP ( $(notdir $@).$(ABI_VERSION) libpthread_nonshared.a )" >> $@.tmp
$(Q)mv $@.tmp $@
@@ -39,6 +39,8 @@ else
$(top_builddir)lib/libresolv.so: $(libresolv_OUT)/libresolv_so.a $(libc.depend)
endif
$(call link.so,$(libresolv_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libresolv_FULL_NAME),0)
$(libresolv_OUT)/libresolv_so.a: $(libresolv-so-y)
$(Q)$(RM) $@
@@ -73,6 +73,8 @@ else
$(top_builddir)lib/librt.so: $(librt_OUT)/librt_so.a $(librt-dep-y)
endif
$(call link.so,$(librt_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(librt_FULL_NAME),0)
$(librt_OUT)/librt_so.a: $(librt-so-y)
$(Q)$(RM) $@
@@ -62,9 +62,13 @@ objclean-y += CLEAN_libubacktrace
ifeq ($(DOMULTI),n)
$(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace_so.a $(libdl.depend)
$(call link.so,$(libubacktrace_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libubacktrace_FULL_NAME),0)
else
$(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace.oS | $(libdl.depend)
$(call linkm.so,$(libubacktrace_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call linkm.so,$(libubacktrace_FULL_NAME),0)
endif
$(libubacktrace_OUT)/libubacktrace_so.a: $(libubacktrace-so-y)
@@ -55,9 +55,13 @@ else
$(top_builddir)lib/libutil.so: $(libutil_OUT)/libutil_so.a $(libc.depend)
endif
$(call link.so,$(libutil_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call link.so,$(libutil_FULL_NAME),0)
else
$(top_builddir)lib/libutil.so: $(libutil_OUT)/libutil.oS | $(libc.depend)
$(call linkm.so,$(libutil_FULL_NAME),$(ABI_VERSION))
+ # link for backward compatibility
+ $(call linkm.so,$(libutil_FULL_NAME),0)
endif
$(libutil_OUT)/libutil_so.a: $(libutil-so-y)
Simplify the switch from uClibc to uClibc-ng. Apps already built against uClibc-0.9.x.y require .so.0 libs to present on target which in case of current uClibc-ng is not the case and those apps could not be run. This change creates symlinks from .so.1 to .so.0 for most of other libs in the same way as it was done by 23e96d89b6ab "ldso: install backward compatibility symlink by default" Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Waldemar Brodkorb <wbx@uclibc-ng.org> Cc: Vineet Gupta <vgupta@synopsys.com> Cc: Anton Kolesov <akolesov@synopsys.com> --- Changes v1 -> v2: * Fixed title from "libc" to generic "libs" * Added missing comment about compatibility in libcrypt ldso/libdl/Makefile.in | 2 ++ libc/Makefile.in | 4 ++++ libcrypt/Makefile.in | 4 ++++ libintl/Makefile.in | 4 ++++ libm/Makefile.in | 4 ++++ libnsl/Makefile.in | 2 ++ libpthread/linuxthreads/Makefile.in | 2 ++ libpthread/nptl/Makefile.in | 2 ++ libresolv/Makefile.in | 2 ++ librt/Makefile.in | 2 ++ libubacktrace/Makefile.in | 4 ++++ libutil/Makefile.in | 4 ++++ 12 files changed, 36 insertions(+)