When make.conf contains "parallel make" configuration, e.g.
MAKEOPTS="-j2"
then the build fails, because make "doesn't know" that dependency.
Might be a make bug, but a workaround is easily possible.
Reproducible: Always
Steps to Reproduce:
1. have MAKEOPTS="-j2" in make.conf
2. emerge httperf
Actual Results:
...
ranlib libgen.a
make[1]: Leaving directory `/var/tmp/portage/httperf-0.8/work/httperf-0.8/gen'
making all in stat
make[1]: Entering directory
`/var/tmp/portage/httperf-0.8/work/httperf-0.8/stat'
gcc -c -DHAVE_CONFIG_H -I.. -I. -I.. -I../lib -I../gen -DNDEBUG -D_GNU_SOURCE
-D_XOPEN_SOURCE -march=pentium4 -mmmx -msse -msse2 -mfpmath=sse -O3
-fomit-frame-pointer -ffast-math -pipe -Wall basic.c
gcc -c -DHAVE_CONFIG_H -I. -I. -I./lib -DNDEBUG -D_GNU_SOURCE -D_XOPEN_SOURCE
-march=pentium4 -mmmx -msse -msse2 -mfpmath=sse -O3 -fomit-frame-pointer
-ffast-math -pipe -Wall timer.c
make: *** No rule to make target `stat/libstat.a', needed by `httperf'. Stop.
make: *** Waiting for unfinished jobs....
gcc -c -DHAVE_CONFIG_H -I.. -I. -I.. -I../lib -I../gen -DNDEBUG -D_GNU_SOURCE
-D_XOPEN_SOURCE -march=pentium4 -mmmx -msse -msse2 -mfpmath=sse -O3
-fomit-frame-pointer -ffast-math -pipe -Wall sess_stat.c
gcc -c -DHAVE_CONFIG_H -I.. -I. -I.. -I../lib -I../gen -DNDEBUG -D_GNU_SOURCE
-D_XOPEN_SOURCE -march=pentium4 -mmmx -msse -msse2 -mfpmath=sse -O3
-fomit-frame-pointer -ffast-math -pipe -Wall print_reply.c
ar r libstat.a basic.o sess_stat.o print_reply.o
ar: creating libstat.a
ranlib libstat.a
make[1]: Leaving directory
`/var/tmp/portage/httperf-0.8/work/httperf-0.8/stat'
!!! ERROR: app-benchmarks/httperf-0.8 failed.
!!! Function src_compile, Line 36, Exitcode 2
!!! emake failed
!!! If you need support, post the topmost build error, NOT this status
message.
httperf # vi httperf-0.8.ebuild
Expected Results:
compile cleanly
including a line of
MAKEOPTS="-j1"
in httperf-0.8.ebuild fixes this.
Simply copying the ebuild to local portage-overlay dir...
A note about the severity: for people having "-j2"+ settings, it's acutally a
Blocker...