Multi-job make (-j5) causes race condition, as there's a header file generated during compile, but also required during compile.
Steps to Reproduce:
1. MAKEOPTS="-j50" emerge libappindicator
Most likely results (race condition):
/var/tmp/portage/dev-libs/libappindicator-12.10.0-r300/work/libappindicator-12.10.0/src/app-indicator.c:43:41: fatal error: application-service-marshal.h: No such file or directory
Setting MAKEOPTS="-j1" works without issue.
We try to fix the issue rather than blindly set makeopts to -j1.
Please attach the full build.log too
Sorry, wasn't suggesting to blindly set it to -j1, just showing how to reproduce.
As for a build log, I went to try to get one, but I can no longer reproduce the problem myself either. Even set it on a loop to rebuild repeatedly since I suspected it was a race condition, but two hours later, still no failures. I suppose this may as well be closed.
Thanks for feedback
Created attachment 433696 [details]
Sorry to spoil the party, but I can reproduce it with 200/300 as well as 201/301.
Created attachment 433698 [details]
(In reply to M. B. from comment #5)
> Created attachment 433696 [details]
> build.log 12.10.0-r301
> Sorry to spoil the party, but I can reproduce it with 200/300 as well as
Yep, the same here with 12.10.0-r201, because it was now marked **stable** - https://bugs.gentoo.org/show_bug.cgi?id=582324
The bug has been referenced in the following commit(s):
Author: Pacho Ramos <firstname.lastname@example.org>
AuthorDate: 2021-05-26 12:23:43 +0000
Commit: Pacho Ramos <email@example.com>
CommitDate: 2021-05-26 12:23:55 +0000
dev-libs/libappindicator: Bump to latest snapshot used in Ubuntu
Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Pacho Ramos <firstname.lastname@example.org>
dev-libs/libappindicator/Manifest | 1 +
.../libappindicator-12.10.1_p20200706.ebuild | 71 ++++++++++++++++++++++
2 files changed, 72 insertions(+)
Please retry with latest version... if still valid for you, please report to upstream as, otherwise, I don't think it will be fixed ever
Emerge built it several times in a row, both with -j50 and my default -j16. Can't reproduce the issue. Good enough for me. Only nm-applet and transmission even use this on my system anymore.
thanks for the feedback!
Created attachment 723172 [details]
/libappindicator-12.10.1_p20200706 build failure
libtool: compile: x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I/var/tmp/portage/dev-libs/libappindicator-12.10.1_p20200706/work/src -I.. -pthread -I/usr/include/libdbusmenu-gtk3-0.4 -I/usr/include/libdbusmenu-glib-0.4 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/lib64/libffi/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -Wall -Wno-error=deprecated-declarations -DG_LOG_DOMAIN=\"libappindicator\" -O2 -pipe -Wno-error -fno-stack-check -Wno-deprecated-declarations -fdebug-prefix-map=..=/var/tmp/portage/dev-libs/libappindicator-12.10.1_p20200706 -c /var/tmp/portage/dev-libs/libappindicator-12.10.1_p20200706/work/src/app-indicator.c -fPIC -DPIC -o .libs/libappindicator3_la-app-indicator.o
/var/tmp/portage/dev-libs/libappindicator-12.10.1_p20200706/work/src/app-indicator.c:45:10: fatal error: application-service-marshal.h: No such file or directory
45 | #include "application-service-marshal.h"
make: *** [Makefile:788: libappindicator3_la-app-indicator.lo] Error 1
make: *** [Makefile:471: all-recursive] Error 1
make: *** [Makefile:402: all] Error 2
* ERROR: dev-libs/libappindicator-12.10.1_p20200706::gentoo failed (compile phase):
* emake failed
remerged the pkg and that worked.