fix parallel build of btt and blkiomon
authorGwendal Grignou <gwendal@chromium.org>
Thu, 16 Jan 2020 20:33:26 +0000 (12:33 -0800)
committerJens Axboe <axboe@kernel.dk>
Thu, 16 Jan 2020 20:33:59 +0000 (13:33 -0700)
rbtree.c is used by both binaries. It is possible that when make -C btt
is invoked rbtree.o does not exist yet, but is already schedule by the
compilation of blkiomon. That could result in recompiling rbtree.o again
for btt/btt.
In that case, at install time, make will recompile blkiomon which can
fail in gentoo, because CC variable is not overriden by ebuild script at
install time. (see https://bugs.gentoo.org/705594)

Add a dependency on SUBDIRS to wait for all binary in . to be compiled.
It will guarante rbtree.o exists.

Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Makefile

index 5917814d03440ef2abbb9a144312444cbbda932b..eb3c6a1a67d8a4cd0a5c63ab8ca4c92e454fe414 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -14,7 +14,7 @@ all: $(ALL) $(SUBDIRS)
 
 # We always descend into subdirs because they contain their own dependency
 # information which we don't track in this top level Makefile.
-$(SUBDIRS):
+$(SUBDIRS): $(PROGS)
        $(MAKE) -C $@
 .PHONY: $(SUBDIRS)