[PATCH 1/4][libbacktrace] Test check_PROGRAMS without mmap

Tom de Vries tdevries@suse.de
Fri Nov 23 20:47:00 GMT 2018


[ was: [PATCH 1/2][libbacktrace] Handle realloc returning NULL if size == 0 ]

On Thu, Nov 22, 2018 at 01:35:43PM +0100, Tom de Vries wrote:
> Hi,
> 
> Build and tested on x86_64, with mmap.c replaced by alloc.c to ensure that
> backtrace_vector_release in alloc.c is tested.

Hi,

I came up with a more structural solution.

OK for trunk?

Thanks,
- Tom

[libbacktrace] Test check_PROGRAMS without mmap

When building libbacktrace, we typically use mmapio.c and mmap.c, and don't
build read.c and alloc.c.

Add testcases that use read.c and alloc.c to ensure that we also build and
test those on a typical development setup.

Bootstrapped and reg-tested on x86_64.

2018-11-23  Tom de Vries  <tdevries@suse.de>

	* configure.ac (HAVE_MMAP): New AM_CONDITIONAL.
	* configure: Regenerate.
	* Makefile.am : Add _with_alloc version for each test in
	check_PROGRAMS.
	* Makefile.in: Regenerate.

---
 libbacktrace/Makefile.am  |  45 ++++++++
 libbacktrace/Makefile.in  | 284 +++++++++++++++++++++++++++++++++++++++++++---
 libbacktrace/configure    |  18 ++-
 libbacktrace/configure.ac |   1 +
 4 files changed, 331 insertions(+), 17 deletions(-)

diff --git a/libbacktrace/Makefile.am b/libbacktrace/Makefile.am
index 3c1bd49dd7b..ee47daee415 100644
--- a/libbacktrace/Makefile.am
+++ b/libbacktrace/Makefile.am
@@ -95,11 +95,25 @@ btest_CFLAGS = $(AM_CFLAGS) -g -O
 btest_LDADD = libbacktrace.la
 
 check_PROGRAMS += btest
+if HAVE_MMAP
+libbacktrace_with_alloc = $(libbacktrace_la_OBJECTS) \
+	$(filter-out mmap.lo mmapio.lo,$(libbacktrace_la_LIBADD)) \
+	alloc.lo read.lo
+btest_with_alloc_SOURCES = $(btest_SOURCES)
+btest_with_alloc_CFLAGS = $(btest_CFLAGS)
+btest_with_alloc_LDADD = $(libbacktrace_with_alloc)
+check_PROGRAMS += btest_with_alloc
+endif
 
 stest_SOURCES = stest.c
 stest_LDADD = libbacktrace.la
 
 check_PROGRAMS += stest
+if HAVE_MMAP
+stest_with_alloc_SOURCES = $(stest_SOURCES)
+stest_with_alloc_LDADD = $(libbacktrace_with_alloc)
+check_PROGRAMS += stest_with_alloc
+endif
 
 ztest_SOURCES = ztest.c testlib.c
 ztest_CFLAGS = -DSRCDIR=\"$(srcdir)\"
@@ -111,11 +125,23 @@ endif
 ztest_LDADD += $(CLOCK_GETTIME_LINK)
 
 check_PROGRAMS += ztest
+if HAVE_MMAP
+ztest_with_alloc_SOURCES = $(ztest_SOURCES)
+ztest_with_alloc_CFLAGS = $(ztest_CFLAGS)
+ztest_with_alloc_LDADD = $(libbacktrace_with_alloc) \
+	$(filter-out libbacktrace.la, $(ztest_LDADD))
+check_PROGRAMS += ztest_with_alloc
+endif
 
 edtest_SOURCES = edtest.c edtest2_build.c testlib.c
 edtest_LDADD = libbacktrace.la
 
 check_PROGRAMS += edtest
+if HAVE_MMAP
+edtest_with_alloc_SOURCES = $(edtest_SOURCES)
+edtest_with_alloc_LDADD = $(libbacktrace_with_alloc)
+check_PROGRAMS += edtest_with_alloc
+endif
 
 edtest2_build.c: gen_edtest2_build; @true
 gen_edtest2_build: $(srcdir)/edtest2.c
@@ -126,6 +152,12 @@ gen_edtest2_build: $(srcdir)/edtest2.c
 if HAVE_PTHREAD
 
 check_PROGRAMS += ttest
+if HAVE_MMAP
+ttest_with_alloc_SOURCES = $(ttest_SOURCES)
+ttest_with_alloc_CFLAGS = $(ttest_CFLAGS)
+ttest_with_alloc_LDADD = $(libbacktrace_with_alloc)
+check_PROGRAMS += ttest_with_alloc
+endif
 
 ttest_SOURCES = ttest.c testlib.c
 ttest_CFLAGS = $(AM_CFLAGS) -pthread
@@ -156,6 +188,19 @@ ctesta_LDFLAGS = -Wl,--compress-debug-sections=zlib-gabi
 ctesta_LDADD = libbacktrace.la
 
 check_PROGRAMS += ctestg ctesta
