|
Packit Service |
a2ae7a |
# -*- Makefile-automake -*-
|
|
Packit Service |
a2ae7a |
#
|
|
Packit Service |
a2ae7a |
# Support for running programs with failmalloc preloaded. Include in other
|
|
Packit Service |
a2ae7a |
# automake files and make sure the following variables are set:
|
|
Packit Service |
a2ae7a |
#
|
|
Packit Service |
a2ae7a |
# FAILMALLOC_START - number of first FAILMALLOC_INTERVAL
|
|
Packit Service |
a2ae7a |
# FAILMALLOC_REP - how often to repeat with increasing FAILMALLOC_INTERVAL
|
|
Packit Service |
a2ae7a |
# FAILMALLOC_PROG - the program to run with linfailmalloc preloaded
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
if WITH_FAILMALLOC
|
|
Packit Service |
a2ae7a |
failmalloc: failmalloc-run
|
|
Packit Service |
a2ae7a |
else
|
|
Packit Service |
a2ae7a |
failmalloc: failmalloc-error
|
|
Packit Service |
a2ae7a |
endif
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
failmalloc-run: $(FAILMALLOC_PROG)
|
|
Packit Service |
a2ae7a |
@(echo "Running $(FAILMALLOC_PROG) with failmalloc"; \
|
|
Packit Service |
a2ae7a |
for i in $$(seq $(FAILMALLOC_START) $$(expr $(FAILMALLOC_START) + $(FAILMALLOC_REP) - 1)) ; do \
|
|
Packit Service |
a2ae7a |
resp=$$(libtool --mode=execute env LD_PRELOAD=$(LIBFAILMALLOC) FAILMALLOC_INTERVAL=$$i $(FAILMALLOC_PROG)); \
|
|
Packit Service |
a2ae7a |
status=$$?; \
|
|
Packit Service |
a2ae7a |
if [ $$status -ne 0 -a $$status -ne 2 ] ; then \
|
|
Packit Service |
a2ae7a |
printf "%5d FAIL %3d %s\n" $$i $$status "$$resp" ; \
|
|
Packit Service |
a2ae7a |
elif [ x$(V) = x1 -o $$(( $$i % 100 )) -eq 0 ] ; then \
|
|
Packit Service |
a2ae7a |
printf "%5d PASS %s\n" $$i "$$resp" ; \
|
|
Packit Service |
a2ae7a |
fi \
|
|
Packit Service |
a2ae7a |
done)
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
failmalloc-error:
|
|
Packit Service |
a2ae7a |
@(echo "You need to turn on failmalloc support with --with-failmalloc"; \
|
|
Packit Service |
a2ae7a |
exit 1)
|