Remove before-compile setting in math/Makefile.
commit95b2e07fafddc57d818dd408e5ab1e0eb26cd9f1
authorJoseph Myers <joseph@codesourcery.com>
Mon, 6 Feb 2017 17:48:02 +0000 (6 17:48 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Mon, 6 Feb 2017 17:48:02 +0000 (6 17:48 +0000)
tree5ec22e0a4105e26cd5e8e5bf71d98286210a3a28
parent0b20e02c976ddd89a4adaa3a0c26baec3e275161
Remove before-compile setting in math/Makefile.

In <https://sourceware.org/ml/libc-alpha/2015-12/msg00543.html>,
Florian noted highly parallel builds being slowed down by
gen-libm-test.pl running during the build, when it should only run for
testing, not for building glibc itself.

This is a consequence of libm-test.c being listed in before-compile.
That listing in before-compile arose from the error reported in
<https://sourceware.org/ml/libc-hacker/1999-10/msg00054.html> when
building dependencies: at that time, dependencies were generated
separation from compilation, so if a source file included a generated
file it wasn't enough for the dependencies for the .o file to be
correct, the generated file needed to be listed in before-compile.

Since <https://sourceware.org/ml/libc-hacker/2003-05/msg00001.html>,
dependencies are generated as a side-effect of compilation.  This
means that having the right dependencies for the .o files for the
tests fully suffices to ensure that libm-test.c is generated by the
time it's needed; no entry in before-compile is needed.  And we indeed
have such a dependency for all the tests using libm-test.c:

$(addprefix $(objpfx), $(libm-tests.o)): $(objpfx)libm-test.stmp

Thus, the before-compile definition is unnecessary, and this patch
removes it.  (This may of course move serialization from the glibc
build to glibc testing, but I intend to split up libm-test.inc so that
tests for each (floating-point type, libm function) pair are built and
run separately, which should reduce that serialization.)

Tested for x86_64.

* math/Makefile (before-compile): Remove.
ChangeLog
math/Makefile