+if HAVE_MMAP
+ctestg_with_alloc_SOURCES = $(ctestg_SOURCES)
+ctestg_with_alloc_CFLAGS = $(ctestg_CFLAGS)
+ctestg_with_alloc_LDFLAGS = $(ctestg_LDFLAGS)
+ctestg_with_alloc_LDADD = $(libbacktrace_with_alloc)
+
+ctesta_with_alloc_SOURCES = $(ctesta_SOURCES)
+ctesta_with_alloc_CFLAGS = $(ctesta_CFLAGS)
+ctesta_with_alloc_LDFLAGS = $(ctesta_LDFLAGS)
+ctesta_with_alloc_LDADD = $(libbacktrace_with_alloc)
+
+check_PROGRAMS += ctestg_with_alloc ctesta_with_alloc
+endif
 
 endif
 
diff --git a/libbacktrace/Makefile.in b/libbacktrace/Makefile.in
index 60a9d887dba..2b984bc127e 100644
--- a/libbacktrace/Makefile.in
+++ b/libbacktrace/Makefile.in
@@ -120,12 +120,24 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 target_triplet = @target@
-check_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3)
-@NATIVE_TRUE@am__append_1 = btest stest ztest edtest
-@HAVE_ZLIB_TRUE@@NATIVE_TRUE@am__append_2 = -lz
-@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am__append_3 = ttest
-@HAVE_OBJCOPY_DEBUGLINK_TRUE@@NATIVE_TRUE@am__append_4 = dtest
-@HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am__append_5 = ctestg ctesta
+check_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3) \
+	$(am__EXEEXT_4) $(am__EXEEXT_5) $(am__EXEEXT_6) \
+	$(am__EXEEXT_7) $(am__EXEEXT_8) $(am__EXEEXT_9) \
+	$(am__EXEEXT_10) $(am__EXEEXT_11) $(am__EXEEXT_12)
+@NATIVE_TRUE@am__append_1 = btest
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__append_2 = btest_with_alloc
+@NATIVE_TRUE@am__append_3 = stest
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__append_4 = stest_with_alloc
+@HAVE_ZLIB_TRUE@@NATIVE_TRUE@am__append_5 = -lz
+@NATIVE_TRUE@am__append_6 = ztest
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__append_7 = ztest_with_alloc
+@NATIVE_TRUE@am__append_8 = edtest
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__append_9 = edtest_with_alloc
+@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am__append_10 = ttest
+@HAVE_MMAP_TRUE@@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am__append_11 = ttest_with_alloc
+@HAVE_OBJCOPY_DEBUGLINK_TRUE@@NATIVE_TRUE@am__append_12 = dtest
+@HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am__append_13 = ctestg ctesta
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__append_14 = ctestg_with_alloc ctesta_with_alloc
 subdir = .
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/../config/cet.m4 \
@@ -158,12 +170,22 @@ AM_V_lt = $(am__v_lt_@AM_V@)
 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
 am__v_lt_0 = --silent
 am__v_lt_1 = 
-@NATIVE_TRUE@am__EXEEXT_1 = btest$(EXEEXT) stest$(EXEEXT) \
-@NATIVE_TRUE@	ztest$(EXEEXT) edtest$(EXEEXT)
-@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am__EXEEXT_2 = ttest$(EXEEXT)
-@HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am__EXEEXT_3 =  \
+@NATIVE_TRUE@am__EXEEXT_1 = btest$(EXEEXT)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__EXEEXT_2 = btest_with_alloc$(EXEEXT)
+@NATIVE_TRUE@am__EXEEXT_3 = stest$(EXEEXT)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__EXEEXT_4 = stest_with_alloc$(EXEEXT)
+@NATIVE_TRUE@am__EXEEXT_5 = ztest$(EXEEXT)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__EXEEXT_6 = ztest_with_alloc$(EXEEXT)
+@NATIVE_TRUE@am__EXEEXT_7 = edtest$(EXEEXT)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__EXEEXT_8 =  \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	edtest_with_alloc$(EXEEXT)
+@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am__EXEEXT_9 = ttest$(EXEEXT)
+@HAVE_MMAP_TRUE@@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am__EXEEXT_10 = ttest_with_alloc$(EXEEXT)
+@HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am__EXEEXT_11 =  \
 @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@	ctestg$(EXEEXT) \
 @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@	ctesta$(EXEEXT)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@am__EXEEXT_12 = ctestg_with_alloc$(EXEEXT) \
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@	ctesta_with_alloc$(EXEEXT)
 @NATIVE_TRUE@am_btest_OBJECTS = btest-btest.$(OBJEXT) \
 @NATIVE_TRUE@	btest-testlib.$(OBJEXT)
 btest_OBJECTS = $(am_btest_OBJECTS)
@@ -171,6 +193,17 @@ btest_OBJECTS = $(am_btest_OBJECTS)
 btest_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(btest_CFLAGS) $(CFLAGS) \
 	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+@NATIVE_TRUE@am__objects_1 = btest_with_alloc-btest.$(OBJEXT) \
