aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@chromium.org>2016-01-25 19:27:56 -0500
committerMike Frysinger <vapier@chromium.org>2016-01-25 19:27:56 -0500
commitf820ead9015e9cecb87fea62154b3f33da1baf20 (patch)
tree26cada78ec678f1f94ea3b99fe05dd870f26b013
parentbuild: clean up .dwo files (diff)
downloadbreakpad-f820ead9015e9cecb87fea62154b3f33da1baf20.tar.xz
test: allow use of system gmock/gtest libs
Some systems provide prebuilt copies of gmock/gtest (such as Chromium OS). Add a configure flag so they can take advantage of that. This allows for a smaller checkout as they don't need to include the full testing/ tree. BUG=chromium:579384 TEST=`make check` passes w/--enable-system-test-libs TEST=`make check` passes w/--disable-system-test-libs R=thestig@chromium.org Review URL: https://codereview.chromium.org/1638653002 .
-rw-r--r--Makefile.am10
-rw-r--r--Makefile.in132
-rwxr-xr-xconfigure257
-rw-r--r--configure.ac33
-rw-r--r--src/breakpad_googletest_includes.h4
5 files changed, 385 insertions, 51 deletions
diff --git a/Makefile.am b/Makefile.am
index e0a8b6ae..3fb2224d 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -113,12 +113,17 @@ pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA =
## Common test logic
+if SYSTEM_TEST_LIBS
+TEST_CFLAGS = $(GTEST_CFLAGS) $(GMOCK_CFLAGS)
+TEST_LIBS = $(GTEST_LIBS) -lgtest_main $(GMOCK_LIBS)
+else
TEST_CFLAGS = \
-I$(top_srcdir)/src/testing/include \
-I$(top_srcdir)/src/testing/gtest/include \
-I$(top_srcdir)/src/testing/gtest \
-I$(top_srcdir)/src/testing
TEST_LIBS = src/testing/libtesting.a
+endif
## Libraries
check_LIBRARIES =
@@ -131,12 +136,14 @@ CLEANFILES =
check_LIBRARIES += src/testing/libtesting.a
+if !SYSTEM_TEST_LIBS
src_testing_libtesting_a_SOURCES = \
src/testing/gtest/src/gtest-all.cc \
src/testing/gtest/src/gtest_main.cc \
src/testing/src/gmock-all.cc
src_testing_libtesting_a_CPPFLAGS = \
$(AM_CPPFLAGS) $(TEST_CFLAGS)
+endif
if !DISABLE_PROCESSOR
lib_LIBRARIES += src/libbreakpad.a
@@ -519,7 +526,8 @@ src_client_linux_linux_client_unittest_LDFLAGS += \
endif
src_client_linux_linux_client_unittest_LDADD = \
- src/client/linux/linux_client_unittest_shlib
+ src/client/linux/linux_client_unittest_shlib \
+ $(TEST_LIBS)
src_client_linux_linux_client_unittest_DEPENDENCIES = \
src/client/linux/linux_client_unittest_shlib
diff --git a/Makefile.in b/Makefile.in
index be1e5189..f87c6745 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -487,9 +487,13 @@ am__src_libbreakpad_a_SOURCES_DIST = \
src_libbreakpad_a_OBJECTS = $(am_src_libbreakpad_a_OBJECTS)
src_testing_libtesting_a_AR = $(AR) $(ARFLAGS)
src_testing_libtesting_a_LIBADD =
-am_src_testing_libtesting_a_OBJECTS = src/testing/gtest/src/src_testing_libtesting_a-gtest-all.$(OBJEXT) \
- src/testing/gtest/src/src_testing_libtesting_a-gtest_main.$(OBJEXT) \
- src/testing/src/src_testing_libtesting_a-gmock-all.$(OBJEXT)
+am__src_testing_libtesting_a_SOURCES_DIST = \
+ src/testing/gtest/src/gtest-all.cc \
+ src/testing/gtest/src/gtest_main.cc \
+ src/testing/src/gmock-all.cc
+@SYSTEM_TEST_LIBS_FALSE@am_src_testing_libtesting_a_OBJECTS = src/testing/gtest/src/src_testing_libtesting_a-gtest-all.$(OBJEXT) \
+@SYSTEM_TEST_LIBS_FALSE@ src/testing/gtest/src/src_testing_libtesting_a-gtest_main.$(OBJEXT) \
+@SYSTEM_TEST_LIBS_FALSE@ src/testing/src/src_testing_libtesting_a-gmock-all.$(OBJEXT)
src_testing_libtesting_a_OBJECTS = \
$(am_src_testing_libtesting_a_OBJECTS)
src_third_party_libdisasm_libdisasm_a_AR = $(AR) $(ARFLAGS)
@@ -584,6 +588,10 @@ PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
am_src_client_linux_linux_client_unittest_OBJECTS =
src_client_linux_linux_client_unittest_OBJECTS = \
$(am_src_client_linux_linux_client_unittest_OBJECTS)
+am__DEPENDENCIES_1 =
+@SYSTEM_TEST_LIBS_FALSE@am__DEPENDENCIES_2 = src/testing/libtesting.a
+@SYSTEM_TEST_LIBS_TRUE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) \
+@SYSTEM_TEST_LIBS_TRUE@ $(am__DEPENDENCIES_1)
src_client_linux_linux_client_unittest_LINK = $(CCLD) $(AM_CFLAGS) \
$(CFLAGS) $(src_client_linux_linux_client_unittest_LDFLAGS) \
$(LDFLAGS) -o $@
@@ -613,9 +621,9 @@ am__src_client_linux_linux_client_unittest_shlib_SOURCES_DIST = \
src/common/android/breakpad_getcontext.S \
src/client/linux/microdump_writer/microdump_writer_unittest.cc \
src/common/android/breakpad_getcontext_unittest.cc
-am__objects_2 = src/testing/gtest/src/src_client_linux_linux_client_unittest_shlib-gtest-all.$(OBJEXT) \
- src/testing/gtest/src/src_client_linux_linux_client_unittest_shlib-gtest_main.$(OBJEXT) \
- src/testing/src/src_client_linux_linux_client_unittest_shlib-gmock-all.$(OBJEXT)
+@SYSTEM_TEST_LIBS_FALSE@am__objects_2 = src/testing/gtest/src/src_client_linux_linux_client_unittest_shlib-gtest-all.$(OBJEXT) \
+@SYSTEM_TEST_LIBS_FALSE@ src/testing/gtest/src/src_client_linux_linux_client_unittest_shlib-gtest_main.$(OBJEXT) \
+@SYSTEM_TEST_LIBS_FALSE@ src/testing/src/src_client_linux_linux_client_unittest_shlib-gmock-all.$(OBJEXT)
@ANDROID_HOST_TRUE@@LINUX_HOST_TRUE@am__objects_3 = src/common/android/src_client_linux_linux_client_unittest_shlib-breakpad_getcontext.$(OBJEXT)
@ANDROID_HOST_TRUE@@LINUX_HOST_TRUE@am__objects_4 = src/common/android/src_client_linux_linux_client_unittest_shlib-breakpad_getcontext_unittest.$(OBJEXT)
@LINUX_HOST_TRUE@am_src_client_linux_linux_client_unittest_shlib_OBJECTS = \
@@ -647,7 +655,6 @@ am__objects_2 = src/testing/gtest/src/src_client_linux_linux_client_unittest_shl
@LINUX_HOST_TRUE@ $(am__objects_4)
src_client_linux_linux_client_unittest_shlib_OBJECTS = \
$(am_src_client_linux_linux_client_unittest_shlib_OBJECTS)
-am__DEPENDENCIES_1 =
src_client_linux_linux_client_unittest_shlib_LINK = $(CXXLD) \
$(AM_CXXFLAGS) $(CXXFLAGS) \
$(src_client_linux_linux_client_unittest_shlib_LDFLAGS) \
@@ -746,7 +753,7 @@ am__src_common_dumper_unittest_SOURCES_DIST = \
src_common_dumper_unittest_OBJECTS = \
$(am_src_common_dumper_unittest_OBJECTS)
@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@src_common_dumper_unittest_DEPENDENCIES = \
-@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@ $(TEST_LIBS) \
+@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@ $(am__DEPENDENCIES_2) \
@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@ $(am__DEPENDENCIES_1) \
@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@ $(am__DEPENDENCIES_1)
am__src_common_mac_macho_reader_unittest_SOURCES_DIST = \
@@ -788,7 +795,7 @@ am__src_common_mac_macho_reader_unittest_SOURCES_DIST = \
src_common_mac_macho_reader_unittest_OBJECTS = \
$(am_src_common_mac_macho_reader_unittest_OBJECTS)
@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@src_common_mac_macho_reader_unittest_DEPENDENCIES = \
-@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@ $(TEST_LIBS) \
+@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@ $(am__DEPENDENCIES_2) \
@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@ $(am__DEPENDENCIES_1) \
@DISABLE_TOOLS_FALSE@@LINUX_HOST_TRUE@ $(am__DEPENDENCIES_1)
am__src_common_test_assembler_unittest_SOURCES_DIST = \
@@ -799,7 +806,8 @@ am__src_common_test_assembler_unittest_SOURCES_DIST = \
src_common_test_assembler_unittest_OBJECTS = \
$(am_src_common_test_assembler_unittest_OBJECTS)
@DISABLE_PROCESSOR_FALSE@src_common_test_assembler_unittest_DEPENDENCIES = \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_address_map_unittest_SOURCES_DIST = \
src/processor/address_map_unittest.cc
@@ -818,7 +826,8 @@ src_processor_basic_source_line_resolver_unittest_OBJECTS = $(am_src_processor_b
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/logging.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/source_line_resolver_base.o \
-@DISABLE_PROCESSOR_FALSE@ src/processor/tokenize.o $(TEST_LIBS) \
+@DISABLE_PROCESSOR_FALSE@ src/processor/tokenize.o \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_cfi_frame_info_unittest_SOURCES_DIST = \
@@ -830,7 +839,8 @@ src_processor_cfi_frame_info_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@ src/processor/cfi_frame_info.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/logging.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_contained_range_map_unittest_SOURCES_DIST = \
src/processor/contained_range_map_unittest.cc
@@ -848,7 +858,8 @@ src_processor_disassembler_x86_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@src_processor_disassembler_x86_unittest_DEPENDENCIES = \
@DISABLE_PROCESSOR_FALSE@ src/processor/disassembler_x86.o \
@DISABLE_PROCESSOR_FALSE@ src/third_party/libdisasm/libdisasm.a \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_exploitability_unittest_SOURCES_DIST = \
src/processor/exploitability_unittest.cc
@@ -889,7 +900,8 @@ src_processor_exploitability_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@ src/processor/symbolic_constants_win.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/tokenize.o \
@DISABLE_PROCESSOR_FALSE@ src/third_party/libdisasm/libdisasm.a \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_fast_source_line_resolver_unittest_SOURCES_DIST = \
src/processor/fast_source_line_resolver_unittest.cc
@@ -903,7 +915,8 @@ src_processor_fast_source_line_resolver_unittest_OBJECTS = $(am_src_processor_fa
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/logging.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/source_line_resolver_base.o \
-@DISABLE_PROCESSOR_FALSE@ src/processor/tokenize.o $(TEST_LIBS) \
+@DISABLE_PROCESSOR_FALSE@ src/processor/tokenize.o \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_map_serializers_unittest_SOURCES_DIST = \
@@ -914,7 +927,8 @@ src_processor_map_serializers_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@src_processor_map_serializers_unittest_DEPENDENCIES = \
@DISABLE_PROCESSOR_FALSE@ src/processor/logging.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_microdump_processor_unittest_SOURCES_DIST = \
src/processor/microdump_processor_unittest.cc
@@ -946,7 +960,8 @@ src_processor_microdump_processor_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@ src/processor/stackwalker_ppc64.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/stackwalker_sparc.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/stackwalker_x86.o \
-@DISABLE_PROCESSOR_FALSE@ src/processor/tokenize.o $(TEST_LIBS) \
+@DISABLE_PROCESSOR_FALSE@ src/processor/tokenize.o \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_microdump_stackwalk_SOURCES_DIST = \
@@ -1035,7 +1050,8 @@ src_processor_minidump_processor_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@ src/processor/symbolic_constants_win.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/tokenize.o \
@DISABLE_PROCESSOR_FALSE@ src/third_party/libdisasm/libdisasm.a \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_minidump_stackwalk_SOURCES_DIST = \
src/processor/minidump_stackwalk.cc
@@ -1094,7 +1110,8 @@ src_processor_minidump_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@ src/processor/minidump.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/proc_maps_linux.o \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_pathname_stripper_unittest_SOURCES_DIST = \
src/processor/pathname_stripper_unittest.cc
@@ -1126,7 +1143,8 @@ src_processor_proc_maps_linux_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@ src/processor/logging.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
@DISABLE_PROCESSOR_FALSE@ src/third_party/libdisasm/libdisasm.a \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_range_map_unittest_SOURCES_DIST = \
src/processor/range_map_unittest.cc
@@ -1146,7 +1164,8 @@ am__src_processor_stackwalker_address_list_unittest_SOURCES_DIST = \
src_processor_stackwalker_address_list_unittest_OBJECTS = \
$(am_src_processor_stackwalker_address_list_unittest_OBJECTS)
@DISABLE_PROCESSOR_FALSE@src_processor_stackwalker_address_list_unittest_DEPENDENCIES = \
-@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a $(TEST_LIBS) \
+@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_stackwalker_amd64_unittest_SOURCES_DIST = \
@@ -1157,7 +1176,8 @@ am__src_processor_stackwalker_amd64_unittest_SOURCES_DIST = \
src_processor_stackwalker_amd64_unittest_OBJECTS = \
$(am_src_processor_stackwalker_amd64_unittest_OBJECTS)
@DISABLE_PROCESSOR_FALSE@src_processor_stackwalker_amd64_unittest_DEPENDENCIES = \
-@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a $(TEST_LIBS) \
+@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_stackwalker_arm64_unittest_SOURCES_DIST = \
@@ -1168,7 +1188,8 @@ am__src_processor_stackwalker_arm64_unittest_SOURCES_DIST = \
src_processor_stackwalker_arm64_unittest_OBJECTS = \
$(am_src_processor_stackwalker_arm64_unittest_OBJECTS)
@DISABLE_PROCESSOR_FALSE@src_processor_stackwalker_arm64_unittest_DEPENDENCIES = \
-@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a $(TEST_LIBS) \
+@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_stackwalker_arm_unittest_SOURCES_DIST = \
@@ -1179,7 +1200,8 @@ am__src_processor_stackwalker_arm_unittest_SOURCES_DIST = \
src_processor_stackwalker_arm_unittest_OBJECTS = \
$(am_src_processor_stackwalker_arm_unittest_OBJECTS)
@DISABLE_PROCESSOR_FALSE@src_processor_stackwalker_arm_unittest_DEPENDENCIES = \
-@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a $(TEST_LIBS) \
+@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_stackwalker_mips_unittest_SOURCES_DIST = \
@@ -1190,7 +1212,8 @@ am__src_processor_stackwalker_mips_unittest_SOURCES_DIST = \
src_processor_stackwalker_mips_unittest_OBJECTS = \
$(am_src_processor_stackwalker_mips_unittest_OBJECTS)
@DISABLE_PROCESSOR_FALSE@src_processor_stackwalker_mips_unittest_DEPENDENCIES = \
-@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a $(TEST_LIBS) \
+@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_stackwalker_selftest_SOURCES_DIST = \
@@ -1234,7 +1257,8 @@ am__src_processor_stackwalker_x86_unittest_SOURCES_DIST = \
src_processor_stackwalker_x86_unittest_OBJECTS = \
$(am_src_processor_stackwalker_x86_unittest_OBJECTS)
@DISABLE_PROCESSOR_FALSE@src_processor_stackwalker_x86_unittest_DEPENDENCIES = \
-@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a $(TEST_LIBS) \
+@DISABLE_PROCESSOR_FALSE@ src/libbreakpad.a \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_static_address_map_unittest_SOURCES_DIST = \
@@ -1245,7 +1269,8 @@ src_processor_static_address_map_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@src_processor_static_address_map_unittest_DEPENDENCIES = \
@DISABLE_PROCESSOR_FALSE@ src/processor/logging.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_static_contained_range_map_unittest_SOURCES_DIST = \
src/processor/static_contained_range_map_unittest.cc
@@ -1254,7 +1279,8 @@ src_processor_static_contained_range_map_unittest_OBJECTS = $(am_src_processor_s
@DISABLE_PROCESSOR_FALSE@src_processor_static_contained_range_map_unittest_DEPENDENCIES = \
@DISABLE_PROCESSOR_FALSE@ src/processor/logging.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_static_map_unittest_SOURCES_DIST = \
src/processor/static_map_unittest.cc
@@ -1264,7 +1290,8 @@ src_processor_static_map_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@src_processor_static_map_unittest_DEPENDENCIES = \
@DISABLE_PROCESSOR_FALSE@ src/processor/logging.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_static_range_map_unittest_SOURCES_DIST = \
src/processor/static_range_map_unittest.cc
@@ -1274,7 +1301,8 @@ src_processor_static_range_map_unittest_OBJECTS = \
@DISABLE_PROCESSOR_FALSE@src_processor_static_range_map_unittest_DEPENDENCIES = \
@DISABLE_PROCESSOR_FALSE@ src/processor/logging.o \
@DISABLE_PROCESSOR_FALSE@ src/processor/pathname_stripper.o \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_processor_synth_minidump_unittest_SOURCES_DIST = \
src/common/test_assembler.cc src/common/test_assembler.h \
@@ -1286,7 +1314,8 @@ am__src_processor_synth_minidump_unittest_SOURCES_DIST = \
src_processor_synth_minidump_unittest_OBJECTS = \
$(am_src_processor_synth_minidump_unittest_OBJECTS)
@DISABLE_PROCESSOR_FALSE@src_processor_synth_minidump_unittest_DEPENDENCIES = \
-@DISABLE_PROCESSOR_FALSE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_2) \
+@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1) \
@DISABLE_PROCESSOR_FALSE@ $(am__DEPENDENCIES_1)
am__src_tools_linux_core2md_core2md_SOURCES_DIST = \
src/tools/linux/core2md/core2md.cc
@@ -1344,7 +1373,7 @@ am__src_tools_linux_md2core_minidump_2_core_unittest_SOURCES_DIST = \
@LINUX_HOST_TRUE@am_src_tools_linux_md2core_minidump_2_core_unittest_OBJECTS = src/tools/linux/md2core/src_tools_linux_md2core_minidump_2_core_unittest-minidump_memory_range_unittest.$(OBJEXT)
src_tools_linux_md2core_minidump_2_core_unittest_OBJECTS = $(am_src_tools_linux_md2core_minidump_2_core_unittest_OBJECTS)
@LINUX_HOST_TRUE@src_tools_linux_md2core_minidump_2_core_unittest_DEPENDENCIES = \
-@LINUX_HOST_TRUE@ $(TEST_LIBS) $(am__DEPENDENCIES_1) \
+@LINUX_HOST_TRUE@ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \
@LINUX_HOST_TRUE@ $(am__DEPENDENCIES_1)
am__src_tools_linux_symupload_minidump_upload_SOURCES_DIST = \
src/common/linux/http_upload.cc \
@@ -1504,7 +1533,7 @@ SOURCES = $(src_client_linux_libbreakpad_client_a_SOURCES) \
DIST_SOURCES = \
$(am__src_client_linux_libbreakpad_client_a_SOURCES_DIST) \
$(am__src_libbreakpad_a_SOURCES_DIST) \
- $(src_testing_libtesting_a_SOURCES) \
+ $(am__src_testing_libtesting_a_SOURCES_DIST) \
$(am__src_third_party_libdisasm_libdisasm_a_SOURCES_DIST) \
$(src_client_linux_linux_client_unittest_SOURCES) \
$(am__src_client_linux_linux_client_unittest_shlib_SOURCES_DIST) \
@@ -1823,7 +1852,13 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
+GMOCK_CFLAGS = @GMOCK_CFLAGS@
+GMOCK_CONFIG = @GMOCK_CONFIG@
+GMOCK_LIBS = @GMOCK_LIBS@
GREP = @GREP@
+GTEST_CFLAGS = @GTEST_CFLAGS@
+GTEST_CONFIG = @GTEST_CONFIG@
+GTEST_LIBS = @GTEST_LIBS@
HAVE_CXX11 = @HAVE_CXX11@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -1946,24 +1981,26 @@ includepdir = $(includedir)/$(PACKAGE)/processor
includep_HEADERS = $(top_srcdir)/src/processor/*.h
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = $(am__append_6) $(am__append_9)
-TEST_CFLAGS = \
- -I$(top_srcdir)/src/testing/include \
- -I$(top_srcdir)/src/testing/gtest/include \
- -I$(top_srcdir)/src/testing/gtest \
- -I$(top_srcdir)/src/testing
-
-TEST_LIBS = src/testing/libtesting.a
+@SYSTEM_TEST_LIBS_FALSE@TEST_CFLAGS = \
+@SYSTEM_TEST_LIBS_FALSE@ -I$(top_srcdir)/src/testing/include \
+@SYSTEM_TEST_LIBS_FALSE@ -I$(top_srcdir)/src/testing/gtest/include \
+@SYSTEM_TEST_LIBS_FALSE@ -I$(top_srcdir)/src/testing/gtest \
+@SYSTEM_TEST_LIBS_FALSE@ -I$(top_srcdir)/src/testing
+
+@SYSTEM_TEST_LIBS_TRUE@TEST_CFLAGS = $(GTEST_CFLAGS) $(GMOCK_CFLAGS)
+@SYSTEM_TEST_LIBS_FALSE@TEST_LIBS = src/testing/libtesting.a
+@SYSTEM_TEST_LIBS_TRUE@TEST_LIBS = $(GTEST_LIBS) -lgtest_main $(GMOCK_LIBS)
check_LIBRARIES = src/testing/libtesting.a
noinst_LIBRARIES = $(am__append_7)
lib_LIBRARIES = $(am__append_5) $(am__append_8)
CLEANFILES = $(am__append_16)
-src_testing_libtesting_a_SOURCES = \
- src/testing/gtest/src/gtest-all.cc \
- src/testing/gtest/src/gtest_main.cc \
- src/testing/src/gmock-all.cc
+@SYSTEM_TEST_LIBS_FALSE@src_testing_libtesting_a_SOURCES = \
+@SYSTEM_TEST_LIBS_FALSE@ src/testing/gtest/src/gtest-all.cc \
+@SYSTEM_TEST_LIBS_FALSE@ src/testing/gtest/src/gtest_main.cc \
+@SYSTEM_TEST_LIBS_FALSE@ src/testing/src/gmock-all.cc
-src_testing_libtesting_a_CPPFLAGS = \
- $(AM_CPPFLAGS) $(TEST_CFLAGS)
+@SYSTEM_TEST_LIBS_FALSE@src_testing_libtesting_a_CPPFLAGS = \
+@SYSTEM_TEST_LIBS_FALSE@ $(AM_CPPFLAGS) $(TEST_CFLAGS)
@LINUX_HOST_TRUE@src_client_linux_libbreakpad_client_a_SOURCES = src/client/linux/crash_generation/crash_generation_client.cc \
@LINUX_HOST_TRUE@ src/client/linux/crash_generation/crash_generation_server.cc \
@@ -2223,7 +2260,8 @@ TESTS = $(check_PROGRAMS) $(check_SCRIPTS)
@LINUX_HOST_TRUE@src_client_linux_linux_client_unittest_LDFLAGS = \
@LINUX_HOST_TRUE@ -Wl,-rpath,'$$ORIGIN' $(am__append_23)
@LINUX_HOST_TRUE@src_client_linux_linux_client_unittest_LDADD = \
-@LINUX_HOST_TRUE@ src/client/linux/linux_client_unittest_shlib
+@LINUX_HOST_TRUE@ src/client/linux/linux_client_unittest_shlib \
+@LINUX_HOST_TRUE@ $(TEST_LIBS)
@LINUX_HOST_TRUE@src_client_linux_linux_client_unittest_DEPENDENCIES = \
@LINUX_HOST_TRUE@ src/client/linux/linux_client_unittest_shlib
diff --git a/configure b/configure
index 196cb2cc..9304e53f 100755
--- a/configure
+++ b/configure
@@ -628,6 +628,14 @@ LTLIBOBJS
LIBOBJS
SELFTEST_FALSE
SELFTEST_TRUE
+GTEST_LIBS
+GTEST_CFLAGS
+GTEST_CONFIG
+GMOCK_LIBS
+GMOCK_CFLAGS
+GMOCK_CONFIG
+SYSTEM_TEST_LIBS_FALSE
+SYSTEM_TEST_LIBS_TRUE
DISABLE_TOOLS_FALSE
DISABLE_TOOLS_TRUE
DISABLE_PROCESSOR_FALSE
@@ -763,6 +771,7 @@ enable_m32
enable_largefile
enable_processor
enable_tools
+enable_system_test_libs
enable_selftest
'
ac_precious_vars='build_alias
@@ -778,7 +787,13 @@ CCASFLAGS
CPP
CXX
CXXFLAGS
-CCC'
+CCC
+GMOCK_CONFIG
+GMOCK_CFLAGS
+GMOCK_LIBS
+GTEST_CONFIG
+GTEST_CFLAGS
+GTEST_LIBS'
# Initialize some variables set by options.
@@ -1410,6 +1425,9 @@ Optional Features:
--disable-largefile omit support for large files
--disable-processor Don't build processor library (default is no)
--disable-tools Don't build tool binaries (default is no)
+ --enable-system-test-libs
+ Use gtest/gmock/etc... from the system instead of
+ the local copies (default is local)
--enable-selftest Run extra tests with "make check" (may conflict with
optimizations) (default is no)
@@ -1426,6 +1444,16 @@ Some influential environment variables:
CPP C preprocessor
CXX C++ compiler command
CXXFLAGS C++ compiler flags
+ GMOCK_CONFIG
+ Path to gmock-config script
+ GMOCK_CFLAGS
+ Compiler flags for gmock
+ GMOCK_LIBS Linker flags for gmock
+ GTEST_CONFIG
+ Path to gtest-config script
+ GTEST_CFLAGS
+ Compiler flags for gtest
+ GTEST_LIBS Linker flags for gtest
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
@@ -7453,6 +7481,229 @@ if test x$LINUX_HOST = xfalse -a x$disable_processor = xtrue -a x$disable_tools
as_fn_error $? "--disable-processor and --disable-tools were specified, and not building for Linux. Nothing to build!" "$LINENO" 5
fi
+# Check whether --enable-system-test-libs was given.
+if test "${enable_system_test_libs+set}" = set; then :
+ enableval=$enable_system_test_libs; case "${enableval}" in
+ yes)
+ system_test_libs=true
+ ;;
+ no)
+ system_test_libs=false
+ ;;
+ *)
+ as_fn_error $? "bad value ${enableval} for --enable-system-test-libs" "$LINENO" 5
+ ;;
+ esac
+else
+ system_test_libs=false
+fi
+
+ if test x$system_test_libs = xtrue; then
+ SYSTEM_TEST_LIBS_TRUE=
+ SYSTEM_TEST_LIBS_FALSE='#'
+else
+ SYSTEM_TEST_LIBS_TRUE='#'
+ SYSTEM_TEST_LIBS_FALSE=
+fi
+
+
+
+
+
+
+
+
+if test x$system_test_libs = xtrue; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}gmock-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gmock-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_GMOCK_CONFIG+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$GMOCK_CONFIG"; then
+ ac_cv_prog_GMOCK_CONFIG="$GMOCK_CONFIG" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_GMOCK_CONFIG="${ac_tool_prefix}gmock-config"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+GMOCK_CONFIG=$ac_cv_prog_GMOCK_CONFIG
+if test -n "$GMOCK_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMOCK_CONFIG" >&5
+$as_echo "$GMOCK_CONFIG" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_GMOCK_CONFIG"; then
+ ac_ct_GMOCK_CONFIG=$GMOCK_CONFIG
+ # Extract the first word of "gmock-config", so it can be a program name with args.
+set dummy gmock-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_GMOCK_CONFIG+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_GMOCK_CONFIG"; then
+ ac_cv_prog_ac_ct_GMOCK_CONFIG="$ac_ct_GMOCK_CONFIG" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_GMOCK_CONFIG="gmock-config"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_GMOCK_CONFIG=$ac_cv_prog_ac_ct_GMOCK_CONFIG
+if test -n "$ac_ct_GMOCK_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_GMOCK_CONFIG" >&5
+$as_echo "$ac_ct_GMOCK_CONFIG" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_GMOCK_CONFIG" = x; then
+ GMOCK_CONFIG=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ GMOCK_CONFIG=$ac_ct_GMOCK_CONFIG
+ fi
+else
+ GMOCK_CONFIG="$ac_cv_prog_GMOCK_CONFIG"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}gtest-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gtest-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_GTEST_CONFIG+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$GTEST_CONFIG"; then
+ ac_cv_prog_GTEST_CONFIG="$GTEST_CONFIG" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_GTEST_CONFIG="${ac_tool_prefix}gtest-config"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+GTEST_CONFIG=$ac_cv_prog_GTEST_CONFIG
+if test -n "$GTEST_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTEST_CONFIG" >&5
+$as_echo "$GTEST_CONFIG" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_GTEST_CONFIG"; then
+ ac_ct_GTEST_CONFIG=$GTEST_CONFIG
+ # Extract the first word of "gtest-config", so it can be a program name with args.
+set dummy gtest-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_GTEST_CONFIG+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_GTEST_CONFIG"; then
+ ac_cv_prog_ac_ct_GTEST_CONFIG="$ac_ct_GTEST_CONFIG" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_GTEST_CONFIG="gtest-config"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_GTEST_CONFIG=$ac_cv_prog_ac_ct_GTEST_CONFIG
+if test -n "$ac_ct_GTEST_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_GTEST_CONFIG" >&5
+$as_echo "$ac_ct_GTEST_CONFIG" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_GTEST_CONFIG" = x; then
+ GTEST_CONFIG=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ GTEST_CONFIG=$ac_ct_GTEST_CONFIG
+ fi
+else
+ GTEST_CONFIG="$ac_cv_prog_GTEST_CONFIG"
+fi
+
+ GMOCK_CFLAGS=`$GMOCK_CONFIG --cppflags --cxxflags`
+ GMOCK_LIBS=`$GMOCK_CONFIG --ldflags --libs`
+ GTEST_CFLAGS=`$GTEST_CONFIG --cppflags --cxxflags`
+ GTEST_LIBS=`$GTEST_CONFIG --ldflags --libs`
+fi
+
# Check whether --enable-selftest was given.
if test "${enable_selftest+set}" = set; then :
enableval=$enable_selftest; case "${enableval}" in
@@ -7650,6 +7901,10 @@ if test -z "${DISABLE_TOOLS_TRUE}" && test -z "${DISABLE_TOOLS_FALSE}"; then
as_fn_error $? "conditional \"DISABLE_TOOLS\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${SYSTEM_TEST_LIBS_TRUE}" && test -z "${SYSTEM_TEST_LIBS_FALSE}"; then
+ as_fn_error $? "conditional \"SYSTEM_TEST_LIBS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
if test -z "${SELFTEST_TRUE}" && test -z "${SELFTEST_FALSE}"; then
as_fn_error $? "conditional \"SELFTEST\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
diff --git a/configure.ac b/configure.ac
index cbea712f..18426ae1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -135,6 +135,39 @@ if test x$LINUX_HOST = xfalse -a x$disable_processor = xtrue -a x$disable_tools
AC_MSG_ERROR([--disable-processor and --disable-tools were specified, and not building for Linux. Nothing to build!])
fi
+AC_ARG_ENABLE(system-test-libs,
+ AS_HELP_STRING([--enable-system-test-libs],
+ [Use gtest/gmock/etc... from the system instead ]
+ [of the local copies (default is local)]),
+ [case "${enableval}" in
+ yes)
+ system_test_libs=true
+ ;;
+ no)
+ system_test_libs=false
+ ;;
+ *)
+ AC_MSG_ERROR(bad value ${enableval} for --enable-system-test-libs)
+ ;;
+ esac],
+ [system_test_libs=false])
+AM_CONDITIONAL(SYSTEM_TEST_LIBS, test x$system_test_libs = xtrue)
+
+AC_ARG_VAR([GMOCK_CONFIG], [Path to gmock-config script])
+AC_ARG_VAR([GMOCK_CFLAGS], [Compiler flags for gmock])
+AC_ARG_VAR([GMOCK_LIBS], [Linker flags for gmock])
+AC_ARG_VAR([GTEST_CONFIG], [Path to gtest-config script])
+AC_ARG_VAR([GTEST_CFLAGS], [Compiler flags for gtest])
+AC_ARG_VAR([GTEST_LIBS], [Linker flags for gtest])
+if test x$system_test_libs = xtrue; then
+ AC_CHECK_TOOL([GMOCK_CONFIG], [gmock-config])
+ AC_CHECK_TOOL([GTEST_CONFIG], [gtest-config])
+ GMOCK_CFLAGS=`$GMOCK_CONFIG --cppflags --cxxflags`
+ GMOCK_LIBS=`$GMOCK_CONFIG --ldflags --libs`
+ GTEST_CFLAGS=`$GTEST_CONFIG --cppflags --cxxflags`
+ GTEST_LIBS=`$GTEST_CONFIG --ldflags --libs`
+fi
+
AC_ARG_ENABLE(selftest,
AS_HELP_STRING([--enable-selftest],
[Run extra tests with "make check" ]
diff --git a/src/breakpad_googletest_includes.h b/src/breakpad_googletest_includes.h
index 1cc324b2..19a3e980 100644
--- a/src/breakpad_googletest_includes.h
+++ b/src/breakpad_googletest_includes.h
@@ -30,8 +30,8 @@
#ifndef BREAKPAD_GOOGLETEST_INCLUDES_H__
#define BREAKPAD_GOOGLETEST_INCLUDES_H__
-#include "testing/gtest/include/gtest/gtest.h"
-#include "testing/include/gmock/gmock.h"
+#include "gtest/gtest.h"
+#include "gmock/gmock.h"
// If AddressSanitizer is used, NULL pointer dereferences generate SIGILL
// (illegal instruction) instead of SIGSEGV (segmentation fault). Also,