summaryrefslogtreecommitdiffstats
path: root/ldso
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2001-05-10 05:41:56 +0000
committerEric Andersen <andersen@codepoet.org>2001-05-10 05:41:56 +0000
commitbe0f7c05d84732da3b88e45ab791375bfe417d3c (patch)
tree03e0a98112ad64d177fccc8696c0430d7e8cf09e /ldso
parent2a47ca7e9a0657b3d18e3ef920594c400d9c5c39 (diff)
downloaduClibc-alpine-be0f7c05d84732da3b88e45ab791375bfe417d3c.tar.bz2
uClibc-alpine-be0f7c05d84732da3b88e45ab791375bfe417d3c.tar.xz
Fix up naming of ld.so so every uses the same define. The top level
was using one name and the ld.so-1 dir was using another (they happened to be the same). Fix that. -Erik
Diffstat (limited to 'ldso')
-rw-r--r--ldso/Makefile8
-rw-r--r--ldso/README6
-rw-r--r--ldso/Rules.mak2
-rw-r--r--ldso/ldso/.cvsignore4
-rw-r--r--ldso/ldso/Makefile13
-rw-r--r--ldso/libdl/Makefile2
6 files changed, 18 insertions, 17 deletions
diff --git a/ldso/Makefile b/ldso/Makefile
index bfff102d2..25f9974f7 100644
--- a/ldso/Makefile
+++ b/ldso/Makefile
@@ -12,10 +12,10 @@ all:
install: all
if [ -d $(TOPDIR)ld.so-1/d-link/$(TARGET_ARCH) ] ; then \
install -d $(INSTALL_DIR)/lib $(INSTALL_DIR)/etc ; \
- install -m 755 $(TOPDIR)ld.so-1/d-link/$(DLINKER).$(LDSO_VMAJOR) $(INSTALL_DIR)/lib/ ; \
- install -m 644 $(TOPDIR)ld.so-1/libdl/$(LIBDL).$(LDSO_VMAJOR) $(INSTALL_DIR)/lib/ ; \
- (cd $(INSTALL_DIR)/lib/;ln -sf $(DLINKER).$(LDSO_VMAJOR) $(DLINKER)) ; \
- (cd $(INSTALL_DIR)/lib/;ln -sf $(LIBDL).$(LDSO_VMAJOR) $(LIBDL)) ; \
+ install -m 755 $(TOPDIR)ld.so-1/d-link/$(UCLIBC_LDSO) $(INSTALL_DIR)/lib/ld-linux-uclibc.so ; \
+ install -m 644 $(TOPDIR)ld.so-1/libdl/$(LIBDL).$(MAJOR_VERSION) $(INSTALL_DIR)/lib/ ; \
+ (cd $(INSTALL_DIR)/lib/;ln -sf ld-linux-uclibc.so $(UCLIBC_LDSO)); \
+ (cd $(INSTALL_DIR)/lib/;ln -sf $(LIBDL).$(MAJOR_VERSION) $(LIBDL)) ; \
fi;
ldso:
diff --git a/ldso/README b/ldso/README
index 025694ee3..b5bb93e67 100644
--- a/ldso/README
+++ b/ldso/README
@@ -5,17 +5,17 @@ Inital port for uClibc from debian ld.so_1.9.11-9.tar.gz.
Removed a.out support.
-"make" generates the ld-linux-uclibc.so.1, libdl.so.1, ldd, ldconfig
+"make" generates the ld-uclibc.so.0, libdl.so.0, ldd, ldconfig
suitable for the target platform.
-"make DEVEL=true" generates the same files, but ld-linux-uclibc.so.1 and
+"make DEVEL=true" generates the same files, but ld-uclibc.so.0 and
ldconfig are modified to not conflict with the devel platform system
libs. (This is only of use if TARGET_ARCH == NATIVE_ARCH.) These
modified versions ignore /lib and /usr/lib and look for shared libs
only in $(INSTALL_DIR)/lib. The modified ldconfig writes ld.so.cache
in $(INSTALL_DIR)/etc.
-The above assumes you've set the DYNAMIC_LINKER to /lib/ld-linux-uclibc.so.1
+The above assumes you've set the DYNAMIC_LINKER to /lib/ld-uclibc.so.0
in extra/gcc-uClibc/Makefile.
Todo:
diff --git a/ldso/Rules.mak b/ldso/Rules.mak
index 96d132a96..4c58ff928 100644
--- a/ldso/Rules.mak
+++ b/ldso/Rules.mak
@@ -1,8 +1,6 @@
include $(TOPDIR)Rules.mak
LDSO_VERSION=1.9.11
-LDSO_VMAJOR=$(MAJOR_VERSION)
-DLINKER = ld-linux-uclibc.so
LIBDL = libdl.so
DEVEL=true
diff --git a/ldso/ldso/.cvsignore b/ldso/ldso/.cvsignore
index 0a73718a6..9103d4aa9 100644
--- a/ldso/ldso/.cvsignore
+++ b/ldso/ldso/.cvsignore
@@ -1,2 +1,2 @@
-ld-linux-uclibc.so*
-
+ld-uclibc.so*
+ld.so.h
diff --git a/ldso/ldso/Makefile b/ldso/ldso/Makefile
index 8c9570a17..ae181bb0a 100644
--- a/ldso/ldso/Makefile
+++ b/ldso/ldso/Makefile
@@ -11,19 +11,22 @@ OBJS=$(AOBJS) $(COBJS)
ELF_LDFLAGS=--shared # using GNU ld
-all: lib
+all: ld.so.h lib
+
+ld.so.h:
+ echo "char *_dl_progname = \""$(UCLIBC_LDSO)"\";" > ld.so.h
lib:: $(OBJS) $(DLINK_OBJS)
- $(LD) -e _dl_boot $(ELF_LDFLAGS) -o $(DLINKER).$(LDSO_VMAJOR) \
- -soname $(DLINKER).$(LDSO_VMAJOR) $(OBJS)
+ $(LD) -e _dl_boot $(ELF_LDFLAGS) -o $(UCLIBC_LDSO) \
+ -soname $(UCLIBC_LDSO) $(OBJS)
$(COBJS): %.o : %.c
$(CC) -I. -I./$(TARGET_ARCH) -I../libdl $(CFLAGS) -c $< -o $@
$(STRIPTOOL) -x -R .note -R .comment $*.o
realclean::
- $(RM) -f .depend $(DLINKER) core *.o *.a *.s *.i tmp_make foo *~
+ $(RM) -f .depend $(UCLIBC_LDSO)* core *.o *.a *.s *.i tmp_make foo *~
clean::
- $(RM) -f $(DLINKER)* $(OBJS) core *.o *.a *.s *.i tmp_make foo *~
+ $(RM) -f $(UCLIBC_LDSO)* $(OBJS) core *.o *.a *.s *.i tmp_make foo *~
diff --git a/ldso/libdl/Makefile b/ldso/libdl/Makefile
index 39171b2a2..6aac97002 100644
--- a/ldso/libdl/Makefile
+++ b/ldso/libdl/Makefile
@@ -19,7 +19,7 @@ ELF_LDFLAGS=--shared -nostartfiles -nostdlib # using GNU ld
lib:: $(OBJS)
$(CC) $(ELF_LDFLAGS) \
- -o $(LIBDL).$(LDSO_VMAJOR) -Wl,-soname -Wl,$(LIBDL).$(LDSO_VMAJOR) \
+ -o $(LIBDL).$(MAJOR_VERSION) -Wl,-soname -Wl,$(LIBDL).$(MAJOR_VERSION) \
*.o $(TOPDIR)$(SHARED_FULLNAME)
obj: $(OBJS)