+@NATIVE_TRUE@	btest_with_alloc-testlib.$(OBJEXT)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am_btest_with_alloc_OBJECTS =  \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(am__objects_1)
+btest_with_alloc_OBJECTS = $(am_btest_with_alloc_OBJECTS)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@btest_with_alloc_DEPENDENCIES =  \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(libbacktrace_with_alloc)
+btest_with_alloc_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(btest_with_alloc_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+	-o $@
 @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am_ctesta_OBJECTS = ctesta-btest.$(OBJEXT) \
 @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@	ctesta-testlib.$(OBJEXT)
 ctesta_OBJECTS = $(am_ctesta_OBJECTS)
@@ -179,6 +212,15 @@ ctesta_OBJECTS = $(am_ctesta_OBJECTS)
 ctesta_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(ctesta_CFLAGS) $(CFLAGS) \
 	$(ctesta_LDFLAGS) $(LDFLAGS) -o $@
+@HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am__objects_2 = ctesta_with_alloc-btest.$(OBJEXT) \
+@HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@	ctesta_with_alloc-testlib.$(OBJEXT)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@am_ctesta_with_alloc_OBJECTS = $(am__objects_2)
+ctesta_with_alloc_OBJECTS = $(am_ctesta_with_alloc_OBJECTS)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctesta_with_alloc_DEPENDENCIES = $(libbacktrace_with_alloc)
+ctesta_with_alloc_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(ctesta_with_alloc_CFLAGS) $(CFLAGS) \
+	$(ctesta_with_alloc_LDFLAGS) $(LDFLAGS) -o $@
 @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am_ctestg_OBJECTS = ctestg-btest.$(OBJEXT) \
 @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@	ctestg-testlib.$(OBJEXT)
 ctestg_OBJECTS = $(am_ctestg_OBJECTS)
@@ -187,13 +229,35 @@ ctestg_OBJECTS = $(am_ctestg_OBJECTS)
 ctestg_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(ctestg_CFLAGS) $(CFLAGS) \
 	$(ctestg_LDFLAGS) $(LDFLAGS) -o $@
+@HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am__objects_3 = ctestg_with_alloc-btest.$(OBJEXT) \
+@HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@	ctestg_with_alloc-testlib.$(OBJEXT)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@am_ctestg_with_alloc_OBJECTS = $(am__objects_3)
+ctestg_with_alloc_OBJECTS = $(am_ctestg_with_alloc_OBJECTS)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctestg_with_alloc_DEPENDENCIES = $(libbacktrace_with_alloc)
+ctestg_with_alloc_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(ctestg_with_alloc_CFLAGS) $(CFLAGS) \
+	$(ctestg_with_alloc_LDFLAGS) $(LDFLAGS) -o $@
 @NATIVE_TRUE@am_edtest_OBJECTS = edtest.$(OBJEXT) \
 @NATIVE_TRUE@	edtest2_build.$(OBJEXT) testlib.$(OBJEXT)
 edtest_OBJECTS = $(am_edtest_OBJECTS)
 @NATIVE_TRUE@edtest_DEPENDENCIES = libbacktrace.la
+@NATIVE_TRUE@am__objects_4 = edtest.$(OBJEXT) edtest2_build.$(OBJEXT) \
+@NATIVE_TRUE@	testlib.$(OBJEXT)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am_edtest_with_alloc_OBJECTS =  \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(am__objects_4)
+edtest_with_alloc_OBJECTS = $(am_edtest_with_alloc_OBJECTS)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@edtest_with_alloc_DEPENDENCIES =  \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(libbacktrace_with_alloc)
 @NATIVE_TRUE@am_stest_OBJECTS = stest.$(OBJEXT)
 stest_OBJECTS = $(am_stest_OBJECTS)
 @NATIVE_TRUE@stest_DEPENDENCIES = libbacktrace.la
+@NATIVE_TRUE@am__objects_5 = stest.$(OBJEXT)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am_stest_with_alloc_OBJECTS =  \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(am__objects_5)
+stest_with_alloc_OBJECTS = $(am_stest_with_alloc_OBJECTS)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@stest_with_alloc_DEPENDENCIES =  \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(libbacktrace_with_alloc)
 @HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am_ttest_OBJECTS =  \
 @HAVE_PTHREAD_TRUE@@NATIVE_TRUE@	ttest-ttest.$(OBJEXT) \
 @HAVE_PTHREAD_TRUE@@NATIVE_TRUE@	ttest-testlib.$(OBJEXT)
@@ -202,6 +266,15 @@ ttest_OBJECTS = $(am_ttest_OBJECTS)
 ttest_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(ttest_CFLAGS) $(CFLAGS) \
 	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am__objects_6 = ttest_with_alloc-ttest.$(OBJEXT) \
+@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@	ttest_with_alloc-testlib.$(OBJEXT)
+@HAVE_MMAP_TRUE@@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am_ttest_with_alloc_OBJECTS = $(am__objects_6)
+ttest_with_alloc_OBJECTS = $(am_ttest_with_alloc_OBJECTS)
+@HAVE_MMAP_TRUE@@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_with_alloc_DEPENDENCIES = $(libbacktrace_with_alloc)
+ttest_with_alloc_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(ttest_with_alloc_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+	-o $@
 @NATIVE_TRUE@am_ztest_OBJECTS = ztest-ztest.$(OBJEXT) \
 @NATIVE_TRUE@	ztest-testlib.$(OBJEXT)
 ztest_OBJECTS = $(am_ztest_OBJECTS)
@@ -210,6 +283,19 @@ ztest_OBJECTS = $(am_ztest_OBJECTS)
 ztest_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(ztest_CFLAGS) $(CFLAGS) \
 	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+@NATIVE_TRUE@am__objects_7 = ztest_with_alloc-ztest.$(OBJEXT) \
+@NATIVE_TRUE@	ztest_with_alloc-testlib.$(OBJEXT)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@am_ztest_with_alloc_OBJECTS =  \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(am__objects_7)
+ztest_with_alloc_OBJECTS = $(am_ztest_with_alloc_OBJECTS)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@ztest_with_alloc_DEPENDENCIES =  \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(libbacktrace_with_alloc) \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(filter-out libbacktrace.la, \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(ztest_LDADD))
+ztest_with_alloc_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(ztest_with_alloc_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+	-o $@
 AM_V_P = $(am__v_P_@AM_V@)
 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
 am__v_P_0 = false
@@ -244,9 +330,13 @@ am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(libbacktrace_la_SOURCES) $(EXTRA_libbacktrace_la_SOURCES) \
-	$(btest_SOURCES) $(ctesta_SOURCES) $(ctestg_SOURCES) \
-	$(edtest_SOURCES) $(stest_SOURCES) $(ttest_SOURCES) \
-	$(ztest_SOURCES)
+	$(btest_SOURCES) $(btest_with_alloc_SOURCES) $(ctesta_SOURCES) \
+	$(ctesta_with_alloc_SOURCES) $(ctestg_SOURCES) \
+	$(ctestg_with_alloc_SOURCES) $(edtest_SOURCES) \
+	$(edtest_with_alloc_SOURCES) $(stest_SOURCES) \
+	$(stest_with_alloc_SOURCES) $(ttest_SOURCES) \
+	$(ttest_with_alloc_SOURCES) $(ztest_SOURCES) \
+	$(ztest_with_alloc_SOURCES)
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -654,18 +744,37 @@ libbacktrace_la_LIBADD = \
 	$(ALLOC_FILE)
 
 libbacktrace_la_DEPENDENCIES = $(libbacktrace_la_LIBADD)
-TESTS = $(check_PROGRAMS) $(am__append_4)
+TESTS = $(check_PROGRAMS) $(am__append_12)
 @NATIVE_TRUE@btest_SOURCES = btest.c testlib.c
 @NATIVE_TRUE@btest_CFLAGS = $(AM_CFLAGS) -g -O
 @NATIVE_TRUE@btest_LDADD = libbacktrace.la
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@libbacktrace_with_alloc = $(libbacktrace_la_OBJECTS) \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(filter-out mmap.lo mmapio.lo,$(libbacktrace_la_LIBADD)) \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	alloc.lo read.lo
+
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@btest_with_alloc_SOURCES = $(btest_SOURCES)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@btest_with_alloc_CFLAGS = $(btest_CFLAGS)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@btest_with_alloc_LDADD = $(libbacktrace_with_alloc)
 @NATIVE_TRUE@stest_SOURCES = stest.c
 @NATIVE_TRUE@stest_LDADD = libbacktrace.la
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@stest_with_alloc_SOURCES = $(stest_SOURCES)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@stest_with_alloc_LDADD = $(libbacktrace_with_alloc)
 @NATIVE_TRUE@ztest_SOURCES = ztest.c testlib.c
 @NATIVE_TRUE@ztest_CFLAGS = -DSRCDIR=\"$(srcdir)\"
-@NATIVE_TRUE@ztest_LDADD = libbacktrace.la $(am__append_2) \
+@NATIVE_TRUE@ztest_LDADD = libbacktrace.la $(am__append_5) \
 @NATIVE_TRUE@	$(CLOCK_GETTIME_LINK)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@ztest_with_alloc_SOURCES = $(ztest_SOURCES)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@ztest_with_alloc_CFLAGS = $(ztest_CFLAGS)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@ztest_with_alloc_LDADD = $(libbacktrace_with_alloc) \
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@	$(filter-out libbacktrace.la, $(ztest_LDADD))
+
 @NATIVE_TRUE@edtest_SOURCES = edtest.c edtest2_build.c testlib.c
 @NATIVE_TRUE@edtest_LDADD = libbacktrace.la
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@edtest_with_alloc_SOURCES = $(edtest_SOURCES)
+@HAVE_MMAP_TRUE@@NATIVE_TRUE@edtest_with_alloc_LDADD = $(libbacktrace_with_alloc)
+@HAVE_MMAP_TRUE@@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_with_alloc_SOURCES = $(ttest_SOURCES)
+@HAVE_MMAP_TRUE@@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_with_alloc_CFLAGS = $(ttest_CFLAGS)
+@HAVE_MMAP_TRUE@@HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_with_alloc_LDADD = $(libbacktrace_with_alloc)
 @HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_SOURCES = ttest.c testlib.c
 @HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_CFLAGS = $(AM_CFLAGS) -pthread
 @HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_LDADD = libbacktrace.la
@@ -677,6 +786,14 @@ TESTS = $(check_PROGRAMS) $(am__append_4)
 @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@ctesta_CFLAGS = $(AM_CFLAGS) -g
 @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@ctesta_LDFLAGS = -Wl,--compress-debug-sections=zlib-gabi
 @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@ctesta_LDADD = libbacktrace.la
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctestg_with_alloc_SOURCES = $(ctestg_SOURCES)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctestg_with_alloc_CFLAGS = $(ctestg_CFLAGS)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctestg_with_alloc_LDFLAGS = $(ctestg_LDFLAGS)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctestg_with_alloc_LDADD = $(libbacktrace_with_alloc)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctesta_with_alloc_SOURCES = $(ctesta_SOURCES)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctesta_with_alloc_CFLAGS = $(ctesta_CFLAGS)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctesta_with_alloc_LDFLAGS = $(ctesta_LDFLAGS)
+@HAVE_COMPRESSED_DEBUG_TRUE@@HAVE_MMAP_TRUE@@NATIVE_TRUE@ctesta_with_alloc_LDADD = $(libbacktrace_with_alloc)
 
 # We can't use automake's automatic dependency tracking, because it
 # breaks when using bootstrap-lean.  Automatic dependency tracking
@@ -780,30 +897,58 @@ btest$(EXEEXT): $(btest_OBJECTS) $(btest_DEPENDENCIES) $(EXTRA_btest_DEPENDENCIE
 	@rm -f btest$(EXEEXT)
 	$(AM_V_CCLD)$(btest_LINK) $(btest_OBJECTS) $(btest_LDADD) $(LIBS)
 
+btest_with_alloc$(EXEEXT): $(btest_with_alloc_OBJECTS) $(btest_with_alloc_DEPENDENCIES) $(EXTRA_btest_with_alloc_DEPENDENCIES) 
+	@rm -f btest_with_alloc$(EXEEXT)
+	$(AM_V_CCLD)$(btest_with_alloc_LINK) $(btest_with_alloc_OBJECTS) $(btest_with_alloc_LDADD) $(LIBS)
+
 ctesta$(EXEEXT): $(ctesta_OBJECTS) $(ctesta_DEPENDENCIES) $(EXTRA_ctesta_DEPENDENCIES) 
 	@rm -f ctesta$(EXEEXT)
 	$(AM_V_CCLD)$(ctesta_LINK) $(ctesta_OBJECTS) $(ctesta_LDADD) $(LIBS)
 
+ctesta_with_alloc$(EXEEXT): $(ctesta_with_alloc_OBJECTS) $(ctesta_with_alloc_DEPENDENCIES) $(EXTRA_ctesta_with_alloc_DEPENDENCIES) 
+	@rm -f ctesta_with_alloc$(EXEEXT)
+	$(AM_V_CCLD)$(ctesta_with_alloc_LINK) $(ctesta_with_alloc_OBJECTS) $(ctesta_with_alloc_LDADD) $(LIBS)
+
 ctestg$(EXEEXT): $(ctestg_OBJECTS) $(ctestg_DEPENDENCIES) $(EXTRA_ctestg_DEPENDENCIES) 
 	@rm -f ctestg$(EXEEXT)
 	$(AM_V_CCLD)$(ctestg_LINK) $(ctestg_OBJECTS) $(ctestg_LDADD) $(LIBS)
 
+ctestg_with_alloc$(EXEEXT): $(ctestg_with_alloc_OBJECTS) $(ctestg_with_alloc_DEPENDENCIES) $(EXTRA_ctestg_with_alloc_DEPENDENCIES) 
+	@rm -f ctestg_with_alloc$(EXEEXT)
+	$(AM_V_CCLD)$(ctestg_with_alloc_LINK) $(ctestg_with_alloc_OBJECTS) $(ctestg_with_alloc_LDADD) $(LIBS)
+
 edtest$(EXEEXT): $(edtest_OBJECTS) $(edtest_DEPENDENCIES) $(EXTRA_edtest_DEPENDENCIES) 
 	@rm -f edtest$(EXEEXT)
 	$(AM_V_CCLD)$(LINK) $(edtest_OBJECTS) $(edtest_LDADD) $(LIBS)
 
+edtest_with_alloc$(EXEEXT): $(edtest_with_alloc_OBJECTS) $(edtest_with_alloc_DEPENDENCIES) $(EXTRA_edtest_with_alloc_DEPENDENCIES) 
+	@rm -f edtest_with_alloc$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(edtest_with_alloc_OBJECTS) $(edtest_with_alloc_LDADD) $(LIBS)
+
 stest$(EXEEXT): $(stest_OBJECTS) $(stest_DEPENDENCIES) $(EXTRA_stest_DEPENDENCIES) 
 	@rm -f stest$(EXEEXT)
 	$(AM_V_CCLD)$(LINK) $(stest_OBJECTS) $(stest_LDADD) $(LIBS)
 
+stest_with_alloc$(EXEEXT): $(stest_with_alloc_OBJECTS) $(stest_with_alloc_DEPENDENCIES) $(EXTRA_stest_with_alloc_DEPENDENCIES) 
+	@rm -f stest_with_alloc$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(stest_with_alloc_OBJECTS) $(stest_with_alloc_LDADD) $(LIBS)
+
 ttest$(EXEEXT): $(ttest_OBJECTS) $(ttest_DEPENDENCIES) $(EXTRA_ttest_DEPENDENCIES) 
 	@rm -f ttest$(EXEEXT)
 	$(AM_V_CCLD)$(ttest_LINK) $(ttest_OBJECTS) $(ttest_LDADD) $(LIBS)
 
+ttest_with_alloc$(EXEEXT): $(ttest_with_alloc_OBJECTS) $(ttest_with_alloc_DEPENDENCIES) $(EXTRA_ttest_with_alloc_DEPENDENCIES) 
+	@rm -f ttest_with_alloc$(EXEEXT)
+	$(AM_V_CCLD)$(ttest_with_alloc_LINK) $(ttest_with_alloc_OBJECTS) $(ttest_with_alloc_LDADD) $(LIBS)
+
 ztest$(EXEEXT): $(ztest_OBJECTS) $(ztest_DEPENDENCIES) $(EXTRA_ztest_DEPENDENCIES) 
 	@rm -f ztest$(EXEEXT)
 	$(AM_V_CCLD)$(ztest_LINK) $(ztest_OBJECTS) $(ztest_LDADD) $(LIBS)
 
+ztest_with_alloc$(EXEEXT): $(ztest_with_alloc_OBJECTS) $(ztest_with_alloc_DEPENDENCIES) $(EXTRA_ztest_with_alloc_DEPENDENCIES) 
+	@rm -f ztest_with_alloc$(EXEEXT)
+	$(AM_V_CCLD)$(ztest_with_alloc_LINK) $(ztest_with_alloc_OBJECTS) $(ztest_with_alloc_LDADD) $(LIBS)
+
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
 
@@ -831,6 +976,18 @@ btest-testlib.o: testlib.c
 btest-testlib.obj: testlib.c
 	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(btest_CFLAGS) $(CFLAGS) -c -o btest-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
 
+btest_with_alloc-btest.o: btest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(btest_with_alloc_CFLAGS) $(CFLAGS) -c -o btest_with_alloc-btest.o `test -f 'btest.c' || echo '$(srcdir)/'`btest.c
+
+btest_with_alloc-btest.obj: btest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(btest_with_alloc_CFLAGS) $(CFLAGS) -c -o btest_with_alloc-btest.obj `if test -f 'btest.c'; then $(CYGPATH_W) 'btest.c'; else $(CYGPATH_W) '$(srcdir)/btest.c'; fi`
+
+btest_with_alloc-testlib.o: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(btest_with_alloc_CFLAGS) $(CFLAGS) -c -o btest_with_alloc-testlib.o `test -f 'testlib.c' || echo '$(srcdir)/'`testlib.c
+
+btest_with_alloc-testlib.obj: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(btest_with_alloc_CFLAGS) $(CFLAGS) -c -o btest_with_alloc-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
+
 ctesta-btest.o: btest.c
 	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctesta_CFLAGS) $(CFLAGS) -c -o ctesta-btest.o `test -f 'btest.c' || echo '$(srcdir)/'`btest.c
 
@@ -843,6 +1000,18 @@ ctesta-testlib.o: testlib.c
 ctesta-testlib.obj: testlib.c
 	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctesta_CFLAGS) $(CFLAGS) -c -o ctesta-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
 
+ctesta_with_alloc-btest.o: btest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctesta_with_alloc_CFLAGS) $(CFLAGS) -c -o ctesta_with_alloc-btest.o `test -f 'btest.c' || echo '$(srcdir)/'`btest.c
+
+ctesta_with_alloc-btest.obj: btest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctesta_with_alloc_CFLAGS) $(CFLAGS) -c -o ctesta_with_alloc-btest.obj `if test -f 'btest.c'; then $(CYGPATH_W) 'btest.c'; else $(CYGPATH_W) '$(srcdir)/btest.c'; fi`
+
+ctesta_with_alloc-testlib.o: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctesta_with_alloc_CFLAGS) $(CFLAGS) -c -o ctesta_with_alloc-testlib.o `test -f 'testlib.c' || echo '$(srcdir)/'`testlib.c
+
+ctesta_with_alloc-testlib.obj: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctesta_with_alloc_CFLAGS) $(CFLAGS) -c -o ctesta_with_alloc-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
+
 ctestg-btest.o: btest.c
 	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctestg_CFLAGS) $(CFLAGS) -c -o ctestg-btest.o `test -f 'btest.c' || echo '$(srcdir)/'`btest.c
 
