about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <sid@reserved-bit.com>2016-04-20 10:23:28 +0530
committerSiddhesh Poyarekar <sid@reserved-bit.com>2016-04-20 10:23:28 +0530
commita00d3f4a8c19547b4050889965d9a2a93429ae51 (patch)
tree1e796b1032343a4f7ddb947f4ed90c8daf0180b0
parent6f8222a1c52a9e577925b90d16b95be10ef50596 (diff)
downloadglibc-a00d3f4a8c19547b4050889965d9a2a93429ae51.tar.gz
glibc-a00d3f4a8c19547b4050889965d9a2a93429ae51.tar.xz
glibc-a00d3f4a8c19547b4050889965d9a2a93429ae51.zip
New make target to only build benchmark binaries
For situations where we are cross-building or where we want to avoid
building on the target system, we want a way to only build benchmarks
and then copy them over to the target system to run them.  I have also
added a simple enhancement for the 'bench' target where all benchmark
binaries are built and then the benchmarks executed.

Tested on arm.

	Makefile.in (bench-build): New target.
	Rules (PHONY): Add bench-build target.
	benchtests/Makefile (bench): Depend on bench-build.
	(bench-build): New target.
-rw-r--r--ChangeLog7
-rw-r--r--Makefile.in2
-rw-r--r--Rules2
-rw-r--r--benchtests/Makefile5
4 files changed, 13 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index faa1e6396a..a87a0b2b1a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2016-04-20  Siddhesh Poyarekar  <sid@reserved-bit.com>
+
+	Makefile.in (bench-build): New target.
+	Rules (PHONY): Add bench-build target.
+	benchtests/Makefile (bench): Depend on bench-build.
+	(bench-build): New target.
+
 2016-04-19  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
 	* sysdeps/mach/hurd/profil.c (update_waiter): Initialize
diff --git a/Makefile.in b/Makefile.in
index 710ce7e2c2..3fe9e73645 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -12,7 +12,7 @@ install:
 	LC_ALL=C; export LC_ALL; \
 	$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
 
-bench bench-clean:
+bench bench-clean bench-build:
 	$(MAKE) -C $(srcdir)/benchtests $(PARALLELMFLAGS) objdir=`pwd` $@
 
 # Convenience target to rebuild ULPs for all math tests.
diff --git a/Rules b/Rules
index d8093b3f1f..8306d36a07 100644
--- a/Rules
+++ b/Rules
@@ -83,7 +83,7 @@ common-generated += dummy.o dummy.c
 
 # This makes all the auxiliary and test programs.
 
-.PHONY: others tests bench
+.PHONY: others tests bench bench-build
 
 ifeq ($(build-programs),yes)
 others: $(addprefix $(objpfx),$(others) $(sysdep-others) $(extra-objs))
diff --git a/benchtests/Makefile b/benchtests/Makefile
index 61077ea9b6..a05974ec85 100644
--- a/benchtests/Makefile
+++ b/benchtests/Makefile
@@ -128,7 +128,10 @@ bench-clean:
 	rm -f $(binaries-bench-malloc) $(addsuffix .o,$(binaries-bench-malloc))
 	rm -f $(timing-type) $(addsuffix .o,$(timing-type))
 
-bench: $(timing-type) $(gen-locales) bench-set bench-func bench-malloc
+bench: $(timing-type) $(gen-locales) bench-build bench-set bench-func \
+	bench-malloc
+# Target to only build the benchmark without running it.
+bench-build: $(binaries-bench) $(binaries-benchset) $(binaries-bench-malloc)
 
 bench-set: $(binaries-benchset)
 	for run in $^; do \