summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarmelo Amoroso <carmelo.amoroso@st.com>2008-03-16 08:51:34 +0000
committerCarmelo Amoroso <carmelo.amoroso@st.com>2008-03-16 08:51:34 +0000
commite772b90e7e8190112a987f7c18c19a33766acfd0 (patch)
tree4d1400da48cfc116476ffe69bd76d6f782759c4c
parent35201f6b3f772e03ce456d20605ba99f21e6a04a (diff)
downloaduClibc-alpine-e772b90e7e8190112a987f7c18c19a33766acfd0.tar.bz2
uClibc-alpine-e772b90e7e8190112a987f7c18c19a33766acfd0.tar.xz
Merge nptl branch tree with trunk.
Step 6: fix Makefiles to use $(VERSION) and the compiler-driver for the link stage Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
-rw-r--r--Makefile.in6
-rw-r--r--ldso/ldso/Makefile.in6
-rw-r--r--ldso/libdl/Makefile.in4
-rw-r--r--libc/Makefile.in16
-rw-r--r--libcrypt/Makefile.in2
-rw-r--r--libintl/Makefile.in2
-rw-r--r--libm/Makefile.in2
-rw-r--r--libnsl/Makefile.in2
-rw-r--r--libpthread/linuxthreads.old/Makefile.in4
-rw-r--r--libpthread/linuxthreads.old_db/Makefile.in6
-rw-r--r--libpthread/linuxthreads/Makefile.in4
-rw-r--r--libpthread/linuxthreads_db/Makefile.in6
-rw-r--r--libresolv/Makefile.in2
-rw-r--r--librt/Makefile.in2
-rw-r--r--libutil/Makefile.in2
15 files changed, 36 insertions, 30 deletions
diff --git a/Makefile.in b/Makefile.in
index 69a2155da..8fbd45227 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -291,13 +291,13 @@ endif
install_runtime:
ifeq ($(HAVE_SHARED),y)
$(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)lib
- $(INSTALL) -m 644 lib/lib*-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so \
+ $(INSTALL) -m 644 lib/lib*-$(VERSION).so \
$(PREFIX)$(RUNTIME_PREFIX)lib
cd lib && $(TAR) -cf - *.so.* | $(TAR) -xf - -C $(PREFIX)$(RUNTIME_PREFIX)lib
- @if [ -x lib/$(UCLIBC_LDSO_NAME)-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so ] ; then \
+ @if [ -x lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so ] ; then \
set -e; \
$(SHELL_SET_X); \
- $(INSTALL) -m 755 lib/$(UCLIBC_LDSO_NAME)-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so \
+ $(INSTALL) -m 755 lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so \
$(PREFIX)$(RUNTIME_PREFIX)lib; \
fi
endif
diff --git a/ldso/ldso/Makefile.in b/ldso/ldso/Makefile.in
index 5c58afce4..229a9cea9 100644
--- a/ldso/ldso/Makefile.in
+++ b/ldso/ldso/Makefile.in
@@ -27,11 +27,11 @@ CFLAGS-ldso.c := -DLDSO_ELFINTERP=\"$(TARGET_ARCH)/elfinterp.c\"
ifneq ($(SUPPORT_LD_DEBUG),y)
LDFLAGS-$(UCLIBC_LDSO_NAME).so := $(LDFLAGS)
else
-LDFLAGS-$(UCLIBC_LDSO_NAME).so := $(LDFLAGS_NOSTRIP) -z defs
+LDFLAGS-$(UCLIBC_LDSO_NAME).so := $(LDFLAGS_NOSTRIP) -Wl,-z,defs
endif
-LDFLAGS-$(UCLIBC_LDSO_NAME).so += -e _start -z now -Bsymbolic --export-dynamic --sort-common --discard-locals --discard-all --no-undefined
+LDFLAGS-$(UCLIBC_LDSO_NAME).so += -Wl,-e,_start -Wl,-z,now -Wl,-Bsymbolic -Wl,--export-dynamic -Wl,--sort-common -Wl,--discard-locals -Wl,--discard-all -Wl,--no-undefined
-ldso_FULL_NAME := $(UCLIBC_LDSO_NAME)-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+ldso_FULL_NAME := $(UCLIBC_LDSO_NAME)-$(VERSION).so
$(UCLIBC_LDSO_NAME)_DIR := $(top_srcdir)ldso/ldso
$(UCLIBC_LDSO_NAME)_OUT := $(top_builddir)ldso/ldso
diff --git a/ldso/libdl/Makefile.in b/ldso/libdl/Makefile.in
index fd147b48f..7a525375a 100644
--- a/ldso/libdl/Makefile.in
+++ b/ldso/libdl/Makefile.in
@@ -13,11 +13,11 @@ CFLAGS-libdl += -DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\"
CFLAGS-libdl.c := -DLDSO_ELFINTERP=\"$(TARGET_ARCH)/elfinterp.c\"
-LDFLAGS-libdl.so := $(LDFLAGS) -fini dl_cleanup
+LDFLAGS-libdl.so := $(LDFLAGS) -Wl,-fini,dl_cleanup
LIBS-libdl.so := $(LIBS) $(ldso)
-libdl_FULL_NAME := libdl-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libdl_FULL_NAME := libdl-$(VERSION).so
libdl_DIR := $(top_srcdir)ldso/libdl
libdl_OUT := $(top_builddir)ldso/libdl
diff --git a/libc/Makefile.in b/libc/Makefile.in
index 12658c31f..cd6e316ae 100644
--- a/libc/Makefile.in
+++ b/libc/Makefile.in
@@ -12,17 +12,17 @@ libc_OUT := $(top_builddir)libc
# libc, and if so, include it when linking.
VERSION_SCRIPT := $(wildcard $(libc_DIR)/sysdeps/linux/$(TARGET_ARCH)/libc.map)
ifneq ($(VERSION_SCRIPT),)
-VERSION_SCRIPT := --version-script $(VERSION_SCRIPT)
+VERSION_SCRIPT := -Wl,--version-script,$(VERSION_SCRIPT)
endif
-LDFLAGS-libc.so := $(LDFLAGS) $(VERSION_SCRIPT) -init __uClibc_init
+LDFLAGS-libc.so := $(LDFLAGS) $(VERSION_SCRIPT) -Wl,-init,$(SYMBOL_PREFIX)__uClibc_init
ifeq ($(UCLIBC_HAS_STDIO_FUTEXES),y)
CFLAGS += -D__USE_STDIO_FUTEXES__
endif
LIBS-libc.so := $(interp) $(ldso) $(top_builddir)lib/$(NONSHARED_LIBNAME)
# we have SHARED_MAJORNAME=libc.so.$(MAJOR_VERSION) defined in Rules.mak
-libc_FULL_NAME := libuClibc-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libc_FULL_NAME := libuClibc-$(VERSION).so
# this comes first, so duplicate removal works correctly
include $(libc_DIR)/sysdeps/Makefile.in
@@ -56,6 +56,8 @@ lib-gdb-y += $(top_builddir)lib/libc.gdb
lib-so-y += $(libc)
objclean-y += libc_clean
+OUTPUT_FORMAT = $(CC) $(CFLAGS) -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/OUTPUT_FORMAT ( \1 )/p'
+
ifeq ($(DOMULTI),n)
$(libc:.$(MAJOR_VERSION)=): $(libc_OUT)/libc_so.a $(LIBS-libc.so)
$(call link.so,$(libc_FULL_NAME),$(MAJOR_VERSION))
@@ -66,6 +68,7 @@ $(libc:.$(MAJOR_VERSION)=): $(libc_OUT)/libc.oS $(libc-nomulti-y:.o=.oS) | $(LIB
endif
$(Q)$(RM) $@
$(Q)cp $(top_srcdir)extra/scripts/format.lds $@
+ $(Q)echo "$(shell $(OUTPUT_FORMAT))" >> $@
ifeq ($(COMPAT_ATEXIT),y)
$(Q)echo "GROUP ( $(NONSHARED_LIBNAME) $(SHARED_MAJORNAME) $(ASNEEDED) )" >> $@
else
@@ -92,8 +95,11 @@ $(top_builddir)lib/libc.a: $(libc-a-y) | $(crt-y)
$(do_strip)
$(do_ar)
-$(top_builddir)lib/libc.gdb: $(top_builddir)lib/libc.a $(LINK_FLAT_CRTS)
- $(call link-flat.so,$(@:.gdb=),$(SHARED_FLAT_ID))
+# We use libc_so.a so that we can compile the shared library with special
+# flags - i.e. -mleaf-id-shared-library. The static libc.a needs to be
+# compiled without it.
+$(top_builddir)lib/libc.gdb: $(libc_OUT)/libc_so.a $(LINK_FLAT_CRTS)
+ $(call link-flat.so,$(@:.gdb=),$(UCLIBC_SHARED_FLAT_ID))
libc_clean:
$(RM) $(libc_OUT)/*.{o,os,oS,a}
diff --git a/libcrypt/Makefile.in b/libcrypt/Makefile.in
index 3ebcd85ed..7364d3e71 100644
--- a/libcrypt/Makefile.in
+++ b/libcrypt/Makefile.in
@@ -11,7 +11,7 @@ LDFLAGS-libcrypt.so := $(LDFLAGS)
LIBS-libcrypt.so := $(LIBS)
-libcrypt_FULL_NAME := libcrypt-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libcrypt_FULL_NAME := libcrypt-$(VERSION).so
libcrypt_DIR := $(top_srcdir)libcrypt
libcrypt_OUT := $(top_builddir)libcrypt
diff --git a/libintl/Makefile.in b/libintl/Makefile.in
index afaf33080..8a64a7615 100644
--- a/libintl/Makefile.in
+++ b/libintl/Makefile.in
@@ -11,7 +11,7 @@ LDFLAGS-libintl.so := $(LDFLAGS)
LIBS-libintl.so := $(LIBS)
-libintl_FULL_NAME := libintl-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libintl_FULL_NAME := libintl-$(VERSION).so
MOBJ := \
gettext.o ngettext.o dgettext.o dcgettext.o dngettext.o dcngettext.o \
diff --git a/libm/Makefile.in b/libm/Makefile.in
index 117c3f20c..f7619b47f 100644
--- a/libm/Makefile.in
+++ b/libm/Makefile.in
@@ -27,7 +27,7 @@ LDFLAGS-libm.so := $(LDFLAGS)
LIBS-libm.so := $(LIBS)
-libm_FULL_NAME := libm-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libm_FULL_NAME := libm-$(VERSION).so
libm_ARCH_DIR:=$(top_srcdir)libm/$(TARGET_ARCH)
libm_ARCH_OUT:=$(top_builddir)libm/$(TARGET_ARCH)
diff --git a/libnsl/Makefile.in b/libnsl/Makefile.in
index 14fc3ed46..15b07ee7b 100644
--- a/libnsl/Makefile.in
+++ b/libnsl/Makefile.in
@@ -11,7 +11,7 @@ LDFLAGS-libnsl.so := $(LDFLAGS)
LIBS-libnsl.so := $(LIBS)
-libnsl_FULL_NAME := libnsl-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libnsl_FULL_NAME := libnsl-$(VERSION).so
libnsl_DIR := $(top_srcdir)libnsl
libnsl_OUT := $(top_builddir)libnsl
diff --git a/libpthread/linuxthreads.old/Makefile.in b/libpthread/linuxthreads.old/Makefile.in
index 9c152764f..6b1232c32 100644
--- a/libpthread/linuxthreads.old/Makefile.in
+++ b/libpthread/linuxthreads.old/Makefile.in
@@ -12,7 +12,7 @@ CFLAGS-linuxthreads.old := $(CFLAGS-dir_linuxthreads.old) $(SSP_ALL_CFLAGS)
CFLAGS-libpthread/linuxthreads.old/sysdeps/$(TARGET_ARCH)/ := $(CFLAGS-linuxthreads.old)
ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
-LDFLAGS-libpthread.so := $(LDFLAGS_NOSTRIP) -z defs
+LDFLAGS-libpthread.so := $(LDFLAGS_NOSTRIP) -Wl,-z,defs
else
LDFLAGS-libpthread.so := $(LDFLAGS)
endif
@@ -22,7 +22,7 @@ LIBS-libpthread.so := $(LIBS) $(ldso)
START_FILE-libpthread.so := $(SHARED_START_FILES)
END_FILE-libpthread.so := $(SHARED_END_FILES)
-libpthread_FULL_NAME := libpthread-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libpthread_FULL_NAME := libpthread-$(VERSION).so
libpthread_DIR := $(top_srcdir)libpthread/linuxthreads.old
libpthread_OUT := $(top_builddir)libpthread/linuxthreads.old
diff --git a/libpthread/linuxthreads.old_db/Makefile.in b/libpthread/linuxthreads.old_db/Makefile.in
index 96e1b9496..f0aa61f13 100644
--- a/libpthread/linuxthreads.old_db/Makefile.in
+++ b/libpthread/linuxthreads.old_db/Makefile.in
@@ -8,14 +8,14 @@
# Get the thread include dependencies and shared object name
CFLAGS-linuxthreads.old_db := -DNOT_IN_libc -DLIBPTHREAD_SO="\"libpthread.so.$(MAJOR_VERSION)\""
-LDFLAGS-libthread_db.so := $(LDFLAGS_NOSTRIP) $(call check_ld,--warn-unresolved-symbols)
+LDFLAGS-libthread_db.so := $(LDFLAGS_NOSTRIP) $(if $(call check_ld,--warn-unresolved-symbols),-Wl$(comma)--warn-unresolved-symbols)
ifeq ($(DOSTRIP),y)
-LDFLAGS-libthread_db.so += -s
+LDFLAGS-libthread_db.so += -Wl,-s
endif
LIBS-libthread_db.so := $(LIBS)
-libthread_db_FULL_NAME := libthread_db-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libthread_db_FULL_NAME := libthread_db-$(VERSION).so
libthread_db_DIR := $(top_srcdir)libpthread/linuxthreads.old_db
libthread_db_OUT := $(top_builddir)libpthread/linuxthreads.old_db
diff --git a/libpthread/linuxthreads/Makefile.in b/libpthread/linuxthreads/Makefile.in
index a5f52ec12..37ed96365 100644
--- a/libpthread/linuxthreads/Makefile.in
+++ b/libpthread/linuxthreads/Makefile.in
@@ -19,7 +19,7 @@ CFLAGS-libpthread/linuxthreads/sysdeps/pthread/ := $(CFLAGS-linuxthreads
#CFLAGS:=$(CFLAGS:-O0=-O1)
ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
-LDFLAGS-libpthread.so := $(LDFLAGS_NOSTRIP) -z defs
+LDFLAGS-libpthread.so := $(LDFLAGS_NOSTRIP) -Wl,-z,defs
else
LDFLAGS-libpthread.so := $(LDFLAGS)
endif
@@ -29,7 +29,7 @@ LIBS-libpthread.so := $(LIBS) $(ldso)
START_FILE-libpthread.so := $(SHARED_START_FILES)
END_FILE-libpthread.so := $(SHARED_END_FILES)
-libpthread_FULL_NAME := libpthread-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libpthread_FULL_NAME := libpthread-$(VERSION).so
libpthread_DIR := $(top_srcdir)libpthread/linuxthreads
libpthread_OUT := $(top_builddir)libpthread/linuxthreads
diff --git a/libpthread/linuxthreads_db/Makefile.in b/libpthread/linuxthreads_db/Makefile.in
index d6ad70085..87f20e208 100644
--- a/libpthread/linuxthreads_db/Makefile.in
+++ b/libpthread/linuxthreads_db/Makefile.in
@@ -8,14 +8,14 @@
# Get the thread include dependencies and shared object name
CFLAGS-linuxthreads_db := -DNOT_IN_libc -DLIBPTHREAD_SO="\"libpthread.so.$(MAJOR_VERSION)\""
-LDFLAGS-libthread_db.so := $(LDFLAGS_NOSTRIP) $(call check_ld,--warn-unresolved-symbols)
+LDFLAGS-libthread_db.so := $(LDFLAGS_NOSTRIP) $(if $(call check_ld,--warn-unresolved-symbols),-Wl$(comma)--warn-unresolved-symbols)
ifeq ($(DOSTRIP),y)
-LDFLAGS-libthread_db.so += -s
+LDFLAGS-libthread_db.so += -Wl,-s
endif
LIBS-libthread_db.so := $(LIBS)
-libthread_db_FULL_NAME := libthread_db-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libthread_db_FULL_NAME := libthread_db-$(VERSION).so
libthread_db_DIR := $(top_srcdir)libpthread/linuxthreads_db
libthread_db_OUT := $(top_builddir)libpthread/linuxthreads_db
diff --git a/libresolv/Makefile.in b/libresolv/Makefile.in
index a7bb329c7..4afff4cdb 100644
--- a/libresolv/Makefile.in
+++ b/libresolv/Makefile.in
@@ -11,7 +11,7 @@ LDFLAGS-libresolv.so := $(LDFLAGS)
LIBS-libresolv.so := $(LIBS)
-libresolv_FULL_NAME := libresolv-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libresolv_FULL_NAME := libresolv-$(VERSION).so
libresolv_DIR := $(top_srcdir)libresolv
libresolv_OUT := $(top_builddir)libresolv
diff --git a/librt/Makefile.in b/librt/Makefile.in
index 413d91dd1..1062cf470 100644
--- a/librt/Makefile.in
+++ b/librt/Makefile.in
@@ -16,7 +16,7 @@ endif
LIBS-librt.so := $(LIBS)
-librt_FULL_NAME := librt-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+librt_FULL_NAME := librt-$(VERSION).so
librt_DIR := $(top_srcdir)librt
librt_OUT := $(top_builddir)librt
diff --git a/libutil/Makefile.in b/libutil/Makefile.in
index b42763d21..c9f94c1f6 100644
--- a/libutil/Makefile.in
+++ b/libutil/Makefile.in
@@ -11,7 +11,7 @@ LDFLAGS-libutil.so := $(LDFLAGS)
LIBS-libutil.so := $(LIBS)
-libutil_FULL_NAME := libutil-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
+libutil_FULL_NAME := libutil-$(VERSION).so
libutil_DIR := $(top_srcdir)libutil
libutil_OUT := $(top_builddir)libutil