@@ -855,6 +1024,18 @@ ctestg-testlib.o: testlib.c
 ctestg-testlib.obj: testlib.c
 	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctestg_CFLAGS) $(CFLAGS) -c -o ctestg-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
 
+ctestg_with_alloc-btest.o: btest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctestg_with_alloc_CFLAGS) $(CFLAGS) -c -o ctestg_with_alloc-btest.o `test -f 'btest.c' || echo '$(srcdir)/'`btest.c
+
+ctestg_with_alloc-btest.obj: btest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctestg_with_alloc_CFLAGS) $(CFLAGS) -c -o ctestg_with_alloc-btest.obj `if test -f 'btest.c'; then $(CYGPATH_W) 'btest.c'; else $(CYGPATH_W) '$(srcdir)/btest.c'; fi`
+
+ctestg_with_alloc-testlib.o: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctestg_with_alloc_CFLAGS) $(CFLAGS) -c -o ctestg_with_alloc-testlib.o `test -f 'testlib.c' || echo '$(srcdir)/'`testlib.c
+
+ctestg_with_alloc-testlib.obj: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ctestg_with_alloc_CFLAGS) $(CFLAGS) -c -o ctestg_with_alloc-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
+
 ttest-ttest.o: ttest.c
 	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ttest_CFLAGS) $(CFLAGS) -c -o ttest-ttest.o `test -f 'ttest.c' || echo '$(srcdir)/'`ttest.c
 
