This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.23-218-g2d304f3


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  2d304f3c6f5c34b4dd34c7ab0663d93adec14c26 (commit)
       via  d7aea0cf06a469dac56aee445ba089d61795fbdc (commit)
      from  f1f9a72bdc8ff7015cb6871f4e85fcc3a1a4c248 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=2d304f3c6f5c34b4dd34c7ab0663d93adec14c26

commit 2d304f3c6f5c34b4dd34c7ab0663d93adec14c26
Author: Siddhesh Poyarekar <sid@reserved-bit.com>
Date:   Wed Apr 20 13:19:01 2016 +0530

    benchtests: Support for cross-building benchmarks
    
    This patch adds full support for cross-building benchmarks.  Some
    benchmarks like those that need locales to be generated cannot be
    built and are hence skipped for cross builds.
    
    Tested by cross building for aarch64 on x86_64 and then running the
    generated benchmark on aarch64.
    
    	* benchtests/Makefile (wcsmbs-benchset): Include only for
    	native builds and runs.
    	(LOCALES): Likewise.
    	(bench-build): Build timing-type here instead of the bench
    	target.  Generate locale only for native builds.
    	* benchtests/README: Add note for cross-building.

diff --git a/ChangeLog b/ChangeLog
index f26f8f8..ded1093 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2016-04-20  Siddhesh Poyarekar  <sid@reserved-bit.com>
 
+	* benchtests/Makefile (wcsmbs-benchset): Include only for
+	native builds and runs.
+	(LOCALES): Likewise.
+	(bench-build): Build timing-type here instead of the bench
+	target.  Generate locale only for native builds.
+	* benchtests/README: Add note for cross-building.
+
 	* benchtests/Makefile (bench-clean): Clean up extra-objs.
 
 	* benchtests/README: Update README to include instructions on
diff --git a/benchtests/Makefile b/benchtests/Makefile
index 779eb39..144b32e 100644
--- a/benchtests/Makefile
+++ b/benchtests/Makefile
@@ -39,11 +39,19 @@ string-benchset := bcopy bzero memccpy memchr memcmp memcpy memmem memmove \
 		   strncasecmp strncat strncmp strncpy strnlen strpbrk strrchr \
 		   strspn strstr strcpy_chk stpcpy_chk memrchr strsep strtok \
 		   strcoll memcpy-large memmove-large memset-large
+
+# Build and run locale-dependent benchmarks only if we're building natively.
+ifeq (no,$(cross-compiling))
 wcsmbs-benchset := wcslen wcsnlen wcscpy wcpcpy wcsncpy wcpncpy wcscat wcsncat \
 		   wcscmp wcsncmp wcschr wcschrnul wcsrchr wcsspn wcspbrk wcscspn \
 		   wmemchr wmemset wmemcmp
+else
+wcsmbs-benchset :=
+endif
+
 string-benchset-all := $(string-benchset) ${wcsmbs-benchset}
 
+ifeq (no,$(cross-compiling))
 # We have to generate locales
 LOCALES := en_US.UTF-8 tr_TR.UTF-8 cs_CZ.UTF-8 fa_IR.UTF-8 fr_FR.UTF-8 \
 	   ja_JP.UTF-8 si_LK.UTF-8 en_GB.UTF-8 vi_VN.UTF-8 ar_SA.UTF-8 \
@@ -51,6 +59,7 @@ LOCALES := en_US.UTF-8 tr_TR.UTF-8 cs_CZ.UTF-8 fa_IR.UTF-8 fr_FR.UTF-8 \
 	   he_IL.UTF-8 is_IS.UTF-8 es_ES.UTF-8 hi_IN.UTF-8 sv_SE.UTF-8 \
 	   hu_HU.UTF-8 it_IT.UTF-8 sr_RS.UTF-8 zh_CN.UTF-8
 include ../gen-locales.mk
+endif
 
 stdlib-benchset := strtod
 
@@ -131,10 +140,16 @@ bench-clean:
 	rm -f $(timing-type) $(addsuffix .o,$(timing-type))
 	rm -f $(addprefix $(objpfx),$(bench-extra-objs))
 
-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: bench-build bench-set bench-func bench-malloc
+# Target to only build the benchmark without running it.  We generate locales
+# only if we're building natively.
+ifeq (no,$(cross-compiling))
+bench-build: $(gen-locales) $(timing-type) $(binaries-bench) \
+	$(binaries-benchset) $(binaries-bench-malloc)
+else
+bench-build: $(timing-type) $(binaries-bench) $(binaries-benchset) \
+	$(binaries-bench-malloc)
+endif
 
 bench-set: $(binaries-benchset)
 	for run in $^; do \
diff --git a/benchtests/README b/benchtests/README
index 847df87..2c5f381 100644
--- a/benchtests/README
+++ b/benchtests/README
@@ -49,7 +49,9 @@ benchmarks from the build directory as usual:
   $ make bench
 
 make sure the copy preserves timestamps by using either rsync or scp -p
-otherwise the above command may try to build the benchmark again.
+otherwise the above command may try to build the benchmark again.  Benchmarks
+that require generated code to be executed during the build are skipped when
+cross-building.
 
 Adding a function to benchtests:
 ===============================

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=d7aea0cf06a469dac56aee445ba089d61795fbdc

commit d7aea0cf06a469dac56aee445ba089d61795fbdc
Author: Siddhesh Poyarekar <sid@reserved-bit.com>
Date:   Wed Apr 20 11:19:49 2016 +0530

    benchtests: Clean up extra-objs
    
    The bench-clean target would leave behind json-lib.o.  Fix up to clean
    up all extra-objs registered in benchtests.

diff --git a/ChangeLog b/ChangeLog
index e16c557..f26f8f8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2016-04-20  Siddhesh Poyarekar  <sid@reserved-bit.com>
 
+	* benchtests/Makefile (bench-clean): Clean up extra-objs.
+
 	* benchtests/README: Update README to include instructions on
 	using bench-build.
 
diff --git a/benchtests/Makefile b/benchtests/Makefile
index a05974e..779eb39 100644
--- a/benchtests/Makefile
+++ b/benchtests/Makefile
@@ -112,7 +112,9 @@ cpp-srcs-left := $(binaries-benchset:=.c) $(binaries-bench:=.c) \
 lib := nonlib
 include $(patsubst %,$(..)cppflags-iterator.mk,$(cpp-srcs-left))
 
-extra-objs += json-lib.o
+bench-extra-objs = json-lib.o
+
+extra-objs += $(bench-extra-objs)
 
 bench-deps := bench-skeleton.c bench-timing.h Makefile
 
@@ -127,6 +129,7 @@ bench-clean:
 	rm -f $(binaries-benchset) $(addsuffix .o,$(binaries-benchset))
 	rm -f $(binaries-bench-malloc) $(addsuffix .o,$(binaries-bench-malloc))
 	rm -f $(timing-type) $(addsuffix .o,$(timing-type))
+	rm -f $(addprefix $(objpfx),$(bench-extra-objs))
 
 bench: $(timing-type) $(gen-locales) bench-build bench-set bench-func \
 	bench-malloc

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog           |    9 +++++++++
 benchtests/Makefile |   30 ++++++++++++++++++++++++------
 benchtests/README   |    4 +++-
 3 files changed, 36 insertions(+), 7 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]