Rework common.mk
The code added by commits d6536da6 ("Commonlize xtest compilation among all platforms") and 070d9559 ("common build: optee components") introduces race conditions that break parallel build (make -jX). This is due to manually launching a make sub-process to run the -common targets, and can be fixed by just declaring a dependency instead. Specific flags are appended to common flags, rather than passed as arguments to a new "make" sub-process. So, basically: foo-common: $(MAKE) -C foo_dir [A=a B=B] foo: $(MAKE) foo-common [C=c] is turned into: FOO_COMMON_FLAGS ?= A=a B=b foo-common: $(MAKE) -C foo_dir $(FOO_COMMON_FLAGS) FOO_COMMON_FLAGS += C=c foo: foo-common At the same time this allows foo: to override flags, for instance set A=aa in the above example (prior to this, A=a would have had a higher priority). Signed-off-by:Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by:
Pascal Brand <pascal.brand@st.com> Reviewed-by:
Jerome Forissier <jerome.forissier@linaro.org>
Please register or sign in to comment