@@ -867,6 +1048,18 @@ ttest-testlib.o: testlib.c
 ttest-testlib.obj: testlib.c
 	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ttest_CFLAGS) $(CFLAGS) -c -o ttest-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
 
+ttest_with_alloc-ttest.o: ttest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ttest_with_alloc_CFLAGS) $(CFLAGS) -c -o ttest_with_alloc-ttest.o `test -f 'ttest.c' || echo '$(srcdir)/'`ttest.c
+
+ttest_with_alloc-ttest.obj: ttest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ttest_with_alloc_CFLAGS) $(CFLAGS) -c -o ttest_with_alloc-ttest.obj `if test -f 'ttest.c'; then $(CYGPATH_W) 'ttest.c'; else $(CYGPATH_W) '$(srcdir)/ttest.c'; fi`
+
+ttest_with_alloc-testlib.o: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ttest_with_alloc_CFLAGS) $(CFLAGS) -c -o ttest_with_alloc-testlib.o `test -f 'testlib.c' || echo '$(srcdir)/'`testlib.c
+
+ttest_with_alloc-testlib.obj: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ttest_with_alloc_CFLAGS) $(CFLAGS) -c -o ttest_with_alloc-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
+
 ztest-ztest.o: ztest.c
 	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ztest_CFLAGS) $(CFLAGS) -c -o ztest-ztest.o `test -f 'ztest.c' || echo '$(srcdir)/'`ztest.c
 
