This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
A problem with `make elf/ldso_install'
- To: libc-alpha at sourceware dot cygnus dot com, Cristian Gafton <gafton at redhat dot com>
- Subject: A problem with `make elf/ldso_install'
- From: "Maciej W. Rozycki" <macro at ds2 dot pg dot gda dot pl>
- Date: Mon, 4 Sep 2000 17:43:42 +0200 (MET DST)
- Organization: Technical University of Gdansk
- Reply-To: "Maciej W. Rozycki" <macro at ds2 dot pg dot gda dot pl>
Hi,
[From my backlog of patches...]
I am observing problems with the "elf/ldso_install" target that is
available in the top level Makefile. With 2.1 it used to install the
runtime loader only (there is even a comment in elf/Makefile that assures
that's a desired behaviour). Now it also installs libc.so. As a result I
cannot easily install ld.so separately anymore and also both ld.so and
libc.so get installed twice upon `make install'.
I believe the following change is responsible for the new behaviour.
What was it expected to achieve?
2000-03-17 Cristian Gafton <gafton@redhat.com>
* elf/Makefile ($(rtld-version-installed-name)): Delay replacing
existing rtld-installed-name.
($(rtld-installed-name)): Request libc-$(version) be installed too.
replace existing rtld-installed-name using $(symbolic-link-prog).
Following is a patch that reverts the previous semantics.
2000-09-02 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* elf/Makefile (install-others): Remove.
($(inst_slibdir)/$(rtld-installed-name)): Do not depend on
$(inst_slibdir)/libc-$(version).so.
Maciej
--
+ Maciej W. Rozycki, Technical University of Gdansk, Poland +
+--------------------------------------------------------------+
+ e-mail: macro@ds2.pg.gda.pl, PGP key available +
diff -u --recursive --new-file glibc.macro/elf/Makefile glibc/elf/Makefile
--- glibc.macro/elf/Makefile Thu Aug 3 02:25:40 2000
+++ glibc/elf/Makefile Sat Sep 2 15:51:13 2000
@@ -61,7 +61,6 @@
ifeq (yes,$(build-shared))
extra-objs = $(rtld-routines:=.os) soinit.os sofini.os interp.os
generated += librtld.os dl-allobjs.os ld.so ldd
-install-others = $(inst_slibdir)/$(rtld-installed-name)
install-bin = ldd
endif
@@ -174,14 +173,15 @@
CPPFLAGS-dl-load.c = -I$(objpfx).
ifeq (yes,$(build-shared))
-$(inst_slibdir)/$(rtld-version-installed-name): $(objpfx)ld.so $(+force)
+$(inst_slibdir)/$(rtld-installed-name): $(objpfx)ld.so $(+force)
$(make-target-directory)
- $(do-install-program)
-
-$(inst_slibdir)/$(rtld-installed-name): \
- $(inst_slibdir)/$(rtld-version-installed-name) \
- $(inst_slibdir)/libc-$(version).so
- $(make-shlib-link)
+ $(INSTALL_PROGRAM) $< $(inst_slibdir)/$(rtld-version-installed-name).new
+ rm -f $@ $(inst_slibdir)/$(rtld-version-installed-name)
+ $(symbolic-link-prog) $(inst_slibdir)/$(rtld-version-installed-name).new $@
+ ln $(inst_slibdir)/$(rtld-version-installed-name).new $(inst_slibdir)/$(rtld-version-installed-name)
+ rm -f $@
+ $(symbolic-link-prog) $(rtld-version-installed-name) $@
+ rm -f $(inst_slibdir)/$(rtld-version-installed-name).new
# Special target called by parent to install just the dynamic linker.
.PHONY: ldso_install