From 9c67a91fcf9346e70c8ac591348d0dc640dc0edd Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 20 May 1998 12:08:20 +0000 Subject: [PATCH] (force-install): New phony target. --- Makerules | 52 +++++++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 21 deletions(-) diff --git a/Makerules b/Makerules index da35108e73e..9f923d5bb9c 100644 --- a/Makerules +++ b/Makerules @@ -567,6 +567,9 @@ endef # Installation. +.PHONY: force-install +force-install: + # $(install-lib) are installed from the object directory into $(libdir); # files in $(install-lib) matching `lib%.a' are ranlib'd after installation # unless they also appear in $(non-lib.a). $(install-data) are installed @@ -602,7 +605,7 @@ installed-libcs := $(foreach o,$(filter-out .so,$(object-suffixes-for-libc)),\ $(inst_libdir)/$(patsubst %,$(libtype$o),\ $(libprefix)$(libc-name))) install: $(installed-libcs) -$(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib +$(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force) $(make-target-directory) $(INSTALL_DATA) $(common-objpfx)lib$(*:$(libc-name)%=c%) $@ # Running ranlib after installing makes the __.SYMDEF time stamp up to @@ -628,7 +631,7 @@ versioned := $(strip $(foreach so,$(install-lib.so),\ # Install all the unversioned shared libraries. $(addprefix $(inst_slibdir)/, $(filter-out $(versioned),$(install-lib.so))): \ - $(inst_slibdir)/%.so: $(objpfx)%.so; $(do-install-program) + $(inst_slibdir)/%.so: $(objpfx)%.so $(+force); $(do-install-program) ifneq ($(findstring -s,$(LN_S)),) define make-link @@ -664,9 +667,10 @@ ifdef libc.so-version # libc.so -> libc.so.N (e.g. libc.so.6) # libc.so.6 -> libc-VERSION.so (e.g. libc-1.10.so) -$(inst_slibdir)/libc.so$(libc.so-version): $(inst_slibdir)/libc-$(version).so +$(inst_slibdir)/libc.so$(libc.so-version): $(inst_slibdir)/libc-$(version).so \ + $(+force) $(make-shlib-link) -$(inst_slibdir)/libc-$(version).so: $(common-objpfx)libc.so +$(inst_slibdir)/libc-$(version).so: $(common-objpfx)libc.so $(+force) $(do-install-program) install: $(inst_slibdir)/libc.so$(libc.so-version) @@ -678,7 +682,8 @@ ifndef subdir install: $(inst_libdir)/libc.so $(inst_libdir)/libc.so: $(common-objpfx)libc.so$(libc.so-version) \ $(inst_libdir)/$(patsubst %,$(libtype.So),\ - $(libprefix)$(libc-name)) + $(libprefix)$(libc-name)) \ + $(+force) (echo '/* GNU ld script';\ echo ' Use the shared library, but some functions are only in';\ echo ' the static library, so try that secondarily. */';\ @@ -692,7 +697,7 @@ endif else install: $(inst_slibdir)/libc.so -$(inst_slibdir)/libc.so: $(common-objpfx)libc.so +$(inst_slibdir)/libc.so: $(common-objpfx)libc.so $(+force) $(do-install-program) endif @@ -701,7 +706,7 @@ ifneq (,$(versioned)) # Produce three sets of rules as above for all the smaller versioned libraries. define o-iterator-doit -$(inst_libdir)/$o: $(inst_slibdir)/$o$($o-version); $$(make-link) +$(inst_libdir)/$o: $(inst_slibdir)/$o$($o-version) $(+force); $$(make-link) endef object-suffixes-left := $(versioned) include $(o-iterator) @@ -717,28 +722,30 @@ include $(o-iterator) ifeq (,$($(subdir)-version)) define o-iterator-doit -$(inst_slibdir)/$o$($o-version): $(inst_slibdir)/$(o:.so=)-$(version).so; +$(inst_slibdir)/$o$($o-version): $(inst_slibdir)/$(o:.so=)-$(version).so \ + $(+force); $$(make-shlib-link) endef object-suffixes-left := $(versioned) include $(o-iterator) define o-iterator-doit -$(inst_slibdir)/$(o:.so=)-$(version).so: $(objpfx)$o; $$(do-install-program) +$(inst_slibdir)/$(o:.so=)-$(version).so: $(objpfx)$o $(+force); + $$(do-install-program) endef object-suffixes-left := $(versioned) include $(o-iterator) else define o-iterator-doit $(inst_slibdir)/$o$($o-version): \ - $(inst_slibdir)/$(o:.so=)-$($(subdir)-version).so; + $(inst_slibdir)/$(o:.so=)-$($(subdir)-version).so $(+force); $$(make-shlib-link) endef object-suffixes-left := $(versioned) include $(o-iterator) define o-iterator-doit -$(inst_slibdir)/$(o:.so=)-$($(subdir)-version).so: $(objpfx)$o; +$(inst_slibdir)/$(o:.so=)-$($(subdir)-version).so: $(objpfx)$o $(+force); $$(do-install-program) endef object-suffixes-left := $(versioned) @@ -754,24 +761,27 @@ endef so-versions := $(sort $(foreach so,$(install-lib.so),.so$($(so)-version))) $(foreach v,$(so-versions),\ - $(inst_slibdir)/lib$(libprefix)%$v): $(common-objpfx)lib%.so + $(inst_slibdir)/lib$(libprefix)%$v): $(common-objpfx)lib%.so \ + $(+force) $(do-install-so) $(foreach v,$(so-versions),\ - $(inst_slibdir)/$(libprefix)%$v): $(common-objpfx)%.so + $(inst_slibdir)/$(libprefix)%$v): $(common-objpfx)%.so $(+force) $(do-install-so) endif ifdef install-bin -$(addprefix $(inst_bindir)/,$(install-bin)): $(inst_bindir)/%: $(objpfx)% +$(addprefix $(inst_bindir)/,$(install-bin)): \ + $(inst_bindir)/%: $(objpfx)% $(+force) $(do-install-program) endif ifdef install-rootsbin -$(addprefix $(inst_rootsbindir)/,$(install-rootsbin)): - $(inst_rootsbindir)/%: $(objpfx)% +$(addprefix $(inst_rootsbindir)/,$(install-rootsbin)): \ + $(inst_rootsbindir)/%: $(objpfx)% $(+force) $(do-install-program) endif ifdef install-sbin -$(addprefix $(inst_sbindir)/,$(install-sbin)): $(inst_sbindir)/%: $(objpfx)% +$(addprefix $(inst_sbindir)/,$(install-sbin)): \ + $(inst_sbindir)/%: $(objpfx)% $(+force) $(do-install-program) endif ifdef install-lib @@ -779,23 +789,23 @@ install-lib.a := $(filter lib%.a,$(install-lib)) install-lib-non.a := $(filter-out lib%.a,$(install-lib)) ifdef install-lib-non.a $(addprefix $(inst_libdir)/$(libprefix),$(install-lib-non.a)): \ - $(inst_libdir)/$(libprefix)%: $(objpfx)% + $(inst_libdir)/$(libprefix)%: $(objpfx)% $(+force) $(do-install) endif ifdef install-lib.a $(install-lib.a:lib%.a=$(inst_libdir)/lib$(libprefix)%.a): \ - $(inst_libdir)/lib$(libprefix)%.a: $(objpfx)lib%.a + $(inst_libdir)/lib$(libprefix)%.a: $(objpfx)lib%.a $(+force) $(do-install) $(patsubst %,$(RANLIB) $@,$(filter-out $(non-lib.a),$(