@@ -879,6 +1072,18 @@ ztest-testlib.o: testlib.c
 ztest-testlib.obj: testlib.c
 	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ztest_CFLAGS) $(CFLAGS) -c -o ztest-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
 
+ztest_with_alloc-ztest.o: ztest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ztest_with_alloc_CFLAGS) $(CFLAGS) -c -o ztest_with_alloc-ztest.o `test -f 'ztest.c' || echo '$(srcdir)/'`ztest.c
+
+ztest_with_alloc-ztest.obj: ztest.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ztest_with_alloc_CFLAGS) $(CFLAGS) -c -o ztest_with_alloc-ztest.obj `if test -f 'ztest.c'; then $(CYGPATH_W) 'ztest.c'; else $(CYGPATH_W) '$(srcdir)/ztest.c'; fi`
+
+ztest_with_alloc-testlib.o: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ztest_with_alloc_CFLAGS) $(CFLAGS) -c -o ztest_with_alloc-testlib.o `test -f 'testlib.c' || echo '$(srcdir)/'`testlib.c
+
+ztest_with_alloc-testlib.obj: testlib.c
+	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ztest_with_alloc_CFLAGS) $(CFLAGS) -c -o ztest_with_alloc-testlib.obj `if test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) '$(srcdir)/testlib.c'; fi`
+
 mostlyclean-libtool:
 	-rm -f *.lo
 
