@@ -, +, @@ --- ...-1.2.0.ebuild => blktrace-1.2.0-r1.ebuild} | 1 + .../blktrace-1.2.0-parallel-rbtree.patch | 32 +++++++++++++++++++ 2 files changed, 33 insertions(+) rename sys-block/blktrace/{blktrace-1.2.0.ebuild => blktrace-1.2.0-r1.ebuild} (95%) create mode 100644 sys-block/blktrace/files/blktrace-1.2.0-parallel-rbtree.patch --- a/sys-block/blktrace/blktrace-1.2.0.ebuild +++ a/sys-block/blktrace/blktrace-1.2.0.ebuild @@ -35,6 +35,7 @@ PATCHES=( "${FILESDIR}"/${P}-overlapping-io-stats.patch "${FILESDIR}"/${PN}-1.2.0-ldflags.patch #335741 "${FILESDIR}"/${PN}-1.2.0-parallel-build.patch #335741 + "${FILESDIR}"/${PN}-1.2.0-parallel-rbtree.patch #705594 ) src_compile() { --- a/sys-block/blktrace/files/blktrace-1.2.0-parallel-rbtree.patch +++ a/sys-block/blktrace/files/blktrace-1.2.0-parallel-rbtree.patch @@ -0,0 +1,32 @@ +commit 817bd67f206b325f4494f1f86d970c2f76a3b794 +Author: Gwendal Grignou +Date: Thu Jan 16 12:12:57 2020 -0800 + + fix parallel build of btt and blkiomon + + 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 + +diff --git a/Makefile b/Makefile +index 5917814..eb3c6a1 100644 +--- 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) + --