blob: 7526bde370202312a3ff43e0c4f26d3a6f620439 [file] [log] [blame]
Patrick Williams44b3caf2024-04-12 16:51:14 -05001From 2d544cac238eccbfc32cafc9502ddf6e00994211 Mon Sep 17 00:00:00 2001
Brad Bishop316dfdd2018-06-25 12:45:53 -04002From: Ross Burton <ross.burton@intel.com>
3Date: Fri, 9 Oct 2015 17:50:41 +0100
Brad Bishop19323692019-04-05 15:28:33 -04004Subject: [PATCH] icu: fix install race
Brad Bishop316dfdd2018-06-25 12:45:53 -04005
Patrick Williamsf1e5d692016-03-30 15:21:19 -05006The generic recursive target calls target-local so also adding it to the
7dependency list results in races due to install-local being executed twice in
8parallel. For example, install-manx can fail if the two install processes race
9and one process tries to chown a file that the other process has just deleted.
10
11Also install-manx should be a phony target, and for clarity use $^ instead of $?
12in the install command.
13
14Upstream-Status: Pending
15Signed-off-by: Ross Burton <ross.burton@intel.com>
Brad Bishop316dfdd2018-06-25 12:45:53 -040016---
Patrick Williams44b3caf2024-04-12 16:51:14 -050017 Makefile.in | 8 ++++----
Brad Bishop316dfdd2018-06-25 12:45:53 -040018 1 file changed, 4 insertions(+), 4 deletions(-)
Patrick Williamsf1e5d692016-03-30 15:21:19 -050019
Brad Bishop19323692019-04-05 15:28:33 -040020diff --git a/Makefile.in b/Makefile.in
Patrick Williams44b3caf2024-04-12 16:51:14 -050021index 8366f01..79b91c9 100644
Patrick Williamsf1e5d692016-03-30 15:21:19 -050022--- a/Makefile.in
23+++ b/Makefile.in
Brad Bishop19323692019-04-05 15:28:33 -040024@@ -77,7 +77,7 @@ EXTRA_DATA =
Patrick Williamsf1e5d692016-03-30 15:21:19 -050025
26 ## List of phony targets
27 .PHONY : all all-local all-recursive install install-local install-udata install-udata-files install-udata-dlls \
28-install-recursive clean clean-local clean-recursive distclean \
29+install-recursive install-manx clean clean-local clean-recursive distclean \
30 distclean-local distclean-recursive doc dist dist-local dist-recursive \
31 check check-local check-recursive clean-recursive-with-twist install-icu \
32 doc install-doc tests icu4j-data icu4j-data-install update-windows-makefiles xcheck-local xcheck-recursive xperf xcheck xperf-recursive \
Brad Bishop19323692019-04-05 15:28:33 -040033@@ -88,9 +88,9 @@ check-exhaustive check-exhaustive-local check-exhaustive-recursive releaseDist
Patrick Williamsf1e5d692016-03-30 15:21:19 -050034
35 ## List of standard targets
36 all: all-local all-recursive
37-install: install-recursive install-local
38+install: install-recursive
39 clean: clean-recursive-with-twist clean-local
40-distclean : distclean-recursive distclean-local
Patrick Williamsf1e5d692016-03-30 15:21:19 -050041+distclean : distclean-recursive
Brad Bishop316dfdd2018-06-25 12:45:53 -040042 dist: dist-recursive
Patrick Williamsf1e5d692016-03-30 15:21:19 -050043 check: all check-recursive
44 check-recursive: all
Brad Bishop19323692019-04-05 15:28:33 -040045@@ -357,7 +357,7 @@ config.status: $(srcdir)/configure $(srcdir)/common/unicode/uvernum.h
Patrick Williamsf1e5d692016-03-30 15:21:19 -050046 install-manx: $(MANX_FILES)
47 $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man$(SECTION)
Brad Bishop19323692019-04-05 15:28:33 -040048 ifneq ($(MANX_FILES),)
Patrick Williamsf1e5d692016-03-30 15:21:19 -050049- $(INSTALL_DATA) $? $(DESTDIR)$(mandir)/man$(SECTION)
50+ $(INSTALL_DATA) $^ $(DESTDIR)$(mandir)/man$(SECTION)
Brad Bishop19323692019-04-05 15:28:33 -040051 endif
Patrick Williamsf1e5d692016-03-30 15:21:19 -050052
53 config/%.$(SECTION): $(srcdir)/config/%.$(SECTION).in