@@ -1095,6 +1300,13 @@ btest.log: btest$(EXEEXT)
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+btest_with_alloc.log: btest_with_alloc$(EXEEXT)
+	@p='btest_with_alloc$(EXEEXT)'; \
+	b='btest_with_alloc'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 stest.log: stest$(EXEEXT)
 	@p='stest$(EXEEXT)'; \
 	b='stest'; \
@@ -1102,6 +1314,13 @@ stest.log: stest$(EXEEXT)
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+stest_with_alloc.log: stest_with_alloc$(EXEEXT)
+	@p='stest_with_alloc$(EXEEXT)'; \
+	b='stest_with_alloc'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 ztest.log: ztest$(EXEEXT)
 	@p='ztest$(EXEEXT)'; \
 	b='ztest'; \
@@ -1109,6 +1328,13 @@ ztest.log: ztest$(EXEEXT)
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+ztest_with_alloc.log: ztest_with_alloc$(EXEEXT)
+	@p='ztest_with_alloc$(EXEEXT)'; \
+	b='ztest_with_alloc'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 edtest.log: edtest$(EXEEXT)
 	@p='edtest$(EXEEXT)'; \
 	b='edtest'; \
@@ -1116,6 +1342,13 @@ edtest.log: edtest$(EXEEXT)
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+edtest_with_alloc.log: edtest_with_alloc$(EXEEXT)
+	@p='edtest_with_alloc$(EXEEXT)'; \
+	b='edtest_with_alloc'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 ttest.log: ttest$(EXEEXT)
 	@p='ttest$(EXEEXT)'; \
 	b='ttest'; \
