From 2d544cac238eccbfc32cafc9502ddf6e00994211 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Fri, 9 Oct 2015 17:50:41 +0100 Subject: [PATCH] icu: fix install race The generic recursive target calls target-local so also adding it to the dependency list results in races due to install-local being executed twice in parallel. For example, install-manx can fail if the two install processes race and one process tries to chown a file that the other process has just deleted. Also install-manx should be a phony target, and for clarity use $^ instead of $? in the install command. Upstream-Status: Pending Signed-off-by: Ross Burton --- Makefile.in | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Makefile.in b/Makefile.in index 8366f01..79b91c9 100644 --- a/Makefile.in +++ b/Makefile.in @@ -77,7 +77,7 @@ EXTRA_DATA = ## List of phony targets .PHONY : all all-local all-recursive install install-local install-udata install-udata-files install-udata-dlls \ -install-recursive clean clean-local clean-recursive distclean \ +install-recursive install-manx clean clean-local clean-recursive distclean \ distclean-local distclean-recursive doc dist dist-local dist-recursive \ check check-local check-recursive clean-recursive-with-twist install-icu \ doc install-doc tests icu4j-data icu4j-data-install update-windows-makefiles xcheck-local xcheck-recursive xperf xcheck xperf-recursive \ @@ -88,9 +88,9 @@ check-exhaustive check-exhaustive-local check-exhaustive-recursive releaseDist ## List of standard targets all: all-local all-recursive -install: install-recursive install-local +install: install-recursive clean: clean-recursive-with-twist clean-local -distclean : distclean-recursive distclean-local +distclean : distclean-recursive dist: dist-recursive check: all check-recursive check-recursive: all @@ -357,7 +357,7 @@ config.status: $(srcdir)/configure $(srcdir)/common/unicode/uvernum.h install-manx: $(MANX_FILES) $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man$(SECTION) ifneq ($(MANX_FILES),) - $(INSTALL_DATA) $? $(DESTDIR)$(mandir)/man$(SECTION) + $(INSTALL_DATA) $^ $(DESTDIR)$(mandir)/man$(SECTION) endif config/%.$(SECTION): $(srcdir)/config/%.$(SECTION).in