Files
s390-tools/iucvterm/Makefile
Marc Hartmayer 4d4ddbd887 Recursive Makefiles: avoid race condition in the install target
The `install` Makefile target of the top Makefile has `all` and
`install-recursive` as prerequisites. This leads to the two recursive
Makefile calls `make -C <SUBDIR> all` and `make -C <SUBDIR> install`.

The problem is these two targets try to build the same object files and
this leads to a race condition between these two targets in case of a
parallel build.

Fix this problem by removing the `all` prerequisite from the `install`
target, as it is not needed since all the `install` targets in the
sub-Makefiles already have proper prerequisites.

Reviewed-by: Jan Höppner <hoeppner@linux.ibm.com>
Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
2023-07-20 21:45:27 +02:00

28 lines
481 B
Makefile

#! /usr/bin/make -f
include ../common.mak
GETTEXT_TEXTDOMAIN = iucvterm
export GETTEXT_TEXTDOMAIN
SUBDIRS = src po doc bin etc test
RECURSIVE_TARGETS = all-recursive install-recursive clean-recursive \
check-recursive
all: all-recursive
install: install-recursive
clean: clean-recursive
$(RECURSIVE_TARGETS):
@target=`echo $@ |sed s/-recursive//`; \
for d in $(SUBDIRS); do \
(cd $$d && $(MAKE) $$target) || exit 1; \
done
.PHONY: install clean