@@ -1123,6 +1356,13 @@ ttest.log: ttest$(EXEEXT)
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+ttest_with_alloc.log: ttest_with_alloc$(EXEEXT)
+	@p='ttest_with_alloc$(EXEEXT)'; \
+	b='ttest_with_alloc'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 ctestg.log: ctestg$(EXEEXT)
 	@p='ctestg$(EXEEXT)'; \
 	b='ctestg'; \
@@ -1137,6 +1377,20 @@ ctesta.log: ctesta$(EXEEXT)
 	--log-file $$b.log --trs-file $$b.trs \
 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
 	"$$tst" $(AM_TESTS_FD_REDIRECT)
+ctestg_with_alloc.log: ctestg_with_alloc$(EXEEXT)
+	@p='ctestg_with_alloc$(EXEEXT)'; \
+	b='ctestg_with_alloc'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
+ctesta_with_alloc.log: ctesta_with_alloc$(EXEEXT)
+	@p='ctesta_with_alloc$(EXEEXT)'; \
+	b='ctesta_with_alloc'; \
+	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+	--log-file $$b.log --trs-file $$b.trs \
+	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+	"$$tst" $(AM_TESTS_FD_REDIRECT)
 dtest.log: dtest
 	@p='dtest'; \
 	b='dtest'; \
diff --git a/libbacktrace/configure b/libbacktrace/configure
index c316dde1ad2..ad2e27cbc62 100755
--- a/libbacktrace/configure
+++ b/libbacktrace/configure
@@ -646,6 +646,8 @@ HAVE_PTHREAD_FALSE
 HAVE_PTHREAD_TRUE
 PTHREAD_CFLAGS
 CLOCK_GETTIME_LINK
+HAVE_MMAP_FALSE
+HAVE_MMAP_TRUE
 BACKTRACE_USES_MALLOC
 ALLOC_FILE
 VIEW_FILE
@@ -11440,7 +11442,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11443 "configure"
+#line 11445 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -11546,7 +11548,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11549 "configure"
+#line 11551 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -12956,6 +12958,14 @@ if test "$ALLOC_FILE" = "alloc.lo"; then
   BACKTRACE_USES_MALLOC=1
 fi
 
+ if test "$have_mmap" == "yes"; then
+  HAVE_MMAP_TRUE=
+  HAVE_MMAP_FALSE='#'
+else
+  HAVE_MMAP_TRUE='#'
+  HAVE_MMAP_FALSE=
+fi
+
 
 # Check for dl_iterate_phdr.
 for ac_header in link.h
@@ -13558,6 +13568,10 @@ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${HAVE_MMAP_TRUE}" && test -z "${HAVE_MMAP_FALSE}"; then
+  as_fn_error $? "conditional \"HAVE_MMAP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${HAVE_PTHREAD_TRUE}" && test -z "${HAVE_PTHREAD_FALSE}"; then
   as_fn_error $? "conditional \"HAVE_PTHREAD\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
diff --git a/libbacktrace/configure.ac b/libbacktrace/configure.ac
index c75fc9d7ebc..4eb9b06d781 100644
--- a/libbacktrace/configure.ac
+++ b/libbacktrace/configure.ac
@@ -319,6 +319,7 @@ if test "$ALLOC_FILE" = "alloc.lo"; then
   BACKTRACE_USES_MALLOC=1
 fi
 AC_SUBST(BACKTRACE_USES_MALLOC)
+AM_CONDITIONAL(HAVE_MMAP, test "$have_mmap" == "yes")
 
 # Check for dl_iterate_phdr.
 AC_CHECK_HEADERS(link.h)



More information about the Gcc-patches mailing list