mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
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>
28 lines
481 B
Makefile
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
|