benchtests: Link against objects in build directory

Using -lm and -lpthread results in the shared objects in the system
being used to link against.  This happened to work for libm because
there haven't been any changes to the libm ABI recently that could
break the existing benchmarks.  This doesn't always work for the
pthread benchmarks.  The correct way to build against libraries in the
build directory is to have the binaries explicitly depend on them so
that $(+link) can pick them up.
This commit is contained in:
Siddhesh Poyarekar 2014-04-15 14:33:06 +05:30
parent f737dfd071
commit bb9c256fb0
2 changed files with 16 additions and 23 deletions

View file

@ -1,3 +1,10 @@
2014-04-15 Siddhesh Poyarekar <siddhesh@redhat.com>
* benchtests/Makefile: Depend on libraries in build directory.
(bench-math): Separate out math tests.
(bench-pthread): Separate out pthread tests.
(bench): Include math and pthread tests.
2014-04-14 Carlos O'Donell <carlos@redhat.com>
[BZ #16831]

View file

@ -22,8 +22,12 @@
subdir := benchtests
include ../Makeconfig
bench := acos acosh asin asinh atan atanh cos cosh exp exp2 ffs ffsll \
log log2 modf pow pthread_once rint sin sincos sinh sqrt tan tanh
bench-math := acos acosh asin asinh atan atanh cos cosh exp exp2 ffs ffsll \
log log2 modf pow rint sin sincos sinh sqrt tan tanh
bench-pthread := pthread_once
bench := $(bench-math) $(bench-pthread)
# String function benchmarks.
string-bench := bcopy bzero memccpy memchr memcmp memcpy memmem memmove \
@ -40,27 +44,9 @@ benchset := $(string-bench-all) $(stdlib-bench)
CFLAGS-bench-ffs.c += -fno-builtin
CFLAGS-bench-ffsll.c += -fno-builtin
LDLIBS-bench-acos = -lm
LDLIBS-bench-acosh = -lm
LDLIBS-bench-asin = -lm
LDLIBS-bench-asinh = -lm
LDLIBS-bench-atan = -lm
LDLIBS-bench-atanh = -lm
LDLIBS-bench-cos = -lm
LDLIBS-bench-cosh = -lm
LDLIBS-bench-exp = -lm
LDLIBS-bench-exp2 = -lm
LDLIBS-bench-log = -lm
LDLIBS-bench-log2 = -lm
LDLIBS-bench-pow = -lm
LDLIBS-bench-pthread_once = -lpthread
LDLIBS-bench-rint = -lm
LDLIBS-bench-sin = -lm
LDLIBS-bench-sinh = -lm
LDLIBS-bench-sqrt = -lm
LDLIBS-bench-tan = -lm
LDLIBS-bench-tanh = -lm
LDLIBS-bench-sincos = -lm
$(addprefix $(objpfx)bench-,$(bench-math)): $(common-objpfx)math/libm.so
$(addprefix $(objpfx)bench-,$(bench-pthread)): \
$(common-objpfx)nptl/libpthread.so