Browse Source

libs: install backward compatibility symlinks

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>
Alexey Brodkin 9 years ago
parent
commit
e58bacb7ec

+ 2 - 0
ldso/libdl/Makefile.in

@@ -48,6 +48,8 @@ objclean-y += CLEAN_ldso/libdl
 
 
 $(top_builddir)lib/libdl.so: $(libdl_OUT)/libdl_so.a $(libc.depend)
 $(top_builddir)lib/libdl.so: $(libdl_OUT)/libdl_so.a $(libc.depend)
 	$(call link.so,$(libdl_FULL_NAME),$(ABI_VERSION))
 	$(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)
 $(libdl_OUT)/libdl_so.a: $(libdl-so-y)
 	$(Q)$(RM) $@
 	$(Q)$(RM) $@

+ 4 - 0
libc/Makefile.in

@@ -60,9 +60,13 @@ OUTPUT_FORMAT = $(CC) $(CFLAGS) -Wl,--verbose 2>&1 | $(SED) -n '/OUTPUT_FORMAT/,
 ifeq ($(DOMULTI),n)
 ifeq ($(DOMULTI),n)
 $(libc.depend): $(libc_OUT)/libc_so.a $(LIBS-libc.so)
 $(libc.depend): $(libc_OUT)/libc_so.a $(LIBS-libc.so)
 	$(call link.so,$(libc_FULL_NAME),$(ABI_VERSION))
 	$(call link.so,$(libc_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call link.so,$(libc_FULL_NAME),0)
 else
 else
 $(libc.depend): $(libc_OUT)/libc.oS $(libc-nomulti-y:.o=.oS) | $(LIBS-libc.so)
 $(libc.depend): $(libc_OUT)/libc.oS $(libc-nomulti-y:.o=.oS) | $(LIBS-libc.so)
 	$(call linkm.so,$(libc_FULL_NAME),$(ABI_VERSION))
 	$(call linkm.so,$(libc_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call linkm.so,$(libc_FULL_NAME),0)
 endif
 endif
 	$(Q)$(RM) $@
 	$(Q)$(RM) $@
 	$(Q)cat $(top_srcdir)extra/scripts/format.lds > $@.tmp
 	$(Q)cat $(top_srcdir)extra/scripts/format.lds > $@.tmp

+ 4 - 0
libcrypt/Makefile.in

@@ -46,9 +46,13 @@ else
 $(top_builddir)lib/libcrypt.so: $(libcrypt_OUT)/libcrypt_so.a $(libc.depend)
 $(top_builddir)lib/libcrypt.so: $(libcrypt_OUT)/libcrypt_so.a $(libc.depend)
 endif
 endif
 	$(call link.so,$(libcrypt_FULL_NAME),$(ABI_VERSION))
 	$(call link.so,$(libcrypt_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call link.so,$(libcrypt_FULL_NAME),0)
 else
 else
 $(top_builddir)lib/libcrypt.so: $(libcrypt_OUT)/libcrypt.oS | $(libc.depend)
 $(top_builddir)lib/libcrypt.so: $(libcrypt_OUT)/libcrypt.oS | $(libc.depend)
 	$(call linkm.so,$(libcrypt_FULL_NAME),$(ABI_VERSION))
 	$(call linkm.so,$(libcrypt_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call linkm.so,$(libcrypt_FULL_NAME),0)
 endif
 endif
 
 
 $(libcrypt_OUT)/libcrypt_so.a: $(libcrypt-so-y)
 $(libcrypt_OUT)/libcrypt_so.a: $(libcrypt-so-y)

+ 4 - 0
libintl/Makefile.in

@@ -48,9 +48,13 @@ else
 $(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl_so.a $(libc.depend)
 $(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl_so.a $(libc.depend)
 endif
 endif
 	$(call link.so,$(libintl_FULL_NAME),$(ABI_VERSION))
 	$(call link.so,$(libintl_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call link.so,$(libintl_FULL_NAME),0)
 else
 else
 $(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl.oS | $(libc.depend)
 $(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl.oS | $(libc.depend)
 	$(call linkm.so,$(libintl_FULL_NAME),$(ABI_VERSION))
 	$(call linkm.so,$(libintl_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call linkm.so,$(libintl_FULL_NAME),0)
 endif
 endif
 
 
 $(libintl_OUT)/libintl_so.a: $(libintl-so-y)
 $(libintl_OUT)/libintl_so.a: $(libintl-so-y)

+ 4 - 0
libm/Makefile.in

@@ -305,9 +305,13 @@ else
 $(top_builddir)lib/libm.so: $(libm_OUT)/libm_so.a $(libc.depend)
 $(top_builddir)lib/libm.so: $(libm_OUT)/libm_so.a $(libc.depend)
 endif
 endif
 	$(call link.so,$(libm_FULL_NAME),$(ABI_VERSION))
 	$(call link.so,$(libm_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call link.so,$(libm_FULL_NAME),0)
 else
 else
 $(top_builddir)lib/libm.so: $(libm_OUT)/libm.oS | $(libc.depend)
 $(top_builddir)lib/libm.so: $(libm_OUT)/libm.oS | $(libc.depend)
 	$(call linkm.so,$(libm_FULL_NAME),$(ABI_VERSION))
 	$(call linkm.so,$(libm_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call linkm.so,$(libm_FULL_NAME),0)
 endif
 endif
 
 
 $(libm_OUT)/libm_so.a: $(libm-so-y)
 $(libm_OUT)/libm_so.a: $(libm-so-y)

+ 2 - 0
libnsl/Makefile.in

@@ -39,6 +39,8 @@ else
 $(top_builddir)lib/libnsl.so: $(libnsl_OUT)/libnsl_so.a $(libc.depend)
 $(top_builddir)lib/libnsl.so: $(libnsl_OUT)/libnsl_so.a $(libc.depend)
 endif
 endif
 	$(call link.so,$(libnsl_FULL_NAME),$(ABI_VERSION))
 	$(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)
 $(libnsl_OUT)/libnsl_so.a: $(libnsl-so-y)
 	$(Q)$(RM) $@
 	$(Q)$(RM) $@

+ 2 - 0
libpthread/linuxthreads/Makefile.in

@@ -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)
 $(top_builddir)lib/libpthread.so: $(libpthread_OUT)/libpthread_so.a $(libc.depend)
 	$(call link.so,$(libpthread_FULL_NAME),$(ABI_VERSION))
 	$(call link.so,$(libpthread_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call link.so,$(libpthread_FULL_NAME),0)
 
 
 ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
 ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
 $(libpthread_OUT)/libpthread_so.a: STRIP_FLAGS:=$(STRIP_FLAGS:-x=-X --strip-debug)
 $(libpthread_OUT)/libpthread_so.a: STRIP_FLAGS:=$(STRIP_FLAGS:-x=-X --strip-debug)

+ 2 - 0
libpthread/nptl/Makefile.in

@@ -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
 $(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))
 	$(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)cat $(top_srcdir)extra/scripts/format.lds > $@.tmp
 	$(Q)echo "GROUP ( $(notdir $@).$(ABI_VERSION) libpthread_nonshared.a )" >> $@.tmp
 	$(Q)echo "GROUP ( $(notdir $@).$(ABI_VERSION) libpthread_nonshared.a )" >> $@.tmp
 	$(Q)mv $@.tmp $@
 	$(Q)mv $@.tmp $@

+ 2 - 0
libresolv/Makefile.in

@@ -39,6 +39,8 @@ else
 $(top_builddir)lib/libresolv.so: $(libresolv_OUT)/libresolv_so.a $(libc.depend)
 $(top_builddir)lib/libresolv.so: $(libresolv_OUT)/libresolv_so.a $(libc.depend)
 endif
 endif
 	$(call link.so,$(libresolv_FULL_NAME),$(ABI_VERSION))
 	$(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)
 $(libresolv_OUT)/libresolv_so.a: $(libresolv-so-y)
 	$(Q)$(RM) $@
 	$(Q)$(RM) $@

+ 2 - 0
librt/Makefile.in

@@ -73,6 +73,8 @@ else
 $(top_builddir)lib/librt.so: $(librt_OUT)/librt_so.a $(librt-dep-y)
 $(top_builddir)lib/librt.so: $(librt_OUT)/librt_so.a $(librt-dep-y)
 endif
 endif
 	$(call link.so,$(librt_FULL_NAME),$(ABI_VERSION))
 	$(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)
 $(librt_OUT)/librt_so.a: $(librt-so-y)
 	$(Q)$(RM) $@
 	$(Q)$(RM) $@

+ 4 - 0
libubacktrace/Makefile.in

@@ -62,9 +62,13 @@ objclean-y += CLEAN_libubacktrace
 ifeq ($(DOMULTI),n)
 ifeq ($(DOMULTI),n)
 $(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace_so.a $(libdl.depend)
 $(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace_so.a $(libdl.depend)
 	$(call link.so,$(libubacktrace_FULL_NAME),$(ABI_VERSION))
 	$(call link.so,$(libubacktrace_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call link.so,$(libubacktrace_FULL_NAME),0)
 else
 else
 $(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace.oS | $(libdl.depend)
 $(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace.oS | $(libdl.depend)
 	$(call linkm.so,$(libubacktrace_FULL_NAME),$(ABI_VERSION))
 	$(call linkm.so,$(libubacktrace_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call linkm.so,$(libubacktrace_FULL_NAME),0)
 endif
 endif
 
 
 $(libubacktrace_OUT)/libubacktrace_so.a: $(libubacktrace-so-y)
 $(libubacktrace_OUT)/libubacktrace_so.a: $(libubacktrace-so-y)

+ 4 - 0
libutil/Makefile.in

@@ -55,9 +55,13 @@ else
 $(top_builddir)lib/libutil.so: $(libutil_OUT)/libutil_so.a $(libc.depend)
 $(top_builddir)lib/libutil.so: $(libutil_OUT)/libutil_so.a $(libc.depend)
 endif
 endif
 	$(call link.so,$(libutil_FULL_NAME),$(ABI_VERSION))
 	$(call link.so,$(libutil_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call link.so,$(libutil_FULL_NAME),0)
 else
 else
 $(top_builddir)lib/libutil.so: $(libutil_OUT)/libutil.oS | $(libc.depend)
 $(top_builddir)lib/libutil.so: $(libutil_OUT)/libutil.oS | $(libc.depend)
 	$(call linkm.so,$(libutil_FULL_NAME),$(ABI_VERSION))
 	$(call linkm.so,$(libutil_FULL_NAME),$(ABI_VERSION))
+	# link for backward compatibility
+	$(call linkm.so,$(libutil_FULL_NAME),0)
 endif
 endif
 
 
 $(libutil_OUT)/libutil_so.a: $(libutil-so-y)
 $(libutil_OUT)/libutil_so.a: $(libutil-so-y)