about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2015-06-23 16:27:25 +0000
committerJoseph Myers <joseph@codesourcery.com>2015-06-23 16:27:25 +0000
commitb2faf4eadf5e9e9a71abcfe4da71fad91707ccac (patch)
tree9139113e5498891aca9ac64afb0a914bed1725df
parent5872b8352a8b6c0aa49c4e9f82bbda32becc5f02 (diff)
downloadglibc-b2faf4eadf5e9e9a71abcfe4da71fad91707ccac.tar.gz
glibc-b2faf4eadf5e9e9a71abcfe4da71fad91707ccac.tar.xz
glibc-b2faf4eadf5e9e9a71abcfe4da71fad91707ccac.zip
Fix math/Makefile dependency on libm-test.stmp for libmvec tests.
Since the libmvec tests went in I've noticed build failures from
parallel testing in math/, when those tests start building before
libm-test.c has been fully generated.  (This only applies if libm test
sources have been modified after the original glibc build, because
otherwise libm-test.stmp was generated during the original build and
doesn't get regenerated during testing.)

Those tests depend on libm-test.stmp, but the dependency uses
$(libmvec-tests), which is set in the sysdeps Makefile fragments, and
appears before the inclusion of ../Rules, which is what includes those
fragments; thus, the dependency does not work and parallel make can
start building the vector tests too soon.  This patch moves the
dependency further down so that the required variable is defined when
the dependency is.

Tested for x86_64.

	* math/Makefile [$(PERL) != no]
	($(addprefix $(objpfx), $(addsuffix .o, $(libm-vec-tests)))): Move
	dependency on libm-test.stmp below the inclusion of Rules.
-rw-r--r--ChangeLog6
-rw-r--r--math/Makefile4
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index b76a184e71..d2132be616 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2015-06-23  Joseph Myers  <joseph@codesourcery.com>
+
+	* math/Makefile [$(PERL) != no]
+	($(addprefix $(objpfx), $(addsuffix .o, $(libm-vec-tests)))): Move
+	dependency on libm-test.stmp below the inclusion of Rules.
+
 2015-06-23  Andrew Senkevich  <andrew.senkevich@intel.com>
 
 	* sysdeps/x86_64/fpu/Makefile (libmvec-support): Fixed files list.
diff --git a/math/Makefile b/math/Makefile
index 7f6b85ec0d..2c78dd0bb9 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -144,7 +144,6 @@ $(objpfx)test-double.o: $(objpfx)libm-test.stmp
 $(objpfx)test-idouble.o: $(objpfx)libm-test.stmp
 $(objpfx)test-ldouble.o: $(objpfx)libm-test.stmp
 $(objpfx)test-ildoubl.o: $(objpfx)libm-test.stmp
-$(addprefix $(objpfx), $(addsuffix .o, $(libm-vec-tests))): $(objpfx)libm-test.stmp
 endif
 
 libm-test-fast-math-cflags = -fno-builtin -D__FAST_MATH__ -DTEST_FAST_MATH
@@ -196,6 +195,9 @@ extra-objs += libieee.a ieee-math.o
 include ../Rules
 
 ifneq (no,$(PERL))
+# This must come after the inclusion of sysdeps Makefiles via Rules.
+$(addprefix $(objpfx), $(addsuffix .o, $(libm-vec-tests))): $(objpfx)libm-test.stmp
+
 # Run the math programs to automatically generate ULPs files.
 .PHONY: regen-ulps